A CLI for managing declarative infrastructure.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sirajudeen 7974e041c5 Regenerate deepcopy with recent changes 2 days ago
.github Improve release notes issue selection accuracy 3 months ago
certs Adding the ability to inject certificate authorities into docker image 1 year ago
cmd Merge "Remove secret generate cmd and its implementation" 2 weeks ago
docs Merge "Update virtualized testing env docs" 2 weeks ago
krm-functions Merge "Use airshipit/alpine in krm-functions" 1 month ago
manifests Merge "Add kubectl-wait-cluster-ephemeral phase" 3 days ago
pkg Regenerate deepcopy with recent changes 2 days ago
playbooks Fix gate script index issue 3 days ago
roles Add publish jobs for AIAP 4 days ago
testdata/k8s Remove NameInKubeconf field from Context struct 4 months ago
tests/ansible Reusing apache-server instead of httpd 1 year ago
testutil Add flags to airshipctl get-kubeconfig cmd 1 month ago
tools Merge "Fix gate script index issue" 2 days ago
zuul.d Add publish jobs for AIAP 4 days ago
.gitignore Fix typo in .gitignore 1 year ago
.gitreview Gerrit: Add .gitreview file 2 years ago
.golangci.yaml Replace Non-ASCII symbols 12 months ago
.goreleaser.yaml Tweak release binaries 3 months ago
.grenrc.js Github action to create release notes 8 months ago
CONTRIBUTING.md Guideline against very large Gerrit Changes 1 year ago
Dockerfile Pass GOPROXY to image build from environment and job 1 month ago
LICENSE Add LICENSE 2 years ago
Makefile Generate additional CRDs from API types 4 weeks ago
README.rst Airship blog series link fix 9 months ago
Vagrantfile [#32]: scripts for local run playbooks 1 year ago
go.mod Invoke validation container directly via ClientV1 package 2 months ago
go.sum Invoke validation container directly via ClientV1 package 2 months ago
main.go Refactor airshipctl root command 11 months ago
tox.ini Replace venv with tox for documentation builds 1 year ago



Airshipctl is a command-line interface that enables users to manage declarative infrastructure and software.

Airshipctl aims to provide a seamless experience for operators wishing to leverage the best open source options such as the Cluster API, Metal Kubed, Kustomize, and kubeadm by providing a straight forward and easily approachable interface.

This project is the heart of our effort to produce Airship 2.0, which has three main evolutions from Airship 1.0:

  • Expand our use of entrenched upstream projects.
  • Embrace Kubernetes Custom Resource Definitions (CRD) – everything becomes an object in Kubernetes.
  • Make the Airship control plane ephemeral.

To learn more about the Airship 2.0 evolution, reference the Airship blog series.


Airshipctl is under active development and welcomes new developers! Please read our developer guide to begin contributing.

We also encourage new contributors and operators alike to join us in our Slack workspace and subscribe to our mailing lists.

You can learn more about Airship on the Airship wiki.