105 Commits

Author SHA1 Message Date
Zuul
8827517782 Merge "Update architecture documentation" 2020-12-19 20:21:32 +00:00
Zuul
ea0a89a881 Merge "Introduce cluster get-kubeconfig command" 2020-12-18 18:30:46 +00:00
Vladimir Kozhukalov
2cd2bb5268 Update architecture documentation
Change-Id: Ief3fdc4d613524fcc75264b5a80c931c37fc2f38
Relates-To: #427
2020-12-18 14:24:09 +03:00
Anderson, Craig (ca846m)
2daacf5f2a image-builder integration for ISO builds
This introduces airshipctl integration with image-builder [0], which
replaces the existing isogen tool for ephemeral ISO generation.

The airshipctl isogen executor has been updated for building ephemeral
ISOs using the image-builder container. The ability for user-declared
filenames for cloud-init user data and network data was removed, since
the user's only interest is in supplying the relevant overrides, not in
transparent naming coordination with the image-builder container. A new
object is added to the document package to identify the document kind,
label, and key to retrieve data from since this is pattern we will
reuse elsewhere.

Progress flag removed as requsted. Progress is reported directly by the
image-builder container.

Isogen debug flag removed in favor of using log.DebugEnabled()

[0] https://review.opendev.org/#/c/730777/

Depends-On: https://review.opendev.org/c/airship/images/+/730777/
Change-Id: I545004feaf2116f8ffb29faf6f7f7f5fcfe24fff
2020-12-17 14:47:53 -08:00
Ruslan Aliev
9cde986a31 Introduce cluster get-kubeconfig command
This command will be used to retrieve kubeconfig from from leveraging
cluster or from document model. Particular implementation will be
added in further commits to make it easier for review.

Change-Id: If9e35dd90fdfcad6fa60a3cc4fab76ec1cb57f62
Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
Related-To: #374
2020-12-16 16:13:42 -06:00
Zuul
b6d52343dc Merge "Allow to perform phase render using document entrypoint" 2020-12-16 16:51:46 +00:00
Kostiantyn Kalynovskyi
a6987107bd Allow to perform phase render using document entrypoint
In current setup, we rely on executor to perform render operation,
however there are many usecases, when we want to have a simple
`kustomize build` performed against document entrypoint in phase.
Now this will be a default behaviour and if a user would like
executor to perform rendering to actually understand what it's
doing, he will be able to specify --executor boolean flag.

Relates-To: #403

