Initial collection structure
Migrated from legacy playbook repo into Ansible collection format: Roles (171 total): - common: 44 roles (fact gathering, SSH setup, utilities) - configuration: 32 roles (system config, networking, satellite) - provisioning: 16 roles (VMware, Azure, physical server deployment) - security: 15 roles (OpenSCAP hardening, certificates, AD integration) - monitoring: 12 roles (Zabbix, logging agents, metrics) - networking: 12 roles (DNS, DHCP, network interfaces) - satellite: 4 roles (Pulp/Satellite management) - misc: 36 roles (various utilities) Playbooks (159 total): - provisioning: 14 playbooks - azure: 13 playbooks - configuration: 22 playbooks - maintenance: 10 playbooks - security: 10 playbooks - monitoring: 9 playbooks - vcenter: 6 playbooks - networking: 7 playbooks - misc: 65 playbooks
This commit is contained in:
38
roles/common/add-allowed-group/README.md
Executable file
38
roles/common/add-allowed-group/README.md
Executable file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
2
roles/common/add-allowed-group/defaults/main.yml
Executable file
2
roles/common/add-allowed-group/defaults/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# defaults file for add-allowed-group
|
||||
2
roles/common/add-allowed-group/handlers/main.yml
Executable file
2
roles/common/add-allowed-group/handlers/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for add-allowed-group
|
||||
57
roles/common/add-allowed-group/meta/main.yml
Executable file
57
roles/common/add-allowed-group/meta/main.yml
Executable file
@@ -0,0 +1,57 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Some suggested licenses:
|
||||
# - BSD (default)
|
||||
# - MIT
|
||||
# - GPLv2
|
||||
# - GPLv3
|
||||
# - Apache
|
||||
# - CC-BY
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 1.2
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
||||
# repo for this role. During role install, if no tags are available,
|
||||
# Galaxy will use this branch. During import Galaxy will access files on
|
||||
# this branch. If Travis integration is configured, only notifications for this
|
||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
||||
# (usually master) will be used.
|
||||
#github_branch:
|
||||
|
||||
#
|
||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
30
roles/common/add-allowed-group/tasks/main.yml
Executable file
30
roles/common/add-allowed-group/tasks/main.yml
Executable file
@@ -0,0 +1,30 @@
|
||||
---
|
||||
# Ensure that a given group name is on the simple_allow_groups list in sssd.conf
|
||||
- name: Check if simple_allow_groups line exists
|
||||
command: grep '^simple_allow_groups = .*' /etc/sssd/sssd.conf
|
||||
register: find_simple_allow_groups
|
||||
ignore_errors: yes
|
||||
changed_when: False
|
||||
|
||||
- name: Add simple_allow_groups line
|
||||
lineinfile:
|
||||
path: /etc/sssd/sssd.conf
|
||||
regexp: '^simple_allow_groups'
|
||||
line: 'simple_allow_groups = '
|
||||
when: find_simple_allow_groups is failure
|
||||
|
||||
- name: Check if simple_allow_groups line contains group name
|
||||
command: grep '^simple_allow_groups = .*\<{{ group_name }}\>' /etc/sssd/sssd.conf
|
||||
register: find_simple_allow_groups_name
|
||||
ignore_errors: yes
|
||||
changed_when: False
|
||||
|
||||
- name: Add group name to simple_allow_groups
|
||||
command: sed '/^simple_allow_groups = .*/ s/$/, {{ group_name }}/' -i /etc/sssd/sssd.conf
|
||||
when: find_simple_allow_groups_name is failure
|
||||
|
||||
- name: Restart SSSD
|
||||
service:
|
||||
name: sssd.service
|
||||
state: restarted
|
||||
when: (find_simple_allow_groups_name is failure) or (find_simple_allow_groups is failure)
|
||||
2
roles/common/add-allowed-group/tests/inventory
Executable file
2
roles/common/add-allowed-group/tests/inventory
Executable file
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
5
roles/common/add-allowed-group/tests/test.yml
Executable file
5
roles/common/add-allowed-group/tests/test.yml
Executable file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- add-allowed-group
|
||||
2
roles/common/add-allowed-group/vars/main.yml
Executable file
2
roles/common/add-allowed-group/vars/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for add-allowed-group
|
||||
38
roles/common/add-subscription-pool/README.md
Executable file
38
roles/common/add-subscription-pool/README.md
Executable file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
3
roles/common/add-subscription-pool/defaults/main.yml
Executable file
3
roles/common/add-subscription-pool/defaults/main.yml
Executable file
@@ -0,0 +1,3 @@
|
||||
---
|
||||
# defaults file for add-subscription-pool
|
||||
pool_name: DockerStable
|
||||
2
roles/common/add-subscription-pool/handlers/main.yml
Executable file
2
roles/common/add-subscription-pool/handlers/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for add-subscription-pool
|
||||
57
roles/common/add-subscription-pool/meta/main.yml
Executable file
57
roles/common/add-subscription-pool/meta/main.yml
Executable file
@@ -0,0 +1,57 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Some suggested licenses:
|
||||
# - BSD (default)
|
||||
# - MIT
|
||||
# - GPLv2
|
||||
# - GPLv3
|
||||
# - Apache
|
||||
# - CC-BY
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 1.2
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
||||
# repo for this role. During role install, if no tags are available,
|
||||
# Galaxy will use this branch. During import Galaxy will access files on
|
||||
# this branch. If Travis integration is configured, only notifications for this
|
||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
||||
# (usually master) will be used.
|
||||
#github_branch:
|
||||
|
||||
#
|
||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
16
roles/common/add-subscription-pool/tasks/main.yml
Executable file
16
roles/common/add-subscription-pool/tasks/main.yml
Executable file
@@ -0,0 +1,16 @@
|
||||
---
|
||||
- name: Pool to subscribe
|
||||
debug: msg={{ pool_name }}
|
||||
|
||||
- name: Check if pool is already subscribed
|
||||
shell: subscription-manager list --consumed | grep -i "{{ pool_name }}"
|
||||
register: result
|
||||
changed_when: result is failed
|
||||
failed_when: false
|
||||
|
||||
- import_tasks: subscribe.yml
|
||||
when: result is changed
|
||||
|
||||
- name: refresh local data
|
||||
shell: subscription-manager refresh
|
||||
changed_when: false
|
||||
13
roles/common/add-subscription-pool/tasks/subscribe.yml
Executable file
13
roles/common/add-subscription-pool/tasks/subscribe.yml
Executable file
@@ -0,0 +1,13 @@
|
||||
- name: Get pool id
|
||||
shell: subscription-manager list --available | grep -i "{{ pool_name }}" -A10 | awk 'FNR==5 { print $3 }'
|
||||
register: result
|
||||
failed_when: result.stdout | length != 32
|
||||
|
||||
- set_fact:
|
||||
pool_id: "{{ result.stdout }}"
|
||||
|
||||
- name: Pool id
|
||||
debug: msg={{ pool_id }}
|
||||
|
||||
- name: subscribe to {{ pool_name }}
|
||||
shell: subscription-manager attach --pool={{ pool_id }}
|
||||
2
roles/common/add-subscription-pool/tests/inventory
Executable file
2
roles/common/add-subscription-pool/tests/inventory
Executable file
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
5
roles/common/add-subscription-pool/tests/test.yml
Executable file
5
roles/common/add-subscription-pool/tests/test.yml
Executable file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- add-subscription-pool
|
||||
2
roles/common/add-subscription-pool/vars/main.yml
Executable file
2
roles/common/add-subscription-pool/vars/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for add-subscription-pool
|
||||
38
roles/common/add-sudoers-group/README.md
Executable file
38
roles/common/add-sudoers-group/README.md
Executable file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
1
roles/common/add-sudoers-group/defaults/main.yml
Executable file
1
roles/common/add-sudoers-group/defaults/main.yml
Executable file
@@ -0,0 +1 @@
|
||||
---
|
||||
2
roles/common/add-sudoers-group/handlers/main.yml
Executable file
2
roles/common/add-sudoers-group/handlers/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for add-sudoers-group
|
||||
57
roles/common/add-sudoers-group/meta/main.yml
Executable file
57
roles/common/add-sudoers-group/meta/main.yml
Executable file
@@ -0,0 +1,57 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Some suggested licenses:
|
||||
# - BSD (default)
|
||||
# - MIT
|
||||
# - GPLv2
|
||||
# - GPLv3
|
||||
# - Apache
|
||||
# - CC-BY
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 1.2
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
||||
# repo for this role. During role install, if no tags are available,
|
||||
# Galaxy will use this branch. During import Galaxy will access files on
|
||||
# this branch. If Travis integration is configured, only notifications for this
|
||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
||||
# (usually master) will be used.
|
||||
#github_branch:
|
||||
|
||||
#
|
||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
6
roles/common/add-sudoers-group/tasks/main.yml
Executable file
6
roles/common/add-sudoers-group/tasks/main.yml
Executable file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
# tasks file for add-sudoers-group
|
||||
- name: Ensure that group name is in sudoers file
|
||||
lineinfile:
|
||||
path: /etc/sudoers.d/admin
|
||||
line: '%{{ group_name }} ALL=(ALL) ALL'
|
||||
2
roles/common/add-sudoers-group/tests/inventory
Executable file
2
roles/common/add-sudoers-group/tests/inventory
Executable file
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
5
roles/common/add-sudoers-group/tests/test.yml
Executable file
5
roles/common/add-sudoers-group/tests/test.yml
Executable file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- add-sudoers-group
|
||||
2
roles/common/add-sudoers-group/vars/main.yml
Executable file
2
roles/common/add-sudoers-group/vars/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for add-sudoers-group
|
||||
38
roles/common/add-to-sudoers-group/README.md
Normal file
38
roles/common/add-to-sudoers-group/README.md
Normal file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
An optional section for the role authors to include contact information, or a website (HTML is not allowed).
|
||||
22
roles/common/add-to-sudoers-group/tasks/main.yml
Normal file
22
roles/common/add-to-sudoers-group/tasks/main.yml
Normal file
@@ -0,0 +1,22 @@
|
||||
---
|
||||
|
||||
- name: set user user_list
|
||||
set_fact:
|
||||
users_list: "{{ users_list.split(',') }}"
|
||||
|
||||
|
||||
- name: Set group names
|
||||
set_fact:
|
||||
sudoers_group_name: "{{ inventory_hostname_short }}_sudoers"
|
||||
|
||||
- name: Add Sudoers to users group for ccta "{{ inventory_hostname_short }}"
|
||||
microsoft.ad.group:
|
||||
identity: "{{ sudoers_group_name }}"
|
||||
members:
|
||||
add: "{{ users_list }}"
|
||||
delegate_to: "{{ winjump_host }}"
|
||||
vars:
|
||||
ansible_user: "{{ service_user_ccta }}"
|
||||
ansible_password: "{{ schrodingers_password }}"
|
||||
ansible_connection: ssh
|
||||
ansible_shell_type: powershell
|
||||
38
roles/common/add-to-users-group/README.md
Normal file
38
roles/common/add-to-users-group/README.md
Normal file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
An optional section for the role authors to include contact information, or a website (HTML is not allowed).
|
||||
22
roles/common/add-to-users-group/tasks/main.yml
Normal file
22
roles/common/add-to-users-group/tasks/main.yml
Normal file
@@ -0,0 +1,22 @@
|
||||
---
|
||||
|
||||
- name: set user user_list
|
||||
set_fact:
|
||||
users_list: "{{ users_list.split(',') }}"
|
||||
|
||||
|
||||
- name: Set group names
|
||||
set_fact:
|
||||
group_name: "{{ inventory_hostname_short }}"
|
||||
|
||||
- name: Add users to users group for ccta "{{ inventory_hostname_short }}"
|
||||
microsoft.ad.group:
|
||||
identity: "{{ group_name }}"
|
||||
members:
|
||||
add: "{{ users_list }}"
|
||||
delegate_to: "{{ winjump_host }}"
|
||||
vars:
|
||||
ansible_user: "{{ service_user_ccta }}"
|
||||
ansible_password: "{{ schrodingers_password }}"
|
||||
ansible_connection: ssh
|
||||
ansible_shell_type: powershell
|
||||
38
roles/common/add-users-to-ad-group/README.md
Normal file
38
roles/common/add-users-to-ad-group/README.md
Normal file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
An optional section for the role authors to include contact information, or a website (HTML is not allowed).
|
||||
6
roles/common/add-users-to-ad-group/defaults/main.yml
Normal file
6
roles/common/add-users-to-ad-group/defaults/main.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
bmc_discovery_user_ccta: svc_addmscan
|
||||
|
||||
bmc_discovery_user_dmz23: svc_z23addmscan
|
||||
|
||||
bmc_discovery_user_dmz24: svc_z24addmscan
|
||||
2
roles/common/add-users-to-ad-group/handlers/main.yml
Normal file
2
roles/common/add-users-to-ad-group/handlers/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for add-users-to-ad-group
|
||||
53
roles/common/add-users-to-ad-group/meta/main.yml
Normal file
53
roles/common/add-users-to-ad-group/meta/main.yml
Normal file
@@ -0,0 +1,53 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Choose a valid license ID from https://spdx.org - some suggested licenses:
|
||||
# - BSD-3-Clause (default)
|
||||
# - MIT
|
||||
# - GPL-2.0-or-later
|
||||
# - GPL-3.0-only
|
||||
# - Apache-2.0
|
||||
# - CC-BY-4.0
|
||||
license: license (GPL-2.0-or-later, MIT, etc)
|
||||
|
||||
min_ansible_version: 2.4
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
#
|
||||
# Provide a list of supported platforms, and for each platform a list of versions.
|
||||
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
|
||||
# To view available platforms and versions (or releases), visit:
|
||||
# https://galaxy.ansible.com/api/v1/platforms/
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
---
|
||||
# tasks file for ccta_add_bmcuser_to_ad
|
||||
- name: Set hostname fact
|
||||
ansible.builtin.set_fact:
|
||||
server_hostname: '{{ inventory_hostname.split(".")[0] | lower }}'
|
||||
|
||||
- name: Set group names
|
||||
set_fact:
|
||||
users_group_name: "{{ server_hostname }}_users"
|
||||
|
||||
- name: Add bmc user to ad group for ccta "{{ inventory_hostname }}"
|
||||
microsoft.ad.group:
|
||||
identity: "{{ users_group_name }}"
|
||||
members:
|
||||
add: "{{ bmc_discovery_user_ccta }}"
|
||||
delegate_to: "{{ winjump_host }}"
|
||||
vars:
|
||||
ansible_user: "{{ service_user_ccta }}"
|
||||
ansible_password: "{{ schrodingers_password }}"
|
||||
ansible_connection: ssh
|
||||
ansible_shell_type: powershell
|
||||
ignore_errors: true
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
# tasks file for add-users-to-ad-group
|
||||
- name: Set hostname fact
|
||||
ansible.builtin.set_fact:
|
||||
server_hostname: '{{ inventory_hostname.split(".")[0] | lower }}'
|
||||
|
||||
- name: Set group names
|
||||
set_fact:
|
||||
users_group_name: "{{ server_hostname }}_users"
|
||||
sudoers_group_name: "{{ server_hostname }}_sudoers"
|
||||
|
||||
- name: Add Sudoers to users group for ccta "{{ inventory_hostname }}"
|
||||
microsoft.ad.group:
|
||||
identity: "{{ users_group_name }}"
|
||||
members:
|
||||
add: "{{ sudoers_group_name }}"
|
||||
delegate_to: "{{ winjump_host }}"
|
||||
vars:
|
||||
ansible_user: "{{ service_user_ccta }}"
|
||||
ansible_password: "{{ schrodingers_password }}"
|
||||
ansible_connection: ssh
|
||||
ansible_shell_type: powershell
|
||||
ignore_errors: true
|
||||
@@ -0,0 +1,24 @@
|
||||
---
|
||||
# tasks file for dmz23_add_bmcuser_to_ad
|
||||
|
||||
|
||||
- name: Set hostname fact
|
||||
ansible.builtin.set_fact:
|
||||
server_hostname: '{{ inventory_hostname.split(".")[0] | lower }}'
|
||||
|
||||
- name: Set group names
|
||||
set_fact:
|
||||
users_group_name: "{{ server_hostname }}_users"
|
||||
|
||||
- name: Add bmc user to ad group for dmz23 "{{ inventory_hostname }}"
|
||||
microsoft.ad.group:
|
||||
identity: "{{ users_group_name }}"
|
||||
members:
|
||||
add: "{{ bmc_discovery_user_dmz23 }}"
|
||||
delegate_to: "{{ winjump_host }}"
|
||||
vars:
|
||||
ansible_user: "{{ service_user_dmz23 }}"
|
||||
ansible_password: "{{ schrodingers_password }}"
|
||||
ansible_connection: ssh
|
||||
ansible_shell_type: powershell
|
||||
ignore_errors: true
|
||||
@@ -0,0 +1,22 @@
|
||||
---
|
||||
- name: Set hostname fact
|
||||
ansible.builtin.set_fact:
|
||||
server_hostname: '{{ inventory_hostname.split(".")[0] | lower }}'
|
||||
|
||||
- name: Set group names
|
||||
set_fact:
|
||||
users_group_name: "{{ server_hostname }}_users"
|
||||
sudoers_group_name: "{{ server_hostname }}_sudoers"
|
||||
|
||||
- name: Add Sudoers to users group for dmz23 "{{ inventory_hostname }}"
|
||||
microsoft.ad.group:
|
||||
identity: "{{ users_group_name }}"
|
||||
members:
|
||||
add: "{{ sudoers_group_name }}"
|
||||
delegate_to: "{{ winjump_host }}"
|
||||
vars:
|
||||
ansible_user: "{{ service_user_dmz23 }}"
|
||||
ansible_password: "{{ schrodingers_password }}"
|
||||
ansible_connection: ssh
|
||||
ansible_shell_type: powershell
|
||||
ignore_errors: true
|
||||
@@ -0,0 +1,22 @@
|
||||
---
|
||||
# tasks file for dmz24_add_bmcuser_to_ad
|
||||
- name: Set hostname fact
|
||||
ansible.builtin.set_fact:
|
||||
server_hostname: '{{ inventory_hostname.split(".")[0] | lower }}'
|
||||
|
||||
- name: Set group names
|
||||
set_fact:
|
||||
users_group_name: "{{ server_hostname }}_users"
|
||||
|
||||
- name: Add bmc user to ad group for dmz24 "{{ inventory_hostname }}"
|
||||
microsoft.ad.group:
|
||||
identity: "{{ users_group_name }}"
|
||||
members:
|
||||
add: "{{ bmc_discovery_user_dmz24 }}"
|
||||
delegate_to: "{{ winjump_host }}"
|
||||
vars:
|
||||
ansible_user: "{{ service_user_dmz24 }}"
|
||||
ansible_password: "{{ schrodingers_password }}"
|
||||
ansible_connection: ssh
|
||||
ansible_shell_type: powershell
|
||||
ignore_errors: true
|
||||
@@ -0,0 +1,22 @@
|
||||
---
|
||||
- name: Set hostname fact
|
||||
ansible.builtin.set_fact:
|
||||
server_hostname: '{{ inventory_hostname.split(".")[0] | lower }}'
|
||||
|
||||
- name: Set group names
|
||||
set_fact:
|
||||
users_group_name: "{{ server_hostname }}_users"
|
||||
sudoers_group_name: "{{ server_hostname }}_sudoers"
|
||||
|
||||
- name: Add Sudoers to users group for dmz24 "{{ inventory_hostname }}"
|
||||
microsoft.ad.group:
|
||||
identity: "{{ users_group_name }}"
|
||||
members:
|
||||
add: "{{ sudoers_group_name }}"
|
||||
delegate_to: "{{ winjump_host }}"
|
||||
vars:
|
||||
ansible_user: "{{ service_user_dmz24 }}"
|
||||
ansible_password: "{{ schrodingers_password }}"
|
||||
ansible_connection: ssh
|
||||
ansible_shell_type: powershell
|
||||
ignore_errors: true
|
||||
19
roles/common/add-users-to-ad-group/tasks/main.yml
Normal file
19
roles/common/add-users-to-ad-group/tasks/main.yml
Normal file
@@ -0,0 +1,19 @@
|
||||
---
|
||||
# tasks file for create-ad-group
|
||||
- ansible.builtin.import_tasks: ccta_add_user_to_group.yml
|
||||
when: dc_domain == 'EXAMPLE-CORP.COM'
|
||||
|
||||
- ansible.builtin.import_tasks: ccta_add_bmcuser_to_ad.yml
|
||||
when: dc_domain == 'EXAMPLE-CORP.COM'
|
||||
|
||||
- ansible.builtin.import_tasks: dmz23_add_user_to_group.yml
|
||||
when: dc_domain == 'DMZ23.EXAMPLE.COM'
|
||||
|
||||
- ansible.builtin.import_tasks: dmz23_add_bmcuser_to_ad.yml
|
||||
when: dc_domain == 'DMZ23.EXAMPLE.COM'
|
||||
|
||||
- ansible.builtin.import_tasks: dmz24_add_user_to_group.yml
|
||||
when: dc_domain == 'DMZ.EXAMPLE.COM'
|
||||
|
||||
- ansible.builtin.import_tasks: dmz24_add_bmcuser_to_ad.yml
|
||||
when: dc_domain == 'DMZ.EXAMPLE.COM'
|
||||
2
roles/common/add-users-to-ad-group/tests/inventory
Normal file
2
roles/common/add-users-to-ad-group/tests/inventory
Normal file
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
5
roles/common/add-users-to-ad-group/tests/test.yml
Normal file
5
roles/common/add-users-to-ad-group/tests/test.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- add-users-to-ad-group
|
||||
2
roles/common/add-users-to-ad-group/vars/main.yml
Normal file
2
roles/common/add-users-to-ad-group/vars/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for add-users-to-ad-group
|
||||
9
roles/common/azure-add-datadisk/defaults/main.yml
Normal file
9
roles/common/azure-add-datadisk/defaults/main.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
# defaults file for azure-add-datadisk
|
||||
disk_type: Premium_LRS
|
||||
data_disk_size: 50
|
||||
disk_path: /data # set as an inventory fact, to determine whether to create pv/vg/lv or not
|
||||
vg_name: data-vg
|
||||
lv_name: data-lv
|
||||
azure_tenant: 2e93f0ed-ff36-46d4-9ce6-e0d902050cf5
|
||||
azure_server: rhib9.EXAMPLE-CORP.COM
|
||||
2
roles/common/azure-add-datadisk/tasks/main.yml
Normal file
2
roles/common/azure-add-datadisk/tasks/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# tasks file for azure-add-datadisk
|
||||
2
roles/common/azure-add-datadisk/vars/main.yml
Normal file
2
roles/common/azure-add-datadisk/vars/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for azure-add-datadisk
|
||||
38
roles/common/azure-add-disk/README.md
Normal file
38
roles/common/azure-add-disk/README.md
Normal file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
4
roles/common/azure-add-disk/defaults/main.yml
Normal file
4
roles/common/azure-add-disk/defaults/main.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
---
|
||||
# defaults file for azure-add-disk
|
||||
location: West Europe
|
||||
disk_type: Premium_LRS
|
||||
2
roles/common/azure-add-disk/handlers/main.yml
Normal file
2
roles/common/azure-add-disk/handlers/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for azure-add-disk
|
||||
57
roles/common/azure-add-disk/meta/main.yml
Normal file
57
roles/common/azure-add-disk/meta/main.yml
Normal file
@@ -0,0 +1,57 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Some suggested licenses:
|
||||
# - BSD (default)
|
||||
# - MIT
|
||||
# - GPLv2
|
||||
# - GPLv3
|
||||
# - Apache
|
||||
# - CC-BY
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 1.2
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
||||
# repo for this role. During role install, if no tags are available,
|
||||
# Galaxy will use this branch. During import Galaxy will access files on
|
||||
# this branch. If Travis integration is configured, only notifications for this
|
||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
||||
# (usually master) will be used.
|
||||
#github_branch:
|
||||
|
||||
#
|
||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
10
roles/common/azure-add-disk/tasks/add_disk.yml
Normal file
10
roles/common/azure-add-disk/tasks/add_disk.yml
Normal file
@@ -0,0 +1,10 @@
|
||||
- name: Create managed disk and mount it to the VM
|
||||
azure.azcollection.azure_rm_managed_disk:
|
||||
name: "{{ vm_name | default(inventory_hostname) }}_{{ item.name }}"
|
||||
location: "{{ location }}"
|
||||
resource_group: "{{ tapi_resource_group }}"
|
||||
disk_size_gb: "{{ item.size }}"
|
||||
storage_account_type: "{{ disk_type }}"
|
||||
managed_by: "{{ vm_name | default(inventory_hostname)}}"
|
||||
with_items: "{{ data_vg.pvs }}"
|
||||
|
||||
6
roles/common/azure-add-disk/tasks/main.yml
Normal file
6
roles/common/azure-add-disk/tasks/main.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
# tasks file for azure-add-disk
|
||||
- include_tasks: add_disk.yml
|
||||
with_items: "{{ data_vgs }}"
|
||||
loop_control:
|
||||
loop_var: data_vg
|
||||
2
roles/common/azure-add-disk/tests/inventory
Normal file
2
roles/common/azure-add-disk/tests/inventory
Normal file
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
5
roles/common/azure-add-disk/tests/test.yml
Normal file
5
roles/common/azure-add-disk/tests/test.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- azure-add-disk
|
||||
2
roles/common/azure-add-disk/vars/main.yml
Normal file
2
roles/common/azure-add-disk/vars/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for azure-add-disk
|
||||
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
@@ -0,0 +1,7 @@
|
||||
---
|
||||
location: West Europe
|
||||
network_rg: RG-DevOps-Prod
|
||||
enable_accelerated_networking: False
|
||||
# Whether to use static or dynamic IP. Static requires 'ip' to be defined
|
||||
private_ip_method: Static
|
||||
azure_subscription_id: 758c2304-30f5-4008-bd28-9c4b92963c3b
|
||||
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for azure-create-network-interface
|
||||
@@ -0,0 +1,57 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Some suggested licenses:
|
||||
# - BSD (default)
|
||||
# - MIT
|
||||
# - GPLv2
|
||||
# - GPLv3
|
||||
# - Apache
|
||||
# - CC-BY
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 1.2
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
||||
# repo for this role. During role install, if no tags are available,
|
||||
# Galaxy will use this branch. During import Galaxy will access files on
|
||||
# this branch. If Travis integration is configured, only notifications for this
|
||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
||||
# (usually master) will be used.
|
||||
#github_branch:
|
||||
|
||||
#
|
||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
@@ -0,0 +1,24 @@
|
||||
- name: Private IP allocation method
|
||||
debug:
|
||||
msg: "{{ private_ip_method }}"
|
||||
|
||||
- name: IP address
|
||||
debug:
|
||||
msg: "{{ ip | default (None) }}"
|
||||
|
||||
- name: Create network interface
|
||||
azure.azcollection.azure_rm_networkinterface:
|
||||
name: "{{ vm_name | default (inventory_hostname)}}"
|
||||
resource_group: "RG-DevOps-Prod"
|
||||
virtual_network: {name: "External-Prod", resource_group: "RG-Connectivity-01"}
|
||||
subnet_name: "External-Prod-DevOps-Toolchain"
|
||||
location: "{{ location }}"
|
||||
create_with_security_group: False
|
||||
enable_accelerated_networking: "{{ enable_accelerated_networking }}"
|
||||
subscription_id: "{{ tapi_azure_subscription_id }}"
|
||||
ip_configurations:
|
||||
- name: ipconfig1
|
||||
primary: True
|
||||
private_ip_allocation_method: "{{ private_ip_method }}"
|
||||
private_ip_address: "{{ ip | default (None) }}"
|
||||
# application_security_groups: "{{ asg_list }}"
|
||||
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- azure-create-network-interface
|
||||
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for azure-create-network-interface
|
||||
38
roles/common/azure-create-asg/README.md
Normal file
38
roles/common/azure-create-asg/README.md
Normal file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
An optional section for the role authors to include contact information, or a website (HTML is not allowed).
|
||||
3
roles/common/azure-create-asg/defaults/main.yml
Normal file
3
roles/common/azure-create-asg/defaults/main.yml
Normal file
@@ -0,0 +1,3 @@
|
||||
---
|
||||
# defaults file for azure-create-asg
|
||||
default_connectivity_rg: RG-Connectivity-01
|
||||
2
roles/common/azure-create-asg/handlers/main.yml
Normal file
2
roles/common/azure-create-asg/handlers/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for azure-create-asg
|
||||
53
roles/common/azure-create-asg/meta/main.yml
Normal file
53
roles/common/azure-create-asg/meta/main.yml
Normal file
@@ -0,0 +1,53 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Choose a valid license ID from https://spdx.org - some suggested licenses:
|
||||
# - BSD-3-Clause (default)
|
||||
# - MIT
|
||||
# - GPL-2.0-or-later
|
||||
# - GPL-3.0-only
|
||||
# - Apache-2.0
|
||||
# - CC-BY-4.0
|
||||
license: license (GPL-2.0-or-later, MIT, etc)
|
||||
|
||||
min_ansible_version: 2.4
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
#
|
||||
# Provide a list of supported platforms, and for each platform a list of versions.
|
||||
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
|
||||
# To view available platforms and versions (or releases), visit:
|
||||
# https://galaxy.ansible.com/api/v1/platforms/
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
|
||||
8
roles/common/azure-create-asg/tasks/main.yml
Normal file
8
roles/common/azure-create-asg/tasks/main.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
---
|
||||
# tasks file for azure-create-asg
|
||||
- name: Create application security group
|
||||
azure.azcollection.azure_rm_applicationsecuritygroup:
|
||||
resource_group: "{{ default_connectivity_rg }}"
|
||||
name: "{{ project_asg }}"
|
||||
location: "{{ location }}"
|
||||
|
||||
2
roles/common/azure-create-asg/tests/inventory
Normal file
2
roles/common/azure-create-asg/tests/inventory
Normal file
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
5
roles/common/azure-create-asg/tests/test.yml
Normal file
5
roles/common/azure-create-asg/tests/test.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- azure-create-asg
|
||||
2
roles/common/azure-create-asg/vars/main.yml
Normal file
2
roles/common/azure-create-asg/vars/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for azure-create-asg
|
||||
38
roles/common/azure-create-network-interface/README.md
Normal file
38
roles/common/azure-create-network-interface/README.md
Normal file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
@@ -0,0 +1,7 @@
|
||||
---
|
||||
location: West Europe
|
||||
network_rg: RG-Connectivity-01
|
||||
enable_accelerated_networking: False
|
||||
# Whether to use static or dynamic IP. Static requires 'ip' to be defined
|
||||
private_ip_method: Static
|
||||
azure_subscription_id: 758c2304-30f5-4008-bd28-9c4b92963c3b
|
||||
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for azure-create-network-interface
|
||||
57
roles/common/azure-create-network-interface/meta/main.yml
Normal file
57
roles/common/azure-create-network-interface/meta/main.yml
Normal file
@@ -0,0 +1,57 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Some suggested licenses:
|
||||
# - BSD (default)
|
||||
# - MIT
|
||||
# - GPLv2
|
||||
# - GPLv3
|
||||
# - Apache
|
||||
# - CC-BY
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 1.2
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
||||
# repo for this role. During role install, if no tags are available,
|
||||
# Galaxy will use this branch. During import Galaxy will access files on
|
||||
# this branch. If Travis integration is configured, only notifications for this
|
||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
||||
# (usually master) will be used.
|
||||
#github_branch:
|
||||
|
||||
#
|
||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
94
roles/common/azure-create-network-interface/tasks/main.yml
Normal file
94
roles/common/azure-create-network-interface/tasks/main.yml
Normal file
@@ -0,0 +1,94 @@
|
||||
---
|
||||
- name: Setting default ASG zone for CCTA
|
||||
set_fact:
|
||||
default_asg_zone: CCTA
|
||||
when: default_asg_zone is undefined and dc_domain == "EXAMPLE-CORP.COM"
|
||||
|
||||
- name: Setting default ASG zone for DMZ23
|
||||
set_fact:
|
||||
default_asg_zone: NonProd
|
||||
when: default_asg_zone is undefined and dc_domain == "DMZ23.EXAMPLE.COM"
|
||||
|
||||
- name: Setting default ASG zone for DMZ24
|
||||
set_fact:
|
||||
default_asg_zone: Prod
|
||||
when: default_asg_zone is undefined and dc_domain == "DMZ.EXAMPLE.COM"
|
||||
|
||||
- debug:
|
||||
msg: "Setting ASG {{ project_asg }} and the default ASG's for zone {{ default_asg_zone }}"
|
||||
when: project_asg is defined
|
||||
|
||||
- set_fact:
|
||||
asg_default:
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ23" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ23-ClientNet-to-DMZ23" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ23-Internet-OutBound" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ23-Logging" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ23-Zabbix" }
|
||||
when: default_asg_zone == "NonProd"
|
||||
|
||||
- set_fact:
|
||||
asg_default:
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ24" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ24-ClientNet-to-DMZ24" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ24-Internet-OutBound" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ24-Logging" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-DMZ24-Zabbix" }
|
||||
when: default_asg_zone == "Prod"
|
||||
|
||||
- set_fact:
|
||||
asg_default:
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-CCTA-ServerNet" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-CCTA-ClientNet" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-CCTA-ClientNet-RDP" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-CCTA-Internet-OutBound" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-CCTA-Logging" }
|
||||
when: default_asg_zone == "CCTA"
|
||||
|
||||
- set_fact:
|
||||
asg_default:
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-Shared-Services" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-Shared-Services-ClientNet-to-Shared-Services" }
|
||||
- { resource_group: "RG-Connectivity-01", name: "ASG-Shared-Services-Internet-OutBound" }
|
||||
when: default_asg_zone == "SharedServices"
|
||||
|
||||
- name: "Application Security Groups to be set"
|
||||
set_fact:
|
||||
project_asg: { name: "{{ project_asg }}", resource_group: "RG-Connectivity-01" }
|
||||
when: project_asg is defined
|
||||
|
||||
- set_fact:
|
||||
asg_list: "{{ [project_asg] + asg_default }}"
|
||||
when: project_asg is defined
|
||||
|
||||
- set_fact:
|
||||
asg_list: "{{ asg_default }}"
|
||||
when: project_asg is not defined
|
||||
|
||||
- debug:
|
||||
msg: "{{ asg_list }}"
|
||||
|
||||
- name: Private IP allocation method
|
||||
debug:
|
||||
msg: "{{ private_ip_method }}"
|
||||
|
||||
- name: IP address
|
||||
debug:
|
||||
msg: "{{ ip | default (None) }}"
|
||||
|
||||
- name: Create network interface
|
||||
azure.azcollection.azure_rm_networkinterface:
|
||||
name: "{{ vm_name | default (inventory_hostname)}}"
|
||||
resource_group: "{{ tapi_resource_group }}"
|
||||
virtual_network: {name: "{{ network }}", resource_group: "{{ network_rg }}"}
|
||||
subnet_name: "{{ subnet }}"
|
||||
location: "{{ location }}"
|
||||
create_with_security_group: False
|
||||
enable_accelerated_networking: "{{ enable_accelerated_networking }}"
|
||||
subscription_id: "{{ tapi_azure_subscription_id }}"
|
||||
ip_configurations:
|
||||
- name: ipconfig1
|
||||
primary: True
|
||||
private_ip_allocation_method: "{{ private_ip_method }}"
|
||||
private_ip_address: "{{ ip | default (None) }}"
|
||||
application_security_groups: "{{ asg_list }}"
|
||||
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- azure-create-network-interface
|
||||
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for azure-create-network-interface
|
||||
38
roles/common/azure-create-resource-group/README.md
Normal file
38
roles/common/azure-create-resource-group/README.md
Normal file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
12
roles/common/azure-create-resource-group/defaults/main.yml
Normal file
12
roles/common/azure-create-resource-group/defaults/main.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
location: westeurope
|
||||
subscription_id: CORP IT & DATA
|
||||
azure_subscription_id: 758c2304-30f5-4008-bd28-9c4b92963c3b
|
||||
|
||||
|
||||
# These must be specified
|
||||
resource_group_environment: unknown
|
||||
resource_group_project: unknown
|
||||
resource_group_department: Infrastructure - Linux
|
||||
resource_group_created_by: Infrastructure - Linux
|
||||
resource_group_accountable: Infrastructure - Linux
|
||||
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for azure-create-resource-group
|
||||
57
roles/common/azure-create-resource-group/meta/main.yml
Normal file
57
roles/common/azure-create-resource-group/meta/main.yml
Normal file
@@ -0,0 +1,57 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Some suggested licenses:
|
||||
# - BSD (default)
|
||||
# - MIT
|
||||
# - GPLv2
|
||||
# - GPLv3
|
||||
# - Apache
|
||||
# - CC-BY
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 1.2
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
||||
# repo for this role. During role install, if no tags are available,
|
||||
# Galaxy will use this branch. During import Galaxy will access files on
|
||||
# this branch. If Travis integration is configured, only notifications for this
|
||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
||||
# (usually master) will be used.
|
||||
#github_branch:
|
||||
|
||||
#
|
||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
27
roles/common/azure-create-resource-group/tasks/main.yml
Normal file
27
roles/common/azure-create-resource-group/tasks/main.yml
Normal file
@@ -0,0 +1,27 @@
|
||||
---
|
||||
- name: Resource group name
|
||||
debug:
|
||||
msg: "{{ tapi_resource_group }}"
|
||||
|
||||
- name: Check if resource group already exists
|
||||
azure.azcollection.azure_rm_resourcegroup_info:
|
||||
name: "{{ tapi_resource_group }}"
|
||||
register: results
|
||||
|
||||
- debug:
|
||||
msg: "{{ results }}"
|
||||
|
||||
- name: Create a resource group
|
||||
azure.azcollection.azure_rm_resourcegroup:
|
||||
name: "{{ tapi_resource_group }}"
|
||||
location: "{{ location }}"
|
||||
subscription_id: "{{ tapi_azure_subscription_id }}"
|
||||
tags:
|
||||
Environment: "{{ resource_group_environment }}"
|
||||
Project: "{{ resource_group_project }}"
|
||||
Department: "{{ resource_group_department }}"
|
||||
CreatedBy: "{{ resource_group_created_by }}"
|
||||
CreationDate: "{{ lookup('pipe','date +%d/%m/%Y') }}"
|
||||
Accountable: "{{ resource_group_accountable }}"
|
||||
run_once: true
|
||||
when: results.resourcegroups is defined and results.resourcegroups | length == 0
|
||||
2
roles/common/azure-create-resource-group/tests/inventory
Normal file
2
roles/common/azure-create-resource-group/tests/inventory
Normal file
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
5
roles/common/azure-create-resource-group/tests/test.yml
Normal file
5
roles/common/azure-create-resource-group/tests/test.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- azure-create-resource-group
|
||||
2
roles/common/azure-create-resource-group/vars/main.yml
Normal file
2
roles/common/azure-create-resource-group/vars/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for azure-create-resource-group
|
||||
38
roles/common/azure-osm2-create-network-interface/README.md
Normal file
38
roles/common/azure-osm2-create-network-interface/README.md
Normal file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
@@ -0,0 +1,7 @@
|
||||
---
|
||||
location: West Europe
|
||||
network_rg: External-Prod-osm2-jenkins
|
||||
enable_accelerated_networking: False
|
||||
# Whether to use static or dynamic IP. Static requires 'ip' to be defined
|
||||
private_ip_method: Static
|
||||
azure_subscription_id: 758c2304-30f5-4008-bd28-9c4b92963c3b
|
||||
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for azure-create-network-interface
|
||||
@@ -0,0 +1,57 @@
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Some suggested licenses:
|
||||
# - BSD (default)
|
||||
# - MIT
|
||||
# - GPLv2
|
||||
# - GPLv3
|
||||
# - Apache
|
||||
# - CC-BY
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 1.2
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
||||
# repo for this role. During role install, if no tags are available,
|
||||
# Galaxy will use this branch. During import Galaxy will access files on
|
||||
# this branch. If Travis integration is configured, only notifications for this
|
||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
||||
# (usually master) will be used.
|
||||
#github_branch:
|
||||
|
||||
#
|
||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
@@ -0,0 +1,24 @@
|
||||
- name: Private IP allocation method
|
||||
debug:
|
||||
msg: "{{ private_ip_method }}"
|
||||
|
||||
- name: IP address
|
||||
debug:
|
||||
msg: "{{ ip | default (None) }}"
|
||||
|
||||
- name: Create network interface
|
||||
azure.azcollection.azure_rm_networkinterface:
|
||||
name: "{{ vm_name | default (inventory_hostname)}}"
|
||||
resource_group: "RG-OSM"
|
||||
virtual_network: {name: "External-Prod", resource_group: "RG-Connectivity-01"}
|
||||
subnet_name: "External-Prod-osm2-jenkins"
|
||||
location: "{{ location }}"
|
||||
create_with_security_group: False
|
||||
enable_accelerated_networking: "{{ enable_accelerated_networking }}"
|
||||
subscription_id: "{{ tapi_azure_subscription_id }}"
|
||||
ip_configurations:
|
||||
- name: ipconfig1
|
||||
primary: True
|
||||
private_ip_allocation_method: "{{ private_ip_method }}"
|
||||
private_ip_address: "{{ ip | default (None) }}"
|
||||
# application_security_groups: "{{ asg_list }}"
|
||||
@@ -0,0 +1,2 @@
|
||||
localhost
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
remote_user: root
|
||||
roles:
|
||||
- azure-create-network-interface
|
||||
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for azure-create-network-interface
|
||||
38
roles/common/backup_etcd/README.md
Executable file
38
roles/common/backup_etcd/README.md
Executable file
@@ -0,0 +1,38 @@
|
||||
Role Name
|
||||
=========
|
||||
|
||||
A brief description of the role goes here.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: username.rolename, x: 42 }
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
BSD
|
||||
|
||||
Author Information
|
||||
------------------
|
||||
|
||||
Created by the UFST Linux team
|
||||
2
roles/common/backup_etcd/defaults/main.yml
Executable file
2
roles/common/backup_etcd/defaults/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# defaults file for backup_etcd
|
||||
2
roles/common/backup_etcd/handlers/main.yml
Executable file
2
roles/common/backup_etcd/handlers/main.yml
Executable file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
# handlers file for backup_etcd
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user