+
+- job-template:
+ name: 'ansible-build-server'
+
+ project-type: freestyle
+
+ disabled: false
+ concurrent: true
+
+ parameters:
+ - label:
+ name: SLAVE_LABEL
+ description: 'Slave label on Jenkins'
+ default: 'test-ansible-build'
+ allowed-multiselect: true
+ ignore-offline-nodes: true
+ - project-parameter:
+ project: releng
+ branch: master
+
+ scm:
+ - git-scm
+
+ triggers:
+ - timed: '@midnight'
+
+ builders:
+ - install-ansible
+ - run-ansible-build-server-playbook
+
+
+- builder:
+ name: install-ansible
+ builders:
+ - shell: |
+ # Install ansible here
+ if [ -f /etc/centos-release ] \
+ || [ -f /etc/redhat-release ] \
+ || [ -f /etc/system-release ]; then
+ sudo yum install ansible
+ fi
+ if [ -f /etc/debian_version ] \
+ || grep -qi ubuntu /etc/lsb-release \
+ || grep -qi ubuntu /etc/os-release; then
+ apt-get install ansible
+ fi
+
+- builder:
+ name: run-ansible-build-server-playbook
+ builders:
+ - shell: |
+ # run playbook
+ ansible-playbook -C -D -i \
+ $WORKSPACE/utils/build-server-ansible/inventory.ini \
+ $WORKSPACE/utils/build-server-ansible/main.yml