Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
P
perxis-go
Manage
Activity
Members
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Package registry
Operate
Terraform modules
Analyze
Contributor analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
perxis
perxis-go
Commits
6fe82cf0
Commit
6fe82cf0
authored
1 year ago
by
Alena Petraki
Browse files
Options
Downloads
Patches
Plain Diff
wip
parent
7a3d790c
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
.gitlab-ci.yml
+40
-27
40 additions, 27 deletions
.gitlab-ci.yml
with
40 additions
and
27 deletions
.gitlab-ci.yml
+
40
−
27
View file @
6fe82cf0
...
...
@@ -29,52 +29,65 @@ lint:
paths
:
-
gl-code-quality-report.json
#
Расчет тега и формирование Changelog
get_
release_info
:
#
Получаем последнюю версию релиза
get_
last_version
:
stage
:
release
image
:
name
:
orhunp/git-cliff:latest
entrypoint
:
[
"
"
]
image
:
golang:1.22.0-alpine3.18
rules
:
-
if
:
$CI_PIPELINE_SOURCE == "pipeline"
# Запуск при инициации из perxis
-
if
:
$CI_PIPELINE_SOURCE == "pipeline"
-
if
:
$CI_PIPELINE_SOURCE == "web"
when
:
manual
# или при ручном запуске
variables
:
GIT_STRATEGY
:
clone
GIT_DEPTH
:
0
before_script
:
-
apk --no-cache add git
script
:
-
echo
"
VERSION=$(git
-cliff --bumped-version)" >> vars.env
# Расчет новой версии релиза через git-cliff
-
echo "$(git-cliff --unreleased | sed '1,6d' | sed '$d')" > CHANGELOG.md
# удалить "лишние" строки для Changelog
-
echo
"
[DEBUG]
"
-
echo
LAST_
VERSION=$(git
describe --tags --abbrev=0) >> vars.env
-
echo [DEBUG]
-
cat vars.env
-
cat CHANGELOG.md
artifacts
:
reports
:
dotenv
:
vars.env
# Use artifacts:reports:dotenv to expose the variables to other jobs
paths
:
-
CHANGELOG.md
dotenv
:
vars.env
#
Получаем последнюю версию релиза
get_
last_version
:
#
Расчет тега и формирование Changelog
get_
release_info
:
stage
:
release
image
:
golang:1.22.0-alpine3.18
image
:
name
:
orhunp/git-cliff:latest
entrypoint
:
[
"
"
]
rules
:
-
if
:
$CI_PIPELINE_SOURCE == "pipeline"
-
if
:
$CI_PIPELINE_SOURCE == "pipeline"
# Запуск при инициации из perxis
-
if
:
$CI_PIPELINE_SOURCE == "web"
when
:
manual
# или при ручном запуске
needs
:
-
job
:
get_
release_info
-
job
:
get_
last_version
variables
:
GIT_STRATEGY
:
clone
GIT_DEPTH
:
0
before_script
:
-
apk --no-cache add git
script
:
-
echo LAST_VERSION=$(git describe --tags --abbrev=0) >> vars.env
-
echo [DEBUG]
-
cat vars.env
-
echo "VERSION=$(git-cliff --bumped-version)" >> vars.env
# Расчет новой версии релиза через git-cliff
-
echo "$(git-cliff --unreleased | sed '1,6d' | sed '$d')" > CHANGELOG.md
# удалить "лишние" строки для Changelog
-
|
# Если новая версия совпадает со старой, значит изменений не было, и выпускать новый релиз не нужно
if [ "$VERSION" == "$LAST_VERSION" ]; then
export NEEDS_RELEASE=false
fi
# Собрать в файл информацию о релизе в формате:
# ---
# version: $VERSION
# needs_release: $NEEDS_RELEASE
# changelog: |
# $CHANGELOG
# ---
-
echo "[DEBUG]"
-
cat release.yaml
artifacts
:
reports
:
dotenv
:
vars.env
# reports:
# dotenv: vars.env # Use artifacts:reports:dotenv to expose the variables to other jobs
paths
:
-
release.yaml
# Релиз и запись тега в артефакт для использования в perxis
release
:
...
...
@@ -94,7 +107,7 @@ release:
-
cat vars.env
-
|
# Если новая версия совпадает со старой, значит изменений не было, и выпускать новый релиз не нужно
if [ "$
VERSION" == "$LAST_VERSION
" ]; then
if [ "$
PREPARE_RELEASE" == "true" ] || [ "$NEEDS_RELEASE" == "false
" ]; then
exit 204
fi
# TODO: Закомментировано в целях дальнейшего тестирования. Раскомментировать перед вливанием feature-ветки!
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment