0dc4ab7491
Change-Id: I2276a3b3ea50b8e81dd240815cd00a0a2a2af96e Relates-To: #356
128 lines
3.9 KiB
YAML
128 lines
3.9 KiB
YAML
# 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.
|
|
|
|
- hosts: primary
|
|
environment:
|
|
LIBVIRT_DEFAULT_URI: qemu:///system
|
|
|
|
tasks:
|
|
- name: set default vars
|
|
set_fact:
|
|
var_files_default:
|
|
- airship-ipam.yaml
|
|
- test-config.yaml
|
|
|
|
- name: read test variables
|
|
include_vars:
|
|
file: "vars/{{ var_file }}"
|
|
with_items: "{{ var_files | default(var_files_default) }}"
|
|
loop_control:
|
|
loop_var: var_file
|
|
|
|
- name: docker install
|
|
include_role:
|
|
name: docker-install
|
|
|
|
- name: install kustomize
|
|
include_role:
|
|
name: install-kustomize
|
|
|
|
# Installs kustomize plugin functionality needed for rendering below
|
|
- name: install airshipctl
|
|
shell: |
|
|
cd {{ local_src_dir | default(zuul.project.src_dir) }}
|
|
./tools/deployment/21_systemwide_executable.sh
|
|
|
|
- name: make sure serve directory exists
|
|
file:
|
|
dest: "{{ serve_dir }}"
|
|
state: directory
|
|
mode: "0755"
|
|
owner: "{{ ansible_user }}"
|
|
become: yes
|
|
|
|
- name: get BareMetalHost from model
|
|
block:
|
|
- name: ensure tempdir for airshipctl does not exist
|
|
file:
|
|
path: "{{ remote_work_dir }}"
|
|
state: absent
|
|
when: remote_work_dir is defined
|
|
- name: clone document model
|
|
command: git clone -q {{ airship_config_phase_repo_url }} {{ remote_work_dir }}
|
|
when: remote_work_dir is defined
|
|
|
|
- name: get VM config(MACs and bootMode) from BareMetalHost objects
|
|
include_tasks:
|
|
file: get-vm-config.yaml
|
|
vars:
|
|
name: "{{ roleinputvar.name }}"
|
|
path: "{{ roleinputvar.path }}"
|
|
loop:
|
|
- { name: 'target', path: 'ephemeral/controlplane' }
|
|
- { name: 'ephemeral', path: 'ephemeral/bootstrap' }
|
|
- { name: 'worker', path: 'target/workers' }
|
|
loop_control:
|
|
loop_var: roleinputvar
|
|
|
|
- name: deploy-gate
|
|
include_role:
|
|
name: airship-libvirt-gate
|
|
vars:
|
|
gate_flavor: medium
|
|
gate_action: build-infra
|
|
airship_gate_libvirt_pools:
|
|
- path: /var/lib/libvirt/airship
|
|
name: "airship"
|
|
- path: /var/lib/libvirt/images
|
|
name: "default"
|
|
airship_gate_flavors:
|
|
medium:
|
|
disk_format: qcow2
|
|
ephemeral_disk_size: 20G
|
|
ephemeral_vm_cfg: "{{ ephemeral_vm_cfg }}"
|
|
ephemeral_vm_memory_mb: 6124
|
|
ephemeral_vm_vcpus: 4
|
|
target_disk_size: 10G
|
|
target_vm_cfg: "{{ target_vm_cfg }}"
|
|
target_vm_memory_mb: 4096
|
|
target_vm_vcpus: 2
|
|
target_vms_count: 1
|
|
worker_disk_size: 10G
|
|
worker_vm_cfg: "{{ worker_vm_cfg }}"
|
|
worker_vm_memory_mb: 1024
|
|
worker_vm_vcpus: 1
|
|
worker_vms_count: 1
|
|
airship_gate_file_exchanger:
|
|
servername: "localhost"
|
|
ip:
|
|
- "127.0.0.1"
|
|
- "::1"
|
|
- "{{ airship_gate_ipam.provision_network.bridge_ip }}"
|
|
http_port: "{{ serve_port }}"
|
|
path: "{{ serve_dir }}"
|
|
user:
|
|
- username: "username"
|
|
password: "password"
|
|
group:
|
|
- name: writers
|
|
member:
|
|
- username
|
|
rbac:
|
|
policies:
|
|
- role:
|
|
- PUT
|
|
group:
|
|
- writers
|
|
default:
|
|
all: granted
|