Commit Graph

31 Commits (6203b64aab9bb3d244d800bdfe1f9fcf191189b6)

Author SHA1 Message Date
Michael Beaver c78975c8c9 Add vars to Airskiff to not clone specific repos
This adds new variables to the 005-clone-dependencies script in
Airskiff to be able to turn off cloning for the Airship repositories.
The intended use case of this is so the Airskiff gate can avoid cloning
the repository it is currently testing.

Change-Id: I629ce9373b1b68f7e5fb6b134d9ea063a344a70c
4 years ago
Matt Carter 264f21976f 030-armada-boostrap.sh: make --target-manifest env var driven
Currently the manifest targeted by armada in the
030-armada-bootstrap.sh script is hard-coded to "ucp-bootstrap". This
patch set updates the 030 script to make drive the target manifest
off of a new environment variable "TARGET_MANIFEST". By default
"ucp-bootstrap" is still used, and existing functionality should not
be altered.
The motivation behind this, is it allows us to use the armada
bootstrap script to do more than just bootstrap the ucp components,
which may prove useful in zuul gate jobs that use treasuremap.

Change-Id: If3cf11f0d5701e273f5e626bff673a2b164284e3
4 years ago
Matt McEuen 376e3882f9 Fix airskiff endpoint catalog
This cleans up the Airskiff endpoints by basing them off of the
sloop version.

Change-Id: I9207315a03469e59b205d74097ac83e56d1a9772
4 years ago
Matt McEuen d006cc4867 Airskiff: add deps needed for a fresh install
When running the 020-setup-client.sh script on a new ubuntu 16.04 VM,
the gcc, python-dev, and python-setuptools  apt packages are required
for pip to install the cmd2 package.

Change-Id: Id4f46e7e0c6c607ffc660b8a26f17dbbbb340f4c
4 years ago
Zuul 0ebc90577a Merge "Airskiff: update packages prior to delete" 4 years ago
Matt McEuen 0ecbcf162b Airskiff: update packages prior to delete
Previously, airskiff's 000-install-packages script added the docker
repo, then deleted stale docker packages, then updated the apt database.
This change moves the apt update before the delete, so that apt-get
knows about the packages it's being asked to delete.  Without this in
place it'll fail on a fresh VM that doesn't know about the docker repo.

Change-Id: If009d8371c3ff49e4ed50599d8d62072868a84bf
4 years ago
Evgeny L 5343f76bc1 Use the Airship CLI for lint and Airskiff gates
Using Airship CLI script allows us to use pegleg
image configured in versions.yaml, which will be
updated during regular uplift procedure.

Change-Id: I68a6e5477fc72fb52dfc893b6eef69dd64320ded
4 years ago
Drew Walters 4e6a60ce1a airskiff: Use global Airship charts
Currently, Airskiff deploys a custom manifest defined in
tools/deployment/airskiff/manifests/airship.yaml to boostrap Airship
components. This exempts Airskiff from the daily version uplift process
and causes a divergence from the global UCP charts. This commit updates
the Airskiff bootstrap process to use the existing UCP charts at the
global layer.

Change-Id: I68dc405fda3cb1dbf5865104b657bdd75812e9bc
4 years ago
Zuul d2ea99c43c Merge "Uplift Airskiff pinned Helm-Toolkit" 4 years ago
Matt McEuen b7957b3d52 Uplift Airskiff pinned Helm-Toolkit
This updates the HTK pin used by Airskiff from a Feb 6 commit
to an April 26 commit.

Change-Id: Ib1669401a3cf83ae76ebcfd073d495b3ee2e75e7
4 years ago
Drew Walters c35339eb9e airskiff: Use Docker CE 18.06 for Minikube
Minikube is not yet compatible with Docker CE 18.09. This commit changes
the Docker version to 18.06 for compatibility with Minikube.

Change-Id: Ifb1fb0e5b0755d7340ce4f8a554e270dd5a2e6b5
4 years ago
Evgeny L 40915a8cfc Fix chart repo urls from openstack to opendev
On April 19, OpenStack completed the migration from openstack.org to
opendev.org [0]. During this migration, Airship projects moved from the
"openstack" namespace to the "airship" namespace. This commit makes
preliminary updates to gate and developer scripts to account for the
migration and fix broken integration gates.

[0] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005011.html

