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.
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.
This project is under development at the moment. We encourage anyone who is interested in Shipyard to review our documentation
If you find a bug, please feel free to create a GitHub issue