97 lines
2.7 KiB
YAML
97 lines
2.7 KiB
YAML
# Copyright 2016 Red Hat, Inc.
|
|
#
|
|
# 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: Install nodepool-builder
|
|
hosts: nodepool-builder
|
|
|
|
pre_tasks:
|
|
# NOTE(pabelanger): Because of ordering issues with clouds.yaml and
|
|
# nodepool, create the required home direcotry first (pre task). So we can
|
|
# add the clouds.yaml file.
|
|
- name: Create nodepool user directories
|
|
include_role:
|
|
name: openstack.nodepool
|
|
vars:
|
|
nodepool_task_manager:
|
|
- pre
|
|
|
|
# TODO(pabelanger): This should be moved into ansible-role-os-client-config.
|
|
- name: Create os-client-config directories
|
|
become: yes
|
|
file:
|
|
group: nodepool
|
|
owner: nodepool
|
|
path: /var/lib/nodepool/.config/openstack
|
|
state: directory
|
|
|
|
- name: Copy clouds.yaml into place
|
|
become: yes
|
|
copy:
|
|
dest: /var/lib/nodepool/.config/openstack/clouds.yaml
|
|
group: nodepool
|
|
mode: 0400
|
|
owner: nodepool
|
|
src: "{{ windmill_config_git_dest }}/nodepool/clouds.yaml"
|
|
|
|
- name: Template disk-image-create wrapper script
|
|
become: yes
|
|
template:
|
|
dest: /usr/local/bin/disk-image-create
|
|
group: root
|
|
mode: 0755
|
|
owner: root
|
|
src: nodepool-builder/usr/local/bin/disk-image-create.j2
|
|
|
|
tasks:
|
|
- name: Setup openstack.sudoers role
|
|
include_role:
|
|
name: openstack.sudoers
|
|
|
|
- name: Setup openstack.diskimage-builder role
|
|
include_role:
|
|
name: openstack.diskimage-builder
|
|
|
|
- name: Setup openstack.shade role
|
|
include_role:
|
|
name: openstack.shade
|
|
|
|
- name: Setup openstack.nodepool role
|
|
include_role:
|
|
name: openstack.nodepool
|
|
|
|
- name: Install nodepool elements directory
|
|
become: yes
|
|
copy:
|
|
dest: /etc/nodepool/
|
|
group: nodepool
|
|
mode: preserve
|
|
owner: nodepool
|
|
src: "{{ windmill_config_git_dest }}/nodepool/elements"
|
|
|
|
- name: Setup openstack.ssh role
|
|
include_role:
|
|
name: openstack.ssh
|
|
|
|
- name: Setup openstack.logrotate role
|
|
include_role:
|
|
name: openstack.logrotate
|
|
|
|
post_tasks:
|
|
- name: Run nodepool-server validation
|
|
include_role:
|
|
name: test.nodepool-builder
|
|
|
|
vars_files:
|
|
- vars/nodepool.yaml
|