Add support for tripleo packages
If instack-undercloud is installed from package, other tripleo packages will be used. If run from git, then other tripleo projects will also be used from source. The behavior can also be controlled via $INSTACK_TRIPLEO_SOURCE
This commit is contained in:
parent
8d04e3a2e9
commit
e95a768460
@ -15,7 +15,6 @@ instack-undercloud via source
|
|||||||
|
|
||||||
1. Create initial directory for instack, and clone the needed repositories.
|
1. Create initial directory for instack, and clone the needed repositories.
|
||||||
|
|
||||||
|
|
||||||
mkdir instack
|
mkdir instack
|
||||||
cd instack
|
cd instack
|
||||||
git clone https://github.com/agroup/instack-undercloud
|
git clone https://github.com/agroup/instack-undercloud
|
||||||
|
@ -13,7 +13,7 @@ sudo pip install -U oslo.serialization
|
|||||||
# in the spec.
|
# in the spec.
|
||||||
sudo yum -y install \
|
sudo yum -y install \
|
||||||
https://kojipkgs.fedoraproject.org//packages/python-tooz/0.3/1.fc22/noarch/python-tooz-0.3-1.fc22.noarch.rpm \
|
https://kojipkgs.fedoraproject.org//packages/python-tooz/0.3/1.fc22/noarch/python-tooz-0.3-1.fc22.noarch.rpm \
|
||||||
https://kojipkgs.fedoraproject.org//packages/python-pymemcache/1.2.5/2.fc22/noarch/python-pymemcache-1.2.5-2.fc22.noarch.rpm
|
https://kojipkgs.fedoraproject.org//packages/python-pymemcache/1.2.5/2.fc22/noarch/python-pymemcache-1.2.5-2.fc22.noarch.rpm || true
|
||||||
|
|
||||||
# ceilometer requires an api_paste.ini
|
# ceilometer requires an api_paste.ini
|
||||||
# not yet fixed in Delorean, fixed in dist-git
|
# not yet fixed in Delorean, fixed in dist-git
|
||||||
|
@ -11,26 +11,10 @@ export DIB_INSTALLTYPE_swift=package
|
|||||||
export DIB_INSTALLTYPE_cinder=package
|
export DIB_INSTALLTYPE_cinder=package
|
||||||
export DIB_INSTALLTYPE_horizon=source
|
export DIB_INSTALLTYPE_horizon=source
|
||||||
export DIB_INSTALLTYPE_ceilometer=package
|
export DIB_INSTALLTYPE_ceilometer=package
|
||||||
|
|
||||||
# We are installing ironic from source so we can easily apply the discovery
|
|
||||||
# patch for now.
|
|
||||||
# Nova must also be installed from source when installing ironic from source as
|
|
||||||
# they make use of each other's venv's.
|
|
||||||
# python-ironicclient also must be from source
|
|
||||||
# novnc from source as well.
|
|
||||||
# export DIB_INSTALLTYPE_ironic=source
|
|
||||||
# export DIB_REPOLOCATION_ironic=https://review.openstack.org/openstack/ironic
|
|
||||||
# export DIB_REPOREF_ironic=refs/changes/31/110031/30
|
|
||||||
# export DIB_INSTALLTYPE_nova=source
|
|
||||||
# export DIB_INSTALLTYPE_python_ironicclient=source
|
|
||||||
# export DIB_INSTALLTYPE_novnc=source
|
|
||||||
|
|
||||||
export DIB_INSTALLTYPE_ironic=package
|
export DIB_INSTALLTYPE_ironic=package
|
||||||
export DIB_INSTALLTYPE_nova=package
|
export DIB_INSTALLTYPE_nova=package
|
||||||
export DIB_INSTALLTYPE_python_ironicclient=package
|
|
||||||
export DIB_INSTALLTYPE_novnc=package
|
|
||||||
|
|
||||||
# Use packages for the clients
|
# Clients
|
||||||
export DIB_INSTALLTYPE_python_cinderclient=package
|
export DIB_INSTALLTYPE_python_cinderclient=package
|
||||||
export DIB_INSTALLTYPE_python_glanceclient=package
|
export DIB_INSTALLTYPE_python_glanceclient=package
|
||||||
export DIB_INSTALLTYPE_python_heatclient=package
|
export DIB_INSTALLTYPE_python_heatclient=package
|
||||||
@ -39,11 +23,18 @@ export DIB_INSTALLTYPE_python_neutronclient=package
|
|||||||
export DIB_INSTALLTYPE_python_novaclient=package
|
export DIB_INSTALLTYPE_python_novaclient=package
|
||||||
export DIB_INSTALLTYPE_python_swiftclient=package
|
export DIB_INSTALLTYPE_python_swiftclient=package
|
||||||
export DIB_INSTALLTYPE_python_ceilometerclient=package
|
export DIB_INSTALLTYPE_python_ceilometerclient=package
|
||||||
|
export DIB_INSTALLTYPE_python_ironicclient=package
|
||||||
|
|
||||||
# os-*-config
|
# os-*-config
|
||||||
export DIB_INSTALLTYPE_os_collect_config=package
|
export DIB_INSTALLTYPE_os_collect_config=package
|
||||||
export DIB_INSTALLTYPE_os_refresh_config=package
|
export DIB_INSTALLTYPE_os_refresh_config=package
|
||||||
export DIB_INSTALLTYPE_os_apply_config=package
|
export DIB_INSTALLTYPE_os_apply_config=package
|
||||||
|
|
||||||
|
# TripleO
|
||||||
|
# Make the setting for tripleo-heat-templates overrideable for the source
|
||||||
|
# install. Can be removed when source install is removed.
|
||||||
|
export DIB_INSTALLTYPE_tripleo_heat_templates=${DIB_INSTALLTYPE_tripleo_heat_templates:-package}
|
||||||
|
|
||||||
# Miscellaneous
|
# Miscellaneous
|
||||||
export DIB_INSTALLTYPE_get_pip_py=package
|
export DIB_INSTALLTYPE_get_pip_py=package
|
||||||
|
export DIB_INSTALLTYPE_novnc=package
|
||||||
|
@ -14,7 +14,7 @@ sudo ip addr del 192.0.2.1/24 dev eth1 || true
|
|||||||
source /root/tripleo-undercloud-passwords
|
source /root/tripleo-undercloud-passwords
|
||||||
source /root/stackrc
|
source /root/stackrc
|
||||||
|
|
||||||
export PATH=$PATH:$INSTACK_ROOT/tripleo-incubator/scripts
|
export PATH=$PATH:$INSTACK_ROOT/instack-undercloud/scripts
|
||||||
|
|
||||||
if [ ! -f /root/.ssh/authorized_keys ]; then
|
if [ ! -f /root/.ssh/authorized_keys ]; then
|
||||||
sudo mkdir -p /root/.ssh
|
sudo mkdir -p /root/.ssh
|
||||||
@ -36,7 +36,7 @@ fi
|
|||||||
|
|
||||||
# Ensure keystone is up before continuing on.
|
# Ensure keystone is up before continuing on.
|
||||||
# Waits for up to 2 minutes.
|
# Waits for up to 2 minutes.
|
||||||
wait_for 12 10 service $KEYSTONE_SERVICE status
|
tripleo wait_for 12 10 service $KEYSTONE_SERVICE status
|
||||||
|
|
||||||
# Because keystone just still isn't up yet...
|
# Because keystone just still isn't up yet...
|
||||||
sleep 20
|
sleep 20
|
||||||
@ -61,7 +61,7 @@ REGISTER_SERVICE_OPTS=
|
|||||||
keystone role-create --name=ResellerAdmin
|
keystone role-create --name=ResellerAdmin
|
||||||
|
|
||||||
# TODO: this needs to be switched over to use os-cloud-config's setup-endpoints
|
# TODO: this needs to be switched over to use os-cloud-config's setup-endpoints
|
||||||
setup-endpoints $UNDERCLOUD_IP $ENDPOINT_LIST $REGISTER_SERVICE_OPTS
|
tripleo setup-endpoints $UNDERCLOUD_IP $ENDPOINT_LIST $REGISTER_SERVICE_OPTS
|
||||||
|
|
||||||
keystone role-create --name heat_stack_user
|
keystone role-create --name heat_stack_user
|
||||||
|
|
||||||
@ -72,10 +72,21 @@ NETWORK_GATEWAY=$(os-apply-config --key neutron.network_gateway --type netaddres
|
|||||||
METADATA_SERVER=$UNDERCLOUD_IP
|
METADATA_SERVER=$UNDERCLOUD_IP
|
||||||
PHYSICAL_NETWORK=ctlplane
|
PHYSICAL_NETWORK=ctlplane
|
||||||
|
|
||||||
setup-neutron \
|
NETWORK_JSON=$(mktemp)
|
||||||
$DHCP_START $DHCP_END \
|
jq "." <<EOF > $NETWORK_JSON
|
||||||
$NETWORK_CIDR $NETWORK_GATEWAY \
|
{
|
||||||
$METADATA_SERVER $PHYSICAL_NETWORK
|
"physical": {
|
||||||
|
"gateway": "$NETWORK_GATEWAY",
|
||||||
|
"metadata_server": "$UNDERCLOUD_IP",
|
||||||
|
"cidr": "$NETWORK_CIDR",
|
||||||
|
"allocation_start": "$DHCP_START",
|
||||||
|
"allocation_end": "$DHCP_END",
|
||||||
|
"name": "$PHYSICAL_NETWORK"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
setup-neutron -n $NETWORK_JSON
|
||||||
|
rm $NETWORK_JSON
|
||||||
|
|
||||||
# Delete initial flavors
|
# Delete initial flavors
|
||||||
for flavor in m1.tiny m1.small m1.medium m1.large m1.xlarge; do
|
for flavor in m1.tiny m1.small m1.medium m1.large m1.xlarge; do
|
||||||
@ -88,8 +99,8 @@ done
|
|||||||
nova quota-update --cores -1 --instances -1 --ram -1 $(keystone tenant-get admin | awk '$2=="id" {print $4}')
|
nova quota-update --cores -1 --instances -1 --ram -1 $(keystone tenant-get admin | awk '$2=="id" {print $4}')
|
||||||
|
|
||||||
# Using the source checkout path for now.
|
# Using the source checkout path for now.
|
||||||
sudo -u stack /home/stack/instack-undercloud/scripts/instack-prepare-for-overcloud
|
instack-prepare-for-overcloud
|
||||||
sudo rm -rf /home/stack/.novaclient
|
rm -rf $HOME/.novaclient
|
||||||
/home/stack/instack-undercloud/scripts/instack-prepare-discovery
|
instack-prepare-discovery
|
||||||
|
|
||||||
touch $OK_FILE
|
touch $OK_FILE
|
||||||
|
@ -144,5 +144,4 @@
|
|||||||
"recheck_interval": "5",
|
"recheck_interval": "5",
|
||||||
"quorum_policy": "ignore"
|
"quorum_policy": "ignore"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
5
elements/undercloud-stack-config/post-install.d/10-tuskar-role-directory
Executable file
5
elements/undercloud-stack-config/post-install.d/10-tuskar-role-directory
Executable file
@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
cat > /opt/stack/os-config-refresh/environment.d/10-tuskar-role-directory <<EOF
|
||||||
|
export TUSKAR_ROLE_DIRECTORY=$TUSKAR_ROLE_DIRECTORY
|
||||||
|
EOF
|
@ -1,6 +1,11 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
export INSTACK_ROOT=${INSTACK_ROOT:-$(pwd)}
|
export INSTACK_ROOT=${INSTACK_ROOT:-$(pwd)}
|
||||||
|
if [ "$INSTACK_ROOT" = "/usr/share" ]; then
|
||||||
|
export INSTACK_TRIPLEO_SOURCE=${INSTACK_TRIPLEO_SOURCE:-"0"}
|
||||||
|
else
|
||||||
|
export INSTACK_TRIPLEO_SOURCE=${INSTACK_TRIPLEO_SOURCE:-"1"}
|
||||||
|
fi
|
||||||
export TRIPLEO_ROOT=$INSTACK_ROOT
|
export TRIPLEO_ROOT=$INSTACK_ROOT
|
||||||
|
|
||||||
export PATH=$PATH:$INSTACK_ROOT/instack-undercloud:$INSTACK_ROOT/instack-undercloud/scripts:$INSTACK_ROOT/diskimage-builder/bin
|
export PATH=$PATH:$INSTACK_ROOT/instack-undercloud:$INSTACK_ROOT/instack-undercloud/scripts:$INSTACK_ROOT/diskimage-builder/bin
|
||||||
@ -16,6 +21,13 @@ export DELOREAN=${DELOREAN:-1}
|
|||||||
# Using LKG is the default
|
# Using LKG is the default
|
||||||
export LKG=${LKG:-1}
|
export LKG=${LKG:-1}
|
||||||
|
|
||||||
|
if [ "$DELOREAN" = "1" ]; then
|
||||||
|
export JSONFILE=${JSONFILE:-$INSTACK_ROOT/instack-undercloud/json-files/fedora-20-undercloud-delorean.json}
|
||||||
|
else
|
||||||
|
export JSONFILE=${JSONFILE:-$INSTACK_ROOT/instack-undercloud/json-files/fedora-20-undercloud-source.json}
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
export COMPLETION_MESSAGE="\
|
export COMPLETION_MESSAGE="\
|
||||||
#############################################################################
|
#############################################################################
|
||||||
install-undercloud complete.
|
install-undercloud complete.
|
||||||
@ -44,9 +56,9 @@ export PIP_DOWNLOAD_CACHE=~/.cache/pip
|
|||||||
|
|
||||||
if [ "$LKG" = "1" ]; then
|
if [ "$LKG" = "1" ]; then
|
||||||
# These are set manually, since they're not part of source-repositories
|
# These are set manually, since they're not part of source-repositories
|
||||||
export DIB_REPOREF_tripleo_image_elements=5fea32ff79220fce2eb808d9b119832a98ace626
|
export DIB_REPOREF_tripleo_image_elements=37e136e0670d0606ae36026f6dd0e46b14943a46
|
||||||
export DIB_REPOREF_diskimage_builder=dbc60e8942ca700cd673a115a6d327af8ee41483
|
export DIB_REPOREF_diskimage_builder=de60893ccd78b35731828081e0aaa053676cbfed
|
||||||
export DIB_REPOREF_os_cloud_config=4a03e6b129c91a7269b6103a1f85fd011ec92c91
|
export DIB_REPOREF_os_cloud_config=a2b5ec4d4d0f22dd58454023324d1245ecdeece7
|
||||||
export DIB_REPOREF_tripleo_incubator=c3fb309727671130a32b4c19de48ec22c8530aa1
|
export DIB_REPOREF_tripleo_incubator=c3fb309727671130a32b4c19de48ec22c8530aa1
|
||||||
|
|
||||||
# This is set manually since swift is not part of the undercloud
|
# This is set manually since swift is not part of the undercloud
|
||||||
@ -94,10 +106,10 @@ if [ "$LKG" = "1" ]; then
|
|||||||
export DIB_REPOLOCATION_python_swiftclient=https://git.openstack.org/openstack/python-swiftclient.git
|
export DIB_REPOLOCATION_python_swiftclient=https://git.openstack.org/openstack/python-swiftclient.git
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export ELEMENTS_PATH="\
|
export ELEMENTS_PATH=${ELEMENTS_PATH:-"\
|
||||||
$INSTACK_ROOT/instack-undercloud/elements:\
|
$INSTACK_ROOT/instack-undercloud/elements:\
|
||||||
$INSTACK_ROOT/tripleo-image-elements/elements/:\
|
$INSTACK_ROOT/tripleo-image-elements/elements/:\
|
||||||
$INSTACK_ROOT/diskimage-builder/elements/"
|
$INSTACK_ROOT/diskimage-builder/elements"}
|
||||||
|
|
||||||
export DEPLOY_IMAGE_ELEMENT=deploy-ironic
|
export DEPLOY_IMAGE_ELEMENT=deploy-ironic
|
||||||
export DEPLOY_NAME=deploy-ramdisk-ironic
|
export DEPLOY_NAME=deploy-ramdisk-ironic
|
||||||
|
@ -14,8 +14,7 @@ Requires: instack
|
|||||||
Requires: openstack-tripleo
|
Requires: openstack-tripleo
|
||||||
Requires: openstack-tripleo-heat-templates
|
Requires: openstack-tripleo-heat-templates
|
||||||
Requires: openstack-tripleo-image-elements
|
Requires: openstack-tripleo-image-elements
|
||||||
Requires: openstack-tuskar
|
Requires: os-cloud-config
|
||||||
Requires: openstack-tuskar-ui
|
|
||||||
Requires: redhat-lsb-core
|
Requires: redhat-lsb-core
|
||||||
Requires: policycoreutils-python
|
Requires: policycoreutils-python
|
||||||
|
|
||||||
@ -49,19 +48,22 @@ cp scripts/instack-install-undercloud-source %{buildroot}/%{_bindir}
|
|||||||
cp scripts/instack-prepare-for-overcloud %{buildroot}/%{_bindir}
|
cp scripts/instack-prepare-for-overcloud %{buildroot}/%{_bindir}
|
||||||
cp scripts/instack-test-overcloud %{buildroot}/%{_bindir}
|
cp scripts/instack-test-overcloud %{buildroot}/%{_bindir}
|
||||||
cp scripts/instack-virt-setup %{buildroot}/%{_bindir}
|
cp scripts/instack-virt-setup %{buildroot}/%{_bindir}
|
||||||
|
cp scripts/instack-prepare-discovery %{buildroot}/%{_bindir}
|
||||||
# json files
|
# json files
|
||||||
cp -ar json-files %{buildroot}/%{_datadir}/instack-undercloud
|
cp -ar json-files %{buildroot}/%{_datadir}/instack-undercloud
|
||||||
|
# sourcerc
|
||||||
|
cp instack-sourcerc %{buildroot}/%{_datadir}/instack-undercloud
|
||||||
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc README.md
|
%doc README.md
|
||||||
%doc LICENSE
|
%doc LICENSE
|
||||||
%doc instack-baremetal.answers.sample
|
%doc instack.answers.sample
|
||||||
%doc instack-virt.answers.sample
|
|
||||||
%doc deploy-virt-overcloudrc
|
%doc deploy-virt-overcloudrc
|
||||||
%doc deploy-baremetal-overcloudrc
|
%doc deploy-baremetal-overcloudrc
|
||||||
%{_datadir}/instack-undercloud
|
%{_datadir}/instack-undercloud
|
||||||
%{_bindir}/instack-install-undercloud
|
%{_bindir}/instack-install-undercloud
|
||||||
|
%{_bindir}/instack-install-undercloud-source
|
||||||
%{_bindir}/instack-install-undercloud-packages
|
%{_bindir}/instack-install-undercloud-packages
|
||||||
%{_bindir}/instack-prepare-for-overcloud
|
%{_bindir}/instack-prepare-for-overcloud
|
||||||
%{_bindir}/instack-deploy-overcloud
|
%{_bindir}/instack-deploy-overcloud
|
||||||
@ -69,6 +71,7 @@ cp -ar json-files %{buildroot}/%{_datadir}/instack-undercloud
|
|||||||
%{_bindir}/instack-test-overcloud
|
%{_bindir}/instack-test-overcloud
|
||||||
%{_bindir}/instack-build-images
|
%{_bindir}/instack-build-images
|
||||||
%{_bindir}/instack-virt-setup
|
%{_bindir}/instack-virt-setup
|
||||||
|
%{_bindir}/instack-prepare-discovery
|
||||||
%{_bindir}/instack-delete-overcloud
|
%{_bindir}/instack-delete-overcloud
|
||||||
%{_bindir}/instack-delete-overcloud-tuskarcli
|
%{_bindir}/instack-delete-overcloud-tuskarcli
|
||||||
|
|
||||||
|
@ -37,6 +37,7 @@ NEUTRON_NETWORK_TYPE=${NEUTRON_NETWORK_TYPE:-gre}
|
|||||||
# baremetal, qemu for an overcloud running in vm's.
|
# baremetal, qemu for an overcloud running in vm's.
|
||||||
OVERCLOUD_LIBVIRT_TYPE=${OVERCLOUD_LIBVIRT_TYPE:-qemu}
|
OVERCLOUD_LIBVIRT_TYPE=${OVERCLOUD_LIBVIRT_TYPE:-qemu}
|
||||||
|
|
||||||
|
CONTROLSCALE=${CONTROLSCALE:-1}
|
||||||
COMPUTESCALE=${COMPUTESCALE:-1}
|
COMPUTESCALE=${COMPUTESCALE:-1}
|
||||||
BLOCKSTORAGESCALE=${BLOCKSTORAGESCALE:-1}
|
BLOCKSTORAGESCALE=${BLOCKSTORAGESCALE:-1}
|
||||||
SWIFTSTORAGESCALE=${SWIFTSTORAGESCALE:-1}
|
SWIFTSTORAGESCALE=${SWIFTSTORAGESCALE:-1}
|
||||||
@ -47,83 +48,59 @@ export OVERCLOUD_COMPUTE_FLAVOR=${OVERCLOUD_COMPUTE_FLAVOR:-"baremetal"}
|
|||||||
export OVERCLOUD_BLOCKSTORAGE_FLAVOR=${OVERCLOUD_BLOCKSTORAGE_FLAVOR:-"baremetal"}
|
export OVERCLOUD_BLOCKSTORAGE_FLAVOR=${OVERCLOUD_BLOCKSTORAGE_FLAVOR:-"baremetal"}
|
||||||
export OVERCLOUD_SWIFTSTORAGE_FLAVOR=${OVERCLOUD_SWIFTSTORAGE_FLAVOR:-"baremetal"}
|
export OVERCLOUD_SWIFTSTORAGE_FLAVOR=${OVERCLOUD_SWIFTSTORAGE_FLAVOR:-"baremetal"}
|
||||||
|
|
||||||
if [ -d /usr/share/openstack-tripleo-heat-templates ]; then
|
OVERCLOUD_YAML_PATH="$INSTACK_ROOT/openstack-tripleo-heat-templates/overcloud.yaml"
|
||||||
tripleo-heat-merge \
|
RESOURCE_REGISTRY_PATH="$INSTACK_ROOT/openstack-tripleo-heat-templates/overcloud-resource-registry.yaml"
|
||||||
--included-template-dir /usr/share/openstack-tripleo-heat-templates \
|
|
||||||
--scale NovaCompute=$COMPUTESCALE \
|
|
||||||
--scale BlockStorage=$BLOCKSTORAGESCALE \
|
|
||||||
--scale SwiftStorage=$SWIFTSTORAGESCALE \
|
|
||||||
/usr/share/openstack-tripleo-heat-templates/overcloud-source.yaml \
|
|
||||||
/usr/share/openstack-tripleo-heat-templates/swift-source.yaml \
|
|
||||||
/usr/share/openstack-tripleo-heat-templates/swift-storage-source.yaml \
|
|
||||||
/usr/share/openstack-tripleo-heat-templates/ssl-source.yaml \
|
|
||||||
/usr/share/openstack-tripleo-heat-templates/block-storage.yaml ${EXTRA_MERGE_TEMPLATES:-} \
|
|
||||||
> overcloud.yaml
|
|
||||||
OVERCLOUD_YAML_PATH=overcloud.yaml
|
|
||||||
|
|
||||||
export OVERCLOUD_PARAMETERS=${OVERCLOUD_PARAMETERS:-"\
|
NeutronControlPlaneID=$(neutron net-show ctlplane | grep ' id ' | awk '{print $4}')
|
||||||
-P AdminPassword=${OVERCLOUD_ADMIN_PASSWORD} \
|
|
||||||
-P AdminToken=${OVERCLOUD_ADMIN_TOKEN} \
|
|
||||||
-P CinderPassword=${OVERCLOUD_CINDER_PASSWORD} \
|
|
||||||
-P GlanceLogFile=\"''\" \
|
|
||||||
-P GlancePassword=${OVERCLOUD_GLANCE_PASSWORD} \
|
|
||||||
-P HeatPassword=${OVERCLOUD_HEAT_PASSWORD} \
|
|
||||||
-P NeutronDnsmasqOptions=\"dhcp-option-force=26,1400\" \
|
|
||||||
-P NeutronPassword=${OVERCLOUD_NEUTRON_PASSWORD} \
|
|
||||||
-P NeutronPublicInterface=$NeutronPublicInterface \
|
|
||||||
-P NovaComputeLibvirtType=$OVERCLOUD_LIBVIRT_TYPE \
|
|
||||||
-P NovaPassword=${OVERCLOUD_NOVA_PASSWORD} \
|
|
||||||
-P SwiftHashSuffix=${OVERCLOUD_SWIFT_HASH} \
|
|
||||||
-P SwiftPassword=${OVERCLOUD_SWIFT_PASSWORD} \
|
|
||||||
"}
|
|
||||||
|
|
||||||
HEAT_ENVIRONMENT=""
|
export OVERCLOUD_PARAMETERS=${OVERCLOUD_PARAMETERS:-"\
|
||||||
|
-P AdminPassword=${OVERCLOUD_ADMIN_PASSWORD} \
|
||||||
|
-P AdminToken=${OVERCLOUD_ADMIN_TOKEN} \
|
||||||
|
-P CeilometerPassword=${OVERCLOUD_CEILOMETER_PASSWORD} \
|
||||||
|
-P CeilometerMeteringSecret=${OVERCLOUD_CEILOMETER_SECRET} \
|
||||||
|
-P CinderPassword=${OVERCLOUD_CINDER_PASSWORD} \
|
||||||
|
-P CinderISCSIHelper=lioadm \
|
||||||
|
-P CloudName=overcloud \
|
||||||
|
-P GlancePassword=${OVERCLOUD_GLANCE_PASSWORD} \
|
||||||
|
-P HeatPassword=${OVERCLOUD_HEAT_PASSWORD} \
|
||||||
|
-P NeutronControlPlaneID=$NeutronControlPlaneID \
|
||||||
|
-P NeutronDnsmasqOptions=dhcp-option-force=26,1400 \
|
||||||
|
-P NeutronPassword=${OVERCLOUD_NEUTRON_PASSWORD} \
|
||||||
|
-P NeutronPublicInterface=$NeutronPublicInterface \
|
||||||
|
-P NovaComputeLibvirtType=$OVERCLOUD_LIBVIRT_TYPE \
|
||||||
|
-P NovaPassword=${OVERCLOUD_NOVA_PASSWORD} \
|
||||||
|
-P SwiftHashSuffix=${OVERCLOUD_SWIFT_HASH} \
|
||||||
|
-P SwiftPassword=${OVERCLOUD_SWIFT_PASSWORD} \
|
||||||
|
-P NeutronNetworkType=${NEUTRON_NETWORK_TYPE} \
|
||||||
|
-P NeutronTunnelTypes=${NEUTRON_TUNNEL_TYPES} \
|
||||||
|
-P SnmpdReadonlyUserPassword=${UNDERCLOUD_CEILOMETER_SNMPD_PASSWORD} \
|
||||||
|
"}
|
||||||
|
|
||||||
else
|
# -P OvercloudControlFlavor=${OVERCLOUD_CONTROL_FLAVOR} \
|
||||||
make -C $INSTACK_ROOT/tripleo-heat-templates-instack overcloud.yaml COMPUTESCALE=$COMPUTESCALE BLOCKSTORAGESCALE=$BLOCKSTORAGESCALE SWIFTSTORAGESCALE=$SWIFTSTORAGESCALE
|
# -P OvercloudComputeFlavor=${OVERCLOUD_COMPUTE_FLAVOR} \
|
||||||
OVERCLOUD_YAML_PATH=$INSTACK_ROOT/tripleo-heat-templates-instack/overcloud.yaml
|
# -P OvercloudBlockStorageFlavor=${OVERCLOUD_BLOCKSTORAGE_FLAVOR} \
|
||||||
|
# -P OvercloudSwiftStorageFlavor=${OVERCLOUD_SWIFTSTORAGE_FLAVOR} \
|
||||||
|
|
||||||
NeutronControlPlaneID=$(neutron net-show ctlplane | grep ' id ' | awk '{print $4}')
|
HEAT_ENV=${HEAT_ENV:-"overcloud-env.json"}
|
||||||
|
ENV_JSON='{"parameters":{}}'
|
||||||
export OVERCLOUD_PARAMETERS=${OVERCLOUD_PARAMETERS:-"\
|
|
||||||
-P AdminPassword=${OVERCLOUD_ADMIN_PASSWORD} \
|
|
||||||
-P AdminToken=${OVERCLOUD_ADMIN_TOKEN} \
|
|
||||||
-P CeilometerPassword=${OVERCLOUD_CEILOMETER_PASSWORD} \
|
|
||||||
-P CeilometerMeteringSecret=${OVERCLOUD_CEILOMETER_SECRET} \
|
|
||||||
-P CinderPassword=${OVERCLOUD_CINDER_PASSWORD} \
|
|
||||||
-P CinderISCSIHelper=lioadm \
|
|
||||||
-P CloudName=overcloud \
|
|
||||||
-P GlancePassword=${OVERCLOUD_GLANCE_PASSWORD} \
|
|
||||||
-P HeatPassword=${OVERCLOUD_HEAT_PASSWORD} \
|
|
||||||
-P NeutronControlPlaneID=$NeutronControlPlaneID \
|
|
||||||
-P NeutronDnsmasqOptions=dhcp-option-force=26,1400 \
|
|
||||||
-P NeutronPassword=${OVERCLOUD_NEUTRON_PASSWORD} \
|
|
||||||
-P NeutronPublicInterface=$NeutronPublicInterface \
|
|
||||||
-P NovaComputeLibvirtType=$OVERCLOUD_LIBVIRT_TYPE \
|
|
||||||
-P NovaPassword=${OVERCLOUD_NOVA_PASSWORD} \
|
|
||||||
-P SwiftHashSuffix=${OVERCLOUD_SWIFT_HASH} \
|
|
||||||
-P SwiftPassword=${OVERCLOUD_SWIFT_PASSWORD} \
|
|
||||||
-P NeutronNetworkType=${NEUTRON_NETWORK_TYPE} \
|
|
||||||
-P NeutronTunnelTypes=${NEUTRON_TUNNEL_TYPES} \
|
|
||||||
-P SnmpdReadonlyUserPassword=${UNDERCLOUD_CEILOMETER_SNMPD_PASSWORD} \
|
|
||||||
-P OvercloudControlFlavor=${OVERCLOUD_CONTROL_FLAVOR} \
|
|
||||||
-P OvercloudComputeFlavor=${OVERCLOUD_COMPUTE_FLAVOR} \
|
|
||||||
-P OvercloudBlockStorageFlavor=${OVERCLOUD_BLOCKSTORAGE_FLAVOR} \
|
|
||||||
-P OvercloudSwiftStorageFlavor=${OVERCLOUD_SWIFTSTORAGE_FLAVOR} \
|
|
||||||
"}
|
|
||||||
|
|
||||||
|
|
||||||
HEAT_ENV=${HEAT_ENV:-"${INSTACK_ROOT}/overcloud-env.json"}
|
RESOURCE_REGISTRY="-e $RESOURCE_REGISTRY_PATH"
|
||||||
ENV_JSON='{"parameters":{}}'
|
ENV_JSON=$(jq '.parameters = .parameters + {
|
||||||
jq . > "${HEAT_ENV}" <<< $ENV_JSON
|
"ControllerCount": '${CONTROLSCALE}',
|
||||||
chmod 0600 "${HEAT_ENV}"
|
"ComputeCount": '${COMPUTESCALE}',
|
||||||
generate-keystone-pki --heatenv $HEAT_ENV
|
"BlockStorageCount": '${BLOCKSTORAGESCALE}',
|
||||||
HEAT_ENVIRONMENT="-e ${HEAT_ENV}"
|
"ObjectStorageCount": '${SWIFTSTORAGESCALE}'
|
||||||
|
}' <<< $ENV_JSON)
|
||||||
|
|
||||||
fi
|
jq . > "${HEAT_ENV}" <<< $ENV_JSON
|
||||||
|
chmod 0600 "${HEAT_ENV}"
|
||||||
|
generate-keystone-pki --heatenv $HEAT_ENV
|
||||||
|
HEAT_ENVIRONMENT="-e ${HEAT_ENV}"
|
||||||
|
|
||||||
|
|
||||||
heat stack-create -f $OVERCLOUD_YAML_PATH \
|
heat stack-create -f $OVERCLOUD_YAML_PATH \
|
||||||
|
$RESOURCE_REGISTRY \
|
||||||
$OVERCLOUD_PARAMETERS \
|
$OVERCLOUD_PARAMETERS \
|
||||||
$HEAT_ENVIRONMENT \
|
$HEAT_ENVIRONMENT \
|
||||||
overcloud
|
overcloud
|
||||||
@ -155,23 +132,15 @@ echo $NEW_JSON > $NODES_JSON
|
|||||||
export TE_DATAFILE=$NODES_JSON
|
export TE_DATAFILE=$NODES_JSON
|
||||||
source $TRIPLEO_ROOT/overcloudrc
|
source $TRIPLEO_ROOT/overcloudrc
|
||||||
|
|
||||||
if [ -z "$INSTACK_ROOT" ]; then
|
init-keystone -o $OVERCLOUD_IP -t $OVERCLOUD_ADMIN_TOKEN \
|
||||||
tripleo init-keystone -p $OVERCLOUD_ADMIN_PASSWORD $OVERCLOUD_ADMIN_TOKEN \
|
-e admin.example.com -p $OVERCLOUD_ADMIN_PASSWORD -u heat-admin \
|
||||||
$OVERCLOUD_IP admin@example.com heat-admin@$OVERCLOUD_IP \
|
${SSLBASE:+-s $PUBLIC_API_URL}
|
||||||
${SSLBASE:+--ssl $PUBLIC_API_URL}
|
|
||||||
|
|
||||||
REGISTER_SERVICE_OPTS=
|
# REGISTER_SERVICE_OPTS="--ceilometer-password $OVERCLOUD_CEILOMETER_PASSWORD "
|
||||||
else
|
REGISTER_SERVICE_OPTS=""
|
||||||
init-keystone -o $OVERCLOUD_IP -t $OVERCLOUD_ADMIN_TOKEN \
|
|
||||||
-e admin.example.com -p $OVERCLOUD_ADMIN_PASSWORD -u heat-admin \
|
|
||||||
${SSLBASE:+-s $PUBLIC_API_URL}
|
|
||||||
|
|
||||||
# REGISTER_SERVICE_OPTS="--ceilometer-password $OVERCLOUD_CEILOMETER_PASSWORD "
|
keystone role-create --name=swiftoperator
|
||||||
REGISTER_SERVICE_OPTS=""
|
keystone role-create --name=ResellerAdmin
|
||||||
|
|
||||||
keystone role-create --name=swiftoperator
|
|
||||||
keystone role-create --name=ResellerAdmin
|
|
||||||
fi
|
|
||||||
|
|
||||||
tripleo setup-endpoints $OVERCLOUD_IP \
|
tripleo setup-endpoints $OVERCLOUD_IP \
|
||||||
--cinder-password $OVERCLOUD_CINDER_PASSWORD \
|
--cinder-password $OVERCLOUD_CINDER_PASSWORD \
|
||||||
@ -188,7 +157,29 @@ NETWORK_CIDR=${NETWORK_CIDR:-"10.0.0.0/8"}
|
|||||||
FLOATING_IP_START=${FLOATING_IP_START:-"172.17.0.45"}
|
FLOATING_IP_START=${FLOATING_IP_START:-"172.17.0.45"}
|
||||||
FLOATING_IP_END=${FLOATING_IP_END:-"172.17.0.64"}
|
FLOATING_IP_END=${FLOATING_IP_END:-"172.17.0.64"}
|
||||||
FLOATING_IP_CIDR=${FLOATING_IP_CIDR:-"172.17.0.0/16"}
|
FLOATING_IP_CIDR=${FLOATING_IP_CIDR:-"172.17.0.0/16"}
|
||||||
tripleo setup-neutron "" "" $NETWORK_CIDR "" "" "" "" $FLOATING_IP_START $FLOATING_IP_END $FLOATING_IP_CIDR
|
OVERCLOUD_NAMESERVER="8.8.8.8"
|
||||||
|
BM_NETWORK_GATEWAY="192.0.2.1"
|
||||||
|
|
||||||
|
jq "." <<EOF > $NETWORK_JSON
|
||||||
|
{
|
||||||
|
"float": {
|
||||||
|
"cidr": "$NETWORK_CIDR",
|
||||||
|
"name": "default-net",
|
||||||
|
"nameserver": "$OVERCLOUD_NAMESERVER"
|
||||||
|
},
|
||||||
|
"external": {
|
||||||
|
"name": "ext-net",
|
||||||
|
"cidr": "$FLOATING_IP_CIDR",
|
||||||
|
"allocation_start": "$FLOATING_IP_START",
|
||||||
|
"allocation_end": "$FLOATING_IP_END",
|
||||||
|
"gateway": "$BM_NETWORK_GATEWAY"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
setup-neutron -n $NETWORK_JSON
|
||||||
|
rm $NETWORK_JSON
|
||||||
|
|
||||||
|
|
||||||
nova flavor-delete m1.tiny
|
nova flavor-delete m1.tiny
|
||||||
nova flavor-create m1.tiny 1 512 2 1
|
nova flavor-create m1.tiny 1 512 2 1
|
||||||
|
@ -52,7 +52,7 @@ sudo -E instack \
|
|||||||
|
|
||||||
RUN_ORC=${RUN_ORC:-"1"}
|
RUN_ORC=${RUN_ORC:-"1"}
|
||||||
if [ "$RUN_ORC" = "1" ]; then
|
if [ "$RUN_ORC" = "1" ]; then
|
||||||
sudo os-refresh-config
|
sudo IMAGE_PATH=$IMAGE_PATH os-refresh-config
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# generate ssh authentication keys if they don't exist
|
# generate ssh authentication keys if they don't exist
|
||||||
|
@ -2,17 +2,21 @@
|
|||||||
|
|
||||||
set -eux
|
set -eux
|
||||||
|
|
||||||
export INSTACK_ROOT=${INSTACK_ROOT:-$(pwd)}
|
export INSTACK_ROOT=${INSTACK_ROOT:-"/usr/share"}
|
||||||
|
export ELEMENTS_PATH=${ELEMENTS_PATH:-"\
|
||||||
|
/usr/share/tripleo-image-elements:\
|
||||||
|
/usr/share/diskimage-builder/elements:\
|
||||||
|
/usr/share/instack-undercloud"}
|
||||||
|
export JSONFILE=${JSONFILE:-/usr/share/instack-undercloud/json-files/fedora-20-undercloud-delorean.json}
|
||||||
|
|
||||||
export ELEMENTS_PATH="$INSTACK_ROOT/tripleo-image-elements/elements:$INSTACK_ROOT/diskimage-builder/elements:$INSTACK_ROOT/instack-undercloud/elements"
|
source "$INSTACK_ROOT"/instack-undercloud/instack-sourcerc
|
||||||
|
|
||||||
export JSONFILE=${JSONFILE:-$INSTACK_ROOT/instack-undercloud/json-files/fedora-20-undercloud-source.json}
|
|
||||||
|
|
||||||
if [ "$DELOREAN" = "1" ]; then
|
if [ "$DELOREAN" = "1" ]; then
|
||||||
sudo curl -o /etc/yum.repos.d/delorean.repo $DELOREAN_REPO
|
sudo curl -o /etc/yum.repos.d/delorean.repo $DELOREAN_REPO
|
||||||
sudo curl -o /etc/yum.repos.d/delorean-alt.repo $DELOREAN_REPO_ALT
|
sudo curl -o /etc/yum.repos.d/delorean-alt.repo $DELOREAN_REPO_ALT
|
||||||
sudo sed -i "s/delorean/delorean-alt/g" /etc/yum.repos.d/delorean-alt.repo
|
sudo sed -i "s/delorean/delorean-alt/g" /etc/yum.repos.d/delorean-alt.repo
|
||||||
export JSONFILE=$INSTACK_ROOT/instack-undercloud/json-files/fedora-20-undercloud-delorean.json
|
sudo /bin/bash -c "echo >> /etc/yum.repos.d/delorean.repo"
|
||||||
|
sudo /bin/bash -c "echo >> /etc/yum.repos.d/delorean-alt.repo"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sudo yum -y install git python-pip ccache
|
sudo yum -y install git python-pip ccache
|
||||||
@ -24,7 +28,8 @@ mkdir -p $PIP_DOWNLOAD_CACHE
|
|||||||
git config --global user.email "instack@example.com"
|
git config --global user.email "instack@example.com"
|
||||||
git config --global user.name "instack"
|
git config --global user.name "instack"
|
||||||
|
|
||||||
if [ ! -d $INSTACK_ROOT/tripleo-image-elements/elements ]; then
|
function do_tripleo_source_installs {
|
||||||
|
if [ ! -d $INSTACK_ROOT/tripleo-image-elements/elements ]; then
|
||||||
git clone https://git.openstack.org/openstack/tripleo-image-elements
|
git clone https://git.openstack.org/openstack/tripleo-image-elements
|
||||||
|
|
||||||
pushd tripleo-image-elements
|
pushd tripleo-image-elements
|
||||||
@ -35,9 +40,9 @@ if [ ! -d $INSTACK_ROOT/tripleo-image-elements/elements ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
popd
|
popd
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -d $INSTACK_ROOT/diskimage-builder ]; then
|
if [ ! -d $INSTACK_ROOT/diskimage-builder ]; then
|
||||||
git clone https://git.openstack.org/openstack/diskimage-builder
|
git clone https://git.openstack.org/openstack/diskimage-builder
|
||||||
|
|
||||||
pushd diskimage-builder
|
pushd diskimage-builder
|
||||||
@ -48,22 +53,22 @@ if [ ! -d $INSTACK_ROOT/diskimage-builder ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
popd
|
popd
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -d "$INSTACK_ROOT/dib-utils" ]; then
|
if [ ! -d "$INSTACK_ROOT/dib-utils" ]; then
|
||||||
git clone https://git.openstack.org/openstack/dib-utils
|
git clone https://git.openstack.org/openstack/dib-utils
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ ! -d $INSTACK_ROOT/instack-undercloud ]; then
|
if [ ! -d $INSTACK_ROOT/instack-undercloud ]; then
|
||||||
git clone https://github.com/agroup/instack-undercloud
|
git clone https://github.com/agroup/instack-undercloud
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -d $INSTACK_ROOT/instack ]; then
|
if [ ! -d $INSTACK_ROOT/instack ]; then
|
||||||
git clone https://github.com/agroup/instack
|
git clone https://github.com/agroup/instack
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -d $INSTACK_ROOT/os-cloud-config ]; then
|
if [ ! -d $INSTACK_ROOT/os-cloud-config ]; then
|
||||||
git clone https://git.openstack.org/openstack/os-cloud-config
|
git clone https://git.openstack.org/openstack/os-cloud-config
|
||||||
|
|
||||||
pushd os-cloud-config
|
pushd os-cloud-config
|
||||||
@ -73,17 +78,12 @@ if [ ! -d $INSTACK_ROOT/os-cloud-config ]; then
|
|||||||
git reset --hard FETCH_HEAD
|
git reset --hard FETCH_HEAD
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Reset to before requirements.txt update from
|
|
||||||
# https://review.openstack.org/#/c/106589/
|
|
||||||
# Not yet sure why this is failing to install.
|
|
||||||
git reset --hard 4a03e6b129c91a7269b6103a1f85fd011ec92c91
|
|
||||||
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ ! -d $INSTACK_ROOT/tripleo-incubator ]; then
|
if [ ! -d $INSTACK_ROOT/tripleo-incubator ]; then
|
||||||
git clone https://git.openstack.org/openstack/tripleo-incubator
|
git clone https://git.openstack.org/openstack/tripleo-incubator
|
||||||
|
|
||||||
pushd tripleo-incubator
|
pushd tripleo-incubator
|
||||||
@ -95,56 +95,71 @@ if [ ! -d $INSTACK_ROOT/tripleo-incubator ]; then
|
|||||||
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -d $INSTACK_ROOT/tripleo-heat-templates ]; then
|
if [ ! -d $INSTACK_ROOT/tripleo-heat-templates ]; then
|
||||||
git clone https://git.openstack.org/openstack/tripleo-heat-templates
|
git clone https://git.openstack.org/openstack/tripleo-heat-templates
|
||||||
|
|
||||||
# Create an unpatched copy for non-Tuskar testing
|
|
||||||
cp -r $INSTACK_ROOT/tripleo-heat-templates $INSTACK_ROOT/tripleo-heat-templates-instack
|
|
||||||
|
|
||||||
pushd tripleo-heat-templates
|
pushd tripleo-heat-templates
|
||||||
|
|
||||||
## Compute and controller templates without merge.py + Add converted version of block and object storage
|
## Compute and controller templates without merge.py + Add converted version of block and object storage
|
||||||
#
|
#
|
||||||
# https://review.openstack.org/#/c/123100
|
# https://review.openstack.org/#/c/123100
|
||||||
git fetch https://review.openstack.org/openstack/tripleo-heat-templates refs/changes/00/123100/4 && git cherry-pick FETCH_HEAD
|
git fetch https://review.openstack.org/openstack/tripleo-heat-templates refs/changes/00/123100/4 && git cherry-pick FETCH_HEAD
|
||||||
# https://review.openstack.org/#/c/123713/
|
# https://review.openstack.org/#/c/123713/
|
||||||
git fetch https://review.openstack.org/openstack/tripleo-heat-templates refs/changes/13/123713/4 && git cherry-pick FETCH_HEAD
|
git fetch https://review.openstack.org/openstack/tripleo-heat-templates refs/changes/13/123713/4 && git cherry-pick FETCH_HEAD
|
||||||
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export DIB_REPOLOCATION_tripleo_heat_templates=$INSTACK_ROOT/tripleo-heat-templates
|
# Create a useful symlink for openstack-tripleo-heat-templates
|
||||||
|
# This simplifies the source vs package installs a bit so we can just use one path
|
||||||
|
ln -f -s $INSTACK_ROOT/tripleo-heat-templates $INSTACK_ROOT/openstack-tripleo-heat-templates
|
||||||
|
|
||||||
|
export DIB_REPOLOCATION_tripleo_heat_templates=$INSTACK_ROOT/tripleo-heat-templates
|
||||||
|
export DIB_INSTALLTYPE_tripleo_heat_templates=source
|
||||||
|
export TUSKAR_ROLE_DIRECTORY=/opt/stack/tripleo-heat-templates
|
||||||
|
|
||||||
|
pushd $INSTACK_ROOT/dib-utils
|
||||||
|
sudo pip install -U .
|
||||||
|
popd
|
||||||
|
|
||||||
|
pushd $INSTACK_ROOT/diskimage-builder
|
||||||
|
sudo pip install -U .
|
||||||
|
popd
|
||||||
|
|
||||||
|
pushd $INSTACK_ROOT/instack
|
||||||
|
sudo pip install -e .
|
||||||
|
popd
|
||||||
|
|
||||||
|
# Needed to compile os-cloud-config
|
||||||
|
sudo yum install -y libffi-devel gcc python-devel openssl-devel libxml2-devel libxslt-devel
|
||||||
|
pushd $INSTACK_ROOT/os-cloud-config
|
||||||
|
sudo pip install -e .
|
||||||
|
popd
|
||||||
|
|
||||||
|
# Must uninstall cmd2 otherwise, the package install will fail later on
|
||||||
|
sudo pip uninstall -y cmd2
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
if [ ! -d $INSTACK_ROOT/tuskar-ui ]; then
|
if [ ! -d $INSTACK_ROOT/tuskar-ui ]; then
|
||||||
|
|
||||||
git clone https://git.openstack.org/openstack/tuskar-ui
|
sudo git clone https://git.openstack.org/openstack/tuskar-ui $INSTACK_ROOT/tuskar-ui
|
||||||
export DIB_REPOLOCATION_tuskar_ui=$INSTACK_ROOT/tuskar-ui
|
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export DIB_REPOLOCATION_tuskar_ui=$INSTACK_ROOT/tuskar-ui
|
export DIB_REPOLOCATION_tuskar_ui=$INSTACK_ROOT/tuskar-ui
|
||||||
|
|
||||||
pushd $INSTACK_ROOT/dib-utils
|
if [ "$INSTACK_TRIPLEO_SOURCE" = "1" ]; then
|
||||||
sudo pip install -U .
|
do_tripleo_source_installs
|
||||||
popd
|
else
|
||||||
|
# Need to update to newer tripleo packages until we get more recent releases
|
||||||
pushd $INSTACK_ROOT/diskimage-builder
|
sudo yum -y update openstack-tripleo-image-elements
|
||||||
sudo pip install -U .
|
sudo yum -y update diskimage-builder
|
||||||
popd
|
# Make sure we don't end up with older oslo config from Fedora 20.
|
||||||
|
sudo yum -y update python-oslo-config
|
||||||
pushd $INSTACK_ROOT/instack
|
export TUSKAR_ROLE_DIRECTORY=/usr/share/openstack-tripleo-heat-templates
|
||||||
sudo pip install -e .
|
fi
|
||||||
popd
|
|
||||||
|
|
||||||
# Needed to compile os-cloud-config
|
|
||||||
sudo yum install -y libffi-devel gcc python-devel openssl-devel libxml2-devel libxslt-devel
|
|
||||||
pushd $INSTACK_ROOT/os-cloud-config
|
|
||||||
sudo pip install -e .
|
|
||||||
popd
|
|
||||||
|
|
||||||
|
|
||||||
# tar is required if we want to run diskimage-builder
|
# tar is required if we want to run diskimage-builder
|
||||||
sudo yum install -y tar
|
sudo yum install -y tar
|
||||||
@ -160,7 +175,7 @@ if [ "$RUN_INSTACK" -eq 0 ]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$INSTACK_ROOT/instack-undercloud/scripts/instack-install-undercloud-packages
|
instack-install-undercloud-packages
|
||||||
|
|
||||||
if [ "$DELOREAN" -eq 1 ]; then
|
if [ "$DELOREAN" -eq 1 ]; then
|
||||||
|
|
||||||
@ -200,11 +215,9 @@ if [ "$LKG" -eq 1 -a "$DELOREAN" -eq "0" ]; then
|
|||||||
sudo systemctl restart heat-engine
|
sudo systemctl restart heat-engine
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
# Reset ownership of cache directory
|
# Reset ownership of cache directory
|
||||||
# This is needed in order for instack-build-images to make changes to the cache
|
# This is needed in order for instack-build-images to make changes to the cache
|
||||||
# $USER is not always set in a live cd building enviroment, so use || true
|
# $USER is not always set in a live cd building enviroment, so use || true
|
||||||
sudo -E chown -R $USER: $HOME/.cache/image-create || true
|
sudo -E chown -R $USER: $HOME/.cache/image-create || true
|
||||||
|
|
||||||
|
|
||||||
echo "$COMPLETION_MESSAGE"
|
echo "$COMPLETION_MESSAGE"
|
||||||
|
@ -4,12 +4,9 @@ set -eux
|
|||||||
|
|
||||||
IMAGE_PATH=${IMAGE_PATH:-"."}
|
IMAGE_PATH=${IMAGE_PATH:-"."}
|
||||||
|
|
||||||
export DEPLOY_NAME=${DEPLOY_NAME:-deploy-ramdisk}
|
export DEPLOY_NAME=${DEPLOY_NAME:-deploy-ramdisk-ironic}
|
||||||
export DISCOVERY_NAME=${DISCOVERY_NAME:-discovery-ramdisk}
|
export DISCOVERY_NAME=${DISCOVERY_NAME:-discovery-ramdisk}
|
||||||
|
|
||||||
export INSTACK_ROOT=/home/stack
|
|
||||||
source $INSTACK_ROOT/instack-undercloud/instack-sourcerc
|
|
||||||
|
|
||||||
command $(sudo cat /root/stackrc | xargs)
|
command $(sudo cat /root/stackrc | xargs)
|
||||||
|
|
||||||
OS_AUTH_URL=${OS_AUTH_URL:-""}
|
OS_AUTH_URL=${OS_AUTH_URL:-""}
|
||||||
|
Loading…
Reference in New Issue
Block a user