Merge "Create a job to run Tobiko tests from a Docker container"
This commit is contained in:
commit
c1ee187865
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
|
||||
- hosts: all
|
||||
roles:
|
||||
- role: ensure-docker
|
||||
- role: tobiko-ensure-docker-compose
|
||||
- role: tobiko-docker-compose
|
||||
vars:
|
||||
docker_compose_command: build
|
|
@ -0,0 +1,7 @@
|
|||
---
|
||||
|
||||
- hosts: all
|
||||
roles:
|
||||
- role: tobiko-docker-compose
|
||||
vars:
|
||||
docker_compose_command: run
|
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
|
||||
docker_compose_command: run
|
||||
docker_compose_dir: '{{ zuul_work_dir }}'
|
||||
docker_compose_environment: {}
|
||||
docker_compose_executable: /usr/local/bin/docker-compose
|
||||
|
||||
zuul_work_dir: "{{ zuul.project.src_dir }}"
|
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
|
||||
- name: "Build image for service {{ docker_compose_service }} at {{ docker_compose_dir }}"
|
||||
command:
|
||||
chdir: '{{ docker_compose_dir }}'
|
||||
cmd: '{{ docker_compose_executable }} build {{ docker_compose_service }}'
|
||||
register: docker_compose_build
|
||||
environment: '{{ docker_compose_environment }}'
|
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
|
||||
- include_tasks: '{{ docker_compose_command }}.yaml'
|
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
|
||||
- name: "Run service {{ docker_compose_service }} at {{ docker_compose_dir }}"
|
||||
command:
|
||||
chdir: '{{ docker_compose_dir }}'
|
||||
cmd: '{{ docker_compose_executable }} run {{ docker_compose_service }}'
|
||||
register: docker_compose_run
|
||||
environment: '{{ docker_compose_environment }}'
|
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
|
||||
docker_compose_executable: /usr/local/bin/docker-compose
|
|
@ -0,0 +1,17 @@
|
|||
---
|
||||
|
||||
- name: "Install latest Docker compose"
|
||||
become: true
|
||||
shell: |
|
||||
set -x
|
||||
VERSION=$(
|
||||
git ls-remote https://github.com/docker/compose |
|
||||
grep refs/tags |
|
||||
grep -oE "[0-9]+\.[0-9][0-9]+\.[0-9]+$" |
|
||||
sort --version-sort |
|
||||
tail -n 1)
|
||||
ARCH=$(uname -s)-$(uname -m)
|
||||
URL=https://github.com/docker/compose/releases/download/${VERSION}/docker-compose-${ARCH}
|
||||
mkdir -p $(dirname '{{ docker_compose_executable }}')
|
||||
curl -L ${URL} > '{{ docker_compose_executable }}'
|
||||
chmod +x '{{ docker_compose_executable }}'
|
|
@ -0,0 +1,41 @@
|
|||
---
|
||||
|
||||
- project-template:
|
||||
name: tobiko-docker
|
||||
description: |
|
||||
Docker jobs intended to gate Tobiko container related changes
|
||||
check: &CHECK
|
||||
jobs:
|
||||
- tobiko-docker-unit
|
||||
- tobiko-docker-functional
|
||||
gate:
|
||||
jobs:
|
||||
- tobiko-docker-unit
|
||||
periodic: *CHECK
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
|
||||
- job:
|
||||
name: tobiko-docker-unit
|
||||
description: |
|
||||
Run unit tests for an OpenStack Python project inside a Docker container.
|
||||
voting: true
|
||||
parent: base
|
||||
timeout: 2400
|
||||
pre-run: playbooks/docker/pre.yaml
|
||||
run: playbooks/docker/run.yaml
|
||||
# post-run: playbooks/docker/post.yaml
|
||||
vars:
|
||||
docker_compose_service: unit
|
||||
|
||||
|
||||
- job:
|
||||
name: tobiko-docker-functional
|
||||
description: |
|
||||
Run functional tests for an OpenStack Python project inside a Docker container.
|
||||
voting: false
|
||||
parent: tobiko-docker-unit
|
||||
timeout: 3600
|
||||
vars:
|
||||
docker_compose_service: functional
|
|
@ -19,6 +19,7 @@
|
|||
- openstack-lower-constraints-jobs
|
||||
- openstack-python3-wallaby-jobs
|
||||
- publish-to-pypi
|
||||
- tobiko-docker
|
||||
- tobiko-infrared
|
||||
vars:
|
||||
rtd_webhook_id: '84947'
|
||||
|
|
Loading…
Reference in New Issue