Change-Id: Ie955a777016deceed0d3f7f1aa839fba3cfdcc3e
4 years ago
Drew Walters 2ed2a37124 CI: Update repository references
On April 19, OpenStack completed the migration from openstack.org to
opendev.org [0]. During this migration, Airship projects moved from the
"openstack" namespace to the "airship" namespace. This commit makes
preliminary updates to gate and developer scripts to account for the
migration and fix broken integration gates.

[0] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005011.html

Change-Id: I88c4d96a756c59dd68ce8c3b801eba9ca8a6f8db
4 years ago
Drew Walters f41e637d85 airskiff: Update bootstrap OSH-infra pin
Currently, Airskiff deployments fail in Airskiff due to pod a missing
helm-toolkit snippet. This change updates the OSH-infra reference to a
version that includes the missing snippet.

Change-Id: Iad523ecacf5563b4aa3c1ddb4b2a058dfe8c639c
4 years ago
Drew Walters ac91f0cf96 airskiff: Use Minikube for Kubernetes deployment
This commit replaces the kubeadm Kubernetes deployment script with the
new OpenStack-Helm infra minikube deployment script.

[0] https://review.openstack.org/618785

Change-Id: I36c7637a983308891914db7a1cac0907e2724712
4 years ago
Drew Walters 4a41d06c61 airskiff: Pull rather than build Airship images
Currently, Airskiff deployment scripts build images of the Airship
components locally so that local changes can be deployed with ease;
however, pulling images with the latest tag has the same effect because
locally built images take precedence over pulling images from the
internet. Therefore, a developer can still build the images locally and
deploy them using the Airskiff deployment scripts.

Depends-on: https://review.openstack.org/633007
Change-Id: I3dabc86a33651dd082581310fbacb994db144481
4 years ago
Evgeny L e4cd4cde48 Shipyard now requires db init template from osh-infra
Update the version of openstack-infra.
The change was introduced into Shipyard [1], that now
requires db-pg-init template to be defined in osh-infra [2].

[1] https://review.openstack.org/#/c/636147/
[2] https://review.openstack.org/#/c/635348/

Change-Id: Ie653a633424a7250502629bd31befb43d029e693
4 years ago
Zuul c4977836e1 Merge "Use sudo in systemctl unmask call" 4 years ago
Drew Walters 8b83f50003 airskiff: Update OSH-infra pin
The version of Armada deployed by Airskiff was recently uplifted. The
gate erroneously uses the latest version of OSH-infra, so there was no
impact; however, users of the 005-make-airship script experience a
Tiller version mismatch due to an older version of K8s. This change
uplifts the OSH-infra pin to prevent errors.

Change-Id: If8f2c27396ce6c8548598492dfaf5e15174131a2
4 years ago
Steve Wilkerson 21adfe01c2 Airskiff: Unpin Armada
This unpins Armada to references that are compatible with helm
version 2.11.0.  This is no longer required, as the helm version
used in openstack-helm-infra has been updated to 2.12.1, which
addresses the issue requiring armada needing to be pinned in the
airskiff jobs.

Change-Id: Ibef17b8b0e225b1ec04b6aaebd6f1953dd47b31c
See: https://review.openstack.org/#/c/632794/
4 years ago
Pavlo Shchelokovskyy e30492b03d Use sudo in systemctl unmask call
systemctl is generally not accessible w/o sudo.

Change-Id: I205d55670d8225002d0d04fca30c02af665174d4
4 years ago
Zuul 9d789d2e7c Merge "airskiff: Update Armada image to pinned version" 4 years ago
Drew Walters 488048ce76 airskiff: Update Armada image to pinned version
Previously, Armada was pinned [0] to commit
dd75474d78e69f3634eb94c8ea6730b898e83277 in order to prevent a mismatch
between the Helm API and Tiller. While the generated image tag was
updated, the Armada image deployed by Armada during the bootstrapping
phase was not updated, resulting in a version mismatch. This commit
overrides the tag in order to prevent a mismatch.

[0] https://review.openstack.org/630698

Change-Id: I484c5e52560e5c25c76ad557f3032ae9e158166c
4 years ago
Drew Walters f84d7b3f77 airskiff: Install AppArmor in package script
This commit moves the installation and enablement of AppArmor to the
package installation script. Previously, it was in an additional script
where its usage was undocumented, causing confusing deployment errors.

