155 Commits

Author SHA1 Message Date
Rishabh Kumar Jain
fd14ed45bf Update Airshipctl and CAPD Documentation
Update the document to use new phases
 - clusterctl-init-ephemeral
 - controlplane-ephemeral
 - initinfra-networking-target
 - clusterctl-init-target
 - clusterctl-move
 - workers-target

Change-Id: If41412b1810cb61092eaccd96161b012b518eaf6
2021-03-23 20:21:44 +00:00
Zuul
bb37ba1382 Merge "SOPS improvements" 2021-03-23 17:41:00 +00:00
Zuul
81a7849f28 Merge "Increase required disk size to 80GB" 2021-03-22 18:22:36 +00:00
Alexey Odinokov
a7e332f9ec SOPS improvements
Added 2 phases:
1. secret-reencrypt - This phase can be used to
reecnrypt the existing secrets with new key.
To do so SOPS_IMPORT_PGP must contain
old public key and new private key (but
may also include other data).
SOPS_PGP_FP must contain fingerprint of
new private key.

2. secret-show - This phase may be useful for some users
that need to see what generated by secret-generate phase.

Disabled SOPS debug by default.
To enable it back run commands with
env variable DEBUG_SOPS_GPG=true

Change-Id: Id7fe13d6943d386577df25dba4aaa83e62e58980
2021-03-19 21:31:25 +00:00
Zuul
86bd2c9984 Merge "Get-kubeconfig return all cluster contexts" 2021-03-19 01:20:48 +00:00
Hemachandra Reddy
8d904c2354 Increase required disk size to 80GB
The existing recommendation of 60GB disk space is not enough to configure
all-in-one airshitpctl. It is not easy to expand disk space in virtual box
and other envivonrments and developer needs to recreate the environment from
scratch again.

Change-Id: Ifdb260e443647eb4dc942674ee495c9790e28fe6
2021-03-17 21:57:54 +00:00
Kostiantyn Kalynovskyi
f24bf00d17 Get-kubeconfig return all cluster contexts
Now if we run `airshipctl cluster get-kubeconfig` without args
it will return kubeconfig for the entire site, which will have
contexts for every cluster defined in cluster map.

Relates-To: #460
Closes: #460

Change-Id: Icf1f09724a5c60ac520b1dbcbda69c3280ac4c7e
2021-03-17 19:27:14 +00:00
Zuul
98c50e1464 Merge "Revert "Adding commands to get and set encryption configs"" 2021-03-17 00:22:09 +00:00
Zuul
2d9de5f8b6 Merge "Revert "Adding encrypt and decrypt subcommands to secret command"" 2021-03-16 17:51:26 +00:00
Zuul
442f9965fb Merge "Remove deprecated cluster init/move commands" 2021-03-16 04:48:32 +00:00
Kostiantyn Kalynovskyi
6207e2c24d Add multiple kubeconifg sources to ClusterMap
Change ClusterMap API object to support multiple kubeconfig sources
for a cluster. If one kubeconfig source fails, kubeconfig builder
will not fail and move on to the next one. This behaviour will allow
to support cases when ephemeral cluster is not accesible anymore or
when target cluster is not yet accessible.

For more information please read issue #460 in airshipctl github

Relates-To: #460
Related-To: #460

Change-Id: I7cd32f78cd7c4ad8814eac357424c24216f40d76
2021-03-10 18:22:30 +00:00
Ruslan Aliev
159cddb269 Revert "Adding encrypt and decrypt subcommands to secret command"
This reverts commit 8fccf09753663fd83e07c01de38d3ca67d9a08d1.

Reason for revert: This change is no longer needed and never used, specified commands aren't implemented. All the encryption logic was implemented in this [1] PS chain.

[1] https://review.opendev.org/q/topic:%22generator_sops_encrypter%22+(status:open%20OR%20status:merged)
 

Change-Id: I94737137707cea63c05573147ba3bde808bf6f00
2021-03-10 11:33:49 -06:00
Ruslan Aliev
e4436ca36d Revert "Adding commands to get and set encryption configs"
This reverts commit 694067492cfedd5e7b369b396bfce9923c0ca3a1.

Reason for revert: Encryption configs inside airship config are
no longer required. Encrypt feature was implemented different way.

Change-Id: I1c8feec75000402e314e815e4832ce740f0e1254
2021-03-10 11:30:32 -06:00
Zuul
2351051ffd Merge "Remove image build command" 2021-03-10 08:23:00 +00:00
Zuul
12d4b63a3d Merge "Phase Validation: cmd changes to support Phase Validation sub command" 2021-03-03 16:52:23 +00:00
Zuul
046e8fb05a Merge "Don't allow to run baremetal actions without flags" 2021-03-03 05:43:29 +00:00
muly
b0eabe544b Phase Validation: cmd changes to support Phase Validation sub command
Relates-To: #330

