A CLI for managing declarative infrastructure.
Go to file
Alexander Noskov 068718e07d Proper error handling with Sushy emulator
This change adds a more informative error message in case of using airshipctl
with a Sushy emulator.

In the current implementation, by executing `airshipctl baremetal powerstatus`
command with invalid BMH configuration for example, returns:
redfish client encountered an error: BMC responded '500 INTERNAL SERVER ERROR'.

After this change the output looks like this:
redfish client encountered an error: BMC responded '500 INTERNAL SERVER ERROR'.
BMC responded: 'Error finding domain by name/UUID "air-ephemeral1" at libvirt
URI qemu:///system": Domain not found: no domain with matching name 'air-ephemeral1''

In case of using airshipctl with baremetal BMC, extendedInfo contains a valid
error message, so there are no issues.

Relates-To: #320

Change-Id: I437f50d5df4b0561f352804f269b0319badcc755
2020-08-26 15:22:33 -05:00
.github Update Airship vulnerability link 2020-05-19 13:45:09 +00:00
certs Adding the ability to inject certificate authorities into docker image 2020-04-24 15:06:11 -05:00
cmd Merge "Exclude kubeconfig from use-context update" 2020-08-20 05:00:23 +00:00
docs Merge "Exclude kubeconfig from use-context update" 2020-08-20 05:00:23 +00:00
manifests Merge "Deploy calico via function." 2020-08-26 14:43:34 +00:00
pkg Proper error handling with Sushy emulator 2020-08-26 15:22:33 -05:00
playbooks Gate scripts refactoring 2020-08-19 14:49:03 -07:00
roles Merge "Add multi-site support to gate runner" 2020-08-21 15:45:56 +00:00
testdata/k8s Switch to Ubuntu focal (20.04) based image 2020-08-13 13:11:25 -05:00
tests/ansible Reusing apache-server instead of httpd 2020-05-01 03:17:02 +00:00
testutil [#310] Declaration redundancy: Unused exported function 2020-08-24 14:35:57 +00:00
tools Merge "Deploy calico via function." 2020-08-26 14:43:34 +00:00
zuul.d Increase Job timeout due to recent infra changes 2020-08-05 16:40:53 +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
CONTRIBUTING.md Guideline against very large Gerrit Changes 2020-07-06 20:51:00 +05:00
Dockerfile Adding the ability to inject certificate authorities into docker image 2020-04-24 15:06:11 -05:00
go.mod Merge "Add poller" 2020-08-20 22:04:23 +00:00
go.sum Merge "Add poller" 2020-08-20 22:04:23 +00:00
LICENSE Add LICENSE 2019-10-19 14:16:05 -05:00
main.go Write cli errors to stderr 2020-05-11 14:02:33 -05:00
Makefile Update Kubectl Version 2020-08-24 09:27:43 -05: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.