You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
GitHub Action
Kubernetes Action
1.0.1
Interacts with kubernetes clusters calling kubectl
commands. Integrates support for AWS EKS.
name: CI
on:
- push
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Trigger deploy
uses: Consensys/k8s-gh-action@master
env:
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }}
with:
args: apply deployment.yaml
name: CI
on:
- push
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Trigger deploy
uses: Consensys/k8s-gh-action@master
env:
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }}
with:
args: apply deployment.yaml
One or more secrets needs to be created to store cluster credentials. (see here for help on creating secrets).
- KUBE_CONFIG_DATA: A
base64
representation of~/.kube/config
file.
cat ~/.kube/config | base64 | pbcopy # pbcopy will copy the secret to the clipboard (Mac OSX only)
-
KUBE_CONFIG_DATA: Same as Basic configuration above.
-
AWS_ACCESS_KEY_ID: AWS_ACCESS_KEY_ID of a IAM user with permissions to access the cluster.
-
AWS_SECRET_ACCESS_KEY: AWS_SECRET_ACCESS_KEY of a IAM user with permissions to access the cluster.
Make sure your users has the proper IAM permissions to access your cluster and that its configured inside kubernetes (more info here).
- result: Output of the
kubectl
command.
- name: Save container image
id: image-save
uses: Consensys/k8s-gh-action@master
env:
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }}
with:
args: get deploy foo -o jsonpath="{..image}"
- name: Print image
run:
echo ${{ steps.image-save.outputs.result }}
More info on how to use outputs here.