Skip to content
terminal

GitHub Action

run-kubectl

2.0.0 Latest version

run-kubectl

terminal

run-kubectl

kubectl as a GitHub Action

Installation

Copy and paste the following snippet into your .yml file.

              

- name: run-kubectl

uses: myrotvorets/[email protected]

Learn more about this action in myrotvorets/kubectl-action

Choose a version

kubectl-action

Provides kubectl command to GitHub Actions.

Why?

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.

Parameters

  • config: base64-encoded kubeconfig (required);
  • version: kubectl version, defaults to latest. 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 to kubectl.

Usage

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