Provides kubectl
command to GitHub Actions.
Mainly because we need to be sure that our kubeconfig
will not leak to third parties :-) We control the code, and we know there are no (and there will be no) backdoors.
config
: base64-encodedkubeconfig
(required);version
: kubectl version, defaults tolatest
. Supported versions: 1.18, 1.19, 1.20, 1.21, 1.22, 1.23, 1.24.latest
is aliased to the latest available version. See: Kubernetes version skew policy;args
: parameters passed tokubectl
.
name: Deploy
on:
push:
branches:
- master
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Deploy to cluster
uses: myrotvorets/[email protected]
with:
config: ${{ secrets.KUBE_CONFIG_DATA }}
version: latest
args: set image --record deployment/application container=${{ github.repository }}:${{ github.sha }}
- name: Verify deployment
uses: myrotvorets/[email protected]
with:
config: ${{ secrets.KUBE_CONFIG_DATA }}
version: latest
args: rollout status deployment/application