diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8924247..4c9e9d0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -150,7 +150,7 @@ generate-docs: - bash scripts/push-to-gitlab-pages.sh only: variables: - - $CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_REF_NAME =~ /^.+-stable$/ && $CI_COMMIT_REF_PROTECTED == "true" + - (($CI_MAIN_BRANCH && $CI_COMMIT_REF_NAME == $CI_MAIN_BRANCH) || $CI_COMMIT_REF_NAME == "main" || $CI_COMMIT_REF_NAME =~ /^.+-stable$/) && $CI_COMMIT_REF_PROTECTED == "true" except: variables: - $CI_PIPELINE_SOURCE == "schedule" diff --git a/CHANGELOG.md b/CHANGELOG.md index 526a66f..482c994 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Upgrade Operating System of Docker based images, with [Alpine 3.15](https://hub.docker.com/_/alpine) - Use Docker [Compose 2.1.1](https://github.com/docker/compose/releases/tag/v2.1.1) instead of Docker [Compose 1.x](https://github.com/docker/compose/releases/tag/1.28.0) - Reduce Docker images size, based on Alpine and Debian, again +- Replace `master` by `main` git branch name in scripts. Reference: [New git default branch name](https://about.gitlab.com/blog/2021/03/10/new-git-default-branch-name/) ### Fixed - Fix documentation scrolling between pages, with the [`auto2top`](https://docsify.js.org/#/configuration?id=auto2top) option of [docsify](https://docsify.js.org) diff --git a/scripts/helpers.sh b/scripts/helpers.sh index 3245ece..09464d7 100644 --- a/scripts/helpers.sh +++ b/scripts/helpers.sh @@ -46,7 +46,7 @@ function setup_docker_multi_arch() { function git_tag_on_success() { local git_tag="${1:-dev}" - local target_branch="${2:-master}" + local target_branch="${2:-${CI_MAIN_BRANCH:-main}}" if ( [ "$CI_COMMIT_REF_NAME" == "$target_branch" ] && @@ -73,7 +73,7 @@ function git_tag_on_success() { function registry_tag_on_success() { local current_registry_tag="${1:-$CI_COMMIT_SHA}" local target_registry_tag="${2:-dev}" - local target_branch="${3:-master}" + local target_branch="${3:-${CI_MAIN_BRANCH:-main}}" local current_registry_image="${4:-$CI_REGISTRY_IMAGE/builds}" local target_registry_image="${5:-$CI_REGISTRY_IMAGE}" local target_external_registry_image="${6:-$DOCKER_REGISTRY_IMAGE}" @@ -134,7 +134,7 @@ function get_git_last_stable_tag() { # Useful for updating Docker images, on release/stable branches, but not the psu code # See: https://docs.gitlab.com/ce/workflow/gitlab_flow.html#release-branches-with-gitlab-flow -# You can create a scheduled pipeline with a targeted git branch ("master", "1-0-stable", ...) +# You can create a scheduled pipeline with a targeted git branch ("main", "1-0-stable", ...) # and the CI variables below: # "GIT_RESET_LAST_STABLE_TAG=true" # "DOCKER_CACHE_DISABLED=true" diff --git a/scripts/release.sh b/scripts/release.sh index 07a7826..d7ddabd 100644 --- a/scripts/release.sh +++ b/scripts/release.sh @@ -41,19 +41,19 @@ if ( # see: https://semver.org if [[ "$target_registry_tag" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then git fetch --all - # e.g. " origin/master" - master_branch="$(git branch --no-color --remotes --list 'origin/master')" + # e.g. " origin/main" + main_branch="$(git branch --no-color --remotes --list "origin/${CI_MAIN_BRANCH:-main}")" # e.g. " origin/1-0-stable # > origin/1-1-stable # > origin/2-0-stable - # > origin/master" - commit_in_branches="$(git branch --no-color --remotes --contains $CI_COMMIT_SHA | grep -w ' origin/master\| origin/.*-stable')" + # > origin/main" + commit_in_branches="$(git branch --no-color --remotes --contains $CI_COMMIT_SHA | grep -w " origin/${CI_MAIN_BRANCH:-main}\| origin/.*-stable")" # e.g. " origin/2-0-stable # > origin/1-1-stable # > origin/1-0-stable" - stable_branches="$(echo "$commit_in_branches" | grep -vw ' origin/master' | sort -rV)" + stable_branches="$(echo "$commit_in_branches" | grep -vw " origin/${CI_MAIN_BRANCH:-main}" | sort -rV)" # Extract the MAJOR and MAJOR.MINOR versions # Then tag and push them to Docker registry. @@ -71,7 +71,7 @@ if ( # e.g. "1-1-stable" latest_major_branch="$(echo "$stable_branches"| grep -E "^ origin/$major_registry_tag-[0-9]+-stable$" | head -n 1 | sed -E 's/^ origin\/(.+)$/\1/')" - # If the git tag is only contained in master branch + # If the git tag is only contained in the "main" branch # or if it's contained in the latest stable branch who has the same MAJOR version # e.g. when there is 2 stable branches "1-0-stable" and "1-1-stable". # If git tag is "v1.0.1", the MAJOR registry tag "1" is NOT written. @@ -80,7 +80,7 @@ if ( # If git tag is "v1.1.3", the MAJOR registry tag "1" is written. # Because the lastet stable branch is "1-1-stable". if ( - ([ -n "$master_branch" ] && [ "$master_branch" == "$commit_in_branches" ]) || + ([ -n "$main_branch" ] && [ "$main_branch" == "$commit_in_branches" ]) || [ "$latest_major_branch" == "$target_stable_branch" ] ); then registry_tag_on_success $CI_COMMIT_SHA $major_registry_tag $CI_COMMIT_REF_NAME @@ -89,7 +89,7 @@ if ( registry_tag_on_success $CI_COMMIT_SHA $major_minor_registry_tag $CI_COMMIT_REF_NAME for variant in $variants; do if ( - ([ -n "$master_branch" ] && [ "$master_branch" == "$commit_in_branches" ]) || + ([ -n "$main_branch" ] && [ "$main_branch" == "$commit_in_branches" ]) || [ "$latest_major_branch" == "$target_stable_branch" ] ); then registry_tag_on_success "${variant}-${CI_COMMIT_SHA}" "${major_registry_tag}-${variant}" $CI_COMMIT_REF_NAME @@ -98,12 +98,12 @@ if ( registry_tag_on_success "${variant}-${CI_COMMIT_SHA}" "${major_minor_registry_tag}-${variant}" $CI_COMMIT_REF_NAME done - # The latest stable semantic versioning git tag on the "master" branch + # The latest stable semantic versioning git tag on the "main" branch # is considered as the "latest" registry tag. - # Check if the current git commit is only present in the "master" branch + # Check if the current git commit is only present in the "main" branch # and not in stable branches (e.g. "1-0-stable"). # Non stable branches are skipped (e.g. "feature-better-performance"). - if [ -n "$master_branch" ] && [ "$master_branch" == "$commit_in_branches" ]; then + if [ -n "$main_branch" ] && [ "$main_branch" == "$commit_in_branches" ]; then registry_tag_on_success $CI_COMMIT_SHA "latest" $CI_COMMIT_REF_NAME for variant in $variants; do registry_tag_on_success "${variant}-${CI_COMMIT_SHA}" "${variant}" $CI_COMMIT_REF_NAME