diff options
author | Jessica Wagantall <jwagantall@linuxfoundation.org> | 2018-03-19 13:41:33 -0700 |
---|---|---|
committer | Jessica Wagantall <jwagantall@linuxfoundation.org> | 2018-03-27 15:27:09 -0700 |
commit | 564913e994d87f58475d4ebf447b4773dd09eca5 (patch) | |
tree | 7f5cb5303559e125938fc6ffff35bfd94f69c3ab /packer/provision | |
parent | ab9695083c89827b329090fe825ba3e4ff686713 (diff) |
Upgrade to common-packer
- Enable builder.json
- Relove unused provision scripts
- Update ci-management-packer-jobs
- Update builder.yaml
Change-Id: I0c9abcd33fd3acb84690863dca966a01731dc64c
Issue-ID: CIMAN-33
Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org>
Diffstat (limited to 'packer/provision')
-rw-r--r-- | packer/provision/docker.sh | 119 | ||||
-rw-r--r-- | packer/provision/local-builder.yaml | 23 | ||||
-rw-r--r-- | packer/provision/local-docker.yaml | 17 |
3 files changed, 40 insertions, 119 deletions
diff --git a/packer/provision/docker.sh b/packer/provision/docker.sh deleted file mode 100644 index 9d34eb079..000000000 --- a/packer/provision/docker.sh +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/bash - -# vim: ts=4 sw=4 sts=4 et tw=72 : - -# force any errors to cause the script and job to end in failure -set -xeu -o pipefail - -rh_systems() { - # Assumes that python is already installed by basebuild - - # Install dependencies for robotframework and robotframework-sshlibrary - yum install -y yum-utils unzip sshuttle nc libffi-devel openssl-devel - - # Install docker - yum install -y docker supervisor bridge-utils - systemctl enable docker - - # configure docker networking so that it does not conflict with LF - # internal networks - cat <<EOL > /etc/sysconfig/docker-network -# /etc/sysconfig/docker-network -DOCKER_NETWORK_OPTIONS='--bip=10.250.0.254/24' -EOL - # configure docker daemon to listen on port 5555 enabling remote - # managment - sed -i -e "s#='--selinux-enabled'#='--selinux-enabled -H unix:///var/run/docker.sock -H tcp://0.0.0.0:5555'#g" /etc/sysconfig/docker - - # docker group doesn't get created by default for some reason - groupadd docker -} - -ubuntu_docker_mtu_fix(){ - echo "---> Fixing docker's mtu settings" - systemctl stop docker - cat <<'EOL' > /etc/systemd/system/docker.service -[Unit] -Description=Docker Application Container Engine -Documentation=https://docs.docker.com -After=network.target docker.socket -Requires=docker.socket - -[Service] -Type=notify -# the default is not to use systemd for cgroups because the delegate issues still -# exists and systemd currently does not support the cgroup feature set required -# for containers run by docker -ExecStart= -ExecStart=/usr/bin/dockerd --mtu 1454 -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock -ExecReload=/bin/kill -s HUP $MAINPID -# Having non-zero Limit*s causes performance problems due to accounting overhead -# in the kernel. We recommend using cgroups to do container-local accounting. -LimitNOFILE=infinity -LimitNPROC=infinity -LimitCORE=infinity -# Uncomment TasksMax if your systemd version supports it. -# Only systemd 226 and above support this version. -TasksMax=infinity -TimeoutStartSec=0 -# set delegate yes so that systemd does not reset the cgroups of docker containers -Delegate=yes -# kill only the docker process, not all processes in the cgroup -KillMode=process - -[Install] -WantedBy=multi-user.target -EOL - systemctl start docker - echo "---> Checking MTU" - docker network inspect bridge - echo "---> MTU set to 1454" -} - -ubuntu_systems() { - # Assumes that python is already installed by basebuild - - # Install Python3.6 - sudo add-apt-repository -y ppa:jonathonf/python-3.6 - sudo apt-get update - sudo apt-get install -y python3.6 python3.6-dev - - # Install dependencies for robotframework and robotframework-sshlibrary - apt install -y unzip sshuttle netcat libffi-dev libssl-dev - wget https://github.com/mozilla/geckodriver/releases/download/v0.18.0/geckodriver-v0.18.0-linux64.tar.gz - tar xvzf geckodriver-v0.18.0-linux64.tar.gz -C /usr/local/bin - export PATH=$PATH:/usr/local/bin - - # Install docker - apt install -y docker.io - - # Fixing Docker MTU settings - ubuntu_docker_mtu_fix -} - -all_systems() { - # Install docker-compose - curl -o /usr/local/bin/docker-compose -L "https://github.com/docker/compose/releases/download/1.15.0/docker-compose-$(uname -s)-$(uname -m)" - chmod +x /usr/local/bin/docker-compose - docker-compose -v -} - -echo "---> Detecting OS" -ORIGIN=$(facter operatingsystem | tr '[:upper:]' '[:lower:]') - -case "${ORIGIN}" in - fedora|centos|redhat) - echo "---> RH type system detected" - rh_systems - ;; - ubuntu) - echo "---> Ubuntu system detected" - ubuntu_systems - ;; - *) - echo "---> Unknown operating system" - ;; -esac - -# execute steps for all systems -all_systems diff --git a/packer/provision/local-builder.yaml b/packer/provision/local-builder.yaml new file mode 100644 index 000000000..a3f2c0300 --- /dev/null +++ b/packer/provision/local-builder.yaml @@ -0,0 +1,23 @@ +--- +- import_playbook: ../common-packer/provision/baseline.yaml + +- hosts: all + become_user: root + become_method: sudo + + roles: + - protobuf-install + + tasks: + - name: Install Docker-Compose + shell: | + virtualenv $WORKSPACE/venv + source $WORKSPACE/venv/bin/activate + PYTHON="$WORKSPACE/venv/bin/python" + $PYTHON -m pip install --upgrade pip + $PYTHON -m pip install docker-compose + + post_tasks: + - name: System Reseal + script: ../common-packer/provision/system-reseal.sh + become: true diff --git a/packer/provision/local-docker.yaml b/packer/provision/local-docker.yaml new file mode 100644 index 000000000..fce32a404 --- /dev/null +++ b/packer/provision/local-docker.yaml @@ -0,0 +1,17 @@ +--- +- import_playbook: ../common-packer/provision/docker.yaml + +- hosts: all + become_user: root + become_method: sudo + + pre_tasks: + - include_role: name=system-update + + roles: + - protobuf-install + + post_tasks: + - name: System Reseal + script: ../common-packer/provision/system-reseal.sh + become: true |