diff --git a/doc/requirements.txt b/doc/requirements.txt
deleted file mode 100644
index 8e38ac0..0000000
--- a/doc/requirements.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-ansible-core
-sphinx
-sphinx_rtd_theme
-reno[sphinx]
-https://github.com/ypid/yaml4rst/archive/master.tar.gz
-https://github.com/debops/yaml2rst/archive/master.tar.gz
diff --git a/doc/source/_static/.gitkeep b/doc/source/_static/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/doc/source/_static/.gitkeep
+++ /dev/null
diff --git a/doc/source/_templates/yaml4rst/defaults_header.j2 b/doc/source/_templates/yaml4rst/defaults_header.j2
deleted file mode 100644
index 5634148..0000000
--- a/doc/source/_templates/yaml4rst/defaults_header.j2
+++ /dev/null
@@ -1,11 +0,0 @@
----
-# .. vim: foldmarker=[[[,]]]:foldmethod=marker
-
-# .. Copyright (C) 2022 VEXXHOST, Inc.
-# .. SPDX-License-Identifier: Apache-2.0
-
-# Default variables
-# =================
-
-# .. contents:: Sections
-#    :local:
diff --git a/doc/source/conf.py b/doc/source/conf.py
deleted file mode 100644
index d846a1b..0000000
--- a/doc/source/conf.py
+++ /dev/null
@@ -1,112 +0,0 @@
-# Copyright (c) 2022 VEXXHOST, Inc.
-#
-# 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.
-
-# -- Path setup --------------------------------------------------------------
-
-# If extensions (or modules to document with autodoc) are in another directory,
-# add these directories to sys.path here. If the directory is relative to the
-# documentation root, use os.path.abspath to make it absolute, like shown here.
-#
-# import os
-# import sys
-# sys.path.insert(0, os.path.abspath('.'))
-
-import glob
-
-# -- yaml2rst ----------------------------------------------------------------
-import os
-import pathlib
-
-import yaml2rst
-from yaml4rst.reformatter import YamlRstReformatter
-
-for defaults_file in glob.glob("../../roles/*/defaults/main.yml"):
-    role_name = defaults_file.split("/")[-3]
-
-    YamlRstReformatter._HEADER_END_LINES = {
-        "yaml4rst": [
-            "# Default variables",
-            "#    :local:",
-            "# .. contents:: Sections",
-            "# .. include:: includes/all.rst",
-            "# .. include:: includes/role.rst",
-            "# .. include:: ../../../includes/global.rst",
-            "# -----------------",
-        ],
-    }
-
-    reformatter = YamlRstReformatter(
-        preset="yaml4rst",
-        template_path=os.path.join(
-            os.path.abspath(os.path.dirname(__file__)),
-            "_templates",
-        ),
-        config={
-            "ansible_full_role_name": f"vexxhost.atmosphere.{role_name}",
-            "ansible_role_name": role_name,
-        },
-    )
-    reformatter.read_file(defaults_file)
-    reformatter.reformat()
-    reformatter.write_file(
-        output_file=defaults_file,
-        only_if_changed=True,
-    )
-
-    pathlib.Path(f"roles/{role_name}/defaults").mkdir(parents=True, exist_ok=True)
-
-    rst_content = yaml2rst.convert_file(
-        defaults_file,
-        f"roles/{role_name}/defaults/main.rst",
-        strip_regex=r"\s*(:?\[{3}|\]{3})\d?$",
-        yaml_strip_regex=r"^\s{66,67}#\s\]{3}\d?$",
-    )
-
-
-# -- Project information -----------------------------------------------------
-
-project = "Atmosphere"
-copyright = "2022, VEXXHOST, Inc."
-author = "VEXXHOST, Inc."
-
-
-# -- General configuration ---------------------------------------------------
-
-# Add any Sphinx extension module names here, as strings. They can be
-# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
-# ones.
-extensions = [
-    "reno.sphinxext",
-]
-
-# Add any paths that contain templates here, relative to this directory.
-templates_path = ["_templates"]
-
-# List of patterns, relative to source directory, that match files and
-# directories to ignore when looking for source files.
-# This pattern also affects html_static_path and html_extra_path.
-exclude_patterns = []
-
-
-# -- Options for HTML output -------------------------------------------------
-
-# The theme to use for HTML and HTML Help pages.  See the documentation for
-# a list of builtin themes.
-#
-html_theme = "sphinx_rtd_theme"
-
-# Add any paths that contain custom static files (such as style sheets) here,
-# relative to this directory. They are copied after the builtin static files,
-# so a file named "default.css" will overwrite the builtin "default.css".
-html_static_path = ["_static"]
diff --git a/doc/source/index.rst b/doc/source/index.rst
deleted file mode 100644
index 2c4161f..0000000
--- a/doc/source/index.rst
+++ /dev/null
@@ -1,23 +0,0 @@
-.. Atmosphere documentation master file, created by
-   sphinx-quickstart on Sun Mar 13 17:40:34 2022.
-   You can adapt this file completely to your liking, but it should at least
-   contain the root `toctree` directive.
-
-Welcome to Atmosphere's documentation!
-======================================
-
-.. toctree::
-   :maxdepth: 1
-   :caption: Contents:
-
-   user/index
-   roles/index
-   releasenotes
-
-
-Indices and tables
-==================
-
-* :ref:`genindex`
-* :ref:`modindex`
-* :ref:`search`
diff --git a/doc/source/releasenotes.rst b/doc/source/releasenotes.rst
deleted file mode 100644
index dbd6f82..0000000
--- a/doc/source/releasenotes.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-Release Notes
-=============
-
-.. release-notes::
diff --git a/doc/source/roles/build_openstack_requirements/index.rst b/doc/source/roles/build_openstack_requirements/index.rst
deleted file mode 100644
index 0398a5c..0000000
--- a/doc/source/roles/build_openstack_requirements/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``build_openstack_requirements``
-================================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/ceph_csi_rbd/index.rst b/doc/source/roles/ceph_csi_rbd/index.rst
deleted file mode 100644
index 08ae6ff..0000000
--- a/doc/source/roles/ceph_csi_rbd/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``csi``
-=======
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/ceph_mon/index.rst b/doc/source/roles/ceph_mon/index.rst
deleted file mode 100644
index e960778..0000000
--- a/doc/source/roles/ceph_mon/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``ceph_mon``
-============
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/ceph_osd/index.rst b/doc/source/roles/ceph_osd/index.rst
deleted file mode 100644
index 566f156..0000000
--- a/doc/source/roles/ceph_osd/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``ceph_osd``
-============
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/ceph_repository/index.rst b/doc/source/roles/ceph_repository/index.rst
deleted file mode 100644
index 2f4a3ea..0000000
--- a/doc/source/roles/ceph_repository/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``ceph_repository``
-===================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/cert_manager/index.rst b/doc/source/roles/cert_manager/index.rst
deleted file mode 100644
index 43f12e5..0000000
--- a/doc/source/roles/cert_manager/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``cert_manager``
-================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/containerd/index.rst b/doc/source/roles/containerd/index.rst
deleted file mode 100644
index 18efcb9..0000000
--- a/doc/source/roles/containerd/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``containerd``
-==============
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/csi/index.rst b/doc/source/roles/csi/index.rst
deleted file mode 100644
index ddf620b..0000000
--- a/doc/source/roles/csi/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``ceph_csi_rbd``
-================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/helm/index.rst b/doc/source/roles/helm/index.rst
deleted file mode 100644
index fee6c74..0000000
--- a/doc/source/roles/helm/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``helm``
-========
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/index.rst b/doc/source/roles/index.rst
deleted file mode 100644
index a55c879..0000000
--- a/doc/source/roles/index.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-Role reference
-==============
-
-.. toctree::
-   :maxdepth: 1
-   :glob:
-
-   */index
diff --git a/doc/source/roles/ipmi_exporter/index.rst b/doc/source/roles/ipmi_exporter/index.rst
deleted file mode 100644
index cfd9ef8..0000000
--- a/doc/source/roles/ipmi_exporter/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``ipmi_exporter``
-=================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/keepalived/index.rst b/doc/source/roles/keepalived/index.rst
deleted file mode 100644
index f358c35..0000000
--- a/doc/source/roles/keepalived/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``keepalived``
-================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/kube_prometheus_stack/index.rst b/doc/source/roles/kube_prometheus_stack/index.rst
deleted file mode 100644
index 5a32ad9..0000000
--- a/doc/source/roles/kube_prometheus_stack/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``kube_prometheus_stack``
-=========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/kubernetes/index.rst b/doc/source/roles/kubernetes/index.rst
deleted file mode 100644
index 68f6ec7..0000000
--- a/doc/source/roles/kubernetes/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``kubernetes``
-==============
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_cli/index.rst b/doc/source/roles/openstack_cli/index.rst
deleted file mode 100644
index d98260e..0000000
--- a/doc/source/roles/openstack_cli/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_cli``
-=================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_exporter/index.rst b/doc/source/roles/openstack_exporter/index.rst
deleted file mode 100644
index 296257d..0000000
--- a/doc/source/roles/openstack_exporter/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_exporter``
-======================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_barbican/index.rst b/doc/source/roles/openstack_helm_barbican/index.rst
deleted file mode 100644
index 5a26c99..0000000
--- a/doc/source/roles/openstack_helm_barbican/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_barbican``
-===========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_cinder/index.rst b/doc/source/roles/openstack_helm_cinder/index.rst
deleted file mode 100644
index 5bc6b01..0000000
--- a/doc/source/roles/openstack_helm_cinder/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_cinder``
-=========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_endpoints/index.rst b/doc/source/roles/openstack_helm_endpoints/index.rst
deleted file mode 100644
index a2796b8..0000000
--- a/doc/source/roles/openstack_helm_endpoints/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_endpoints``
-============================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_glance/index.rst b/doc/source/roles/openstack_helm_glance/index.rst
deleted file mode 100644
index c16251f..0000000
--- a/doc/source/roles/openstack_helm_glance/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_glance``
-=========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_heat/index.rst b/doc/source/roles/openstack_helm_heat/index.rst
deleted file mode 100644
index b2f4435..0000000
--- a/doc/source/roles/openstack_helm_heat/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_heat``
-=======================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_horizon/index.rst b/doc/source/roles/openstack_helm_horizon/index.rst
deleted file mode 100644
index 71079cf..0000000
--- a/doc/source/roles/openstack_helm_horizon/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_horizon``
-==========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_infra_ceph_provisioners/index.rst b/doc/source/roles/openstack_helm_infra_ceph_provisioners/index.rst
deleted file mode 100644
index 7e6f0ca..0000000
--- a/doc/source/roles/openstack_helm_infra_ceph_provisioners/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_infra_ceph_provisioners``
-==========================================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_infra_libvirt/index.rst b/doc/source/roles/openstack_helm_infra_libvirt/index.rst
deleted file mode 100644
index b2b7b35..0000000
--- a/doc/source/roles/openstack_helm_infra_libvirt/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_infra_libvirt``
-================================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_infra_memcached/index.rst b/doc/source/roles/openstack_helm_infra_memcached/index.rst
deleted file mode 100644
index cf020cd..0000000
--- a/doc/source/roles/openstack_helm_infra_memcached/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_infra_memcached``
-==================================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_infra_openvswitch/index.rst b/doc/source/roles/openstack_helm_infra_openvswitch/index.rst
deleted file mode 100644
index 57ab7cf..0000000
--- a/doc/source/roles/openstack_helm_infra_openvswitch/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_infra_openvswitch``
-====================================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_ingress/index.rst b/doc/source/roles/openstack_helm_ingress/index.rst
deleted file mode 100644
index 7a126e3..0000000
--- a/doc/source/roles/openstack_helm_ingress/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_ingress``
-==========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_keystone/index.rst b/doc/source/roles/openstack_helm_keystone/index.rst
deleted file mode 100644
index c928143..0000000
--- a/doc/source/roles/openstack_helm_keystone/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_keystone``
-===========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_neutron/index.rst b/doc/source/roles/openstack_helm_neutron/index.rst
deleted file mode 100644
index 4cc5106..0000000
--- a/doc/source/roles/openstack_helm_neutron/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_neutron``
-==========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_nova/index.rst b/doc/source/roles/openstack_helm_nova/index.rst
deleted file mode 100644
index a4b3ff5..0000000
--- a/doc/source/roles/openstack_helm_nova/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_nova``
-=======================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_placement/index.rst b/doc/source/roles/openstack_helm_placement/index.rst
deleted file mode 100644
index 87157c4..0000000
--- a/doc/source/roles/openstack_helm_placement/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_placement``
-============================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_senlin/index.rst b/doc/source/roles/openstack_helm_senlin/index.rst
deleted file mode 100644
index 085df9c..0000000
--- a/doc/source/roles/openstack_helm_senlin/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_senlin``
-=========================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/roles/openstack_helm_tempest/index.rst b/doc/source/roles/openstack_helm_tempest/index.rst
deleted file mode 100644
index f9cf349..0000000
--- a/doc/source/roles/openstack_helm_tempest/index.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. Copyright (C) 2022 VEXXHOST, Inc.
-.. SPDX-License-Identifier: Apache-2.0
-
-``openstack_helm_tempest``
-============================
-
-.. toctree::
-   :maxdepth: 2
-
-   defaults/main
diff --git a/doc/source/user/index.rst b/doc/source/user/index.rst
deleted file mode 100644
index 5be5b8e..0000000
--- a/doc/source/user/index.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-User Guide
-==========
-
-.. toctree::
-   :maxdepth: 1
-
-   quickstart
diff --git a/doc/source/user/quickstart.rst b/doc/source/user/quickstart.rst
deleted file mode 100644
index 67f3c5c..0000000
--- a/doc/source/user/quickstart.rst
+++ /dev/null
@@ -1,99 +0,0 @@
-Quickstart
-==========
-
-The quick start intends to provide the most near-production experience possible,
-as it is architected purely towards production-only environments. In order to
-get a quick production-ready experience of Atmosphere, you will need access to
-an OpenStack cloud.
-
-The quick start is powered by Molecule and it is used in continuous integration
-running against the VEXXHOST public cloud so that would be an easy target to
-use to try it out.
-
-You will need the following quotas set up in your cloud account:
-
-  * 8 instances
-  * 32 cores
-  * 128GB RAM
-  * 360GB storage
-
-These resources will be used to create a total of 8 instances broken up as
-follows:
-
-  * 3 Controller nodes
-  * 3 Ceph OSD nodes
-  * 2 Compute nodes
-
-First of all, you'll have to make sure you clone the repository locally to your
-system with ``git`` by running the following command::
-
-   $ git clone https://github.com/vexxhost/atmosphere
-
-You will need ``tox`` installed on your operating system.  You will need to make
-sure that you have the appropriate OpenStack environment variables set (such
-as ``OS_CLOUD`` or ``OS_AUTH_URL``, etc.).  You can also use the following
-environment variables to tweak the behaviour of the Heat stack that is created:
-
-``ATMOSPHERE_STACK_NAME``
-    The name of the Heat stack to be created (defaults to ``atmosphere``).
-
-``ATMOSPHERE_PUBLIC_NETWORK``
-    The name of the public network to attach floating IPs from (defaults to
-    ``public``).
-
-``ATMOSPHERE_IMAGE``
-   The name or UUID of the image to be used for deploying the instances (
-   defaults to ``Ubuntu 20.04.3 LTS (x86_64) [2021-10-04]``).
-
-``ATMOSPHERE_INSTANCE_TYPE``
-   The instance type used to deploy all of the different instances (defaults
-   to ``v3-standard-4``).
-
-``ATMOSPHERE_NAMESERVERS``
-   A comma-separated list of nameservers to be used for the instances (defaults
-   to `1.1.1.1`).
-
-``ATMOSPHERE_USERNAME``
-  The username what is used to login into the instances (defaults to ``ubuntu``).
-
-``ATMOSPHERE_DNS_SUFFIX_NAME``
-  The DNS domainname that is used for the API and Horizon. (defaults
-  to ``nip.io``).
-
-``ATMOSPHERE_ACME_SERVER``
-  The ACME server, currenly this is from Letsencrypt, with
-  StepCA from smallstep it is possible to run a internal ACME server.
-  The CA of that ACME server should be present in the instance image.
-
-Once you're ready to get started, you can run the following command to build
-the Heat stack and ::
-
-   $ tox -e molecule -- converge
-
-This will create a Heat stack with the name ``atmosphere`` and start deploying
-the cloud.  Once it's complete, you can login to any of the systems by using
-the ``login`` sub-command.  For exampel, to login to the first controller node,
-you can run the following::
-
-   $ tox -e molecule -- login -h ctl1
-
-In all the controllers, you will find an ``openrc`` file location inside the
-``root`` account home directory, as well as the OpenStack client installed there
-as well.  You can use it by running the following after logging in::
-
-   $ source /root/openrc
-   $ openstack server list
-
-The Kubernetes administrator configuration will also be available on all of the
-control plane nodes, you can simply use it by running ``kubectl`` commands on
-any of the controllers as ``root``::
-
-   $ kubectl get nodes -owide
-
-Once you're done with your environment and you need to tear it down, you can
-use the ``destroy`` sub-command::
-
-   $ tox -e molecule -- destroy
-
-For more information about the different commands used by Molecule, you can
-refer to the Molecule documentation.
diff --git a/docs/quick-start.md b/docs/quick-start.md
new file mode 100644
index 0000000..aad08c9
--- /dev/null
+++ b/docs/quick-start.md
@@ -0,0 +1,104 @@
+# Quick Start
+
+The quick start intends to provide the most near-production experience possible,
+as it is architected purely towards production-only environments. In order to
+get a quick production-ready experience of Atmosphere, you will need access to
+an OpenStack cloud.
+
+The quick start is powered by Molecule and it is used in continuous integration
+running against the VEXXHOST public cloud so that would be an easy target to
+use to try it out.
+
+You will need the following quotas set up in your cloud account:
+
+* 8 instances
+* 32 cores
+* 128GB RAM
+* 360GB storage
+
+These resources will be used to create a total of 8 instances broken up as
+follows:
+
+* 3 Controller nodes
+* 3 Ceph OSD nodes
+* 2 Compute nodes
+
+First of all, you'll have to make sure you clone the repository locally to your
+system with `git` by running the following command:
+
+```shell
+git clone https://github.com/vexxhost/atmosphere
+```
+
+You will need `poetry` installed on your operating system.  You will need to make
+sure that you have the appropriate OpenStack environment variables set (such
+as `OS_CLOUD` or `OS_AUTH_URL`, etc.).  You can also use the following
+environment variables to tweak the behaviour of the Heat stack that is created:
+
+* `ATMOSPHERE_STACK_NAME`: The name of the Heat stack to be created (defaults to
+  `atmosphere`).
+
+* `ATMOSPHERE_PUBLIC_NETWORK`: The name of the public network to attach floating
+  IPs from (defaults to `public`).
+
+* `ATMOSPHERE_IMAGE`: The name or UUID of the image to be used for deploying the
+  instances (defaults to `Ubuntu 20.04.3 LTS (x86_64) [2021-10-04]`).
+
+* `ATMOSPHERE_INSTANCE_TYPE`: The instance type used to deploy all of the
+  different instances (defaults to `v3-standard-4`).
+
+* `ATMOSPHERE_NAMESERVERS`: A comma-separated list of nameservers to be used for
+  the instances (defaults to `1.1.1.1`).
+
+* `ATMOSPHERE_USERNAME`: The username what is used to login into the instances (
+  defaults to `ubuntu`).
+
+* `ATMOSPHERE_DNS_SUFFIX_NAME`: The DNS domainname that is used for the API and
+  Horizon. (defaults to `nip.io`).
+
+* `ATMOSPHERE_ACME_SERVER`: The ACME server, currenly this is from LetsEncrypt,
+  with StepCA from SmallStep it is possible to run a internal ACME server.
+  The CA of that ACME server should be present in the instance image.
+
+Once you're ready to get started, you can run the following command to build
+the Heat stack and :
+
+```shell
+poetry run molecule converge
+```
+
+This will create a Heat stack with the name `atmosphere` and start deploying
+the cloud.  Once it's complete, you can login to any of the systems by using
+the `login` sub-command.  For exampel, to login to the first controller node,
+you can run the following:
+
+```shell
+poetry run molecule login -h ctl1
+```
+
+In all the controllers, you will find an `openrc` file location inside the
+`root` account home directory, as well as the OpenStack client installed there
+as well.  You can use it by running the following after logging in:
+
+```shell
+source /root/openrc
+openstack server list
+```
+
+The Kubernetes administrator configuration will also be available on all of the
+control plane nodes, you can simply use it by running `kubectl` commands on
+any of the controllers as `root`:
+
+```shell
+kubectl get nodes -owide
+```
+
+Once you're done with your environment and you need to tear it down, you can
+use the `destroy` sub-command:
+
+```shell
+poetry run molecule destroy
+```
+
+For more information about the different commands used by Molecule, you can
+refer to the Molecule documentation.
diff --git a/galaxy.yml b/galaxy.yml
index a6114a6..26d0865 100644
--- a/galaxy.yml
+++ b/galaxy.yml
@@ -20,6 +20,27 @@
 homepage: https://github.com/vexxhost/atmosphere
 issues: https://github.com/vexxhost/atmosphere/issues
 build_ignore:
-  - .tox
-  - .vscode
-  - doc
+  - .github
+  - atmosphere
+  - ci
+  - cmd
+  - docs
+  - images
+  - internal
+  - molecule
+  - .coveragerc
+  - .dockerignore
+  - .flake8
+  - .gitignore
+  - .pre-commit-config.yaml
+  - .python-version
+  - .release-please-manifest.json
+  - CHANGELOG.md
+  - Dockerfile
+  - go.mod
+  - go.sum
+  - jsonnetfile.lock.json
+  - mkdocs.yml
+  - poetry.lock
+  - pyproject.toml
+  - release-please-config.json
