A CLI for managing declarative infrastructure.
Go to file
Vladimir Kozhukalov 6523c800ad Build ephemeral iso using generic container
We build iso image in two steps
 1) We prepare cloud-init data using a krm function
    krm-functions/cloud-init which uses arishipctl capabilities
    to gather necessary data from the executor document bundle.
    Cloud-init data files are written into a directory mounted
    to the krm function container.
 2) We build iso image using image-builder. While doing this
    we mount the directory with cloud-init data files and set
    necessary environment variables defined in the executor
    document.

Relates-To: #440
Change-Id: Id0b34822e95f494d2e2f8fb407700b7f873e7c69
2021-02-25 13:08:31 +00:00
.github Fix github release workflow npm permissions 2021-02-19 12:55:30 -06:00
certs Adding the ability to inject certificate authorities into docker image 2020-04-24 15:06:11 -05:00
cmd Allow airshipctl phase render to display encrypted secrets 2021-02-16 19:27:23 +00:00
docs Merge "Allow airshipctl phase render to display encrypted secrets" 2021-02-22 23:40:56 +00:00
krm-functions Build ephemeral iso using generic container 2021-02-25 13:08:31 +00:00
manifests Build ephemeral iso using generic container 2021-02-25 13:08:31 +00:00
pkg Build ephemeral iso using generic container 2021-02-25 13:08:31 +00:00
playbooks Implements custom QCOW delivery 2021-02-23 15:43:45 -06:00
roles Update sushy-tools to latest 2021-02-11 17:49:42 -06:00
testdata/k8s Revert "Encrypt and decrypt using sops" 2020-11-05 13:53:15 +00:00
tests/ansible Reusing apache-server instead of httpd 2020-05-01 03:17:02 +00:00
testutil Extend kubeconfig builder 2021-02-10 14:52:39 +00:00
tools Merge "Set proper role for worker node" 2021-02-25 01:46:25 +00:00
zuul.d Merge "Increase site doc validation job timeout" 2021-02-22 21:27:38 +00:00
.gitignore Fix typo in .gitignore 2020-05-20 16:07:49 -05:00
.gitreview Gerrit: Add .gitreview file 2019-06-25 08:11:57 -05:00
.golangci.yaml Replace Non-ASCII symbols 2020-08-05 13:22:59 +00:00
.goreleaser.yaml Publish binaries on release 2021-02-09 14:25:38 +00:00
.grenrc.js Github action to create release notes 2020-11-13 15:11:06 -06:00
CONTRIBUTING.md Guideline against very large Gerrit Changes 2020-07-06 20:51:00 +05:00
Dockerfile Add commit and other labels to the airshipctl container image 2021-01-11 14:52:59 +00:00
go.mod Bump kustomize version 2021-02-25 05:13:24 +00:00
go.sum Bump kustomize version 2021-02-25 05:13:24 +00:00
LICENSE Add LICENSE 2019-10-19 14:16:05 -05:00
main.go Refactor airshipctl root command 2020-08-25 17:37:19 -05:00
Makefile Add commit and other labels to the airshipctl container image 2021-01-11 14:52:59 +00:00
README.rst Update stale README and reformat docs 2020-05-11 15:49:32 +00:00
tox.ini Replace venv with tox for documentation builds 2020-05-08 15:47:41 +00:00
Vagrantfile [#32]: scripts for local run playbooks 2020-02-28 17:24:32 -08:00

Airshipctl

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.

Contributing

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.