Change-Id: I8e45696723823d568e2f2eac8de65b38d30c09c3
2021-03-02 13:19:45 +00:00
Vladimir Kozhukalov
ab5ff1076f Remove image build command
We use phases for building the ephemeral ISO image, so
 a user can use `phase run` command instead. It is better
 to remove `image build` subcommand to avoid support of
 an unnecessary piece of code.

Change-Id: Ife9b5fdebc3cdfd5dac3ecccc8fef55811741ce8
Closes: #473
2021-03-02 13:08:15 +03:00
Ruslan Aliev
68e76a9059 Extend cluster get-kubeconfig cmd functionality
This PS will allow us to retrieve kubeconfig from different
kind of sources.

Change-Id: I31381cf466c58373efda40d06587e34bef411c68
Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
2021-03-02 00:22:45 -06:00
Zuul
14a5398746 Merge "Fix CAPG Provider Documentation" 2021-03-01 23:46:36 +00:00
Kostiantyn Kalynovskyi
7dfb0eb98c Don't allow to run baremetal actions without flags
With this change we will be sure that no commands against bmh
hosts will be applied without selector flags specified, now if you
want to target all hosts in inventory you must specify --all flag

Relates-To: #364
Related-To: #364

Closes: #364
Change-Id: I0d615ea226528162e07acc96fa61b26e031145aa
2021-02-24 20:01:15 +00:00
Kostiantyn Kalynovskyi
b5b68b3d0f Remove deprecated cluster init/move commands
Instead of these commands users should run apporopriate phase
linked to clusterctl executor

Relates-To: #463

Change-Id: Iecb7320668fa98cfe322cbf922eb77e9490acbdc
2021-02-24 15:17:10 +00:00
Ratnopam Chakrabarti
58c9210cbf Fix CAPG Provider Documentation
Removed deprecated airshipctl commands
Updated documentation with latest airshipctl commands
and instructions to deploy clusters on CAPG provider.

Closes: #472
Change-Id: I9372950c3c5652bff96ffbb430d3fcc8018e6381
2021-02-24 00:06:00 +00:00
Zuul
69f5b3534d Merge "Allow airshipctl phase render to display encrypted secrets" 2021-02-22 23:40:56 +00:00
Alexey Odinokov
1d7f8db802 Adding secrets/encryption how-to-guide doc
Relates-to: #454
Change-Id: I7ab7a0be00e37ef74258b73e4b2477cc6ac35129
2021-02-17 18:37:26 +00:00
Alexey Odinokov
f2dc2ca3f6 Allow airshipctl phase render to display encrypted secrets
Relates-to: #453
Change-Id: I150a48cbec5c87943ed6c07a8ef8d562437fda46
2021-02-16 19:27:23 +00:00
Ruslan Aliev
7bf93ba699 Implement cluster list command
Required for document validation script.

Change-Id: I555173a445278b31ef51ebf831a79e63446a19bc
Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
2021-02-08 23:54:57 -06:00
Ruslan Aliev
d1c7913ed3 Add cluster name filter for phase list cmd
This patch implements ability to filter phase by given
cluster name.

Change-Id: I4eb95f9f75c57eff4ae8eb41c608c6f6d7fa009c
Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
2021-02-05 17:09:44 -06:00
Sirajudeen
a527b7f1f5 Wrap commands using code block in doc
* Wrapped the SOPs export commands in code block
  to avoid any copy paste issues

Change-Id: I0ba17745ab11caedd575970878d6b34225815fd2
2021-02-05 16:05:51 +00:00
Zuul
aaf738396e Merge "Update packages and documentation" 2021-02-04 22:19:14 +00:00
Zuul
bc7d253586 Merge "Add ability to render different document sets" 2021-02-04 21:21:40 +00:00
Kostiantyn Kalynovskyi
6807547ab2 Add ability to render different document sets
Now we would be able to render phase bundle, executor bundle
and config bundle. Config bundle will contain documents such as
phases and executors.

Relates-To: #459
Closes: #459

Change-Id: Ia6b9196dfb3d8fb3264fef676c975ccc32883fee
2021-02-04 17:40:35 +00:00
Sreejith Punnapuzha
9ac2ecd9a0 Update packages and documentation
* update developer guide with necessary steps
  * update setup script with new packages

Signed-off-by: Sreejith Punnapuzha <Sreejith.Punnapuzha@outlook.com>
Change-Id: I9930f3a626f744bcace63fe22210bb4153306ede
2021-02-04 09:46:54 -06:00
bijayasharma
fc8009f8f0 Replaced incorrect deployment scripts in developers guide
* This commit will replace ./tools/deployment/02_install_clusterctl.sh
  with correct scripts as ./tools/deploymen/21_systemwide_executable.sh
