diff --git a/.gitignore b/.gitignore index 765ace8..942f537 100644 --- a/.gitignore +++ b/.gitignore @@ -6,7 +6,8 @@ # Sphinx _build -doc/source/api/ +doc/source/reference/api/ +doc/source/.doctrees/ # Packages/installer info *.egg diff --git a/.zuul.yaml b/.zuul.yaml index 0cb35d0..51c61be 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -174,9 +174,7 @@ - openstack-python36-jobs - openstack-lower-constraints-jobs - openstack-cover-jobs - - docs-on-readthedocs - vars: - rtd_webhook_id: '37378' + - publish-openstack-docs-pti check: jobs: - metalsmith-integration-glance-localboot-centos7 diff --git a/README.rst b/README.rst index 7435a23..e814f5e 100644 --- a/README.rst +++ b/README.rst @@ -1,19 +1,22 @@ Deployment and Scheduling tool for Bare Metal ============================================= +.. image:: https://governance.openstack.org/badges/metalsmith.svg + :target: https://governance.openstack.org/reference/tags/index.html + Overview -------- This is a simple tool to provision bare metal machines using `OpenStack Bare -Metal Service (ironic) `_, -`OpenStack Image Service (glance) `_ -and `OpenStack Networking Service (neutron) -`_. +Metal Service (ironic) `_ and, +optionally, `OpenStack Image Service (glance) +`_ and `OpenStack Networking +Service (neutron) `_. * License: Apache License, Version 2.0 -* Documentation: https://metalsmith.readthedocs.io +* Documentation: https://docs.openstack.org/metalsmith/ * Source: https://git.openstack.org/cgit/openstack/metalsmith -* Bugs: https://storyboard.openstack.org/#!/project/1000 +* Bugs: https://storyboard.openstack.org/#!/project/openstack/metalsmith Installation ------------ @@ -22,30 +25,6 @@ Installation pip install --user metalsmith -CLI Usage ---------- - -Generic usage is as follows:: - - metalsmith --os-cloud deploy --image \ - --network --ssh-public-key \ - --resource-class - -This is an example suitable for TripleO (replace ``compute`` with the profile -you want to deploy):: - - source ~/stackrc - metalsmith deploy --image overcloud-full --network ctlplane \ - --capability profile=compute --ssh-public-key ~/.ssh/id_rsa.pub \ - --resource-class baremetal - -To remove the deployed instance:: - - metalsmith --os-cloud undeploy - -For all possible options see the built-in help:: - - metalsmith --help Contributing ------------ @@ -55,5 +34,5 @@ Contributing (see `developer's guide `_) * Bugs and RFEs: `StoryBoard - `_ + `_ (please do NOT report bugs to Github) diff --git a/doc/requirements.txt b/doc/requirements.txt index 5b346e7..8e56ab1 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -3,3 +3,4 @@ # process, which may cause wedges in the gate later. sphinx!=1.6.6,!=1.6.7,>=1.6.2 # BSD sphinxcontrib-apidoc>=0.2.0 # BSD +openstackdocstheme>=1.18.1 # Apache-2.0 diff --git a/doc/source/cli/index.rst b/doc/source/cli/index.rst new file mode 100644 index 0000000..7af80db --- /dev/null +++ b/doc/source/cli/index.rst @@ -0,0 +1,33 @@ +metalsmith CLI +============== + +Deploy Command +-------------- + +Generic usage is as follows:: + + metalsmith --os-cloud deploy --image \ + --network --ssh-public-key \ + --resource-class + +This is an example suitable for TripleO (replace ``compute`` with the profile +you want to deploy):: + + source ~/stackrc + metalsmith deploy --image overcloud-full --network ctlplane \ + --capability profile=compute --ssh-public-key ~/.ssh/id_rsa.pub \ + --resource-class baremetal + +Undeploy Command +---------------- + +To remove the deployed instance:: + + metalsmith --os-cloud undeploy + +See Also +-------- + +For all possible options see the built-in help:: + + metalsmith --help diff --git a/doc/source/conf.py b/doc/source/conf.py index ff1a4bb..0414234 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -23,9 +23,15 @@ extensions = [ 'sphinxcontrib.apidoc', ] +try: + import openstackdocstheme + extensions.append('openstackdocstheme') +except ImportError: + openstackdocstheme = None + autoclass_content = 'both' apidoc_module_dir = '../../metalsmith' -apidoc_output_dir = 'api' +apidoc_output_dir = 'reference/api' apidoc_excluded_paths = ['test'] apidoc_separate_modules = True @@ -71,6 +77,11 @@ pygments_style = 'sphinx' # html_theme = '_theme' # html_static_path = ['static'] +if openstackdocstheme is not None: + html_theme = 'openstackdocs' +else: + html_theme = 'default' + # Output file base name for HTML help builder. htmlhelp_basename = '%sdoc' % project diff --git a/doc/source/index.rst b/doc/source/index.rst index 12feac8..366f0d2 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -8,12 +8,20 @@ The main entry point to the API is :py:class:`metalsmith.Provisioner`. .. toctree:: :maxdepth: 3 - api/metalsmith + reference/api/metalsmith .. toctree:: :hidden: - api/modules + reference/api/modules + +Command-Line Interface +---------------------- + +.. toctree:: + :maxdepth: 2 + + cli/index Ansible Role ------------ diff --git a/tox.ini b/tox.ini index 73d8a82..9056beb 100644 --- a/tox.ini +++ b/tox.ini @@ -26,6 +26,7 @@ commands = coverage combine coverage report -m --fail-under 90 coverage html -d ./cover --omit='*test*' + coverage xml -o cover/coverage.xml [testenv:venv] deps =