1
0
Fork 0

Drop 'dev' branch and switch to tagging for releasing

Signed-off-by: Vasilis Tsiligiannis <acinonyx@openwrt.gr>
merge-requests/729/head 1.1
Vasilis Tsiligiannis 2019-03-16 17:51:58 +02:00
parent 880a9e3125
commit 86294b7e1d
3 changed files with 45 additions and 6 deletions

View File

@ -58,7 +58,12 @@ docker:
- apk --update add py-pip - apk --update add py-pip
- pip install docker-compose - pip install docker-compose
script: script:
- CACHE_IMAGE="${CI_REGISTRY_IMAGE:+$CI_REGISTRY_IMAGE/satnogs-network:$CI_COMMIT_REF_NAME}"; export CACHE_IMAGE - |
[ -z "$CI_REGISTRY_IMAGE" ] || {
CACHE_IMAGE="$CI_REGISTRY_IMAGE/satnogs-network:$CI_COMMIT_REF_NAME}"
[ -z "$CI_COMMIT_TAG" ] || CACHE_IMAGE="$CI_REGISTRY_IMAGE/satnogs-network:latest"
export CACHE_IMAGE
}
- docker-compose -f docker-compose.yml -f docker-compose.cache.yml pull cache_image || true - docker-compose -f docker-compose.yml -f docker-compose.cache.yml pull cache_image || true
- docker-compose -f docker-compose.yml -f docker-compose.cache.yml build --pull - docker-compose -f docker-compose.yml -f docker-compose.cache.yml build --pull
- | - |
@ -66,16 +71,24 @@ docker:
docker login -u $CI_REGISTRY_USER -p $CI_JOB_TOKEN $CI_REGISTRY docker login -u $CI_REGISTRY_USER -p $CI_JOB_TOKEN $CI_REGISTRY
docker tag satnogs-network:latest $CI_REGISTRY_IMAGE/satnogs-network:$CI_COMMIT_REF_NAME docker tag satnogs-network:latest $CI_REGISTRY_IMAGE/satnogs-network:$CI_COMMIT_REF_NAME
docker push $CI_REGISTRY_IMAGE/satnogs-network:$CI_COMMIT_REF_NAME docker push $CI_REGISTRY_IMAGE/satnogs-network:$CI_COMMIT_REF_NAME
[ -z "$CI_COMMIT_TAG" ] || {
docker tag satnogs-network:latest $CI_REGISTRY_IMAGE/satnogs-network:latest
docker push $CI_REGISTRY_IMAGE/satnogs-network:latest
}
} }
[ -z "$DOCKERHUB_PASSWORD" ] || { [ -z "$DOCKERHUB_PASSWORD" ] || {
docker login -u $DOCKERHUB_USER -p $DOCKERHUB_PASSWORD docker login -u $DOCKERHUB_USER -p $DOCKERHUB_PASSWORD
docker tag satnogs-network:latest librespace/satnogs-network:$CI_COMMIT_REF_NAME docker tag satnogs-network:latest librespace/satnogs-network:$CI_COMMIT_REF_NAME
docker push librespace/satnogs-network:$CI_COMMIT_REF_NAME docker push librespace/satnogs-network:$CI_COMMIT_REF_NAME
[ -z "$CI_COMMIT_TAG" ] || {
docker tag satnogs-network:latest librespace/satnogs-network:latest
docker push librespace/satnogs-network:latest
}
} }
only: only:
refs: refs:
- master - master
- dev - tags
trigger_master: trigger_master:
stage: trigger stage: trigger
image: alpine image: alpine
@ -88,15 +101,15 @@ trigger_master:
- master - master
variables: variables:
- $PIPELINE_TRIGGERS_MASTER - $PIPELINE_TRIGGERS_MASTER
trigger_dev: trigger_latest:
stage: trigger stage: trigger
image: alpine image: alpine
before_script: before_script:
- apk add --no-cache curl - apk add --no-cache curl
script: script:
- for trigger in $PIPELINE_TRIGGERS_DEV; do curl -X POST "$trigger"; done - for trigger in $PIPELINE_TRIGGERS_LATEST; do curl -X POST "$trigger"; done
only: only:
refs: refs:
- dev - tags
variables: variables:
- $PIPELINE_TRIGGERS_DEV - $PIPELINE_TRIGGERS_LATEST

View File

@ -7,4 +7,5 @@ satnogs-network
installation installation
developer-guide developer-guide
releasing
maintenance maintenance

25
docs/releasing.rst 100644
View File

@ -0,0 +1,25 @@
Releasing
=========
Versioning scheme
-----------------
This repository follows `PEP-440 <https://www.python.org/dev/peps/pep-0440/>`_ versioning scheme.
All releases must use a `X.Y` segment version which signifies a final project release and is compatible with `Semantic Versioning <https://semver.org/>`_.
The versions must be numbered in a consistently increasing fashion.
Major `X` will never need to be increased unless the application is completely rewritten.
Minor `Y` shall be increased on each release.
A Patch or additional segments, as described in SemVer, shall not be used.
Release procedure
-----------------
To make a new release:
#. Find the next available minor version among the whole set of already present tags in the repository.
#. Create an annotated tag from `master` branch in GitLab with a commit message::
Tag version 'X.Y'