Change-Id: I181830f9814ff48a19ba0a1284e89900187bc7d8
2020-12-15 11:28:16 -06:00
bijayasharma
7a0c311356 Add ClusterAPIRef related documentation
This commit adds documentation related to clusterAPIRef.
The PS (https://review.opendev.org/c/airship/airshipctl/+/759514)
related to this already got merged.

Change-Id: Icd372908f371b9578933d7751189af485c81070f
Signed-off-by: bijayasharma <vetbijaya@gmail.com>
Relates-To: #376
2020-12-08 18:18:04 +00:00
Zuul
45b75b6802 Merge "Add plan subcommand group frame" 2020-12-07 17:43:17 +00:00
Zuul
d649d9d450 Merge "Update CAPO documentation" 2020-12-04 18:54:41 +00:00
Dmitry Ukov
653a553d1c Add plan subcommand group frame
Change-Id: Ie90b88ed47fb0050b874eecadafeef3d3fc5f3b1
Relates-To: #395
Relates-To: #385
2020-12-04 17:29:09 +04:00
Zuul
b5b03bb1de Merge "Fix plugins documentation" 2020-12-02 23:44:05 +00:00
Sudeep Batra
511ee4ea3a Added a quickstart section to build All-in-one VM setup
Change-Id: Ic1c35126dd3be2d9f0c033d1a267fd88441fa0fd
2020-12-01 14:29:15 +00:00
Vladimir Kozhukalov
3bdde483fe Fix plugins documentation
Change-Id: Ieb5cb66ee63b06c2e97e107b4c5def936b81ede3
Relates-To: #405
2020-11-26 17:18:35 +03:00
Ratnopam Chakrabarti
98930c137a Update CAPO documentation
Updated openstack-test-site and phase names

Change-Id: I4526bcfda57687ae84e677cf88c7217dd1394927
2020-11-24 15:00:45 -05:00
Sirisha Gopigiri
07b66906ad Cmd changes to add regex support
Added support to accept regex parameter as part of `airshipctl secret
generate encryptionkey` command. This allows user to pass regex parameter
so that the passphrase generated matches the regex.

Relates-To: #398

Change-Id: I3914e6a896bb669e3974fe67c466336e15989a8d
2020-11-18 11:32:28 +05:30
Ruslan Aliev
f7217245a7 Add --overwrite option to config init cmd
Currently airshipctl will overwrite an existing config file
by default during config init execution. This patch adds an
appropriate flag to explicitly control whether the user wants
to overwrite an existing file or not.

Change-Id: I9f4756b98e9d1245145809aed203974e99feb662
Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
2020-11-14 00:52:37 +00:00
Zuul
e14314b624 Merge "Refactoring masterpassphrase cmd to encryptionkey" 2020-11-12 23:43:32 +00:00
Zuul
df3764b7ac Merge "Remove document plugin subcommand" 2020-11-12 03:03:33 +00:00
Dmitry Ukov
9c69138990 Remove document plugin subcommand
This change finalises shift to new version of kustomize plugins

Change-Id: Ie47f42a9e2c4dc03fc4dca437020ad71a564d894
2020-11-11 14:59:14 +04:00
Zuul
084ed45ef3 Merge "Adds command objects for cluster check-certificate-expiration" 2020-11-11 10:09:30 +00:00
Sirisha Gopigiri
62ae2133ba Refactoring masterpassphrase cmd to encryptionkey
The below code changes the `airshipctl secret generate masterpassphrase`
command to `airshipctl secret generate encryptionkey`. This command will
be further enhanced to support regex fields while generating encryption key.

Relates-To: #398
Change-Id: I87626cb410fd19beeb8cd23a5b86d61c48b63e63
2020-11-11 08:59:13 +00:00
Drew Walters
a0f10f05d4 Update proxy guide
This change updates the proxy guide to work with the latest airshipctl
proxy implementation [0]. Whereas users previously needed to modify YAML
documents to use Airship behind a proxy server, users now only need
environment variables.

Additionally, this change includes instructions for using custom DNS
nameservers.

[0] ed1619d336

Change-Id: Ib03293c4f4fa58df60fb48ab8a76227a48ea6fbe
Signed-off-by: Drew Walters <andrew.walters@att.com>
2020-11-09 22:04:22 +00:00
Zuul
788d846b01 Merge "Introducing subcommand cluster check-certificate-expiration" 2020-11-09 21:52:39 +00:00
guhaneswaran20
dd03db0916 Adds command objects for cluster check-certificate-expiration
Reference:- https://hackmd.io/aGaz7YXSSHybGcyol8vYEw
Previous work:- https://review.opendev.org/#/c/755291/

Below is the complete ordered flow of PS for the feature:
https://review.opendev.org/#/c/760498/ - Cobra command
https://review.opendev.org/#/c/760501/ - Command Objects
https://review.opendev.org/#/c/760504/ - TLS check
https://review.opendev.org/#/c/760517/ - Kubeconf check
https://review.opendev.org/#/c/760532/ - Node check
https://review.opendev.org/#/c/760537/ - Combined Unit tests

Change-Id: Ie0fac7799724b7fb2255e387b7e90b26159bda5c
Relates-To: #391
2020-11-06 13:14:21 +00:00
guhaneswaran20
260d6905a4 Introducing subcommand cluster check-certificate-expiration
This command runs through the cluster and reports expirable
entities

Reference:- https://hackmd.io/aGaz7YXSSHybGcyol8vYEw
Previous work:- https://review.opendev.org/#/c/755291/

Below is the complete ordered flow of PS for the feature:
https://review.opendev.org/#/c/760498/ - Cobra command
https://review.opendev.org/#/c/760501/ - Command Objects
https://review.opendev.org/#/c/760504/ - TLS check
https://review.opendev.org/#/c/760517/ - Kubeconf check
https://review.opendev.org/#/c/760532/ - Node check
https://review.opendev.org/#/c/760537/ - Combined Unit tests

Change-Id: I7e20a6d3821877e16a5bc2cb8de3dd3c8b7850e2
Relates-To: #391
2020-11-06 05:28:47 +00:00
Zuul
0c2edba495 Merge "Revert "Encrypt and decrypt using sops"" 2020-11-05 22:32:28 +00:00
Sirisha Gopigiri
f705ff0000 Revert "Encrypt and decrypt using sops"
This reverts commit 9a608de653ffe1ce8f60b5f16249e2152b3522ad.

Requesting revert because of the sops+gpg testcase failure issues. The failed testcases are impacting airship-airshipctl-lint-unit zuul gate.

For more details please refer to https://github.com/airshipit/airshipctl/issues/378

Change-Id: I60f6b5daaeebc038b68556c60413b3d0c6db6d68
2020-11-05 13:53:15 +00:00
Michael Beaver
193dc935f1 Refactor subPath out of config manifests
This change removes the SubPath entry portion of the config manifests, and
refactors several areas that used it. This also updates unit tests to
reflect the new changes.

Closes: #255

Change-Id: Ibbb519a3f1fb28a1594e971274c5de54b99c867e
2020-11-04 09:30:03 -06:00
Zuul
c86bbeaed9 Merge "Fix capo documentation" 2020-11-03 22:02:11 +00:00
Vladislav Kuzmin
cb5849d024 Fix trailing whitespace
Relates-To: #360

Change-Id: I4043baff899b335b520b81bf349f4a9b5ef8e527
2020-11-02 13:17:16 +00:00
Zuul
2257655556 Merge "Phase documentation part #1" 2020-11-02 10:39:40 +00:00
Kostiantyn Kalynovskyi
6059f429e2 Phase documentation part #1
Add phase execution engine scaffolding to documentation.

Also add general architecture of phases, and brief description of
what phases, executors and bundles are.

Next commits will fill in the placeholders and topics in the
documentation, such as metadata and phase plan.

Relates-To: #360

Change-Id: Icac00b046cf50d18a71ca69ef9ecbb8be612f9ab
2020-10-30 12:24:05 -05:00
uday.ruddarraju
9a608de653 Encrypt and decrypt using sops
Design document: https://docs.google.com/document/d/1EjiCuXoiy8DEEXe15KxVJ4iWrwogCyG113_0LdzcWzQ/edit?usp=drive_web&ouid=102644738301620637153

Demo readme: https://hackmd.io/@WE7PUWXBRVeQJzCZkXkOLw/ryoW-aOLv

This patchset comprises of:
- package library to interact with sops
- integrate airshipctl encrypt/decrypt with sops

Change-Id: I2ca3ff3c8661d146708084728cb3f87365a4f39e
2020-10-23 02:27:45 -07:00
Zuul
ab6d9ed311 Merge "Support rotation of svc account tokens" 2020-10-19 15:41:32 +00:00
Guhan Eswaran
b7dd46c4e6 Support rotation of svc account tokens
This patchset introduces airshipctl command
- airshipctl cluster rotate-sa-token which basically rotates SA tokens

Previous work: https://review.opendev.org/#/c/749470/

Change-Id: Ibe932fa8d2831979e5b2ac2781f746e8ec2fdc3c
2020-10-19 07:06:58 +00:00
Ruslan Aliev
0c870e5244 Remove clustertype-related functions
We don't use clustertype anymore, so all the related functions must
be deleted or adjusted as well as appropriate config fields.

Change-Id: I3931fdc71d4318e916f8bbc2d94e062c9df5f641
Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
Relates-To: #349
2020-10-16 11:31:58 -05:00
Zuul
f92e8bd042 Merge "Replace PrimaryRepositoryName with PhaseRepositoryName" 2020-10-13 20:50:53 +00:00
Rishabh Kumar Jain
219b29f1a6 Integrate gcp provider (capg) with airshipctl
* add documentation for gcp provider (capg)
  * add manifests for gcp provider (capg)
  * add cluster templates for control plane and workers
  * add site definition to use gcp provider (capg) with
    control plane and workers

Zuul Gate Scripts: https://review.opendev.org/#/c/749165/
Change-Id: I3ea07fcafe49fc2698d9d961222550c45b40cd66
2020-10-13 17:34:33 +00:00
Ratnopam Chakrabarti
e122945ac7 Fix capo documentation
Replaced phase apply with phase run

Change-Id: I8d118c00f9439ce5f71a9a9f79bdd627972cc6ce
2020-10-12 15:24:02 +00:00
Vladimir Kozhukalov
0dc4ab7491 Replace PrimaryRepositoryName with PhaseRepositoryName
Change-Id: I2276a3b3ea50b8e81dd240815cd00a0a2a2af96e
Relates-To: #356
2020-10-12 15:28:27 +03:00
Zuul
3866d358b8 Merge "Integrate openstack provider(capo) with airshipctl" 2020-10-09 21:47:44 +00:00
Zuul
9ab8452a8e Merge "Add documentation for example hardwareprofile" 2020-10-09 14:11:15 +00:00
Zuul
76e4d3f48c Merge "Remove kubeconfig from config struct" 2020-10-07 21:57:49 +00:00
Ruslan Aliev
fc33287204 Remove kubeconfig from config struct
Change-Id: I5ab8722dd151d9e652e0b20e1d82988cd98505af
Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
2020-10-07 14:35:07 -05:00
Zuul
64ef1f9ef1 Merge "Adding encrypt and decrypt subcommands to secret command" 2020-10-07 19:21:18 +00:00
Ratnopam Chakrabarti
34fd3e0bfc Integrate openstack provider(capo) with airshipctl
* add documentation for openstack provider (capo)
  * add manifests for openstack provider (capo)
  * add cluster templates for control plane and workers
  * add site definition to use openstack provider (capo) with
    control plane and workers

Change-Id: I7158aa87f2ef044d0acca448e3b1c19f58416e22
2020-10-06 16:01:48 -04:00
Zuul
9b79bbf898 Merge "Extend plugin interface with execute method" 2020-10-06 15:40:44 +00:00
uday.ruddarraju
8fccf09753 Adding encrypt and decrypt subcommands to secret command
Design document: https://docs.google.com/document/d/1EjiCuXoiy8DEEXe15KxVJ4iWrwogCyG113_0LdzcWzQ/edit?usp=drive_web&ouid=102644738301620637153

This is the third of multiple patchsets to support
encryption and decryption in airshipctl

Complete feature: https://review.opendev.org/#/c/742695/

Change-Id: Ibe1060a83d11233cccaa3d3989765968a4dbed76
2020-10-06 08:37:56 -07:00
Sidney Shiba
d0683139fe Integration of Azure provider to Airship 2.0
This commit integrates the Azure provider to the Airship 2.0 project.

It adds the following folders:
- manifest/function/capz: This folder contains all manifests required
for the integration of Azure provider.
- manifest/function/k8scontrol-capz: This folder contains the base
manifest for the Azure Workload cluster.
- manifest/site/az-test-site: This folder contains the manifests used
for initializing the CAPI and CAPZ components on the management cluster
invoking "airshipctl cluster init" and manifests used for deploying a
Workload cluster on the Azure Cloud by invoking the command
"airshipctl phase apply azure".
- tools/deployment/azure: provides the script shell that are used in the
zuul gates and local test.

Updated files:
- zuul.d/project.yaml and zuul.d/jobs.yaml have been updated to include
gates for validating the Azure provider integration.

Change-Id: Icbdc7f6f42c159f48dd11e35626da3bc016f5487
2020-10-05 19:27:31 +00:00