767ea681bb
The workflow should fail if 'armada_build', 'skip_upgrade_airflow' or 'upgrade_airflow' tasks are in 'upstream_failed' state. This can happen if any of the upstream tasks are in failed state. For instance, if there is a failure in the preflight checks for the UCP components, all its associated downstream tasks will stop and its downstream tasks such as 'armada_build' will go into 'upstream_failed' state. As it is right now, the deckhand_create_site_action_tag Operator will treat the above mentioned scenario as successful (since task is in 'upstream_failed' and not 'failed' state) and will proceed to create the 'site-action-success' tag instead of 'site-action-failure' tag. Hence we will need to capture both task states as failed state. This patch set is meant to fix this erroneous behavior. Change-Id: I01066656d4cc9169d85c6a535d8241470761666a |
||
---|---|---|
charts/shipyard | ||
docs | ||
etc/shipyard | ||
images | ||
src/bin | ||
tests/unit/plugins | ||
tools | ||
.dockerignore | ||
.editorconfig | ||
.gitignore | ||
.gitreview | ||
Makefile | ||
requirements.readthedocs.txt | ||
tox.ini |
docs/README.md
Shipyard
Shipyard adopts the Falcon web framework and uses Apache Airflow as the backend engine to programmatically author, schedule and monitor workflows.
The current workflow is as follows:
- Inital region/site data will be passed to Shipyard from either a human operator or Jenkins
- The data (in YAML format) will be sent to DeckHand for validation and storage
- Shipyard will make use of the post-processed data from DeckHand to interact with DryDock
- DryDock will interact with Promenade to provision and deploy bare metal nodes using Ubuntu MAAS and a resilient Kubernetes cluster will be created at the end of the process
- Once the Kubernetes clusters are up and validated to be working properly, Shipyard will interact with Armada to deploy OpenStack using OpenStack Helm
- Once the OpenStack cluster is deployed, Shipyard will trigger a workflow to perform basic sanity health checks on the cluster
Note: This project, along with the tools used within are community-based and open sourced.
Mission
The goal for Shipyard is to provide a customizable framework for operators and developers alike. This framework will enable end-users to orchestrate and deploy a fully functional container-based Cloud.
Getting Started
This project is under development at the moment. We encourage anyone who is interested in Shipyard to review our documentation
Bugs
If you find a bug, please feel free to create a GitHub issue