Commit 0dca009a authored by Federico Falconieri's avatar Federico Falconieri
Browse files

Merge branch 'improve-badge' into 'main'

feat: allow disabling automatic badge creation

Closes #14

See merge request just-ci/templates!80
parents ac7ba9d6 2baf95af
Loading
Loading
Loading
Loading
+18 −6
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@
  image: registry.gitlab.com/just-ci/images/anybadge:latest
  stage: .post
  variables:
    GIT_STRATEGY: "none"
    GIT_STRATEGY: none
  script:
    - BADGE_NAME=${BADGE_NAME:-${LABEL}}
    - IMAGE_URL=${CI_PROJECT_URL}/-/jobs/artifacts/${CI_DEFAULT_BRANCH}/raw/ci_badges/${BADGE_NAME}.svg?job=${CI_JOB_NAME}
@@ -30,8 +30,17 @@
    - anybadge -l "${LABEL}" -v "${VALUE}" -c "${COLOR}" -f
      "ci_badges/${BADGE_NAME}.svg"
    - |
      echo -e "[+] Created ci_badges/${BADGE_NAME}.svg:\n- Label: ${LABEL}\n- Value: ${VALUE}\n- Color: ${COLOR}\n- URL: ${URL}"

      echo "[+] Created ci_badges/${BADGE_NAME}.svg"
      echo "Label: ${LABEL}"
      echo "Value: ${VALUE}"
      echo "Color: ${COLOR}"
      echo "URL: ${URL}"
      echo "Image URL: ${IMAGE_URL}"
      echo "You can use the image URL to point to this badge from, for example, a readme."
    - |
      if [ "${DISABLE_BADGE_CREATION}" != "" ]; then
        exit 0
      fi
    - |
      echo "[*] Creating/updating badge..."
      BADGE_ID=$(curl -SsLf -H "PRIVATE-TOKEN: ${GL_TOKEN}" "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/badges" | jq --arg BADGE_NAME "${BADGE_NAME}" '.[] | select(.name==$BADGE_NAME) | .id') || true
@@ -58,7 +67,7 @@
    when: always
  allow_failure: true
  rules:
    - if: "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $GL_TOKEN"
    - if: "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH"

badge:GL_TOKEN-required:
  stage: .pre
@@ -68,8 +77,11 @@ badge:GL_TOKEN-required:
  script:
    - |
      echo "[!] GL_TOKEN not set. Please add a GL_TOKEN per the instructions: https://gitlab.com/just-ci/templates#how-to-use"
      echo "[!] Badges will not be created."
      echo "[!] Badges will not be created automatically, but will be available for use elsewhere."
      echo "[!] You can disable this warning by setting a variable called DISABLE_BADGE_CREATION in your .gitlab-ci.yml."
    - exit 1
  rules:
    - if: "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $GL_TOKEN == null"
    - if:
        "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $GL_TOKEN == null &&
        $DISABLE_BADGE_CREATION == null"
  allow_failure: true