diff options
| -rw-r--r-- | .gitlab-ci.yml | 19 | ||||
| -rw-r--r-- | changelog.d/3739.skip | 0 | ||||
| -rw-r--r-- | tools/check-changelog | 22 | 
3 files changed, 41 insertions, 0 deletions
| diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8b0381d11..2e4897aa0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,6 +8,13 @@ variables: &global_variables    DB_PORT: 5432    MIX_ENV: test +workflow: +  rules: +    - if: $CI_PIPELINE_SOURCE == "merge_request_event" +    - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS +      when: never +    - if: $CI_COMMIT_BRANCH +  cache: &global_cache_policy    key:      files: @@ -17,6 +24,7 @@ cache: &global_cache_policy      - _build  stages: +  - check-changelog    - build    - test    - benchmark @@ -32,6 +40,17 @@ before_script:  after_script:    - rm -rf _build/*/lib/pleroma +check-changelog: +  stage: check-changelog +  image: alpine +  rules: +    - if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" +  before_script: '' +  after_script: '' +  cache: {} +  script: +    - sh ./tools/check-changelog +  build:    stage: build    only: diff --git a/changelog.d/3739.skip b/changelog.d/3739.skip new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/changelog.d/3739.skip diff --git a/tools/check-changelog b/tools/check-changelog new file mode 100644 index 000000000..b94b52755 --- /dev/null +++ b/tools/check-changelog @@ -0,0 +1,22 @@ +#!/bin/sh + +echo "looking for change log of $CI_MERGE_REQUEST_IID" + +count=0 +for i in add remove fix security skip; do +    [ -f changelog.d/"$CI_MERGE_REQUEST_IID"."$i" ] +    retcode=$? +    if [ $retcode -eq 0 ]; then +        echo "found $CI_MERGE_REQUEST_IID.$i" +        count=$(( count + 1 )) +    else +        echo "no $CI_MERGE_REQUEST_IID.$i" +    fi +done +if [ $count -gt 0 ]; then +    echo "ok" +    exit 0 +else +    echo "must have a changelog entry or explicitly skip it" +    exit 1 +fi | 
