This repository has been archived on 2023-10-03. You can view files and clone it, but cannot push or open issues or pull requests.
ServerPackCreatorExampleAddon/.gitlab-ci.yml
Griefed f21eb9009c Merge branch 'renovate-ghcr.io-griefed-gitlab-ci-cd-2.x' into 'main'
chore(deps): update ghcr.io/griefed/gitlab-ci-cd docker tag to v2.2.4

See merge request Griefed/ServerPackCreatorExampleAddon!77
2022-12-19 18:03:29 +01:00

80 lines
2.2 KiB
YAML

stages:
- Gradle Test
- Documentation
- Release
- Build Release
variables:
project_name: "$CI_PROJECT_NAME"
SEMANTIC_RELEASE_PACKAGE: "$CI_PROJECT_NAME"
GRADLE_OPTS: "-Dorg.gradle.daemon=false"
GRADLE_USER_HOME: "$CI_PROJECT_DIR/.gradle"
workflow:
rules:
- if: '$CI_MERGE_REQUEST_EVENT_TYPE == "detached"'
when: never
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
when: never
- if: '$CI_COMMIT_TITLE =~ /^RELEASE:.+$/ && $CI_COMMIT_BRANCH' # && $CI_COMMIT_TAG == null
when: never
- when: always
Gradle Test:
image: griefed/baseimage-ubuntu-jdk-8:2.0.16
stage: Gradle Test
before_script:
- echo "**** Running in $CI_JOB_ID ****"
- echo "**** Java location ****"
- which java
- echo "**** Java version ****"
- java -version
- echo "**** Allowing execution of gradlew ****"
- chmod +x gradlew
script:
- echo "**** Building ServerPackCreator ****"
- ./gradlew build --info --full-stacktrace
artifacts:
when: always
name: "$CI_COMMIT_BRANCH-$CI_COMMIT_SHORT_SHA-$CI_JOB_NAME"
expose_as: "Gradle-Test-Artifacts"
paths:
- build
expire_in: 1 week
cache:
- key:
files:
- build.gradle
- gradle/gradle-wrapper.properties
paths:
- .gradle
Release:
needs:
- job: 'Gradle Test'
artifacts: false
stage: Release
image: ghcr.io/griefed/gitlab-ci-cd:2.2.4
script:
- npx semantic-release
rules:
- if: '$CI_COMMIT_BRANCH == "alpha" && $CI_COMMIT_TITLE !~ /^RELEASE:.+$/ && $CI_SERVER_HOST == "git.griefed.de"'
- if: '$CI_COMMIT_BRANCH == "beta" && $CI_COMMIT_TITLE !~ /^RELEASE:.+$/ && $CI_SERVER_HOST == "git.griefed.de"'
- if: '$CI_COMMIT_BRANCH == "main" && $CI_COMMIT_TITLE !~ /^RELEASE:.+$/ && $CI_SERVER_HOST == "git.griefed.de"'
pages:
image: griefed/baseimage-ubuntu-jdk-8:2.0.16
stage: Documentation
before_script:
- which java
- chmod +x gradlew
script:
- "./gradlew javaDoc -Pversion='' --info --full-stacktrace -x test"
- cp -Rf build/docs/javadoc public
- LC_COLLATE=C ls -ahl --group-directories-first --color=auto public
only:
- main
artifacts:
paths:
- public
expire_in: 1 week