Enabling service 'dib' will install the following repos:
* diskimage-builder
* tripleo-image-elements
* os-collect-config
* os-refresh-config
* os-apply-config
These repos are already pre-fetched in devstack-gate.
This will facilitate gating on changes in these projects by building
a custom image then running the heat-slow job against that image.
diskimage_builder is pip installed from the current git checkout
if the dib service is enabled. This allows devstack gating on
diskimage-builder changes while also allowing diskimage-builder to
be installed from releases for other scenarios (for example, ironic).
Change-Id: Ia911cdee86f5b2e2ba1557e5aa8bf392b92ef555
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,27 @@ |
| 0 |
+# dib.sh - Devstack extras script to install diskimage-builder |
|
| 1 |
+ |
|
| 2 |
+if is_service_enabled dib; then |
|
| 3 |
+ if [[ "$1" == "source" ]]; then |
|
| 4 |
+ # Initial source |
|
| 5 |
+ source $TOP_DIR/lib/dib |
|
| 6 |
+ elif [[ "$1" == "stack" && "$2" == "install" ]]; then |
|
| 7 |
+ echo_summary "Installing diskimage-builder" |
|
| 8 |
+ install_dib |
|
| 9 |
+ elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then |
|
| 10 |
+ # no-op |
|
| 11 |
+ : |
|
| 12 |
+ elif [[ "$1" == "stack" && "$2" == "extra" ]]; then |
|
| 13 |
+ # no-op |
|
| 14 |
+ : |
|
| 15 |
+ fi |
|
| 16 |
+ |
|
| 17 |
+ if [[ "$1" == "unstack" ]]; then |
|
| 18 |
+ # no-op |
|
| 19 |
+ : |
|
| 20 |
+ fi |
|
| 21 |
+ |
|
| 22 |
+ if [[ "$1" == "clean" ]]; then |
|
| 23 |
+ # no-op |
|
| 24 |
+ : |
|
| 25 |
+ fi |
|
| 26 |
+fi |
| 0 | 27 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,51 @@ |
| 0 |
+# lib/dib |
|
| 1 |
+# Install and build images with **diskimage-builder** |
|
| 2 |
+ |
|
| 3 |
+# Dependencies: |
|
| 4 |
+# |
|
| 5 |
+# - functions |
|
| 6 |
+# - DEST, DATA_DIR must be defined |
|
| 7 |
+ |
|
| 8 |
+# stack.sh |
|
| 9 |
+# --------- |
|
| 10 |
+# - install_dib |
|
| 11 |
+ |
|
| 12 |
+# Save trace setting |
|
| 13 |
+XTRACE=$(set +o | grep xtrace) |
|
| 14 |
+set +o xtrace |
|
| 15 |
+ |
|
| 16 |
+# Defaults |
|
| 17 |
+# -------- |
|
| 18 |
+ |
|
| 19 |
+# set up default directories |
|
| 20 |
+DIB_DIR=$DEST/diskimage-builder |
|
| 21 |
+TIE_DIR=$DEST/tripleo-image-elements |
|
| 22 |
+DIB_IMAGE_CACHE=$DATA_DIR/diskimage-builder/image-create |
|
| 23 |
+OCC_DIR=$DEST/os-collect-config |
|
| 24 |
+ORC_DIR=$DEST/os-refresh-config |
|
| 25 |
+OAC_DIR=$DEST/os-apply-config |
|
| 26 |
+ |
|
| 27 |
+# Functions |
|
| 28 |
+# --------- |
|
| 29 |
+ |
|
| 30 |
+# install_dib() - Collect source and prepare |
|
| 31 |
+function install_dib {
|
|
| 32 |
+ git_clone $DIB_REPO $DIB_DIR $DIB_BRANCH |
|
| 33 |
+ pushd $DIB_DIR |
|
| 34 |
+ pip_install ./ |
|
| 35 |
+ popd |
|
| 36 |
+ |
|
| 37 |
+ git_clone $TIE_REPO $TIE_DIR $TIE_BRANCH |
|
| 38 |
+ git_clone $OCC_REPO $OCC_DIR $OCC_BRANCH |
|
| 39 |
+ git_clone $ORC_REPO $ORC_DIR $ORC_BRANCH |
|
| 40 |
+ git_clone $OAC_REPO $OAC_DIR $OAC_BRANCH |
|
| 41 |
+ mkdir -p $DIB_IMAGE_CACHE |
|
| 42 |
+} |
|
| 43 |
+ |
|
| 44 |
+# Restore xtrace |
|
| 45 |
+$XTRACE |
|
| 46 |
+ |
|
| 47 |
+# Tell emacs to use shell-script-mode |
|
| 48 |
+## Local variables: |
|
| 49 |
+## mode: shell-script |
|
| 50 |
+## End: |
| ... | ... |
@@ -124,6 +124,10 @@ CINDER_BRANCH=${CINDER_BRANCH:-master}
|
| 124 | 124 |
CINDERCLIENT_REPO=${CINDERCLIENT_REPO:-${GIT_BASE}/openstack/python-cinderclient.git}
|
| 125 | 125 |
CINDERCLIENT_BRANCH=${CINDERCLIENT_BRANCH:-master}
|
| 126 | 126 |
|
| 127 |
+# diskimage-builder |
|
| 128 |
+DIB_REPO=${DIB_REPO:-${GIT_BASE}/openstack/diskimage-builder.git}
|
|
| 129 |
+DIB_BRANCH=${DIB_BRANCH:-master}
|
|
| 130 |
+ |
|
| 127 | 131 |
# image catalog service |
| 128 | 132 |
GLANCE_REPO=${GLANCE_REPO:-${GIT_BASE}/openstack/glance.git}
|
| 129 | 133 |
GLANCE_BRANCH=${GLANCE_BRANCH:-master}
|
| ... | ... |
@@ -184,10 +188,22 @@ NOVA_BRANCH=${NOVA_BRANCH:-master}
|
| 184 | 184 |
NOVACLIENT_REPO=${NOVACLIENT_REPO:-${GIT_BASE}/openstack/python-novaclient.git}
|
| 185 | 185 |
NOVACLIENT_BRANCH=${NOVACLIENT_BRANCH:-master}
|
| 186 | 186 |
|
| 187 |
+# os-apply-config configuration template tool |
|
| 188 |
+OAC_REPO=${OAC_REPO:-${GIT_BASE}/openstack/os-apply-config.git}
|
|
| 189 |
+OAC_BRANCH=${OAC_BRANCH:-master}
|
|
| 190 |
+ |
|
| 191 |
+# os-collect-config configuration agent |
|
| 192 |
+OCC_REPO=${OCC_REPO:-${GIT_BASE}/openstack/os-collect-config.git}
|
|
| 193 |
+OCC_BRANCH=${OCC_BRANCH:-master}
|
|
| 194 |
+ |
|
| 187 | 195 |
# consolidated openstack python client |
| 188 | 196 |
OPENSTACKCLIENT_REPO=${OPENSTACKCLIENT_REPO:-${GIT_BASE}/openstack/python-openstackclient.git}
|
| 189 | 197 |
OPENSTACKCLIENT_BRANCH=${OPENSTACKCLIENT_BRANCH:-master}
|
| 190 | 198 |
|
| 199 |
+# os-refresh-config configuration run-parts tool |
|
| 200 |
+ORC_REPO=${ORC_REPO:-${GIT_BASE}/openstack/os-refresh-config.git}
|
|
| 201 |
+ORC_BRANCH=${ORC_BRANCH:-master}
|
|
| 202 |
+ |
|
| 191 | 203 |
# cliff command line framework |
| 192 | 204 |
CLIFF_REPO=${CLIFF_REPO:-${GIT_BASE}/openstack/cliff.git}
|
| 193 | 205 |
CLIFF_BRANCH=${CLIFF_BRANCH:-master}
|
| ... | ... |
@@ -258,10 +274,9 @@ SWIFTCLIENT_BRANCH=${SWIFTCLIENT_BRANCH:-master}
|
| 258 | 258 |
TEMPEST_REPO=${TEMPEST_REPO:-${GIT_BASE}/openstack/tempest.git}
|
| 259 | 259 |
TEMPEST_BRANCH=${TEMPEST_BRANCH:-master}
|
| 260 | 260 |
|
| 261 |
- |
|
| 262 |
-# diskimage-builder |
|
| 263 |
-DIB_REPO=${DIB_REPO:-${GIT_BASE}/openstack/diskimage-builder.git}
|
|
| 264 |
-DIB_BRANCH=${DIB_BRANCH:-master}
|
|
| 261 |
+# Tripleo elements for diskimage-builder images |
|
| 262 |
+TIE_REPO=${TIE_REPO:-${GIT_BASE}/openstack/tripleo-image-elements.git}
|
|
| 263 |
+TIE_BRANCH=${TIE_BRANCH:-master}
|
|
| 265 | 264 |
|
| 266 | 265 |
# a websockets/html5 or flash powered VNC console for vm instances |
| 267 | 266 |
NOVNC_REPO=${NOVNC_REPO:-https://github.com/kanaka/noVNC.git}
|