diff --git a/doc/source/airship2/airship-in-a-pod.rst b/doc/source/airship2/airship-in-a-pod.rst new file mode 100644 index 0000000..6784b67 --- /dev/null +++ b/doc/source/airship2/airship-in-a-pod.rst @@ -0,0 +1,20 @@ +.. + Copyright 2020-2021 The Airship authors. + All Rights Reserved. + + Licensed under the Apache License, Version 2.0 (the "License"); you may + not use this file except in compliance with the License. You may obtain + a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + License for the specific language governing permissions and limitations + under the License. + +Airship in a Pod (AIAP) +======================= + +Coming soon. diff --git a/doc/source/airship2/basics.rst b/doc/source/airship2/basics.rst new file mode 100644 index 0000000..850ac8c --- /dev/null +++ b/doc/source/airship2/basics.rst @@ -0,0 +1,21 @@ +.. + Copyright 2020-2021 The Airship authors. + All Rights Reserved. + + Licensed under the Apache License, Version 2.0 (the "License"); you may + not use this file except in compliance with the License. You may obtain + a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + License for the specific language governing permissions and limitations + under the License. + +Airship 2 Basics +================ + +Coming soon. + diff --git a/doc/source/airship2/img/airship_architecture_diagram.png b/doc/source/airship2/img/airship_architecture_diagram.png new file mode 100644 index 0000000..7b1a9c5 Binary files /dev/null and b/doc/source/airship2/img/airship_architecture_diagram.png differ diff --git a/doc/source/develop/layering.rst b/doc/source/airship2/layering.rst similarity index 100% rename from doc/source/develop/layering.rst rename to doc/source/airship2/layering.rst diff --git a/doc/source/airship2/production.rst b/doc/source/airship2/production.rst new file mode 100644 index 0000000..8738e71 --- /dev/null +++ b/doc/source/airship2/production.rst @@ -0,0 +1,21 @@ +.. + Copyright 2020-2021 The Airship authors. + All Rights Reserved. + + Licensed under the Apache License, Version 2.0 (the "License"); you may + not use this file except in compliance with the License. You may obtain + a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + License for the specific language governing permissions and limitations + under the License. + +Deploying A Bare Metal Cluster +============================== + +Coming soon. + diff --git a/doc/source/airship2/release-notes.rst b/doc/source/airship2/release-notes.rst new file mode 100644 index 0000000..b7d67c1 --- /dev/null +++ b/doc/source/airship2/release-notes.rst @@ -0,0 +1,20 @@ +.. + Copyright 2020-2021 The Airship authors. + All Rights Reserved. + + Licensed under the Apache License, Version 2.0 (the "License"); you may + not use this file except in compliance with the License. You may obtain + a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + License for the specific language governing permissions and limitations + under the License. + +Release Notes +============= + +Coming soon. diff --git a/doc/source/develop/developers.rst b/doc/source/develop/airship1-developers.rst similarity index 87% rename from doc/source/develop/developers.rst rename to doc/source/develop/airship1-developers.rst index bf5b152..8074b32 100644 --- a/doc/source/develop/developers.rst +++ b/doc/source/develop/airship1-developers.rst @@ -27,28 +27,6 @@ Welcome aboard! .. _Airship mailing list: http://lists.airshipit.org .. _Slack workspace: http://airshipit.org/slack -===================== -Airship 2 Development -===================== - -Development is underway on Airship 2: the educated evolution of Airship 1, -designed with our experience using Airship in production. Airship 2 makes the -Airship control plane ephemeral, leverages entrenched upstream projects such as -the `Cluster API`_, `Metal Kubed`_, Kustomize_, and `kubeadm`_, and embraces -Kubernetes Custom Resource Definitions (CRDs). To learn more about the Airship -2.0 evolution, see the `Airship 2 evolution blog series`_. - -Each Airship 2 project has its own development guidelines. Join the ongoing Airship 2 -development by referencing the `airshipctl`_ or the `airshipui`_ documentation. - -.. _airshipctl: https://docs.airshipit.org/airshipctl/developers.html -.. _Airship 2 evolution blog series: https://www.airshipit.org/blog/airship-blog-series-1-evolution-towards-2.0 -.. _airshipui: https://docs.airshipit.org/airshipui/developers.html -.. _Cluster API: https://github.com/kubernetes-sigs/cluster-api -.. _kubeadm: https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm -.. _Kustomize: https://github.com/kubernetes-sigs/kustomize -.. _Metal Kubed: https://metal3.io - ===================== Airship 1 Development ===================== diff --git a/doc/source/develop/airship2-developers.rst b/doc/source/develop/airship2-developers.rst new file mode 100644 index 0000000..da0e28d --- /dev/null +++ b/doc/source/develop/airship2-developers.rst @@ -0,0 +1,123 @@ +.. + Licensed under the Apache License, Version 2.0 (the "License"); you may + not use this file except in compliance with the License. You may obtain + a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + License for the specific language governing permissions and limitations + under the License. + +=============== +Getting Started +=============== + +Thank you for your interest in Airship. Our community is eager to help you +contribute to the success of our project and welcome you as a member of our +community! + +We invite you to reach out to us at any time via the `Airship mailing list`_ or +on our `Slack workspace`_. + +Welcome aboard! + +.. _Airship mailing list: http://lists.airshipit.org +.. _Slack workspace: http://airshipit.org/slack + +===================== +Airship 2 Development +===================== + +Development is underway on Airship 2: the educated evolution of Airship 1, +designed with our experience using Airship in production. Airship 2 makes the +Airship control plane ephemeral, leverages entrenched upstream projects such as +the `Cluster API`_, `Metal Kubed`_, Kustomize_, and `kubeadm`_, and embraces +Kubernetes Custom Resource Definitions (CRDs). To learn more about the Airship +2.0 evolution, see the `Airship 2 evolution blog series`_. + +Each Airship 2 project has its own development guidelines. Join the ongoing Airship 2 +development by referencing the `airshipctl`_ or the `airshipui`_ documentation. + +.. _airshipctl: https://docs.airshipit.org/airshipctl/developers.html +.. _Airship 2 evolution blog series: https://www.airshipit.org/blog/airship-blog-series-1-evolution-towards-2.0 +.. _airshipui: https://docs.airshipit.org/airshipui/developers.html +.. _Cluster API: https://github.com/kubernetes-sigs/cluster-api +.. _kubeadm: https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm +.. _Kustomize: https://github.com/kubernetes-sigs/kustomize +.. _Metal Kubed: https://metal3.io + +Testing Changes +--------------- + +Testing of Airship changes can be accomplished several ways: + + #. Standalone, single component testing + #. Integration testing + #. Linting, unit, and functional tests/linting + +.. note:: Testing changes to charts in Airship repositories is best + accomplished using the integration method describe below. + +Final Checks +------------ + +Airship projects provide Makefiles to run unit, integration, and functional +tests as well as lint Python code for PEP8 compliance and Helm charts for +successful template rendering. All checks are gated by Zuul before a change can +be merged. For more information on executing these checks, refer to +project-specific documentation. + +Third party CI tools, such as Jenkins, report results on Airship-in-a-Bottle +patches. These can be exposed using the "Toggle CI" button in the bottom +left-hand page of any gerrit change. + +Pushing code +------------ + +Airship uses the `OpenDev gerrit`_ for code review. Refer to the `OpenStack +Contributing Guide`_ for a tutorial on submitting changes to Gerrit code +review. + +.. _OpenDev gerrit: https://review.opendev.org + +.. _OpenStack Contributing Guide: https://docs.openstack.org/horizon/latest/contributor/contributing.html + +Next steps +---------- + +Upon pushing a change to gerrit, Zuul continuous integration will post job +results on your patch. Refer to the job output by clicking on the job itself to +determine if further action is required. If it's not clear why a job failed, +please reach out to a team member in IRC. We are happy to assist! + +Assuming all continuous integration jobs succeed, Airship community members and +core developers will review your patch and provide feedback. Many patches are +submitted to Airship projects each day. If your patch does not receive feedback +for several days, please reach out using IRC or the Airship mailing list. + +Merging code +------------ + +Like most OpenDev projects, Airship patches require two +2 code review votes +from core members to merge. Once you have addressed all outstanding feedback, +your change will be merged. + +Beyond +------ + +Congratulations! After your first change merges, please keep up-to-date with +the team. We hold two weekly meetings for project and design discussion: + +Our weekly #airshipit IRC meeting provides an opportunity to discuss project +operations. + +Our weekly design call provides an opportunity for in-depth discussion of new +and existing Airship features. + +For more information on the times of each meeting, refer to the `Airship +wiki`_. + +.. _Airship wiki: https://wiki.openstack.org/wiki/Airship diff --git a/doc/source/index.rst b/doc/source/index.rst index d83af59..eb1d436 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -1,5 +1,5 @@ .. - Copyright 2017-2020 AT&T Intellectual Property. + Copyright 2017-2021 AT&T Intellectual Property. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may @@ -33,27 +33,28 @@ Airship documentation serves the entire community with resources for users and developers. .. toctree:: - :caption: Learn About Airship + :caption: Learn About Airship 2 :maxdepth: 1 - What is Airship? + What is Airship 2? + airship2/basics.rst + airship2/release-notes.rst learn/vulnerabilities.rst - develop/layering.rst + airship2/layering.rst + learn/glossary.rst .. toctree:: - :caption: Try Airship + :caption: Try Airship 2 :maxdepth: 1 - Airship-in-a-Bottle - Airsloop: Simple Bare-Metal Airship - Seaworthy: Production-grade Airship + airship2/airship-in-a-pod.rst + airship2/production.rst .. toctree:: - :caption: Develop Airship + :caption: Develop Airship 2 :maxdepth: 1 - develop/developers.rst - develop/conventions.rst + develop/airship2-developers.rst .. toctree:: :caption: Airship Project Documentation @@ -63,7 +64,17 @@ developers. Airshipctl Airshipui Treasuremap - learn/glossary.rst + +.. toctree:: + :caption: Airship 1 Documentation + :maxdepth: 1 + + What is Airship 1? + Airship-in-a-Bottle + Airsloop: Simple Bare-Metal Airship + Seaworthy: Production-grade Airship + develop/airship1-developers.rst + develop/conventions.rst Other Resources ---------------