Loading project-automation/gitlab/recommended.yml +8 −9 Original line number Diff line number Diff line Loading @@ -11,25 +11,24 @@ include: gitlab:recommended: stage: test image: name: ghcr.io/tomwright/dasel:v1.27.3-alpine name: ghcr.io/tomwright/dasel:alpine entrypoint: [""] variables: GIT_STRATEGY: none script: - apk add curl - wget -qO .settings.yml - dasel --version - curl -sSLf -o .settings.yml https://gitlab.com/just-ci/templates/-/raw/v6.28.0/project-automation/gitlab/recommended-settings.yml - FILE=project_${CI_PROJECT_ID}_details - | curl -sSLf -H "PRIVATE-TOKEN: ${GL_TOKEN}" "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}" -o ${FILE}.json - dasel -f ${FILE}.json -r json -w yaml > ${FILE}.yml curl -sSLf -H "PRIVATE-TOKEN: ${GL_TOKEN}" "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}" -o current_project.json - let COUNT=0 || true - | for KEY in $(dasel -f .settings.yml -m '.-'); do for KEY in $(dasel -f .settings.yml -r yaml "keys().all()" -w -); do printf "[*] Checking ${KEY}..." CURRENT=$(dasel -f ${FILE}.yml ${KEY}) RECOMMENDED=$(dasel -f .settings.yml "${KEY}".recommended) HINT=$(dasel -f .settings.yml ${KEY}.hint) CURRENT=$(dasel -f current_project.json -r json "${KEY}" -w -) RECOMMENDED=$(dasel -f .settings.yml "${KEY}.recommended") HINT=$(dasel -f .settings.yml "${KEY}.hint") if [ "${CURRENT}" != "${RECOMMENDED}" ]; then echo -e " \e[31mrecommended value not set\e[0m. Current value is: ${CURRENT}. Expected value is: ${RECOMMENDED}." echo "${HINT}" Loading project-automation/semantic-release.yml +8 −7 Original line number Diff line number Diff line Loading @@ -6,7 +6,7 @@ include: semantic-release: extends: .release:rules image: registry.gitlab.com/just-ci/images/node:latest image: registry.gitlab.com/just-ci/images/node:alpine stage: .post variables: NPM_PACKAGES: Loading @@ -14,6 +14,7 @@ semantic-release: @semantic-release/changelog @semantic-release/exec script: - !reference [".release:install", script] - dasel --version - | if ! test -f .releaserc; then Loading @@ -22,7 +23,7 @@ semantic-release: fi - | if [ "$(dasel -f .releaserc -r json -m '(?:-=assets)')" = "[]" ] && [ "${DISABLE_AUTO_RELEASE_ASSETS}" = "" ]; then if [ "$(dasel -f .releaserc -r json 'plugins.all().filter(equal(type(),array)).all().filter(equal(type(),object)).assets.all().count()')" = "0" ] && [ "${DISABLE_AUTO_RELEASE_ASSETS}" = "" ]; then echo "[-] No assets set in .releaserc." if test -f tbump.toml; then SOURCE_FILE=tbump.toml Loading @@ -37,8 +38,7 @@ semantic-release: - | if [ "${SOURCE_FILE}" != "" ]; then dasel --version TBUMP_FILES=$(dasel -n -f ${SOURCE_FILE} -r toml -w yaml -m "${DASEL_PATH}.[*].src") TBUMP_FILES=$(dasel -f ${SOURCE_FILE} -r toml -w yaml "${DASEL_PATH}.all().src") if [ "${TBUMP_FILES}" = "null" ]; then echo "[-] No files set. Not pushing assets." else Loading @@ -46,8 +46,8 @@ semantic-release: TBUMP_FILES="${TBUMP_FILES} CHANGELOG.md" fi for FILE in ${TBUMP_FILES} ${SOURCE_FILE}; do if [ "$(dasel -n -f .releaserc -p json -m '(?:-=assets).(?:.=${FILE})')" = "null" ]; then dasel put string -f .releaserc -p json -m '(?:-=assets).[]' "${FILE}" if [ $(dasel -f .releaserc -r json "plugins.all().filter(equal(type(),array)).all().filter(equal(type(),object)).assets.all().filter(equal(.,${FILE})).count(),0.moreThan(.,0)") = "false" ]; then dasel put -f .releaserc -t string -r json -w json -v "${FILE}" 'plugins.all().filter(equal(type(),array)).all().filter(equal(type(),object)).assets.append()' echo "[+] Added ${FILE} to .releaserc." fi done Loading @@ -56,8 +56,9 @@ semantic-release: - export GIT_AUTHOR_EMAIL="$(curl -s -X GET -H "PRIVATE-TOKEN:$GL_TOKEN" "${CI_API_V4_URL}/user" | jq -r '.email')" - export GIT_COMMITTER_EMAIL="${GIT_AUTHOR_EMAIL}" - semantic-release --version - semantic-release ${SEMANTIC_RELEASE_EXTRA_ARGS} dependencies: - tbump artifacts: paths: - .releaserc Loading Loading
project-automation/gitlab/recommended.yml +8 −9 Original line number Diff line number Diff line Loading @@ -11,25 +11,24 @@ include: gitlab:recommended: stage: test image: name: ghcr.io/tomwright/dasel:v1.27.3-alpine name: ghcr.io/tomwright/dasel:alpine entrypoint: [""] variables: GIT_STRATEGY: none script: - apk add curl - wget -qO .settings.yml - dasel --version - curl -sSLf -o .settings.yml https://gitlab.com/just-ci/templates/-/raw/v6.28.0/project-automation/gitlab/recommended-settings.yml - FILE=project_${CI_PROJECT_ID}_details - | curl -sSLf -H "PRIVATE-TOKEN: ${GL_TOKEN}" "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}" -o ${FILE}.json - dasel -f ${FILE}.json -r json -w yaml > ${FILE}.yml curl -sSLf -H "PRIVATE-TOKEN: ${GL_TOKEN}" "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}" -o current_project.json - let COUNT=0 || true - | for KEY in $(dasel -f .settings.yml -m '.-'); do for KEY in $(dasel -f .settings.yml -r yaml "keys().all()" -w -); do printf "[*] Checking ${KEY}..." CURRENT=$(dasel -f ${FILE}.yml ${KEY}) RECOMMENDED=$(dasel -f .settings.yml "${KEY}".recommended) HINT=$(dasel -f .settings.yml ${KEY}.hint) CURRENT=$(dasel -f current_project.json -r json "${KEY}" -w -) RECOMMENDED=$(dasel -f .settings.yml "${KEY}.recommended") HINT=$(dasel -f .settings.yml "${KEY}.hint") if [ "${CURRENT}" != "${RECOMMENDED}" ]; then echo -e " \e[31mrecommended value not set\e[0m. Current value is: ${CURRENT}. Expected value is: ${RECOMMENDED}." echo "${HINT}" Loading
project-automation/semantic-release.yml +8 −7 Original line number Diff line number Diff line Loading @@ -6,7 +6,7 @@ include: semantic-release: extends: .release:rules image: registry.gitlab.com/just-ci/images/node:latest image: registry.gitlab.com/just-ci/images/node:alpine stage: .post variables: NPM_PACKAGES: Loading @@ -14,6 +14,7 @@ semantic-release: @semantic-release/changelog @semantic-release/exec script: - !reference [".release:install", script] - dasel --version - | if ! test -f .releaserc; then Loading @@ -22,7 +23,7 @@ semantic-release: fi - | if [ "$(dasel -f .releaserc -r json -m '(?:-=assets)')" = "[]" ] && [ "${DISABLE_AUTO_RELEASE_ASSETS}" = "" ]; then if [ "$(dasel -f .releaserc -r json 'plugins.all().filter(equal(type(),array)).all().filter(equal(type(),object)).assets.all().count()')" = "0" ] && [ "${DISABLE_AUTO_RELEASE_ASSETS}" = "" ]; then echo "[-] No assets set in .releaserc." if test -f tbump.toml; then SOURCE_FILE=tbump.toml Loading @@ -37,8 +38,7 @@ semantic-release: - | if [ "${SOURCE_FILE}" != "" ]; then dasel --version TBUMP_FILES=$(dasel -n -f ${SOURCE_FILE} -r toml -w yaml -m "${DASEL_PATH}.[*].src") TBUMP_FILES=$(dasel -f ${SOURCE_FILE} -r toml -w yaml "${DASEL_PATH}.all().src") if [ "${TBUMP_FILES}" = "null" ]; then echo "[-] No files set. Not pushing assets." else Loading @@ -46,8 +46,8 @@ semantic-release: TBUMP_FILES="${TBUMP_FILES} CHANGELOG.md" fi for FILE in ${TBUMP_FILES} ${SOURCE_FILE}; do if [ "$(dasel -n -f .releaserc -p json -m '(?:-=assets).(?:.=${FILE})')" = "null" ]; then dasel put string -f .releaserc -p json -m '(?:-=assets).[]' "${FILE}" if [ $(dasel -f .releaserc -r json "plugins.all().filter(equal(type(),array)).all().filter(equal(type(),object)).assets.all().filter(equal(.,${FILE})).count(),0.moreThan(.,0)") = "false" ]; then dasel put -f .releaserc -t string -r json -w json -v "${FILE}" 'plugins.all().filter(equal(type(),array)).all().filter(equal(type(),object)).assets.append()' echo "[+] Added ${FILE} to .releaserc." fi done Loading @@ -56,8 +56,9 @@ semantic-release: - export GIT_AUTHOR_EMAIL="$(curl -s -X GET -H "PRIVATE-TOKEN:$GL_TOKEN" "${CI_API_V4_URL}/user" | jq -r '.email')" - export GIT_COMMITTER_EMAIL="${GIT_AUTHOR_EMAIL}" - semantic-release --version - semantic-release ${SEMANTIC_RELEASE_EXTRA_ARGS} dependencies: - tbump artifacts: paths: - .releaserc Loading