diff options
author | Scott Moser <smoser@brickies.net> | 2016-11-10 16:42:43 -0500 |
---|---|---|
committer | Scott Moser <smoser@brickies.net> | 2016-11-10 16:48:58 -0500 |
commit | 127f0f5076bf8e5c53dd538899199455ebc08fbc (patch) | |
tree | b749345cefd3c003a8e7960af32d50ea98fa2de3 /doc/rtd/topics/datasources.rst | |
parent | 25c218e5659445ecf64febe03c08c6fd9ca016e6 (diff) | |
download | vyos-cloud-init-127f0f5076bf8e5c53dd538899199455ebc08fbc.tar.gz vyos-cloud-init-127f0f5076bf8e5c53dd538899199455ebc08fbc.zip |
doc: make the RST files consistently formated and other improvements.
The biggest things here are:
* move doc/sources/*/README.rst to doc/rtd/topics/datasources
This gives each datasource a page in the rtd docs, which make
it easier to read.
* consistently use the same header style throughout.
As suggested at
http://thomas-cokelaer.info/tutorials/sphinx/rest_syntax.html
use:
# with overline, for parts
* with overline, for chapters
=, for sections
-, for subsections
^, for subsubsections
“, for paragraphs
Also, move and re-format vendor-data documentation to rtd.
Diffstat (limited to 'doc/rtd/topics/datasources.rst')
-rw-r--r-- | doc/rtd/topics/datasources.rst | 178 |
1 files changed, 38 insertions, 140 deletions
diff --git a/doc/rtd/topics/datasources.rst b/doc/rtd/topics/datasources.rst index 3a9c808c..9acecc53 100644 --- a/doc/rtd/topics/datasources.rst +++ b/doc/rtd/topics/datasources.rst @@ -1,20 +1,21 @@ .. _datasources: -=========== +*********** Datasources -=========== ----------------------- - What is a datasource? ----------------------- +*********** -Datasources are sources of configuration data for cloud-init that typically come -from the user (aka userdata) or come from the stack that created the configuration -drive (aka metadata). Typical userdata would include files, yaml, and shell scripts -while typical metadata would include server name, instance id, display name and other -cloud specific details. Since there are multiple ways to provide this data (each cloud -solution seems to prefer its own way) internally a datasource abstract class was -created to allow for a single way to access the different cloud systems methods -to provide this data through the typical usage of subclasses. +What is a datasource? +===================== + +Datasources are sources of configuration data for cloud-init that typically +come from the user (aka userdata) or come from the stack that created the +configuration drive (aka metadata). Typical userdata would include files, +yaml, and shell scripts while typical metadata would include server name, +instance id, display name and other cloud specific details. Since there are +multiple ways to provide this data (each cloud solution seems to prefer its +own way) internally a datasource abstract class was created to allow for a +single way to access the different cloud systems methods to provide this data +through the typical usage of subclasses. The current interface that a datasource object must provide is the following: @@ -70,131 +71,28 @@ The current interface that a datasource object must provide is the following: def get_package_mirror_info(self) ---- -EC2 ---- - -The EC2 datasource is the oldest and most widely used datasource that cloud-init -supports. This datasource interacts with a *magic* ip that is provided to the -instance by the cloud provider. Typically this ip is ``169.254.169.254`` of which -at this ip a http server is provided to the instance so that the instance can make -calls to get instance userdata and instance metadata. - -Metadata is accessible via the following URL: - -:: - - GET http://169.254.169.254/2009-04-04/meta-data/ - ami-id - ami-launch-index - ami-manifest-path - block-device-mapping/ - hostname - instance-id - instance-type - local-hostname - local-ipv4 - placement/ - public-hostname - public-ipv4 - public-keys/ - reservation-id - security-groups - -Userdata is accessible via the following URL: - -:: - - GET http://169.254.169.254/2009-04-04/user-data - 1234,fred,reboot,true | 4512,jimbo, | 173,,, - -Note that there are multiple versions of this data provided, cloud-init -by default uses **2009-04-04** but newer versions can be supported with -relative ease (newer versions have more data exposed, while maintaining -backward compatibility with the previous versions). - -To see which versions are supported from your cloud provider use the following URL: - -:: - - GET http://169.254.169.254/ - 1.0 - 2007-01-19 - 2007-03-01 - 2007-08-29 - 2007-10-10 - 2007-12-15 - 2008-02-01 - 2008-09-01 - 2009-04-04 - ... - latest - ------------- -Config Drive ------------- - -.. include:: ../../sources/configdrive/README.rst - ----------- -OpenNebula ----------- - -.. include:: ../../sources/opennebula/README.rst - ---------- -Alt cloud ---------- - -.. include:: ../../sources/altcloud/README.rst - --------- -No cloud --------- - -.. include:: ../../sources/nocloud/README.rst - ----- -MAAS ----- - -*TODO* - -For now see: http://maas.ubuntu.com/ - ----------- -CloudStack ----------- - -.. include:: ../../sources/cloudstack/README.rst - ---- -OVF ---- - -*TODO* - -For now see: https://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/files/head:/doc/sources/ovf/ - ---------- -OpenStack ---------- - -.. include:: ../../sources/openstack/README.rst - -------------- -Fallback/None -------------- - -This is the fallback datasource when no other datasource can be selected. It is -the equivalent of a *empty* datasource in that it provides a empty string as userdata -and a empty dictionary as metadata. It is useful for testing as well as for when -you do not have a need to have an actual datasource to meet your instance -requirements (ie you just want to run modules that are not concerned with any -external data). It is typically put at the end of the datasource search list -so that if all other datasources are not matched, then this one will be so that -the user is not left with an inaccessible instance. - -**Note:** the instance id that this datasource provides is ``iid-datasource-none``. -.. _boto: http://docs.pythonboto.org/en/latest/ +Datasource Documentation +======================== +The following is a list of the implemented datasources. +Follow for more information. + +.. toctree:: + :maxdepth: 2 + + datasources/altcloud.rst + datasources/azure.rst + datasources/cloudsigma.rst + datasources/cloudstack.rst + datasources/configdrive.rst + datasources/digitalocean.rst + datasources/ec2.rst + datasources/maas.rst + datasources/nocloud.rst + datasources/opennebula.rst + datasources/openstack.rst + datasources/ovf.rst + datasources/smartos.rst + datasources/fallback.rst + +.. vi: textwidth=78 |