go.ligato.io/vpp-agent/v3@v3.5.0/.github/workflows/docker.yml (about) 1 name: Docker 2 on: 3 push: 4 branches: 5 - master 6 - release/* 7 tags: 8 - 'v[0-9]+.[0-9]+.[0-9]+' 9 - 'v[0-9]+.[0-9]+.[0-9]+-beta' 10 - 'v[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+' 11 pull_request: 12 branches: 13 - master 14 15 jobs: 16 build: 17 name: build 18 runs-on: ubuntu-20.04 19 steps: 20 - uses: actions/checkout@v3 21 - name: Dev image 22 run: make dev-image 23 - name: Prod image 24 run: make prod-image 25 - name: List images 26 run: docker images 27 28 deploy-latest: 29 name: deploy latest 30 needs: build 31 runs-on: ubuntu-20.04 32 if: github.event_name == 'push' && contains(github.ref, 'master') 33 steps: 34 - uses: actions/checkout@v3 35 - name: Dev image 36 run: make dev-image 37 - name: Prod image 38 run: make prod-image 39 - name: Tag images 40 run: | 41 docker tag dev_vpp_agent ligato/dev-vpp-agent:latest 42 docker tag prod_vpp_agent ligato/vpp-agent:latest 43 - name: Docker Login 44 run: docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} 45 - name: Push images 46 run: | 47 docker push ligato/vpp-agent:latest 48 49 deploy-tag: 50 name: deploy version 51 needs: build 52 runs-on: ubuntu-20.04 53 if: github.event_name == 'push' && contains(github.ref, 'refs/tags/v') 54 steps: 55 - uses: actions/checkout@v3 56 - name: Dev image 57 run: make dev-image 58 - name: Prod image 59 run: make prod-image 60 - name: Get tag 61 id: vars 62 run: | 63 echo ::set-output name=tag::$(echo ${GITHUB_REF:10}) 64 echo ::group::Env vars 65 echo $(env | sort) 66 echo ::endgroup:: 67 - name: Tag images 68 run: | 69 docker tag dev_vpp_agent ligato/dev-vpp-agent:${{ steps.vars.outputs.tag }} 70 docker tag prod_vpp_agent ligato/vpp-agent:${{ steps.vars.outputs.tag }} 71 - name: Docker Login 72 run: docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} 73 - name: Push images 74 run: | 75 docker push ligato/vpp-agent:${{ steps.vars.outputs.tag }} 76 77 deploy-release: 78 name: deploy release 79 needs: build 80 runs-on: ubuntu-20.04 81 if: github.event_name == 'push' && contains(github.ref, 'release/') 82 steps: 83 - uses: actions/checkout@v3 84 - name: Dev image 85 run: make dev-image 86 - name: Prod image 87 run: make prod-image 88 - name: Get tag 89 id: vars 90 run: | 91 echo ::set-output name=tag::$(echo ${GITHUB_REF:19:22}) 92 echo ::group::Env vars 93 echo $(env | sort) 94 echo ::endgroup:: 95 - name: Tag images 96 run: | 97 docker tag dev_vpp_agent ligato/dev-vpp-agent:${{ steps.vars.outputs.tag }} 98 docker tag prod_vpp_agent ligato/vpp-agent:${{ steps.vars.outputs.tag }} 99 - name: Docker Login 100 run: docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} 101 - name: Push images 102 run: | 103 docker push ligato/vpp-agent:${{ steps.vars.outputs.tag }}