From 18c3b9c46e47a2669ec4c9931d789099c4aa72f9 Mon Sep 17 00:00:00 2001 From: Paul Belanger Date: Sun, 19 Jun 2016 19:01:56 -0400 Subject: [PATCH] Remove snapshot scripts for nodepool Currently these 9 scripts are no longer used by nodepool. While we could leave them in tree, I'd like to remove them as not to encourage users to use / reference them. They have served us well in the past, but no longer of use today. Change-Id: Ib954ad59988b81a9b60ab4d2dede7f1008cea21a Signed-off-by: Paul Belanger --- nodepool/scripts/prepare_devstack.sh | 22 -- .../scripts/prepare_devstack_virt_preview.sh | 25 -- nodepool/scripts/prepare_node.sh | 241 ------------------ nodepool/scripts/prepare_node_bare.sh | 27 -- nodepool/scripts/prepare_node_devstack.sh | 44 ---- .../prepare_node_devstack_virt_preview.sh | 28 -- nodepool/scripts/prepare_node_tripleo.sh | 27 -- nodepool/scripts/prepare_node_xenserver.sh | 44 ---- nodepool/scripts/prepare_tripleo.sh | 62 ----- 9 files changed, 520 deletions(-) delete mode 100755 nodepool/scripts/prepare_devstack.sh delete mode 100755 nodepool/scripts/prepare_devstack_virt_preview.sh delete mode 100755 nodepool/scripts/prepare_node.sh delete mode 100755 nodepool/scripts/prepare_node_bare.sh delete mode 100755 nodepool/scripts/prepare_node_devstack.sh delete mode 100755 nodepool/scripts/prepare_node_devstack_virt_preview.sh delete mode 100755 nodepool/scripts/prepare_node_tripleo.sh delete mode 100755 nodepool/scripts/prepare_node_xenserver.sh delete mode 100755 nodepool/scripts/prepare_tripleo.sh diff --git a/nodepool/scripts/prepare_devstack.sh b/nodepool/scripts/prepare_devstack.sh deleted file mode 100755 index 16e05bb682..0000000000 --- a/nodepool/scripts/prepare_devstack.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash -xe - -# Copyright (C) 2011-2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# -# See the License for the specific language governing permissions and -# limitations under the License. - -cd /opt/nodepool-scripts/ -./install_devstack_dependencies.sh -DISTRIB_CODENAME=$(lsb_release -sc) -python ./cache_devstack.py $DISTRIB_CODENAME diff --git a/nodepool/scripts/prepare_devstack_virt_preview.sh b/nodepool/scripts/prepare_devstack_virt_preview.sh deleted file mode 100755 index f86e202caf..0000000000 --- a/nodepool/scripts/prepare_devstack_virt_preview.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -xe - -# Copyright (C) 2014 - Red Hat, Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# -# See the License for the specific language governing permissions and -# limitations under the License. - -# Install the virt-preview repository that includes bleeding edge versions of -# libvirt and qemu. The packages from this repo will get installed via -# prepare_devstack.sh. -wget http://fedorapeople.org/groups/virt/virt-preview/fedora-virt-preview.repo -sudo mv fedora-virt-preview.repo /etc/yum.repos.d/ - -/opt/nodepool-scripts/prepare_devstack.sh diff --git a/nodepool/scripts/prepare_node.sh b/nodepool/scripts/prepare_node.sh deleted file mode 100755 index 92718c9cc5..0000000000 --- a/nodepool/scripts/prepare_node.sh +++ /dev/null @@ -1,241 +0,0 @@ -#!/bin/bash -xe - -# Copyright (C) 2011-2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# -# See the License for the specific language governing permissions and -# limitations under the License. - -HOSTNAME=$1 - -SUDO=${SUDO:-true} -THIN=${THIN:-true} -ALL_MYSQL_PRIVS=${ALL_MYSQL_PRIVS:-false} -GIT_BASE=${GIT_BASE:-git://git.openstack.org} - -sudo hostname $HOSTNAME -if [ -n "$HOSTNAME" ] && ! grep -q $HOSTNAME /etc/hosts ; then - echo "127.0.1.1 $HOSTNAME" | sudo tee -a /etc/hosts -fi - -echo $HOSTNAME > /tmp/image-hostname.txt -sudo mv /tmp/image-hostname.txt /etc/image-hostname.txt - -if [ ! -f /etc/redhat-release ]; then - # Cloud provider apt repos break us - so stop using them - LSBDISTID=$(lsb_release -is) - LSBDISTCODENAME=$(lsb_release -cs) - if [ "$LSBDISTID" == "Ubuntu" ] ; then - sudo dd of=/etc/apt/sources.list < $SUDO, - thin => $THIN, - all_mysql_privs => $ALL_MYSQL_PRIVS, - }" - PUPPET_RET_CODE=$? -else - sudo puppet apply --detailed-exitcodes --color=false \ - --modulepath=/root/system-config/modules:/etc/puppet/modules \ - -e "class {'openstack_project::single_use_slave': - install_users => false, - sudo => $SUDO, - thin => $THIN, - all_mysql_privs => $ALL_MYSQL_PRIVS, - ssh_key => '$NODEPOOL_SSH_KEY', - }" - PUPPET_RET_CODE=$? -fi -# Puppet doesn't properly return exit codes. Check here the values that -# indicate failure of some sort happened. 0 and 2 indicate success. -if [ "$PUPPET_RET_CODE" -eq "4" ] || [ "$PUPPET_RET_CODE" -eq "6" ] ; then - exit $PUPPET_RET_CODE -fi -set -e - -# The puppet modules should install unbound. Set up some nameservers. -cat >/tmp/forwarding.conf < /etc/resolv.conf - -exit 0 -EOF - -# hpcloud has started mounting ephemeral /dev/vdb at /mnt. -# devstack-gate wants to partition the ephemeral disk, add some swap -# and mount it at /opt. get rid of the mount. -# -# note this comes down from the cloud-init metadata; which we setup to -# ignore below. -sudo sed -i '/^\/dev\/vdb/d' /etc/fstab - - -# Make all cloud-init data sources match rackspace- only attempt to look -# at ConfigDrive, not at metadata service. This is not needed if there -# is no cloud-init -if [ -d /etc/cloud/cloud.cfg.d ] ; then -sudo dd of=/etc/cloud/cloud.cfg.d/95_real_datasources.cfg <> /etc/unbound/unbound.conf" -if [ -e /etc/init.d/unbound ] ; then - sudo /etc/init.d/unbound restart -elif [ -e /usr/lib/systemd/system/unbound.service ] ; then - sudo systemctl restart unbound -else - echo "Can't discover a method to restart \"unbound\"" - exit 1 -fi - -# Make sure DNS works. -dig git.openstack.org - -# Cache all currently known gerrit repos. -sudo mkdir -p /opt/git -sudo -i python /opt/nodepool-scripts/cache_git_repos.py $GIT_BASE - -# We don't always get ext4 from our clouds, mount ext3 as ext4 on the next -# boot (eg when this image is used for testing). -sudo sed -i 's/ext3/ext4/g' /etc/fstab - -# Remove additional sources used to install puppet or special version of pypi. -# We do this because leaving these sources in place causes every test that -# does an apt-get update to hit those servers which may not have the uptime -# of our local mirrors. -OS_FAMILY=$(facter osfamily) -if [ "$OS_FAMILY" == "Debian" ] ; then - sudo rm -f /etc/apt/sources.list.d/* - sudo apt-get update -elif [ "$OS_FAMILY" == "RedHat" ] ; then - # Can't delete * in yum.repos.d since all of the repos are listed there. - # Be specific instead. - if [ -f /etc/yum.repos.d/puppetlabs.repo ] ; then - sudo rm -f /etc/yum.repos.d/puppetlabs.repo - fi -fi - -# Remove cron jobs -# We create fresh servers for these hosts, and they are used once. They don't -# need to do things like update the locatedb or the mandb or rotate logs -# or really any of those things. We only want code running here that we want -# here. -sudo rm -f /etc/cron.{monthly,weekly,daily,hourly,d}/* - -# Install Zuul into a virtualenv -# This is in /usr instead of /usr/local due to this bug on precise: -# https://bugs.launchpad.net/ubuntu/+source/python2.7/+bug/839588 -git clone /opt/git/openstack-infra/zuul /tmp/zuul -sudo virtualenv /usr/zuul-env -sudo -H /usr/zuul-env/bin/pip install /tmp/zuul -sudo rm -fr /tmp/zuul - -# Create a virtualenv for zuul-swift-logs -# This is in /usr instead of /usr/local due to this bug on precise: -# https://bugs.launchpad.net/ubuntu/+source/python2.7/+bug/839588 -sudo -H virtualenv /usr/zuul-swift-logs-env -sudo -H /usr/zuul-swift-logs-env/bin/pip install python-magic argparse \ - requests glob2 requestsexceptions - -# Create a virtualenv for os-testr (which contains subunit2html) -# this is in /usr instead of /usr/loca/ due to this bug on precise: -# https://bugs.launchpad.net/ubuntu/+source/python2.7/+bug/839588 -sudo -H virtualenv /usr/os-testr-env -sudo -H /usr/os-testr-env/bin/pip install os-testr diff --git a/nodepool/scripts/prepare_node_bare.sh b/nodepool/scripts/prepare_node_bare.sh deleted file mode 100755 index 8991c8656a..0000000000 --- a/nodepool/scripts/prepare_node_bare.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -xe - -# Copyright (C) 2011-2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# -# See the License for the specific language governing permissions and -# limitations under the License. - -HOSTNAME=$1 - -export SUDO='true' -export THIN='false' -export ALL_MYSQL_PRIVS='true' - -./prepare_node.sh "$HOSTNAME" - -./fix_grub_timeout.sh diff --git a/nodepool/scripts/prepare_node_devstack.sh b/nodepool/scripts/prepare_node_devstack.sh deleted file mode 100755 index fe07c0ca04..0000000000 --- a/nodepool/scripts/prepare_node_devstack.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -xe - -# Copyright (C) 2011-2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# -# See the License for the specific language governing permissions and -# limitations under the License. - -HOSTNAME=$1 - -export SUDO='true' -export THIN='true' -TEMPEST_DIR=${TEMPEST_DIR:-/opt/git/openstack/tempest} - -./prepare_node.sh "$HOSTNAME" -sudo -u jenkins -i /opt/nodepool-scripts/prepare_devstack.sh "$HOSTNAME" - -# Setup venv and install deps for prepare_tempest_testrepository.py -sudo virtualenv -p python2 /opt/git/subunit2sql-env -sudo -H /opt/git/subunit2sql-env/bin/pip install -U testrepository \ - subunit2sql PyMySQL - -# Pre-seed tempest testrepository with data from subunit2sql -sudo -i env PATH=/opt/git/subunit2sql-env/bin:$PATH \ - /opt/git/subunit2sql-env/bin/python2 \ - /opt/nodepool-scripts/prepare_tempest_testrepository.py \ - $TEMPEST_DIR - -sudo chown -R jenkins:jenkins $TEMPEST_DIR/preseed-streams - -# Delete the venv after the script is called -sudo rm -rf /opt/git/subunit2sql-env - -./fix_grub_timeout.sh diff --git a/nodepool/scripts/prepare_node_devstack_virt_preview.sh b/nodepool/scripts/prepare_node_devstack_virt_preview.sh deleted file mode 100755 index 72c3d54a10..0000000000 --- a/nodepool/scripts/prepare_node_devstack_virt_preview.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash -xe - -# Copyright (C) 2014 - Red Hat, Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# -# See the License for the specific language governing permissions and -# limitations under the License. - -HOSTNAME=$1 - -export SUDO='true' -export THIN='true' - -./prepare_node.sh "$HOSTNAME" -sudo -u jenkins -i /opt/nodepool-scripts/prepare_devstack_virt_preview.sh \ - "$HOSTNAME" - -./fix_grub_timeout.sh diff --git a/nodepool/scripts/prepare_node_tripleo.sh b/nodepool/scripts/prepare_node_tripleo.sh deleted file mode 100755 index 075e047b07..0000000000 --- a/nodepool/scripts/prepare_node_tripleo.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -xe - -# Copyright (C) 2011-2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# -# See the License for the specific language governing permissions and -# limitations under the License. - -HOSTNAME=$1 - -export SUDO='true' -export THIN='true' - -# Workaround bug 1270646 during node bootstrapping. -sudo ip link set mtu 1458 dev eth0 -./prepare_node.sh "$HOSTNAME" -sudo -u jenkins -i /opt/nodepool-scripts/prepare_tripleo.sh "$HOSTNAME" diff --git a/nodepool/scripts/prepare_node_xenserver.sh b/nodepool/scripts/prepare_node_xenserver.sh deleted file mode 100755 index 1fc89050e2..0000000000 --- a/nodepool/scripts/prepare_node_xenserver.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -xe - -# Copyright (C) 2011-2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# -# See the License for the specific language governing permissions and -# limitations under the License. - - -HOSTNAME=$1 - -function tsfilter { - $@ 2>&1 | awk ' - { - cmd ="date +\"%Y-%m-%d %H:%M:%S.%3N | \"" - cmd | getline now - close("date +\"%Y-%m-%d %H:%M:%S.%3N | \"") - sub(/^/, now) - print - fflush() - }' -} - -set -o pipefail -tsfilter ./prepare_node_devstack.sh "$HOSTNAME" - -# After the node has been prepared, the hypervisor needs to be halted to make -# sure that the filesystem is in a consistent state. -sudo -u domzero \ - ssh \ - -o StrictHostKeyChecking=no \ - -o UserKnownHostsFile=/dev/null \ - root@192.168.33.2 \ - halt -p