Skip to content

marcofranssen/setup-kubectl

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Setup kubectl

This Github action installs kubectl and allows to optionally also install krew to manage kubectl plugins. You can also choose to pre-install a bunch of kubectl plugins by default.

Usage

Install stable

Installs the latest stable release.

steps:
  - uses: marcofranssen/setup-kubectl@v0.3.0
    id: kubectl
  - run: echo ${{ steps.kubectl.output.kubectl-version }}

Install latest

Installs the latest release.

steps:
  - uses: marcofranssen/setup-kubectl@v0.3.0
    id: kubectl
    with:
      kubectl-version: latest
  - run: echo ${{ steps.kubectl.output.kubectl-version }}

Install specific version

Installs the v1.24.5 release.

steps:
  - uses: marcofranssen/setup-kubectl@v0.3.0
    id: kubectl
    with:
      kubectl-version: v1.24.5

Install krew

Install krew allong with kubectl.

steps:
  - uses: marcofranssen/setup-kubectl@v0.3.0
    with:
      enable-plugins: true
  - run: echo ${{ steps.kubectl.output.krew-version }}
  - run: kubectl krew install aws-auth

Install plugins

Install krew allong with kubectl and some plugins.

steps:
  - uses: marcofranssen/setup-kubectl@v0.3.0
    with:
      enable-plugins: true
      plugins: aws-auth,grep
  - run: echo ${{ steps.kubectl.output.krew-version }}
  - run: echo ${{ fromJson(steps.kubectl.output.krew-plugins) }}
  - run: kubectl aws-auth version