-
Notifications
You must be signed in to change notification settings - Fork 0
52 lines (49 loc) · 1.93 KB
/
api-service.yml
File metadata and controls
52 lines (49 loc) · 1.93 KB
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
name: Build and Publish API Service.
on:
release:
types: [published]
env:
DOCKERFILE_LOCATION: CoalitionBank.API/Dockerfile
CONTAINER_NAME: api-service
jobs:
build_and_publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Docker login
uses: docker/login-action@v1.10.0
with:
registry: ${{ secrets.CONTAINER_REGISTRY_NAME }}
username: ${{ secrets.CONTAINER_REGISTRY_USERNAME }}
password: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }}
- name: Build and Push container to registry
env:
CONTAINER_TAG: ${{ secrets.CONTAINER_REGISTRY_NAME }}/${{ env.CONTAINER_NAME }}
CONTAINER_TAG_SHA: ${{ secrets.CONTAINER_REGISTRY_NAME }}/${{ env.CONTAINER_NAME }}:${{ github.sha }}
CONTAINER_TAG_LATEST: ${{ secrets.CONTAINER_REGISTRY_NAME }}/${{ env.CONTAINER_NAME }}:latest
run: |
docker build --file=${{ env.DOCKERFILE_LOCATION }} -t ${{ env.CONTAINER_TAG_SHA }} -t ${{ env.CONTAINER_TAG_LATEST }} .
docker push ${{ env.CONTAINER_TAG }} --all-tags
- uses: azure/aks-set-context@v1
with:
creds: '${{ secrets.AZURE_CREDENTIALS }}'
cluster-name: production
resource-group: CoalitionBank
- uses: azure/k8s-create-secret@v1
with:
container-registry-url: ${{ secrets.CONTAINER_REGISTRY_NAME }}
container-registry-username: ${{ secrets.CONTAINER_REGISTRY_USERNAME }}
container-registry-password: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }}
secret-name: acr-secret
namespace: default
force: true
- uses: azure/k8s-deploy@v1
with:
manifests: |
kubernetes/deployments/${{ env.CONTAINER_NAME }}.yml
kubernetes/services/${{ env.CONTAINER_NAME }}.yml
images: |
${{ secrets.CONTAINER_REGISTRY_NAME }}/${{ env.CONTAINER_NAME }}:${{ github.sha }}
imagepullsecrets: |
acr-secret
namespace: default