* Also replace ./tools/deployment/24_build_ephemeral_iso.sh with
  ./tools/deployment/24_build_images.sh

Signed-off-by: bijayasharma <vetbijaya@gmail.com>
Change-Id: I61ccc557b31a2aa4ab03974fda597caaa51ca040
2021-02-02 20:14:59 +00:00
Zuul
08681115d5 Merge "Cleanup CAPI deployment script" 2021-02-02 16:38:40 +00:00
Zuul
621b7758e0 Merge "Link cluster get-kubeconfig cmd with appropriate functionality" 2021-02-01 19:19:06 +00:00
Zuul
897faf2d51 Merge "Implement plan run command" 2021-01-28 21:32:27 +00:00
Sirajudeen
00130a9b53 Cleanup CAPI deployment script
* Removed the duplicate script for CAPI ephemeral node deployment
* Updated the generic script to support all providers

Change-Id: Icc1bed5c1b62662109b43ec94ee2fdb5de6de09b
2021-01-28 19:24:20 +00:00
Zuul
71e038a5c5 Merge "Removed capitalization in Error string message" 2021-01-28 15:25:33 +00:00
Dmitry Ukov
178b0eff3e Implement plan run command
Change-Id: Ie627ce670cd2b19d6999dc7c7a7a6dc12b25cace
Closes: #395
2021-01-28 10:13:05 +04:00
Zuul
a2fd0b7b76 Merge "Add inventory interface and cmd line integration" 2021-01-28 02:34:30 +00:00
Sirajudeen
356e57ba7f Add -E to sudo to pass env vars to script
* Recently SOPS keys are added to environment variables.
  So it is required to run script with sudo -E to propogate the
  environment variables to the scripts.

Change-Id: I07985cf890d582f3e40ffa12efd95e89babd1ad4
2021-01-27 21:50:28 +00:00
Dmitry Ukov
c36a8ea022 Introduce generic table printer
* Table printer is based on cli-utils approach
* Rename 'phase plan' command to 'phase list' and print all Phase
documents from model instead of just printing PhasePlan object

Relates-To: #358
Change-Id: If3c5e2463e32f6794af4c82c12955a45583fce80
2021-01-27 14:10:31 +04:00
bijayasharma
661ae70fd0 Removed capitalization in Error string message
* This commit will removed capitalizaion in Error message
  and follow the Golang code rule.
* Golang errors should not begin with capitalization:
  https://github.com/golang/go/wiki/CodeReviewComments#error-strings

Signed-off-by: bijayasharma <vetbijaya@gmail.com>
Change-Id: I053cfa9e21ad56b0f30e476ec36320cb7cea4da4
2021-01-26 19:42:08 +00:00
Ruslan Aliev
899bbdbe07 Link cluster get-kubeconfig cmd with appropriate functionality
This patch links cluster get-kubeconfig command call with
appropriate clusterctl functionality, and also replaces old
callbacks and removes outdated implementation.

Change-Id: Ibd0d981985f94497db250c8df3f5675fdec1d2ca
Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
Relates-To: #374
2021-01-26 11:03:59 -06:00
Kostiantyn Kalynovskyi
4e7b4efa8f Add inventory interface and cmd line integration
Change-Id: If15ea99372358ea97c3b35b01781427e06400db1
2021-01-22 20:21:44 +00:00
Zuul
6a639fcf4e Merge "Fix incorrect links in Hardware Profile Documentation" 2021-01-21 17:53:50 +00:00
Sreejith Punnapuzha
ba8b234f8c Update documentation
* adds steps to setup encryption secrets for SOPS function.

Signed-off-by: Sreejith Punnapuzha <Sreejith.Punnapuzha@outlook.com>
Change-Id: Ic1816760ab696a251695053613d3b1a13ac9ed38
2021-01-19 10:54:17 -06:00
bijayasharma
2615afa87b Add phase tree command in cmd module
*This is the smaller patchset from earlier work:
 https://review.opendev.org/#/c/750449/

* This is the second part of huge PS
* First: https://review.opendev.org/#/c/762386/

Change-Id: I8e7a13445f73b46a8b83f79711551a6fd5f5ce1f
Relates-To: #296
2021-01-08 13:26:08 +00:00
Noor Muhammad Malik
91f4510b1a Fix incorrect links in Hardware Profile Documentation
There was an issue that pointed out incorrect references to the
metal3 API within the Hardware Profile section of Airship 2.0
documentation. They are currently pointing to the API docs and
not the API itself. This patch addresses that issue and updates
the link as suggested.

I've kept the last reference intact, since it points to the API
documentation itself and doesn't require a change.

Relates-To: #422
Closes: #422
Change-Id: I37254a64a27b3cdf2675721b0f1f62d41913915c
2021-01-05 17:25:12 +05:00