77
88DevStack is written in POSIX shell script. This choice was made because
99it best illustrates the configuration steps that this implementation takes
10- on setting up and interacting with OpenStack components. DevStack specifies
11- BASH and is compatible with Bash 3.
10+ on setting up and interacting with OpenStack components. DevStack specifically
11+ uses Bash and is compatible with Bash 3.
1212
1313DevStack's official repository is located on GitHub at
1414https://github.com/openstack-dev/devstack.git. Besides the master branch that
@@ -30,9 +30,17 @@ work for DevStack's use cases. There is a subscript ``functions`` that contains
3030generally useful shell functions and is used by a number of the scripts in
3131DevStack.
3232
33+ The ``lib `` directory contains sub-scripts for projects or packages that ``stack.sh ``
34+ sources to perform much of the work related to those projects. These sub-scripts
35+ contain configuration defaults and functions to configure, start and stop the project
36+ or package. These variables and functions are also used by related projects,
37+ such as Grenade, to manage a DevStack installation.
38+
3339A number of additional scripts can be found in the ``tools `` directory that may
34- be useful in setting up special-case uses of DevStack. These include: bare metal
35- deployment, ramdisk deployment and Jenkins integration.
40+ be useful in supporting DevStack installations. Of particular note are ``info.sh ``
41+ to collect and report information about the installed system, and ``instal_prereqs.sh ``
42+ that handles installation of the prerequisite packages for DevStack. It is
43+ suitable, for example, to pre-load a system for making a snapshot.
3644
3745
3846Scripts
@@ -63,8 +71,8 @@ configuration of the user environment::
6371 source $TOP_DIR/openrc
6472
6573``stack.sh `` is a rather large monolithic script that flows through from beginning
66- to end. The process of breaking it down into project-level sub-scripts is nearly
67- complete and should make ``stack.sh `` easier to read and manage .
74+ to end. It has been broken down into project-specific subscripts (as noted above)
75+ located in `` lib `` to make ``stack.sh `` more manageable and to promote code reuse .
6876
6977These library sub-scripts have a number of fixed entry points, some of which may
7078just be stubs. These entry points will be called by ``stack.sh `` in the
@@ -112,6 +120,7 @@ Also, variable declarations in ``stackrc`` do NOT allow overriding (the form
112120``FOO=${FOO:-baz} ``); if they did then they can already be changed in ``localrc ``
113121and can stay in the project file.
114122
123+
115124Documentation
116125-------------
117126
0 commit comments