Please note that the combination of a Packer definitions from `vars`, `templates`
and the `provision` scripts is what defines a given minion. For instance, a minion
-may be defined as `centos7-java-builder` which is a combination of Packer OS image
+may be defined as `centos7-builder` which is a combination of Packer OS image
definitions from `vars/centos.json`, Packer template definitions from
-`templates/java-buidler.json` and spinup scripts from `provision/java-builder.sh`.
+`templates/builder.json` and spinup scripts from `provision/builder.sh`.
This combination provides the full definition of the realized minion.
Jenkins starts a minion using the latest image which is built and linked into the
<table class="table table-bordered">
<tr class="warning">
- <td><b>Jenkins Labels</b><br/> centos7-java-builder-2c-4g,
- centos7-java-builder-2c-8g, centos7-java-builder-4c-8g,
- centos7-java-builder-8c-8g, centos7-java-builder-4c-16g</td>
- <td><b>Minion Template names</b><br/> centos7-java-builder-2c-4g,
- centos7-java-builder-2c-4g, centos7-java-builder-2c-8g,
- centos7-java-builder-4c-8g, centos7-java-builder-8c-8g,
- centos7-java-builder-4c-16g</td>
+ <td><b>Jenkins Labels</b><br/> centos7-builder-2c-4g,
+ centos7-builder-2c-8g, centos7-java-builder-4c-8g,
+ centos7-builder-8c-8g, centos7-java-builder-4c-16g</td>
+ <td><b>Minion Template names</b><br/> centos7-builder-2c-4g,
+ centos7-builder-2c-4g, centos7-java-builder-2c-8g,
+ centos7-builder-4c-8g, centos7-java-builder-8c-8g,
+ centos7-builder-4c-16g</td>
<td><b>Packer Template</b><br/>
- releng/builder/packer/templates/java-builder.json</td>
+ releng/builder/packer/templates/builder.json</td>
<td><b>Spinup Script</b><br/>
releng/builder/jenkins-scripts/builder.sh</td>
</tr>
- 'autorelease-update-validate-jobs-{stream}'
- 'autorelease-version-bump-{stream}'
- '{project-name}-validate-autorelease-{stream}':
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
- gerrit-tox-verify
# todo: After Carbon EOL remove next-release-tag and directy pass
project: releng/autorelease
project-name: autorelease
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
# Before adding more here, beware of https://jira.linuxfoundation.org/browse/RELENG-280
archive-artifacts: >
**/*.prop
#####################
project-type: freestyle
- node: centos7-java-builder-4c-16g
+ node: centos7-builder-4c-16g
jdk: '{java-version}'
cron: 'H 0 * * *'
- job-template:
name: autorelease-update-validate-jobs-{stream}
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
properties:
- lf-infra-properties:
- job-template:
name: autorelease-version-bump-{stream}
project-type: freestyle
- node: centos7-java-builder-4c-16g
+ node: centos7-builder-4c-16g
properties:
- opendaylight-infra-properties:
#####################
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
properties:
- lf-infra-properties:
project-name: autorelease-version-management
tox-dir: scripts/version_management
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
stream:
- oxygen:
stream:
- oxygen:
branch: 'master'
+ install-features: >
+ odl-restconf,
+ odl-bgpcep-bgp,
+ odl-bgpcep-bgp-config-example,
+ odl-bgpcep-bmp,
+ odl-bgpcep-bmp-config-example,
+ odl-bgpcep-pcep
+
- nitrogen:
branch: 'stable/nitrogen'
+ install-features: >
+ odl-restconf,
+ odl-bgpcep-bgp,
+ odl-bgpcep-bgp-config-example
- carbon:
branch: 'stable/carbon'
karaf-version: karaf3
+ install-features: >
+ odl-restconf,
+ odl-bgpcep-bgp,
+ odl-bgpcep-bgp-config-example
install:
- only:
scope: 'only'
- # Features to install
- install-features: >
- odl-restconf,
- odl-bgpcep-bgp,
- odl-bgpcep-bgp-config-example
-
# Robot custom options:
robot-options: '-v USE_NETCONF_CONNECTOR:False'
stream: oxygen
project: 'bgpcep'
project-name: 'bgpcep'
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
build-timeout: 120
branch: 'master'
jdks:
stream: nitrogen
project: 'bgpcep'
project-name: 'bgpcep'
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
build-timeout: 120
branch: 'stable/nitrogen'
jdks:
stream: carbon
project: 'bgpcep'
project-name: 'bgpcep'
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
build-timeout: 120
branch: 'stable/carbon'
karaf-version: karaf3
project: 'bgpcep'
project-name: 'bgpcep'
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
branch: 'master'
mvn-settings: 'bgpcep-settings'
mvn-goals: 'clean -DrepoBuild install javadoc:aggregate'
project: docs
project-name: docs
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
build-timeout: 30
rtd-project: opendaylight
archive-artifacts: ''
dependencies: ''
email-upstream: '[eman]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: 96e9352979521
dependencies: ''
email-upstream: '[eman]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: 96e9352979521
dependencies: ''
email-upstream: '[eman]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: 96e9352979521
name: 'distribution-verify-{stream}'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: true
jdk: '{jre}'
# FIXME: List required variables.
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: false
properties:
# FIXME: List required variables.
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: false
properties:
name: '{project}-patch-test-{feature}-{stream}'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: true
jdk: '{jdk}'
name: 'integration-patch-test-{stream}'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
properties:
- opendaylight-infra-properties:
# 13. Currently, the .zip lasts 24 hours (?) so you may need to jump to step 2 (or 0) after some time.
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
jdk: '{jdk}'
properties:
#####################
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
properties:
- lf-infra-properties:
project-name: lf-infra-ci-workshop
project: releng/ci-workshop
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
stream: any
branch: '*'
project-name: lf-infra-common-packer
project: releng/common-packer
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
stream: any
branch: '*'
project-name: lf-infra-docs
project: releng/docs
project-pattern: releng/docs
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
rtd-project: lf-releng-docs
stream: any
branch: '*'
project-name: lf-infra-docs-conf
project: releng/docs-conf
project-pattern: releng/docs-conf
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
stream: any
branch: '*'
project-name: lf-infra-global-jjb
project: releng/global-jjb
project-pattern: releng/global-jjb
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
rtd-project: lf-releng-global-jjb
stream: any
branch: '*'
project-name: lf-infra-lf-ansible
project: releng/lf-ansible
project-pattern: releng/lf-ansible
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
stream: any
branch: '*'
project-name: lf-infra-lftools
project: releng/lftools
project-pattern: releng/lftools
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
rtd-project: lf-releng-tools
stream: any
branch: '*'
**/*.log
**/target/surefire-reports/*-output.txt
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: 96fff2503b766
dependencies: 'controller-merge-{stream},odlparent-merge-{stream},yangtools-merge-{stream},neutron-merge-{stream}'
email-upstream: '[lispflowmapping] [controller] [odlparent] [yangtools] [neutron]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: 96fff2503b766
dependencies: 'controller-merge-{stream},odlparent-merge-{stream},yangtools-merge-{stream},neutron-merge-{stream}'
email-upstream: '[lispflowmapping] [controller] [odlparent] [yangtools] [neutron]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: 96fff2503b766
name: 'opflex-verify-{stream}'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: true
jdk: '{jdk}'
- job-template:
name: 'opflex-merge-{stream}'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
jdk: '{jdk}'
properties:
name: 'opflex-libuv-{stream}'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: true
group-id: 'libuv'
name: 'opflex-rapidjson-{stream}'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: true
group-id: 'rapidjson'
name: 'opflex-openvswitch-{stream}'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: true
group-id: 'openvswitch'
- job-template:
name: 'opflex-release-{stream}'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
jdk: '{jdk}'
######################
- job-template:
name: '{project-name}-test-rpm-{stream}'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
project-type: freestyle
- job-template:
name: 'packaging-build-rpm-{stream}'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
project-type: freestyle
- job-template:
name: 'packaging-build-rpm-snap-{stream}'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
project-type: freestyle
- job-template:
name: 'packaging-verify-rpm-master'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
project-type: freestyle
- job-template:
name: 'packaging-verify-full-rpm-master'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
project-type: freestyle
- job-template:
name: 'packaging-test-rpm-master'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
parameters:
- opendaylight-infra-parameters:
- job-template:
name: 'packaging-test-rpm-upgrade-master'
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
parameters:
- opendaylight-infra-parameters:
# Timeout in minutes
build-timeout: 360
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
schedule: ''
schedule-saturday: 'H H * * 6'
schedule-weekly: 'H 23 * * 6'
docker_system_image: ZZCI - CentOS 7 - docker - 20171209-0317
odl_system_count: 1
odl_system_flavor: v1-performance-2
- odl_system_image: ZZCI - CentOS 7 - java-builder - 20171209-0032
+ odl_system_image: ZZCI - CentOS 7 - builder - 20180109-0417
openstack_system_count: 1
openstack_system_flavor: v1-performance-4
openstack_system_image: ZZCI - CentOS 7 - devstack - 20171208-1648
- devstack-pre-pip-pike:
build-timeout: 75
- gbp
- - java-builder:
- build-timeout: 75
- mininet
- mininet-ovs-2.5:
build-timeout: 60
templates: mininet-ovs-2.5
- platforms: centos
templates: mininet-ovs-2.6
- - platforms: ubuntu-14.04
- templates: java-builder
- platforms: ubuntu-14.04
templates: robot
- platforms: ubuntu-14.04
templates: mininet-ovs-2.5
- platforms: ubuntu-14.04
templates: mininet-ovs-2.6
- - platforms: ubuntu-16.04
- templates: java-builder
- platforms: ubuntu-16.04
templates: robot
- platforms: ubuntu-16.04
---
+- project:
+ name: packer-builder-jobs
+ jobs:
+ - gerrit-packer-merge
+
+ project: releng/builder
+ project-name: builder
+ branch: master
+ archive-artifacts: '**/*.log'
+
+ build-node: centos7-builder-2c-8g
+ build-timeout: 75
+
+ platforms: centos
+ templates: builder
+
- project:
name: packer-docker-jobs
jobs:
branch: master
archive-artifacts: '**/*.log'
- build-node: centos7-java-builder-2c-8g
+ build-node: centos7-builder-2c-8g
build-timeout: 60
platforms: centos
name: 'sfc-verify-python-{stream}'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: true
properties:
dependencies: 'openflowplugin-merge-{stream},ovsdb-merge-{stream},lispflowmapping-merge-{stream}'
email-upstream: '[sfc] [openflowplugin] [ovsdb] [lispflowmapping]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: a68eb361ca48a
dependencies: 'openflowplugin-merge-{stream},ovsdb-merge-{stream},lispflowmapping-merge-{stream}'
email-upstream: '[sfc] [openflowplugin] [ovsdb] [lispflowmapping]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: a68eb361ca48a
dependencies: 'openflowplugin-merge-{stream},ovsdb-merge-{stream},lispflowmapping-merge-{stream}'
email-upstream: '[sfc] [openflowplugin] [ovsdb] [lispflowmapping]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: a68eb361ca48a
name: 'spectrometer-deploy-webapp-master'
project-type: freestyle
- node: centos7-java-builder-2c-8g
+ node: centos7-builder-2c-8g
concurrent: false
properties:
dependencies: 'ovsdb-merge-{stream}'
email-upstream: '[unimgr] [ovsdb]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: a695d0a0b8d51
dependencies: 'ovsdb-merge-{stream}'
email-upstream: '[unimgr] [ovsdb]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: a695d0a0b8d51
dependencies: 'ovsdb-merge-{stream}'
email-upstream: '[unimgr] [ovsdb]'
archive-artifacts: ''
- build-node: centos7-java-builder-4c-16g
+ build-node: centos7-builder-4c-16g
# Used by the release job
staging-profile-id: a695d0a0b8d51
--- /dev/null
+---
+- import_playbook: ../common-packer/provision/baseline.yaml
+
+- hosts: all
+ become_user: root
+ become_method: sudo
+ vars:
+ cassandra_checksum: sha256:a95ba4e2c9345b31310d14507e8889797cc626bc793fd341fff8ff8cba3131cd
+ cassandra_version: 2.1.16
+ elastic_search_checksum: sha256:0aa58947d66b487488e86059352deb7c6cab5da4accdff043cce9fed7c3d2fa7
+ elastic_search_version: 1.7.5
+ hbase_checksum: sha256:9cd990939403fd43dfb665b14603e3772ca3ed813a6e21a81de1778583b35eb8
+ hbase_version: 0.94.27
+
+ pre_tasks:
+ - include_role: name=system-update
+
+ roles:
+ - mono-install
+
+ tasks:
+ - name: 'Fetch Cassandra Server to /tmp/apache-cassandra-{{cassandra_version}}-bin.tar.gz'
+ get_url:
+ url: 'https://archive.apache.org/dist/cassandra/{{cassandra_version}}/apache-cassandra-{{cassandra_version}}-bin.tar.gz'
+ dest: '/tmp/apache-cassandra-{{cassandra_version}}-bin.tar.gz'
+ checksum: '{{cassandra_checksum}}'
+ - name: 'Fetch Elastic Search to /tmp/elasticsearch-{{elastic_search_version}}.tar.gz'
+ get_url:
+ url: 'https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-{{elastic_search_version}}.tar.gz'
+ dest: '/tmp/elasticsearch-{{elastic_search_version}}.tar.gz'
+ checksum: '{{elastic_search_checksum}}'
+ - name: 'Fetch HBase to /tmp/hbase-{{hbase_version}}.tar.gz'
+ get_url:
+ url: 'https://archive.apache.org/dist/hbase/hbase-{{hbase_version}}/hbase-{{hbase_version}}.tar.gz'
+ dest: '/tmp/hbase-{{hbase_version}}.tar.gz'
+ checksum: '{{hbase_checksum}}'
+ - name: Install Quagga
+ block:
+ - name: Fetch Quagga git repo
+ git:
+ repo: https://github.com/6WIND/zrpcd.git
+ dest: /tmp/build_quagga/zrpcd
+ version: 20170731
+ - name: Set compile script executable
+ file:
+ path: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh
+ mode: 0755
+ - name: Compile Quagga
+ shell: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t
+ args:
+ chdir: /tmp/build_quagga/zrpcd
+ become: true
+
+ post_tasks:
+ - name: System Reseal
+ script: ../common-packer/provision/system-reseal.sh
+ become: true
+++ /dev/null
-#!/bin/bash
-
-# vim: sw=4 ts=4 sts=4 et tw=72 :
-
-# Force any errors to cause the script and job to end in failure
-set -xeu -o pipefail
-
-# The following packages are not needed by all projects, but they are
-# needed by enough to make them useful everywhere
-yum install -y @development perl-{Digest-SHA,ExtUtils-MakeMaker} \
- ant {boost,gtest,json-c,libcurl,libxml2,libvirt,openssl}-devel \
- {readline,unixODBC}-devel yum-utils fedora-packager \
- libxslt-devel crudini
-
-# Needed by autorelease scripts
-yum install -y xmlstarlet
-
-# Needed by docs project
-yum install -y graphviz
-
-# Needed by deploy test
-yum install -y sshpass
-
-#########################
-# Integration/Packaging #
-#########################
-
-# Install software for building RPMs
-yum install -y fedora-packager
-
-# Needed for vsemprovider build in vtn project to enable C# compilation.
-rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
-# Add the mono tools repository
-yum-config-manager -y --add-repo http://download.mono-project.com/repo/centos/
-# Install the mono toolchain and nuget
-yum -y install mono-complete nuget
-
-# Needed by TSDR
-echo "---> Installing the Hbase Server..."
-mkdir /tmp/Hbase
-cd /tmp/Hbase
-wget -nv https://archive.apache.org/dist/hbase/hbase-0.94.27/hbase-0.94.27.tar.gz
-tar -xvf hbase-0.94.27.tar.gz
-
-# Needed by TSDR
-echo "---> Installing the Cassandra Server..."
-mkdir /tmp/cassandra
-cd /tmp/cassandra
-wget -nv https://archive.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz
-tar -xvf apache-cassandra-2.1.16-bin.tar.gz
-
-# Generally useful for all projects
-echo "---> Installing the Elasticsearch node..."
-mkdir /tmp/elasticsearch
-cd /tmp/elasticsearch
-wget -nv https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.5.tar.gz
-tar -xvzf elasticsearch-1.7.5.tar.gz
-
-# Installs Hashicorp's Packer binary, required for {verify,merge}-packer jobs
-mkdir /tmp/packer
-cd /tmp/packer
-wget -nv https://releases.hashicorp.com/packer/1.1.3/packer_1.1.3_linux_amd64.zip
-unzip packer_1.1.3_linux_amd64.zip -d /usr/local/bin/
-# rename packer to avoid conflict with binary in cracklib
-mv /usr/local/bin/packer /usr/local/bin/packer.io
-
-# Check out quagga , compile and install for router functionalities
-echo "Installing the Quagga..."
-mkdir -p /tmp/build_quagga
-cd /tmp/build_quagga
-git clone https://github.com/6WIND/zrpcd.git
-cd zrpcd
-git checkout 20170731
-chmod a+x /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh
-/tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t
-
-# Removing the build_quagga folder
-rm -rf /tmp/build_quagga/
+++ /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,
- "distro": null,
- "cloud_user_data": null,
- "ssh_proxy_host": ""
- },
- "builders": [
- {
- "type": "openstack",
- "identity_endpoint": "{{user `public_auth_url`}}",
- "domain_name": "Default",
- "tenant_name": "{{user `public_tenant`}}",
- "username": "{{user `public_user`}}",
- "password": "{{user `public_pass`}}",
- "region": "ca-ymq-1",
- "availability_zone": "ca-ymq-2",
- "ssh_username": "{{user `public_cloud_user`}}",
- "ssh_proxy_host": "{{user `ssh_proxy_host`}}",
- "image_name": "ZZCI - {{user `distro`}} - autorelease - {{isotime \"20060102-1504\"}}",
- "source_image_name": "{{user `public_base_image`}}",
- "flavor": "v1-standard-4",
- "networks": [
- "{{user `public_network`}}"
- ],
- "user_data_file": "{{user `cloud_user_data`}}",
- "metadata": {
- "ci_managed": "yes"
- }
- }
- ],
- "provisioners": [
- {
- "type": "shell",
- "scripts": [
- "provision/baseline.sh",
- "provision/java-builder.sh",
- "provision/system_reseal_local_env.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": {
+ "base_image": null,
+ "distro": null,
+ "cloud_auth_url": null,
+ "cloud_user": null,
+ "cloud_pass": null,
+ "cloud_network": null,
+ "cloud_tenant": null,
+ "cloud_user_data": null,
+ "ssh_user": null,
+ "ssh_proxy_host": ""
+ },
+ "builders": [
+ {
+ "name": "vexxhost",
+ "image_name": "ZZCI - {{user `distro`}} - builder - {{isotime \"20060102-1504\"}}",
+ "source_image_name": "{{user `base_image`}}",
+ "type": "openstack",
+ "identity_endpoint": "{{user `cloud_auth_url`}}",
+ "username": "{{user `cloud_user`}}",
+ "password": "{{user `cloud_pass`}}",
+ "tenant_name": "{{user `cloud_tenant`}}",
+ "domain_name": "Default",
+ "region": "ca-ymq-1",
+ "availability_zone": "ca-ymq-2",
+ "networks": [
+ "{{user `cloud_network`}}"
+ ],
+ "user_data_file": "{{user `cloud_user_data`}}",
+ "ssh_username": "{{user `ssh_user`}}",
+ "ssh_proxy_host": "{{user `ssh_proxy_host`}}",
+ "flavor": "v1-standard-1",
+ "metadata": {
+ "ci_managed": "yes"
+ }
+ }
+ ],
+ "provisioners": [
+ {
+ "type": "shell",
+ "scripts": [
+ "common-packer/provision/install-python.sh"
+ ],
+ "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+ },
+ {
+ "type": "ansible",
+ "playbook_file": "provision/builder.yaml",
+ "ansible_env_vars": [
+ "ANSIBLE_NOCOWS=1",
+ "ANSIBLE_PIPELINING=True",
+ "ANSIBLE_ROLES_PATH=../lf-ansible/roles",
+ "ANSIBLE_CALLBACK_WHITELIST=profile_tasks",
+ "ANSIBLE_STDOUT_CALLBACK=debug"
+ ]
+ }
+ ]
+}
+++ /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,
- "distro": null,
- "cloud_user_data": null,
- "ssh_proxy_host": ""
- },
- "builders": [
- {
- "type": "openstack",
- "identity_endpoint": "{{user `public_auth_url`}}",
- "domain_name": "Default",
- "tenant_name": "{{user `public_tenant`}}",
- "username": "{{user `public_user`}}",
- "password": "{{user `public_pass`}}",
- "region": "ca-ymq-1",
- "availability_zone": "ca-ymq-2",
- "ssh_username": "{{user `public_cloud_user`}}",
- "ssh_proxy_host": "{{user `ssh_proxy_host`}}",
- "image_name": "ZZCI - {{user `distro`}} - java-builder - {{isotime \"20060102-1504\"}}",
- "source_image_name": "{{user `public_base_image`}}",
- "flavor": "v1-standard-1",
- "networks": [
- "{{user `public_network`}}"
- ],
- "user_data_file": "{{user `cloud_user_data`}}",
- "metadata": {
- "ci_managed": "yes"
- }
- }
- ],
- "provisioners": [
- {
- "type": "shell",
- "scripts": [
- "provision/baseline.sh",
- "provision/java-builder.sh",
- "provision/system_reseal_local_env.sh",
- "provision/system_reseal.sh"
- ],
- "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
- }
- ]
-}