templates:
- devstack
+ - devstack-pre-pip-mitaka
+ - devstack-pre-pip-newton
- docker
- gbp
- java-builder
templates: mininet-ovs-2.5
- platforms: ubuntu-14.04
templates: java-builder
- - platforms: centos
- templates: gbp
- platforms: ubuntu-14.04
templates: robot
+ - platforms: ubuntu-14.04
+ templates: devstack-pre-pip-mitaka
+ - platforms: ubuntu-14.04
+ templates: devstack-pre-pip-newton
project-type: freestyle
archive-artifacts: '**/*.log'
--- /dev/null
+#!/bin/bash
+
+echo '---> Installing non-baseline requirements'
+yum install -y deltarpm python{,-{crypto,devel,lxml,setuptools}} \
+ @development {lib{xml2,xslt,ffi},openssl}-devel git wget
+
+echo '---> Updating net link setup'
+if [ ! -f /etc/udev/rules.d/80-net-setup-link.rules ]; then
+ ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
+fi
+
+echo '---> Pre-installing yum and pip packages'
+projs="requirements keystone glance cinder neutron nova horizon"
+branch=${os_branch}
+
+wget https://bootstrap.pypa.io/get-pip.py
+python get-pip.py
+
+mkdir tmp
+cd tmp
+
+git clone https://github.com/openstack-dev/devstack.git
+(cd devstack && git checkout ${branch})
+sed -e 's/#.*//' devstack/files/rpms/general | xargs yum install -y
+
+base_url=https://github.com/openstack/
+for proj in $projs
+do
+ git clone ${base_url}${proj}
+ (cd ${proj} && git checkout ${branch})
+ pip install -c requirements/upper-constraints.txt -e ${proj}
+ pip install -c requirements/upper-constraints.txt -r ${proj}/test-requirements.txt
+done
+
+cd $OLDPWD
+rm -fr tmp
+
+# vim: sw=4 ts=4 sts=4 et :
--- /dev/null
+{
+ "variables": {
+ "public_base_image": null,
+ "public_network": null,
+ "public_cloud_user": null,
+ "public_auth_url": null,
+ "public_tenant": null,
+ "public_user": null,
+ "public_pass": null,
+
+ "private_base_image": null,
+ "private_network": null,
+ "private_cloud_user": null,
+ "private_auth_url": null,
+ "private_tenant": null,
+ "private_user": null,
+ "private_pass": null,
+
+ "distro": null,
+ "cloud_user_data": null
+ },
+ "builders": [
+ {
+ "type": "openstack",
+ "name": "public_cloud",
+ "identity_endpoint": "{{user `public_auth_url`}}",
+ "tenant_name": "{{user `public_tenant`}}",
+ "username": "{{user `public_user`}}",
+ "password": "{{user `public_pass`}}",
+ "region": "DFW",
+ "ssh_username": "{{user `public_cloud_user`}}",
+ "image_name": "{{user `distro`}} - devstack - mitaka - {{isotime \"20060102-1504\"}}",
+ "source_image_name": "{{user `public_base_image`}}",
+ "flavor": "general1-1",
+ "networks": [
+ "{{user `public_network`}}"
+ ],
+ "user_data_file": "{{user `cloud_user_data`}}"
+ },
+ {
+ "type": "openstack",
+ "name": "private_cloud",
+ "identity_endpoint": "{{user `private_auth_url`}}",
+ "tenant_name": "{{user `private_tenant`}}",
+ "username": "{{user `private_user`}}",
+ "password": "{{user `private_pass`}}",
+ "ssh_username": "{{user `private_cloud_user`}}",
+ "image_name": "{{user `distro`}} - devstack - mitaka - {{isotime \"20060102-1504\"}}",
+ "source_image_name": "{{user `private_base_image`}}",
+ "flavor": "general1-1",
+ "networks": [
+ "{{user `private_network`}}"
+ ],
+ "user_data_file": "{{user `cloud_user_data`}}"
+ }
+ ],
+ "provisioners": [
+ {
+ "type": "shell",
+ "environment_vars": [
+ "os_branch=stable/mitaka"
+ ],
+ "scripts": [
+ "provision/baseline.sh",
+ "provision/devstack-pre-pip.sh",
+ "provision/system_reseal.sh"
+ ],
+ "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+ }
+ ]
+}
--- /dev/null
+{
+ "variables": {
+ "public_base_image": null,
+ "public_network": null,
+ "public_cloud_user": null,
+ "public_auth_url": null,
+ "public_tenant": null,
+ "public_user": null,
+ "public_pass": null,
+
+ "private_base_image": null,
+ "private_network": null,
+ "private_cloud_user": null,
+ "private_auth_url": null,
+ "private_tenant": null,
+ "private_user": null,
+ "private_pass": null,
+
+ "distro": null,
+ "cloud_user_data": null
+ },
+ "builders": [
+ {
+ "type": "openstack",
+ "name": "public_cloud",
+ "identity_endpoint": "{{user `public_auth_url`}}",
+ "tenant_name": "{{user `public_tenant`}}",
+ "username": "{{user `public_user`}}",
+ "password": "{{user `public_pass`}}",
+ "region": "DFW",
+ "ssh_username": "{{user `public_cloud_user`}}",
+ "image_name": "{{user `distro`}} - devstack - newton - {{isotime \"20060102-1504\"}}",
+ "source_image_name": "{{user `public_base_image`}}",
+ "flavor": "general1-1",
+ "networks": [
+ "{{user `public_network`}}"
+ ],
+ "user_data_file": "{{user `cloud_user_data`}}"
+ },
+ {
+ "type": "openstack",
+ "name": "private_cloud",
+ "identity_endpoint": "{{user `private_auth_url`}}",
+ "tenant_name": "{{user `private_tenant`}}",
+ "username": "{{user `private_user`}}",
+ "password": "{{user `private_pass`}}",
+ "ssh_username": "{{user `private_cloud_user`}}",
+ "image_name": "{{user `distro`}} - devstack - newton - {{isotime \"20060102-1504\"}}",
+ "source_image_name": "{{user `private_base_image`}}",
+ "flavor": "general1-1",
+ "networks": [
+ "{{user `private_network`}}"
+ ],
+ "user_data_file": "{{user `cloud_user_data`}}"
+ }
+ ],
+ "provisioners": [
+ {
+ "type": "shell",
+ "environment_vars": [
+ "os_branch=stable/newton"
+ ],
+ "scripts": [
+ "provision/baseline.sh",
+ "provision/devstack-pre-pip.sh",
+ "provision/system_reseal.sh"
+ ],
+ "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+ }
+ ]
+}