10 changed files with 105 additions and 0 deletions
@ -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 |
Loading…
Reference in new issue