95 lines
2.4 KiB
YAML
95 lines
2.4 KiB
YAML
---
|
|
# Copyright 2019 Red Hat, Inc.
|
|
# All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
|
|
- name: Prepare
|
|
hosts: all
|
|
become: true
|
|
gather_facts: true
|
|
pre_tasks:
|
|
- name: Check for docker cli
|
|
command: "command -v docker"
|
|
register: docker_cli
|
|
failed_when: false
|
|
changed_when: false
|
|
|
|
- name: Check for docker connection
|
|
command: "docker ps"
|
|
register: docker_ps
|
|
failed_when: false
|
|
changed_when: false
|
|
|
|
- name: set basic user fact
|
|
set_fact:
|
|
ansible_user: "{{ lookup('env', 'USER') }}"
|
|
when:
|
|
- ansible_user is undefined
|
|
|
|
- name: set basic home fact
|
|
set_fact:
|
|
ansible_user_dir: "{{ lookup('env', 'HOME') }}"
|
|
when:
|
|
- ansible_user_dir is undefined
|
|
roles:
|
|
- role: test_deps
|
|
- role: install-docker
|
|
when:
|
|
- (docker_cli.rc != 0) or
|
|
(docker_ps.rc != 0)
|
|
post_tasks:
|
|
- name: Install docker-sdk
|
|
pip:
|
|
name: docker
|
|
virtualenv: "{{ ansible_user_dir }}/test-python"
|
|
virtualenv_site_packages: true
|
|
|
|
- name: Install deps for ReaR
|
|
package:
|
|
name: "{{ rear_packages }}"
|
|
state: present
|
|
vars:
|
|
rear_packages:
|
|
- rear
|
|
- syslinux
|
|
- genisoimage
|
|
- kbd
|
|
- puppet
|
|
- hiera
|
|
|
|
- name: Create hiera config file
|
|
file:
|
|
path: "{{ ansible_user_dir }}/hiera.yaml"
|
|
state: touch
|
|
|
|
- name: pull an image
|
|
docker_image:
|
|
name: centos:8
|
|
source: pull
|
|
vars:
|
|
ansible_python_interpreter: "{{ ansible_user_dir }}/test-python/bin/python"
|
|
|
|
- name: Create a data container
|
|
docker_container:
|
|
name: "{{ item }}"
|
|
image: centos:8
|
|
detach: true
|
|
command: sleep 1d
|
|
with_items:
|
|
- docker-container1
|
|
- docker-container2
|
|
vars:
|
|
ansible_python_interpreter: "{{ ansible_user_dir }}/test-python/bin/python"
|