on: push: branches: - 'master' paths-ignore: - '.assets/**' - .gitignore - README.md env: #SOPS_AGE_KEY_PATH: $PWD SOPS_AGE_KEY_FILE: /tmp/age-key.txt PRIVATE_KEY: ${{ secrets.AGE_PRIVATE_KEY }} KUBECONFIG: /tmp/config jobs: deploy_to_cluster: runs-on: ubuntu-latest name: Deploying Kong Configuration environment: dev steps: - name: Checkout uses: actions/checkout@v2 - name: Setup node uses: actions/setup-node@v3.6.0 with: node-version: "18" - name: Install age run: | curl -Lo age.tar.gz https://github.com/FiloSottile/age/releases/download/v1.1.1/age-v1.1.1-linux-amd64.tar.gz tar xf age.tar.gz sudo mv age/age /usr/local/bin sudo mv age/age-keygen /usr/local/bin age -version - name: Install sops run: | curl -Lo sops https://github.com/mozilla/sops/releases/download/v3.7.3/sops-v3.7.3.linux.amd64 sudo mv sops /usr/local/bin/sops sudo chmod +x /usr/local/bin/sops sops --version - name: Install kubectl, helm and setup config file run: | sudo snap install kubectl --classic sudo snap install helm --classic #mkdir -p .kube cp kube/config $KUBECONFIG #echo $PRIVATE_KEY - name: setup private age key. run: | echo $PRIVATE_KEY > /tmp/age-key.txt - name: decrypt values. run: | sops -d -i ./values.yaml - name: deploy Kong Gateway using helm run: | kubectl create namespace kong helm repo add kong https://charts.konghq.com helm repo update helm install my-kong kong/kong -n kong --values ./values.yaml