mirror of
https://github.com/optim-enterprises-bv/OptimCloud-gw-ui.git
synced 2025-11-02 03:07:46 +00:00
Merge pull request #35 from Telecominfraproject/feature/git-branching
[WIFI-2622] Add: branching release model in CI
This commit is contained in:
@@ -6,6 +6,9 @@ on:
|
|||||||
- '**.md'
|
- '**.md'
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
- 'release/*'
|
||||||
|
tags:
|
||||||
|
- 'v*'
|
||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
@@ -26,28 +29,40 @@ jobs:
|
|||||||
- name: Build Docker image
|
- name: Build Docker image
|
||||||
run: docker build -t wlan-cloud-ucentralgw-ui:${{ github.sha }} .
|
run: docker build -t wlan-cloud-ucentralgw-ui:${{ github.sha }} .
|
||||||
|
|
||||||
|
- name: Tag Docker image
|
||||||
|
run: |
|
||||||
|
TAGS="${{ github.sha }}"
|
||||||
|
|
||||||
|
if [[ ${GITHUB_REF} == "refs/heads/"* ]]
|
||||||
|
then
|
||||||
|
CURRENT_TAG=$(echo ${GITHUB_REF#refs/heads/} | tr '/' '-')
|
||||||
|
TAGS="$TAGS $CURRENT_TAG"
|
||||||
|
else
|
||||||
|
if [[ ${GITHUB_REF} == "refs/tags/"* ]]
|
||||||
|
then
|
||||||
|
CURRENT_TAG=$(echo ${GITHUB_REF#refs/tags/} | tr '/' '-')
|
||||||
|
TAGS="$TAGS $CURRENT_TAG"
|
||||||
|
else # PR build
|
||||||
|
CURRENT_TAG=$(echo ${GITHUB_HEAD_REF#refs/heads/} | tr '/' '-')
|
||||||
|
TAGS="$TAGS $CURRENT_TAG"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Result tags: $TAGS"
|
||||||
|
|
||||||
|
for tag in $TAGS; do
|
||||||
|
docker tag wlan-cloud-ucentralgw-ui:${{ github.sha }} ${{ env.DOCKER_REGISTRY_URL }}/ucentralgw-ui:$tag
|
||||||
|
done
|
||||||
|
|
||||||
- name: Log into Docker registry
|
- name: Log into Docker registry
|
||||||
|
if: startsWith(github.ref, 'refs/tags/') || startsWith(github.ref, 'refs/pull/') || github.ref == 'refs/heads/main'
|
||||||
uses: docker/login-action@v1
|
uses: docker/login-action@v1
|
||||||
with:
|
with:
|
||||||
registry: ${{ env.DOCKER_REGISTRY_URL }}
|
registry: ${{ env.DOCKER_REGISTRY_URL }}
|
||||||
username: ${{ env.DOCKER_REGISTRY_USERNAME }}
|
username: ${{ env.DOCKER_REGISTRY_USERNAME }}
|
||||||
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}
|
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}
|
||||||
|
|
||||||
- name: Push Docker image
|
- name: Push Docker images
|
||||||
|
if: startsWith(github.ref, 'refs/tags/') || startsWith(github.ref, 'refs/pull/') || github.ref == 'refs/heads/main'
|
||||||
run: |
|
run: |
|
||||||
TAGS="${{ github.sha }}"
|
docker images | grep ${{ env.DOCKER_REGISTRY_URL }}/ucentralgw-ui | awk -F ' ' '{print $1":"$2}' | xargs -I {} docker push {}
|
||||||
|
|
||||||
if [ ${GITHUB_REF} == "refs/heads/main" ]
|
|
||||||
then
|
|
||||||
TAGS="$TAGS ${GITHUB_REF#refs/heads/}"
|
|
||||||
else # PR build
|
|
||||||
CURRENT_TAG=$(echo ${GITHUB_HEAD_REF#refs/heads/} | tr '/' '-')
|
|
||||||
TAGS="$TAGS $CURRENT_TAG"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Pushing tags $TAGS"
|
|
||||||
|
|
||||||
for tag in $TAGS; do
|
|
||||||
docker tag wlan-cloud-ucentralgw-ui:${{ github.sha }} ${{ env.DOCKER_REGISTRY_URL }}/ucentralgw-ui:$tag
|
|
||||||
docker push ${{ env.DOCKER_REGISTRY_URL }}/ucentralgw-ui:$tag
|
|
||||||
done
|
|
||||||
Reference in New Issue
Block a user