-
Notifications
You must be signed in to change notification settings - Fork 4
63 lines (52 loc) · 1.49 KB
/
api-service-build.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
name: Build api service
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# on:
# push:
# tags:
# - '*'
on:
push:
branches:
- main
env:
RGNAME: AKS_RG
ACRNAME: cognixacr
AKSNAME: Cognix_AKS
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to ACR
uses: docker/login-action@v3
with:
registry: ${{ env.ACRNAME }}.azurecr.io
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: API Service Image Docker Build and Push
uses: docker/build-push-action@v2
with:
context: ./backend
file: ./backend/Dockerfile
platforms: linux/amd64
push: true
tags: |
${{ env.ACRNAME }}.azurecr.io/cognix/apiservice:${{ github.ref_name }}
build-args: |
COGNIX_VERSION=${{ github.ref_name }}
service=api
- name: Login to Azure
uses: azure/login@v1
with:
creds: ${{ secrets.AZURE_CREDENTIALS }}
- name: Get AKS kubeconfig
run: az aks get-credentials --resource-group $RGNAME --name $AKSNAME
- name: Deploy API server manifests
run: |
kubectl rollout restart deploy/apiservice