blob: 3aaec1777a72e6b4c92fe3922f97af33411f8406 [file] [log] [blame]
# Copyright 2017-present Open Networking Foundation
#
# 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: Ensure MAAS Ansible Config Directory
become: yes
file:
path=/etc/maas/ansible
owner=maas
group=maas
state=directory
mode="0755"
- name: Ensure Ansible Roles
become: yes
synchronize:
src: "{{ item }}"
dest: /etc/maas/ansible
with_items:
- roles
- library
- name: Ensure Role Permissions and Modes
become: yes
file:
path: /etc/maas/ansible/roles
owner: maas
group: maas
mode: u=rwX,g=rX,o=rX
state: directory
recurse: true
- name: Ensure Ansible Provisioning Script
become: yes
copy:
dest=/etc/maas/ansible/{{ item }}
src=files/{{ item }}
owner=maas
group=maas
mode="0755"
with_items:
- do-ansible
- do-switch
- name: Ensure Provisioning Log Directory
become: yes
file:
path=/etc/maas/ansible/logs
state=directory
owner=maas
group=maas
mode="0755"
- name: Capture MAAS API Key
become: yes
command: maas-region-admin apikey --username={{ maas.user }}
register: apikey
changed_when: false
- name: Ensure Compute and Switch Node Playbooks
become: yes
template:
src={{ item }}.j2
dest=/etc/maas/ansible/{{ item }}
owner=maas
group=maas
mode="0644"
with_items:
- compute-node.yml
- switch-node.yml
- name: Ensure Compute and Switch Variable Directory
become: yes
file:
path=/etc/maas/ansible/vars
owner=maas
group=maas
mode="0755"
state=directory
- name: Ensure Compute and Switch Node Variables
become: yes
template:
src=templates/compute-node-vars.yml.j2
dest=/etc/maas/ansible/vars/compute-node-vars.yml
owner=maas
group=maas
mode="0644"
- name: Ensure Connect Switch Ansible Playbook
become: yes
copy:
dest=/etc/maas/ansible/{{ item }}
src=files/{{ item }}
owner=maas
group=maas
mode="0644"
with_items:
- connect-switch.yml
- name: Ensure Dynamic Inventory Script
become: yes
template:
src=templates/pod-inventory
dest=/etc/maas/ansible/pod-inventory
owner=maas
group=maas
mode="0755"
- name: Copy CORD Utility Scripts
become: yes
copy:
src=files/commands/{{ item }}
dest=/usr/local/bin/{{ item }}
owner=root
group=root
mode="0755"
with_items:
- cord
- cord-harvest
- cord-prov
- cord-switch
- cord-generate
- cord-registry
- name: Ensure SSH Key Storage
become: yes
file:
path: /etc/maas/.ssh
mode: "0755"
owner: maas
group: maas
state: directory
- name: Copy SSH Key Pair for POD
become: yes
copy:
src: "{{pub_ssh_key_file_location}}/{{item}}"
dest: /etc/maas/.ssh/{{item}}
owner: maas
group: maas
mode: "0644"
with_items:
- cord_rsa
- cord_rsa.pub