Change-Id: I904f87c544f3edb87ce79fd4d16d5f83596317e9
4 years ago
Drew Walters 6e7dc091a1 airskiff: Pin Armada to K8s v2.11.0
Currently, OpenStack-Helm-Infra uses version 2.11.0 of Kubernetes.
Because Airskiff uses OpenStack-Helm-Infra for deployment of K8s, newer
versions of Armada cause the Airskiff gate to fail, as Armada now uses
Tiller v2.12.1. This commit pins Armada to the latest version that
utilized Tiller v2.11.0. This pin should be removed as soon as
OpenStack-Helm-Infra moves to v2.12.1.

Change-Id: Iaa3a776ffda9678b7736c1b1aac72a1adbedf29b
5 years ago
Drew Walters 826e6b7223 airship: Pin to known OSH-INFRA version
Currently, the latest version of OpenStack-Helm-Infra is used to
bootstrap a Kubernetes cluster and all required charts for the Armada
bootstrap process. Any breaking change in OSH-Infra can cause
inadvertent gate failures in the Airskiff gate even if the integration
itself is not broken. This commit pins all references during the
Airskiff setup process to known commit
f915a85f2ba8ad2f59044c5b8ad733d013a12e25 to prevent inadvertent gate
failures. The latest integration of OSH-infra and Airship remains tested
through regular uplift patches submitted by "Jenkins Uplifter
<jenkins.uplifter@gmail.com>.

Change-Id: If457d4f68b51aa0517c27997350f9986509df17f
5 years ago
Drew Walters 81fcbebe9f airskiff: Purge Docker before installing Docker CE
Currently, if Docker is already installed on a host before running the
Airskiff deployment scripts, deployment will fail due to conflicting
versions of Docker, as the deployment scripts install Docker CE. This
change updates the Airskiff deployment scripts to remove conflicting
versions of Docker before installing Docker CE.

Change-Id: Iad2352dd7ce7dee13040ba5a65bf25347e106c86
5 years ago
Vladyslav Drok 6d6a598945 Install and enable apparmor in gate
Change https://review.openstack.org/614805 starts requiring
apparmor.

Change-Id: Idd7a1abec7a58f5e7c9ace91aaff3c95872cdf5b
5 years ago
Drew Walters 4f46b2c5f7 airskiff: Sequence Airship components
Currently, Airskiff does not deploy Airship components in sequence. This
can lead to timeouts due to limited resources, namely when deploying
Shipyard. This commit changes the Airship components to a sequenced
deployment to avoid timeouts due to limited resources.

Change-Id: Ib0f836652d6d96384ddb031cf52175bbeab1cd86
5 years ago
Matt McEuen 1eaac93df2 Change airskiff manifest to deploy local airship
The airskiff 005-make-airship.sh deployment script clones
the armada, shipyard, deckhand, and OSH projects locally with
the intention of deploying them.  However, the Armada static
chart documents (airship.yaml) were configured to pull them
from git during a deployment.

This change modifies the Armada charts to use the local clones.
This is helpful in situations where a developer is making local
changes to one of the Airship projects -- they can just rerun
the 030-armada-bootstrap.sh script to deploy their local changes
to the running cluster. Same goes for testing changes OSH charts
like barbican, mariadb etc that run in the undercloud deployed
by airskiff.

Change-Id: Ice6a64922d13c8aca277b48d2d5266ab1d06c0f3
5 years ago
Drew Walters ba0d16dc52 site: Add Airskiff site
This change introduces Airskiff (see [0]), a development/learning environment
for the software delivery components of Airship, to the Airship-Treasuremap
repository. This change also adds a set of scripts accompanied by documentation
for easy deployment. During deployment, Armada, Deckhand, Pegleg, and Shipyard
are downloaded and built from source. Gate scripts from the OpenStack-Helm
project deploy a KubeADM-adminstered cluster. Armada deploys Armada, Deckhand,
and Shipyard into the cluster. The Airship components deploy OpenStack using
the documents provided by the Airskiff site. Airskiff is not safe for
production and should not be duplicated for production usage.

[0] https://github.com/mattmceuen/airskiff

Depends-On: https://review.openstack.org/#/c/613686/
Depends-On: https://review.openstack.org/#/c/614032/
Change-Id: Iae1efcca0812b98a9ad05aa8b869bdccfdb7e44b
5 years ago