-
-
Notifications
You must be signed in to change notification settings - Fork 44
52 lines (47 loc) · 1.17 KB
/
flux-ks-sync.yaml
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
---
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
name: "Flux Kustomization Sync"
on:
workflow_dispatch:
push:
branches:
- main
paths:
- .github/workflows/flux-ks-sync.yaml
- kubernetes/main/**
- kubernetes/nas/**
concurrency:
group: ${{ github.ref }}-${{ github.workflow }}
cancel-in-progress: true
jobs:
sync:
name: Flux Kustomization Sync
runs-on:
- arc-runner-set-home-ops
environment: production
strategy:
matrix:
cluster:
- main
- nas
steps:
- name: Install Flux
uses: fluxcd/flux2/action@main
with:
version: "latest"
- name: Write kubeconfig
id: kubeconfig
uses: timheuer/base64-to-file@v1
with:
encodedString: "${{ secrets.KUBECONFIG }}"
fileName: kubeconfig
- name: Sync Kustomization
env:
KUBECONFIG: "${{ steps.kubeconfig.outputs.filePath }}"
shell: bash
run: |
flux \
--context "${{ matrix.cluster }}" \
--namespace flux-system \
reconcile ks cluster \
--with-source