├── playbooks ├── roles ├── aws │ ├── roles │ ├── manage-keypairs.yml │ ├── manage-networks.yml │ ├── delete-instance.yml │ └── provision-instance.yml ├── certs │ ├── roles │ ├── generate-idm-cert.yml │ └── generate-lets-encrypt-cert.yml ├── osp │ ├── roles │ ├── inventory │ │ ├── hosts │ │ └── openstack_inventory.py │ ├── delete-osp-instance.yml │ ├── manage-user-network.yml │ ├── manage-object-container.yml │ └── install-osp-cluster.yml ├── manage-lb │ └── roles ├── ansible │ └── tower │ │ ├── roles │ │ └── update-tower-cert.yml ├── manage-jira │ ├── roles │ ├── manage-jira.yml │ └── README.md ├── minishift-remote │ ├── roles │ └── configure-minishift-remote.yml ├── notifications │ ├── roles │ ├── email-notify-single-user.yml │ └── email-notify-group-of-users.yml ├── provision-rh-sso │ ├── roles │ ├── deploy-rh-sso.yml │ └── update-rh-sso-cert.yml ├── container-registry │ └── roles ├── manage-confluence-space │ ├── roles │ ├── playbook.yml │ └── README.md ├── manage-identities │ ├── roles │ ├── manage-atlassian-identities.yml │ ├── manage-rh-sso-identities.yml │ ├── manage-aws-identities.yml │ ├── manage-idm-identities.yml │ ├── manage-local-user-access.yml │ └── manage-identities.yml ├── provision-bastion │ ├── roles │ └── bastion.yml ├── provision-dns-server │ ├── roles │ └── configure-dns-server-bind.yml ├── provision-idm-server │ ├── roles │ ├── configure-idm-server.yml │ └── delete-aws-instance.yml ├── provision-nfs-server │ ├── roles │ └── nfs-server.yml ├── provision-ansible-tower │ └── roles ├── provision-satellite-server │ ├── roles │ └── configure-satellite-server.yml ├── manage-slack.yml ├── install-server-ca-cert.yml ├── identity.yml ├── update-dhcp-config.yml ├── update-dns-records.yml ├── install_mongodb.yml ├── update-dns-zones.yml ├── subscribe-host.yml ├── install.yml └── infra-virt-hosts.yml ├── roles ├── dhcp │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ └── test.yml │ └── tasks │ │ └── main.yml ├── install-mongodb │ └── tests │ │ ├── roles │ │ └── install_mongodb.yml ├── rhsm │ └── tests │ │ ├── roles │ │ ├── inventory │ │ ├── test.yml │ │ └── group_vars │ │ └── test-sat6.yml ├── add-sonar-plugin │ └── tests │ │ ├── roles │ │ ├── inventory │ │ └── test.yml ├── aws │ ├── manage-keypairs │ │ ├── tests │ │ │ ├── README.md │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ ├── hosts │ │ │ │ └── host_vars │ │ │ │ │ └── localhost.yml │ │ │ └── keypair.yml │ │ └── tasks │ │ │ └── main.yml │ ├── create-instance │ │ ├── defaults │ │ │ └── main.yml │ │ └── tasks │ │ │ ├── getvpc.yml │ │ │ ├── securitygroup.yml │ │ │ └── main.yml │ ├── delete-instance │ │ ├── defaults │ │ │ └── main.yml │ │ └── tasks │ │ │ ├── main.yml │ │ │ ├── securitygroup.yml │ │ │ └── getvpc.yml │ ├── manage-networks │ │ ├── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ ├── hosts │ │ │ │ └── host_vars │ │ │ │ │ └── localhost.yml │ │ │ └── networks.yml │ │ └── tasks │ │ │ └── main.yml │ └── manage-security-groups │ │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── host_vars │ │ │ │ └── localhost.yml │ │ └── secgroups.yml │ │ └── tasks │ │ └── main.yml ├── config-pxe │ ├── tests │ │ ├── roles │ │ └── test.yml │ ├── tasks │ │ ├── main.yml │ │ └── kickstart.yml │ └── defaults │ │ └── main.yml ├── nfs-server │ ├── tests │ │ ├── roles │ │ ├── nfs-server.yml │ │ └── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ └── all.yml │ ├── handlers │ │ └── main.yml │ ├── tasks │ │ ├── main.yml │ │ └── lvm.yml │ └── defaults │ │ └── main.yml ├── scm │ ├── github.com │ │ ├── tests │ │ │ ├── inventory │ │ │ │ └── hosts │ │ │ └── test.yml │ │ ├── handlers │ │ │ └── main.yml │ │ └── defaults │ │ │ └── main.yml │ ├── gitlab.com │ │ ├── tests │ │ │ ├── inventory │ │ │ │ └── hosts │ │ │ └── test.yml │ │ └── defaults │ │ │ └── main.yml │ ├── git │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── vars │ │ │ └── main.yml │ │ ├── templates │ │ │ ├── git_wrapper.j2 │ │ │ └── ssh_config.j2 │ │ ├── tasks │ │ │ └── remove.yml │ │ └── handlers │ │ │ └── main.yml │ ├── bitbucket.org │ │ ├── meta │ │ │ └── main.yml │ │ └── tests │ │ │ └── inventory │ ├── add-webhooks-github │ │ ├── tests │ │ │ ├── inventory │ │ │ │ ├── hosts │ │ │ │ └── host_vars │ │ │ │ │ └── localhost.yml │ │ │ └── test.yml │ │ └── tasks │ │ │ └── main.yml │ └── quay │ │ ├── tests │ │ └── test.yml │ │ └── defaults │ │ └── main.yml ├── setup-slack │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ └── test.yml │ ├── defaults │ │ └── main.yml │ └── tasks │ │ └── main.yml ├── config-bonding │ ├── handlers │ │ └── main.yml │ ├── tasks │ │ └── main.yml │ ├── templates │ │ └── bonding_slave.j2 │ └── tests │ │ ├── infrahosts.yml │ │ └── inventory │ │ ├── host_vars │ │ ├── infra-1.example.com │ │ └── infra-2.example.com │ │ └── hosts ├── config-chrony │ ├── tests │ │ ├── roles │ │ ├── test.yml │ │ └── inventory │ ├── tasks │ │ └── main.yml │ ├── handlers │ │ └── main.yml │ └── defaults │ │ └── main.yml ├── config-hostname │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ │ └── my-host.yml │ │ └── test.yml │ └── tasks │ │ ├── main.yaml │ │ └── prep.yml ├── config-httpd │ ├── tests │ │ ├── roles │ │ ├── test.yml │ │ └── inventory │ ├── defaults │ │ └── main.yml │ └── tasks │ │ ├── main.yml │ │ └── seed.yml ├── config-nexus │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ └── ocp-test.yml │ └── files │ │ ├── nist-proxy-repos.groovy │ │ └── nist-proxy-repos.json ├── config-openvpn │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ └── hosts │ │ └── openvpn-server.yml │ ├── tasks │ │ └── main.yml │ └── defaults │ │ └── main.yml ├── config-packages │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ └── test.yml │ ├── defaults │ │ └── main.yml │ └── tasks │ │ ├── main.yml │ │ ├── rhelpackages.yml │ │ └── packages.yml ├── config-routes │ ├── tests │ │ ├── roles │ │ ├── infrahosts.yml │ │ └── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ └── infra_hosts.yml │ ├── tasks │ │ ├── prereq-RedHat.yml │ │ ├── main.yml │ │ ├── prereq-Fedora.yml │ │ ├── prereq.yml │ │ └── route.yml │ ├── handlers │ │ └── main.yml │ └── templates │ │ └── route.j2 ├── config-satellite │ ├── tests │ │ ├── roles │ │ ├── hosts │ │ └── test.yml │ ├── defaults │ │ └── main.yml │ └── tasks │ │ ├── main.yml │ │ └── activation_keys.yml ├── config-selinux │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ └── test.yml │ ├── defaults │ │ └── main.yml │ └── tasks │ │ └── main.yml ├── config-timezone │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ ├── .yamllint │ │ └── molecule │ │ │ └── default │ │ │ └── converge.yml │ └── tasks │ │ └── main.yml ├── config-vlans │ ├── tasks │ │ ├── prereq.yml │ │ └── main.yml │ └── tests │ │ ├── infrahosts.yml │ │ └── inventory │ │ ├── host_vars │ │ ├── infra-1.example.com │ │ └── infra-2.example.com │ │ ├── hosts │ │ └── group_vars │ │ └── infra_hosts.yml ├── get-remote-file │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ ├── host_vars │ │ │ │ └── localhost.yml │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ └── get-file.yml │ └── defaults │ │ └── main.yml ├── manage-jira │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ └── playbook.yml │ └── tasks │ │ └── main.yml ├── virt-install │ ├── tests │ │ └── roles │ ├── tasks │ │ └── main.yml │ └── handlers │ │ └── main.yml ├── ansible │ ├── tower │ │ ├── launch-tower-jobs │ │ │ ├── tests │ │ │ │ └── main.yml │ │ │ ├── library │ │ │ ├── filter_plugins │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── manage-projects │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ ├── hosts │ │ │ │ │ └── group_vars │ │ │ │ │ │ └── tower.yml │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── manage-settings │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ ├── hosts │ │ │ │ │ └── group_vars │ │ │ │ │ │ └── tower.yml │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── manage-credentials │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ ├── hosts │ │ │ │ │ └── group_vars │ │ │ │ │ │ └── tower.yml │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── manage-inventories │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ ├── defaults │ │ │ │ └── main.yml │ │ │ └── templates │ │ │ │ ├── group.j2 │ │ │ │ ├── inventory.j2 │ │ │ │ ├── host.j2 │ │ │ │ └── group-member.j2 │ │ ├── manage-job-templates │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── manage-organizations │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ ├── hosts │ │ │ │ │ └── group_vars │ │ │ │ │ │ └── tower.yml │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ ├── templates │ │ │ │ ├── associate_galaxy_credential.j2 │ │ │ │ ├── organization.j2 │ │ │ │ └── galaxy_credential.j2 │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── manage-schedules │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ ├── hosts │ │ │ │ │ └── group_vars │ │ │ │ │ │ └── tower.yml │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── manage-credential-types │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── manage-workflow-templates │ │ │ ├── library │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── filter_plugins │ │ │ ├── templates │ │ │ │ └── workflow-node-template.j2 │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── config-ansible-tower │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── tasks │ │ │ │ └── main.yml │ │ │ └── handlers │ │ │ │ └── main.yml │ │ ├── config-ansible-tower-ldap │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── defaults │ │ │ │ └── main.yml │ │ │ ├── handlers │ │ │ │ └── main.yml │ │ │ └── tasks │ │ │ │ └── main.yml │ │ ├── config-ansible-tower-ocp │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── tasks │ │ │ │ ├── main.yml │ │ │ │ ├── create_project.yml │ │ │ │ └── update_tower_inventory.yml │ │ │ ├── handlers │ │ │ │ └── main.yml │ │ │ └── templates │ │ │ │ └── pvc.j2 │ │ ├── config-ansible-tower-license │ │ │ ├── tests │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── tasks │ │ │ │ └── main.yml │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── config-ansible-tower-subscription-manifest │ │ │ ├── tests │ │ │ │ ├── files │ │ │ │ │ └── example-manifest.zip │ │ │ │ ├── roles │ │ │ │ ├── inventory │ │ │ │ │ └── hosts │ │ │ │ └── test.yml │ │ │ ├── tasks │ │ │ │ └── main.yml │ │ │ ├── defaults │ │ │ │ └── main.yml │ │ │ └── templates │ │ │ │ └── manifest.j2 │ │ ├── wait-for-tower-to-be-ready │ │ │ └── defaults │ │ │ │ └── main.yml │ │ ├── config-ansible-tower-ocp-ldap-ca │ │ │ ├── defaults │ │ │ │ └── main.yml │ │ │ ├── files │ │ │ │ └── ldap.py │ │ │ └── tasks │ │ │ │ └── main.yml │ │ └── config-ansible-tower-ocp-ssh │ │ │ └── tasks │ │ │ └── main.yml │ └── prep-for-ansible │ │ └── tasks │ │ └── main.yml ├── certs │ ├── generate-csr │ │ └── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── host_vars │ │ │ │ └── localhost.yml │ │ │ └── test.yml │ ├── acme-host-cert │ │ ├── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ ├── hosts │ │ │ │ └── host_vars │ │ │ │ │ └── localhost.yml │ │ │ └── test.yml │ │ ├── defaults │ │ │ └── main.yml │ │ └── tasks │ │ │ ├── rm-dns-records.yml │ │ │ └── create-directories.yml │ └── idm-host-cert │ │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ ├── host_vars │ │ │ └── localhost.yml │ │ ├── test.yml │ │ └── group_vars │ │ │ └── cert-host.yml │ │ ├── templates │ │ └── cert.j2 │ │ └── tasks │ │ ├── main.yml │ │ └── idm-login.yml ├── config-idm-server │ ├── tests │ │ ├── roles │ │ ├── test.yml │ │ └── inventory │ ├── tasks │ │ └── main.yml │ ├── handlers │ │ └── main.yml │ └── defaults │ │ └── main.yml ├── config-ipa-client │ ├── tests │ │ ├── roles │ │ ├── test.yml │ │ └── inventory │ ├── defaults │ │ └── main.yml │ └── tasks │ │ ├── main.yml │ │ ├── prereq-CentOS.yml │ │ ├── prereq-RedHat.yml │ │ └── prereq-Fedora.yml ├── config-iscsi-client │ ├── tests │ │ ├── roles │ │ ├── test.yml │ │ ├── group_vars │ │ │ └── iscsi.yml │ │ ├── inventory │ │ └── host_vars │ │ │ ├── node-2.yml │ │ │ └── node-1.yml │ └── tasks │ │ ├── main.yml │ │ ├── iscsi.yml │ │ ├── prereq.yml │ │ └── lvm-config.yml ├── config-nagios-server │ ├── defaults │ │ └── main.yml │ ├── tests │ │ └── main.yml │ └── templates │ │ └── common.cfg.j2 ├── config-pip-packages │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ └── test.yml │ ├── defaults │ │ └── main.yml │ └── tasks │ │ └── main.yml ├── config-software-src │ ├── tests │ │ ├── roles │ │ └── test.yml │ └── tasks │ │ ├── main.yml │ │ ├── prep.yml │ │ └── mount-software.yml ├── config-versionlock │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ └── test.yml │ └── tasks │ │ ├── prereq-RedHat.yml │ │ ├── versionlock.yml │ │ ├── prereq-Fedora.yml │ │ └── main.yml ├── discover-redirect-url │ └── tests │ │ ├── roles │ │ ├── inventory │ │ ├── hosts │ │ └── host_vars │ │ │ └── localhost.yml │ │ └── playbook.yml ├── manage-sshd-config │ ├── test │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ ├── id_rsa_user1.pub │ │ └── id_rsa_user2.pub │ ├── tasks │ │ ├── main.yml │ │ └── sshd-update.yml │ └── handlers │ │ └── main.yml ├── osp │ ├── admin-network │ │ ├── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ └── hosts │ │ │ └── test.yml │ │ └── tasks │ │ │ └── main.yml │ ├── admin-sec-group │ │ └── test │ │ │ ├── roles │ │ │ ├── inventory │ │ │ └── hosts │ │ │ └── test.yml │ ├── packstack-install │ │ ├── tests │ │ │ ├── roles │ │ │ └── test.yml │ │ └── tasks │ │ │ ├── packstack-install.yml │ │ │ ├── main.yml │ │ │ └── host-prep.yml │ ├── packstack-post │ │ ├── tests │ │ │ ├── roles │ │ │ └── test.yml │ │ └── files │ │ │ ├── mariadb-limits.conf │ │ │ └── nova-ssh.te │ ├── admin-floating-ip │ │ └── tests │ │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ │ └── test.yml │ ├── admin-keystone-domain │ │ └── handlers │ │ │ └── main.yml │ ├── admin-nova-flavor │ │ └── tasks │ │ │ └── main.yml │ ├── admin-project │ │ └── tasks │ │ │ └── tenant-roles.yml │ ├── admin-nova-service │ │ └── tasks │ │ │ └── main.yml │ ├── admin-user │ │ └── tasks │ │ │ └── roles.yml │ └── admin-image │ │ └── tasks │ │ └── main.yml ├── dns │ ├── manage-dns-records │ │ ├── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ └── hosts │ │ │ └── test.yml │ │ ├── handlers │ │ │ └── main.yml │ │ └── tasks │ │ │ ├── main.yml │ │ │ ├── nsupdate │ │ │ ├── main.yml │ │ │ └── nsupdate-server.yml │ │ │ └── route53 │ │ │ └── main.yml │ ├── config-dns-server-bind │ │ ├── tests │ │ │ ├── roles │ │ │ ├── test.yml │ │ │ └── inventory │ │ │ │ ├── group_vars │ │ │ │ ├── forward-server.yml │ │ │ │ └── dns-server.yml │ │ │ │ └── hosts │ │ ├── tasks │ │ │ ├── main.yml │ │ │ └── restart_named.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── templates │ │ │ ├── logging.j2 │ │ │ └── controls.j2 │ │ ├── defaults │ │ │ └── main.yml │ │ └── files │ │ │ └── named.conf │ ├── manage-dns-zones-bind │ │ ├── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ ├── hosts │ │ │ │ └── host_vars │ │ │ │ │ └── localhost.yml │ │ │ └── test.yml │ │ ├── templates │ │ │ ├── tsig-key.j2 │ │ │ ├── view-config-1.j2 │ │ │ └── view-config-2.j2 │ │ ├── tasks │ │ │ ├── print_keys.yml │ │ │ ├── main.yml │ │ │ └── determine-action.yml │ │ ├── handlers │ │ │ └── main.yml │ │ └── defaults │ │ │ └── main.yml │ └── manage-dns-zones-route53 │ │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ │ ├── hosts │ │ │ └── host_vars │ │ │ │ └── localhost.yml │ │ └── test.yml │ │ ├── tasks │ │ ├── process-zones.yml │ │ ├── process-views.yml │ │ ├── loop-zones.yml │ │ ├── loop-records.yml │ │ ├── main.yml │ │ └── determine-action.yml │ │ └── defaults │ │ └── main.yml ├── manage-confluence-space │ ├── tests │ │ ├── roles │ │ ├── inventory │ │ ├── playbook.yml │ │ └── vars │ │ │ └── vars_atlassian │ └── templates │ │ └── space.j2 ├── manage-ssh-private-keys │ ├── test │ │ ├── roles │ │ ├── inventory │ │ │ └── hosts │ │ └── playbook.yml │ └── tasks │ │ └── main.yml ├── notifications │ ├── html-to-md │ │ ├── tests │ │ │ ├── roles │ │ │ ├── README.md │ │ │ ├── inventory │ │ │ │ └── group_vars │ │ │ │ │ └── all.yml │ │ │ └── test.yml │ │ └── tasks │ │ │ ├── main.yml │ │ │ ├── prereq.yml │ │ │ └── convert_html_to_md.yml │ ├── md-to-html │ │ ├── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ └── group_vars │ │ │ │ │ └── all.yml │ │ │ ├── README.md │ │ │ └── test.yml │ │ └── tasks │ │ │ ├── main.yml │ │ │ ├── prereq.yml │ │ │ └── convert_md_to_html.yml │ └── send-email │ │ └── tests │ │ ├── roles │ │ └── test.yml ├── file-management │ └── remove-files │ │ ├── tests │ │ ├── inventory │ │ └── test.yml │ │ ├── meta │ │ └── main.yml │ │ ├── vars │ │ └── main.yml │ │ ├── defaults │ │ └── main.yml │ │ └── handlers │ │ └── main.yml ├── identity-management │ ├── htpasswd-from-dict │ │ ├── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── defaults │ │ │ └── main.yml │ ├── populate-users │ │ └── test │ │ │ ├── roles │ │ │ ├── inventory │ │ │ └── playbook.yml │ ├── list-users-by-group │ │ ├── tests │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ └── hosts │ │ │ ├── test.yml │ │ │ └── README.md │ │ └── tasks │ │ │ ├── generate-list-of-users.yml │ │ │ └── main.yml │ ├── manage-idm-identities │ │ ├── tests │ │ │ ├── inventory │ │ │ ├── roles │ │ │ └── create_idm.yml │ │ └── tasks │ │ │ └── main.yml │ ├── manage-user-password │ │ ├── test │ │ │ ├── roles │ │ │ ├── inventory │ │ │ └── vars │ │ │ │ ├── passwdfile4.json │ │ │ │ ├── passwdfile2.json │ │ │ │ ├── passwdfile3.json │ │ │ │ ├── passwdfile1.json │ │ │ │ └── passwdfile5.json │ │ └── defaults │ │ │ └── main.yml │ ├── manage-local-user-password │ │ ├── test │ │ │ ├── roles │ │ │ └── inventory │ │ │ │ ├── hosts │ │ │ │ └── group_vars │ │ │ │ └── all.yml │ │ ├── defaults │ │ │ └── main.yml │ │ ├── tasks │ │ │ ├── password.yml │ │ │ └── main.yml │ │ └── filter_plugins │ │ │ └── encrypt_password.py │ ├── manage-local-user-ssh-authkeys │ │ ├── test │ │ │ ├── roles │ │ │ ├── inventory │ │ │ │ ├── hosts │ │ │ │ └── group_vars │ │ │ │ │ └── all.yml │ │ │ ├── id_rsa_user1.pub │ │ │ └── id_rsa_user2.pub │ │ └── tasks │ │ │ ├── main.yml │ │ │ └── authorizedkeys.yml │ ├── manage-aws-identities │ │ ├── defaults │ │ │ └── main.yml │ │ └── tasks │ │ │ └── main.yml │ ├── manage-rh-sso-identities │ │ └── templates │ │ │ └── manage-groups.json.j2 │ └── manage-atlassian-identities │ │ └── tasks │ │ └── main.yml ├── config-repo-server │ ├── defaults │ │ └── main.yml │ ├── tests │ │ └── test.yml │ └── tasks │ │ ├── main.yml │ │ └── mount-iso.yml ├── config-vnc-server │ ├── defaults │ │ └── main.yml │ └── files │ │ ├── xstartup-lxde │ │ ├── xstartup-mate │ │ ├── xstartup-gnome │ │ ├── xstartup-xfce │ │ └── SELinuxVNC.te ├── config-lvm │ ├── defaults │ │ └── main.yml │ └── tasks │ │ ├── main.yml │ │ └── prep.yml ├── load-balancers │ └── manage-haproxy │ │ ├── files │ │ └── rsyslog_haproxy.conf │ │ ├── defaults │ │ └── main.yml │ │ ├── tasks │ │ └── main.yml │ │ └── templates │ │ └── lb_http_stats.j2 ├── config-libvirt │ ├── tasks │ │ ├── main.yml │ │ ├── services.yml │ │ └── packages.yml │ └── defaults │ │ └── main.yml ├── keepalived │ ├── tasks │ │ ├── main.yml │ │ └── keepalived-config.yml │ └── handlers │ │ └── main.yml ├── config-docker-compose │ ├── tests │ │ ├── inventory │ │ │ ├── host_vars │ │ │ │ └── docker01.example.com │ │ │ ├── group_vars │ │ │ │ └── docker_hosts.yml │ │ │ └── hosts │ │ └── dockerhosts.yml │ ├── defaults │ │ └── main.yml │ └── tasks │ │ ├── docker-compose.yml │ │ └── main.yml ├── config-nagios-target │ ├── files │ │ └── nrpe.d │ │ │ ├── check_mem.cfg │ │ │ ├── check_dns.cfg │ │ │ ├── check_openshift_node.cfg │ │ │ ├── check_openshift_master.cfg │ │ │ ├── check_nfs.cfg │ │ │ └── check_docker.cfg │ └── tasks │ │ ├── main.yml │ │ ├── prerequisites.yml │ │ ├── enable-repos.yml │ │ ├── install-nagios.yml │ │ └── install-epel.yml ├── config-docker │ ├── handlers │ │ └── main.yml │ ├── tasks │ │ ├── kernel_cgroups_v1.yml │ │ └── main.yml │ └── defaults │ │ └── main.yml ├── update-host │ └── tasks │ │ ├── main.yml │ │ ├── wait-for-host.yml │ │ ├── update-host.yml │ │ └── reboot-host.yml ├── manage-server-ca-cert │ └── defaults │ │ └── main.yml ├── config-minishift-remote │ └── handlers │ │ └── main.yml ├── config-mysql │ ├── tasks │ │ └── main.yml │ ├── handlers │ │ └── main.yml │ └── templates │ │ └── mysql.j2 ├── config-linux-desktop │ ├── config-gnome │ │ └── tasks │ │ │ ├── gnome-Fedora.yml │ │ │ └── main.yml │ ├── config-lxde │ │ └── tasks │ │ │ ├── lxde-Fedora.yml │ │ │ └── main.yml │ ├── config-mate │ │ └── tasks │ │ │ ├── mate-Fedora.yml │ │ │ └── main.yml │ └── config-xfce │ │ └── tasks │ │ ├── xfce-Fedora.yml │ │ └── main.yml ├── config-redis │ ├── tasks │ │ └── main.yml │ ├── templates │ │ └── redis.j2 │ └── handlers │ │ └── main.yml ├── config-quay-builder │ ├── handlers │ │ └── main.yml │ └── templates │ │ └── quay-builder.j2 ├── config-container-storage-setup │ ├── templates │ │ ├── docker-storage-setup-dm.j2 │ │ └── docker-storage-setup-overlayfs.j2 │ └── defaults │ │ └── main.yml ├── config-postgresql │ ├── tasks │ │ └── main.yml │ └── handlers │ │ └── main.yml ├── config-clair │ └── handlers │ │ └── main.yml ├── config-quay-enterprise │ ├── handlers │ │ └── main.yml │ └── tasks │ │ └── configure_systemd.yml └── config-rh-sso │ ├── templates │ └── auth-flow.json.j2 │ └── defaults │ └── main.yml ├── meta └── main.yml ├── inventory ├── manage-jira │ ├── hosts │ └── host_vars │ │ └── localhost.yml ├── quay-enterprise │ ├── group_vars │ │ ├── quay_builder.yml │ │ ├── docker_hosts.yml │ │ ├── lb.yml │ │ ├── quay_enterprise.yml │ │ ├── clair.yml │ │ └── all.yml │ └── hosts ├── manage-confluence-space │ ├── hosts │ └── host_vars │ │ └── localhost.yml ├── rh-sso │ ├── openstack_inventory.py │ ├── host_vars │ │ └── localhost.yml │ └── hosts ├── bastion │ ├── openstack_inventory.py │ ├── host_vars │ │ └── localhost.yml │ └── hosts ├── dns-server │ ├── openstack_inventory.py │ ├── host_vars │ │ └── localhost.yml │ ├── group_vars │ │ └── dns-server.yml │ └── hosts ├── idm-server │ ├── openstack_inventory.py │ ├── host_vars │ │ └── localhost.yml │ └── hosts ├── nfs-server │ ├── openstack_inventory.py │ ├── host_vars │ │ └── localhost.yml │ ├── hosts │ └── group_vars │ │ └── nfs-server.yml ├── ansible-tower │ ├── openstack_inventory.py │ ├── group_vars │ │ ├── osp_instances.yml │ │ └── ansible-tower.yml │ ├── host_vars │ │ └── localhost.yml │ └── hosts ├── minishift-remote │ ├── openstack_inventory.py │ ├── host_vars │ │ └── localhost.yml │ ├── hosts │ └── group_vars │ │ └── minishift_remote.yml ├── satellite-server │ ├── openstack_inventory.py │ ├── host_vars │ │ └── localhost.yml │ └── hosts └── scripts │ └── google-sheets │ ├── requirements.txt │ ├── config.ini │ └── credentials.json ├── .gitignore ├── files ├── clouds.yaml └── openstack.yml ├── images └── infra-ansible │ └── root │ └── usr │ └── local │ └── bin │ └── user_setup ├── .github └── dependabot.yaml ├── ansible.cfg └── OWNERS /playbooks/roles: -------------------------------------------------------------------------------- 1 | ../roles -------------------------------------------------------------------------------- /playbooks/aws/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/certs/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/osp/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/manage-lb/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /roles/dhcp/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/install-mongodb/tests/roles: -------------------------------------------------------------------------------- 1 | ../.. -------------------------------------------------------------------------------- /roles/rhsm/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /meta/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | dependencies: 3 | -------------------------------------------------------------------------------- /playbooks/ansible/tower/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /playbooks/manage-jira/roles: -------------------------------------------------------------------------------- 1 | ../../roles/ -------------------------------------------------------------------------------- /playbooks/minishift-remote/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/notifications/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/provision-rh-sso/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /roles/add-sonar-plugin/tests/roles: -------------------------------------------------------------------------------- 1 | ../.. -------------------------------------------------------------------------------- /roles/aws/manage-keypairs/tests/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /roles/config-pxe/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/nfs-server/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/scm/github.com/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /roles/scm/gitlab.com/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /roles/setup-slack/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /playbooks/container-registry/roles: -------------------------------------------------------------------------------- 1 | ../../roles/ -------------------------------------------------------------------------------- /playbooks/manage-confluence-space/roles: -------------------------------------------------------------------------------- 1 | ../roles/ -------------------------------------------------------------------------------- /playbooks/manage-identities/roles: -------------------------------------------------------------------------------- 1 | ../../roles/ -------------------------------------------------------------------------------- /playbooks/provision-bastion/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/provision-dns-server/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/provision-idm-server/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/provision-nfs-server/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /roles/config-bonding/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | -------------------------------------------------------------------------------- /roles/config-chrony/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-hostname/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-httpd/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-nexus/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles/ -------------------------------------------------------------------------------- /roles/config-openvpn/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-packages/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-routes/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-satellite/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-selinux/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-timezone/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles/ -------------------------------------------------------------------------------- /roles/config-vlans/tasks/prereq.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | -------------------------------------------------------------------------------- /roles/get-remote-file/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/manage-jira/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles/ -------------------------------------------------------------------------------- /roles/scm/git/tests/inventory: -------------------------------------------------------------------------------- 1 | localhost 2 | 3 | -------------------------------------------------------------------------------- /roles/virt-install/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /inventory/manage-jira/hosts: -------------------------------------------------------------------------------- 1 | [jira] 2 | localhost 3 | -------------------------------------------------------------------------------- /playbooks/provision-ansible-tower/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /playbooks/provision-satellite-server/roles: -------------------------------------------------------------------------------- 1 | ../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/launch-tower-jobs/tests/main.yml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-projects/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/ansible/tower/manage-settings/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/aws/create-instance/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | -------------------------------------------------------------------------------- /roles/aws/delete-instance/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | -------------------------------------------------------------------------------- /roles/certs/generate-csr/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/config-idm-server/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles/ -------------------------------------------------------------------------------- /roles/config-ipa-client/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-iscsi-client/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-nagios-server/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | -------------------------------------------------------------------------------- /roles/config-nagios-server/tests/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | -------------------------------------------------------------------------------- /roles/config-pip-packages/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-software-src/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/config-versionlock/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/discover-redirect-url/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/manage-sshd-config/test/roles: -------------------------------------------------------------------------------- 1 | ../../../roles/ -------------------------------------------------------------------------------- /roles/osp/admin-network/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/osp/admin-sec-group/test/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/osp/packstack-install/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/osp/packstack-post/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/launch-tower-jobs/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credentials/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/ansible/tower/manage-job-templates/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/ansible/tower/manage-schedules/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/aws/manage-keypairs/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/aws/manage-networks/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/certs/acme-host-cert/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/certs/idm-host-cert/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/config-routes/tasks/prereq-RedHat.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | -------------------------------------------------------------------------------- /roles/config-timezone/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [node] 2 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-records/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/manage-confluence-space/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../roles -------------------------------------------------------------------------------- /roles/manage-jira/tests/inventory: -------------------------------------------------------------------------------- 1 | [jira] 2 | localhost 3 | -------------------------------------------------------------------------------- /roles/manage-ssh-private-keys/test/roles: -------------------------------------------------------------------------------- 1 | ../../../roles/ -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credential-types/library: -------------------------------------------------------------------------------- 1 | ../library -------------------------------------------------------------------------------- /roles/aws/manage-security-groups/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/dns/manage-dns-records/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /roles/notifications/html-to-md/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles/ -------------------------------------------------------------------------------- /roles/notifications/md-to-html/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles/ -------------------------------------------------------------------------------- /roles/notifications/send-email/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles/ -------------------------------------------------------------------------------- /roles/scm/bitbucket.org/meta/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | dependencies: 3 | -------------------------------------------------------------------------------- /roles/scm/git/meta/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | dependencies: [] 4 | -------------------------------------------------------------------------------- /roles/scm/git/vars/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # vars file for git 3 | -------------------------------------------------------------------------------- /inventory/quay-enterprise/group_vars/quay_builder.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-projects/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/manage-schedules/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/manage-settings/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/manage-workflow-templates/library: -------------------------------------------------------------------------------- 1 | ../library/ -------------------------------------------------------------------------------- /inventory/manage-confluence-space/hosts: -------------------------------------------------------------------------------- 1 | [confluence] 2 | localhost 3 | -------------------------------------------------------------------------------- /inventory/rh-sso/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../files/openstack_inventory.py -------------------------------------------------------------------------------- /playbooks/osp/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | 3 | [osp_instances] 4 | 5 | 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credentials/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/manage-job-templates/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/file-management/remove-files/tests/inventory: -------------------------------------------------------------------------------- 1 | localhost 2 | 3 | -------------------------------------------------------------------------------- /roles/identity-management/htpasswd-from-dict/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../roles -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.retry 3 | *.swp 4 | 5 | # IntelliJ 6 | .idea/ 7 | *.iml -------------------------------------------------------------------------------- /inventory/bastion/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../files/openstack_inventory.py -------------------------------------------------------------------------------- /inventory/dns-server/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../files/openstack_inventory.py -------------------------------------------------------------------------------- /inventory/idm-server/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../files/openstack_inventory.py -------------------------------------------------------------------------------- /inventory/nfs-server/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../files/openstack_inventory.py -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ldap/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles/ -------------------------------------------------------------------------------- /roles/ansible/tower/launch-tower-jobs/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credential-types/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles -------------------------------------------------------------------------------- /roles/ansible/tower/manage-projects/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/ansible/tower/manage-schedules/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/ansible/tower/manage-settings/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/ansible/tower/manage-workflow-templates/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles/ -------------------------------------------------------------------------------- /roles/certs/idm-host-cert/tests/inventory: -------------------------------------------------------------------------------- 1 | 2 | [cert-host] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/config-openvpn/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prep.yml 4 | -------------------------------------------------------------------------------- /roles/config-repo-server/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | hosted_isos: [] 4 | -------------------------------------------------------------------------------- /roles/get-remote-file/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [file-endpoint] 2 | localhost 3 | -------------------------------------------------------------------------------- /roles/manage-confluence-space/tests/inventory: -------------------------------------------------------------------------------- 1 | [confluence] 2 | localhost 3 | -------------------------------------------------------------------------------- /roles/osp/admin-sec-group/test/inventory/hosts: -------------------------------------------------------------------------------- 1 | [stack] 2 | localhost 3 | 4 | -------------------------------------------------------------------------------- /roles/setup-slack/tests/inventory: -------------------------------------------------------------------------------- 1 | localhost ansible_connection=local 2 | 3 | -------------------------------------------------------------------------------- /inventory/ansible-tower/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../files/openstack_inventory.py -------------------------------------------------------------------------------- /inventory/manage-jira/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | ansible_connection: local 3 | -------------------------------------------------------------------------------- /inventory/minishift-remote/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../files/openstack_inventory.py -------------------------------------------------------------------------------- /inventory/satellite-server/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../files/openstack_inventory.py -------------------------------------------------------------------------------- /playbooks/osp/inventory/openstack_inventory.py: -------------------------------------------------------------------------------- 1 | ../../../files/openstack_inventory.py -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-license/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles/ -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credentials/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/ansible/tower/manage-job-templates/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/aws/manage-keypairs/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [aws-provisioner] 2 | localhost 3 | -------------------------------------------------------------------------------- /roles/aws/manage-networks/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [aws-provisioner] 2 | localhost 3 | -------------------------------------------------------------------------------- /roles/certs/acme-host-cert/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [cert-host] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/certs/generate-csr/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [csr-host] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/config-hostname/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [my-host] 3 | 192.168.10.12 4 | -------------------------------------------------------------------------------- /roles/config-packages/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | yum_preferred: false 4 | 5 | -------------------------------------------------------------------------------- /roles/config-pip-packages/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | pip: 3 | packages: [] 4 | -------------------------------------------------------------------------------- /roles/config-timezone/tests/.yamllint: -------------------------------------------------------------------------------- 1 | ../../../.github/workflow-config/yamllint.yml -------------------------------------------------------------------------------- /roles/config-vnc-server/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | vnc_home_dir: '/home' 4 | -------------------------------------------------------------------------------- /roles/config-vnc-server/files/xstartup-lxde: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | startlxde & 4 | 5 | -------------------------------------------------------------------------------- /roles/discover-redirect-url/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [redirect_host] 2 | localhost 3 | -------------------------------------------------------------------------------- /roles/file-management/remove-files/meta/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | dependencies: [] 4 | -------------------------------------------------------------------------------- /roles/identity-management/htpasswd-from-dict/tests/inventory: -------------------------------------------------------------------------------- 1 | localhost 2 | 3 | -------------------------------------------------------------------------------- /roles/identity-management/populate-users/test/roles: -------------------------------------------------------------------------------- 1 | ../../../identity-management -------------------------------------------------------------------------------- /roles/manage-ssh-private-keys/test/inventory/hosts: -------------------------------------------------------------------------------- 1 | [servers] 2 | test-server 3 | -------------------------------------------------------------------------------- /inventory/bastion/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /inventory/dns-server/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /inventory/nfs-server/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /inventory/rh-sso/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credential-types/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/ansible/tower/manage-workflow-templates/filter_plugins: -------------------------------------------------------------------------------- 1 | ../../../../filter_plugins -------------------------------------------------------------------------------- /roles/aws/manage-security-groups/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [aws-provisioner] 2 | localhost -------------------------------------------------------------------------------- /roles/config-httpd/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | default_document_root: "/var/www/html" 3 | -------------------------------------------------------------------------------- /roles/config-pip-packages/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | localhost ansible_connection=local 2 | -------------------------------------------------------------------------------- /roles/identity-management/list-users-by-group/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../identity-management -------------------------------------------------------------------------------- /roles/identity-management/manage-idm-identities/tests/inventory: -------------------------------------------------------------------------------- 1 | [ipa] 2 | my-idm.com 3 | -------------------------------------------------------------------------------- /roles/identity-management/manage-idm-identities/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../identity-management -------------------------------------------------------------------------------- /roles/identity-management/manage-user-password/test/roles: -------------------------------------------------------------------------------- 1 | ../../../identity-management -------------------------------------------------------------------------------- /roles/osp/admin-floating-ip/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | localhost ansible_connection=local 2 | -------------------------------------------------------------------------------- /roles/osp/admin-network/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | localhost ansible_connection=local 2 | -------------------------------------------------------------------------------- /roles/scm/add-webhooks-github/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [webhooks-server] 2 | localhost 3 | -------------------------------------------------------------------------------- /roles/setup-slack/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | slack_channels: {} 3 | slack_users: {} 4 | -------------------------------------------------------------------------------- /inventory/ansible-tower/group_vars/osp_instances.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_become: true 4 | -------------------------------------------------------------------------------- /inventory/ansible-tower/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /inventory/idm-server/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | 5 | -------------------------------------------------------------------------------- /inventory/satellite-server/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [tower] 2 | localhost 3 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-projects/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | 192.168.1.21 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-schedules/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | 192.168.1.21 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-settings/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | 192.168.1.21 4 | -------------------------------------------------------------------------------- /roles/config-bonding/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: 'interfaces.yml' 4 | 5 | -------------------------------------------------------------------------------- /roles/config-packages/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | localhost ansible_connection=local 3 | 4 | -------------------------------------------------------------------------------- /roles/config-selinux/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | localhost ansible_connection=local 3 | 4 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [dns-servers] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [dns-servers] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/file-management/remove-files/vars/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # vars file for remove-files 3 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-password/test/roles: -------------------------------------------------------------------------------- 1 | ../../../identity-management -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-ssh-authkeys/test/roles: -------------------------------------------------------------------------------- 1 | ../../../user-management -------------------------------------------------------------------------------- /roles/identity-management/manage-user-password/test/inventory: -------------------------------------------------------------------------------- 1 | [ipa] 2 | idm.example.com 3 | -------------------------------------------------------------------------------- /roles/osp/packstack-post/files/mariadb-limits.conf: -------------------------------------------------------------------------------- 1 | 2 | [Service] 3 | LimitNOFILE=131070 4 | -------------------------------------------------------------------------------- /inventory/manage-confluence-space/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | ansible_connection: local 3 | -------------------------------------------------------------------------------- /inventory/minishift-remote/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | 5 | -------------------------------------------------------------------------------- /playbooks/manage-jira/manage-jira.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: jira 3 | roles: 4 | - manage-jira 5 | -------------------------------------------------------------------------------- /roles/add-sonar-plugin/tests/inventory: -------------------------------------------------------------------------------- 1 | [ocp-sonarqube] 2 | localhost ansible_connection=local 3 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ldap/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-subscription-manifest/tests/files/example-manifest.zip: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-subscription-manifest/tests/roles: -------------------------------------------------------------------------------- 1 | ../../../../../roles/ -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credentials/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | 192.168.1.21 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | 192.168.1.21 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-job-templates/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | 192.168.1.21 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | 192.168.1.21 4 | -------------------------------------------------------------------------------- /roles/certs/idm-host-cert/tests/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/config-satellite/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_manifest_file_path: manifest.zip 4 | -------------------------------------------------------------------------------- /roles/config-selinux/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | target_state: 'enforcing' 4 | -------------------------------------------------------------------------------- /roles/config-timezone/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | timezone: America/Denver 4 | -------------------------------------------------------------------------------- /roles/config-versionlock/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | localhost ansible_connection=local 3 | 4 | -------------------------------------------------------------------------------- /roles/file-management/remove-files/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # defaults file for remove-files 3 | -------------------------------------------------------------------------------- /roles/file-management/remove-files/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # handlers file for remove-files 3 | -------------------------------------------------------------------------------- /roles/manage-sshd-config/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: 'sshd-update.yml' 4 | 5 | -------------------------------------------------------------------------------- /roles/scm/bitbucket.org/tests/inventory: -------------------------------------------------------------------------------- 1 | [bitbucket] 2 | localhost ansible_connection=local 3 | -------------------------------------------------------------------------------- /roles/scm/git/templates/git_wrapper.j2: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ssh -F {{ ssh_dir }}/config $* 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-license/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-workflow-templates/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | 192.168.1.21 4 | -------------------------------------------------------------------------------- /roles/config-chrony/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: ntp_servers 3 | roles: 4 | - config-chrony 5 | -------------------------------------------------------------------------------- /roles/config-lvm/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | lvm_fstype: "xfs" 4 | default_lv_size: "100%VG" 5 | -------------------------------------------------------------------------------- /roles/config-pxe/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: pxe-server 4 | roles: 5 | - config-pxe 6 | -------------------------------------------------------------------------------- /roles/identity-management/manage-aws-identities/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | aws_region: us-east-1 3 | -------------------------------------------------------------------------------- /inventory/ansible-tower/group_vars/ansible-tower.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_tower_version: 3.3.0-1 4 | 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-license/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: license.yml 4 | -------------------------------------------------------------------------------- /roles/aws/manage-keypairs/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/aws/manage-networks/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/certs/generate-csr/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/config-httpd/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prep.yml 4 | - import_tasks: seed.yml 5 | -------------------------------------------------------------------------------- /roles/config-httpd/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: web-server 4 | roles: 5 | - config-httpd 6 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-records/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [dns] 3 | localhost ansible_connection=local 4 | -------------------------------------------------------------------------------- /roles/get-remote-file/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/load-balancers/manage-haproxy/files/rsyslog_haproxy.conf: -------------------------------------------------------------------------------- 1 | 2 | local2.* /var/log/haproxy.log 3 | 4 | -------------------------------------------------------------------------------- /roles/nfs-server/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Reload NFS" 4 | command: exportfs -a 5 | 6 | -------------------------------------------------------------------------------- /roles/scm/add-webhooks-github/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | ansible_connection: local 3 | -------------------------------------------------------------------------------- /playbooks/manage-slack.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: manage-slack-host 4 | roles: 5 | - role: setup-slack 6 | -------------------------------------------------------------------------------- /roles/certs/acme-host-cert/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/certs/idm-host-cert/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: localhost 3 | roles: 4 | - certs/idm-host-cert 5 | -------------------------------------------------------------------------------- /roles/config-software-src/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: all 4 | roles: 5 | - config-software-src 6 | -------------------------------------------------------------------------------- /roles/osp/admin-network/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: localhost 4 | roles: 5 | - osp-admin-network 6 | -------------------------------------------------------------------------------- /roles/scm/git/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: localhost 3 | remote_user: root 4 | roles: 5 | - git 6 | -------------------------------------------------------------------------------- /playbooks/aws/manage-keypairs.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: aws-provisioner 4 | roles: 5 | - aws/manage-keypairs 6 | -------------------------------------------------------------------------------- /playbooks/aws/manage-networks.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: aws-provisioner 4 | roles: 5 | - aws/manage-networks 6 | -------------------------------------------------------------------------------- /playbooks/install-server-ca-cert.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: all 4 | roles: 5 | - manage-server-ca-cert 6 | 7 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-subscription-manifest/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | localhost 4 | -------------------------------------------------------------------------------- /roles/aws/manage-security-groups/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/certs/generate-csr/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: csr-host 4 | roles: 5 | - certs/generate-csr 6 | -------------------------------------------------------------------------------- /roles/config-chrony/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: "prereq.yml" 4 | - import_tasks: "chrony.yml" 5 | 6 | -------------------------------------------------------------------------------- /roles/config-hostname/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: my-host 4 | roles: 5 | - role: config-hostname 6 | -------------------------------------------------------------------------------- /roles/config-httpd/tests/inventory: -------------------------------------------------------------------------------- 1 | 2 | [web-server] 3 | 192.168.1.10 ansible_user=fedora ansible_become=True 4 | 5 | -------------------------------------------------------------------------------- /roles/config-libvirt/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: packages.yml 4 | - import_tasks: services.yml 5 | -------------------------------------------------------------------------------- /roles/config-routes/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: 'prereq.yml' 4 | - import_tasks: 'route.yml' 5 | 6 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | -------------------------------------------------------------------------------- /roles/keepalived/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prereq.yml 4 | - import_tasks: keepalived-config.yml 5 | -------------------------------------------------------------------------------- /roles/osp/admin-floating-ip/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | osp_floating_ips: 3 | - server: "server1" 4 | -------------------------------------------------------------------------------- /roles/virt-install/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: "prereq.yml" 4 | - import_tasks: "create_vm.yml" 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credential-types/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [tower] 3 | localhost ansible_connection=local 4 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: iscsi 4 | roles: 5 | - role: config-iscsi-client 6 | -------------------------------------------------------------------------------- /roles/config-repo-server/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: repo_server 4 | roles: 5 | - config-repo-server 6 | -------------------------------------------------------------------------------- /roles/config-vlans/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: 'prereq.yml' 4 | - import_tasks: 'interfaces.yml' 5 | 6 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prereq.yml 4 | - import_tasks: named.yml 5 | -------------------------------------------------------------------------------- /roles/nfs-server/tests/nfs-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: nfs-server 4 | roles: 5 | - role: nfs-server 6 | 7 | -------------------------------------------------------------------------------- /roles/osp/packstack-post/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: infra_osp_hosts 4 | roles: 5 | - packstack-post 6 | -------------------------------------------------------------------------------- /roles/rhsm/tests/inventory: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | [test-sat6] 4 | 192.168.1.23 ansible_user=cloud-user ansible_become=True 5 | 6 | -------------------------------------------------------------------------------- /inventory/quay-enterprise/group_vars/docker_hosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ## Docker Configuration 4 | #docker_install: True 5 | 6 | -------------------------------------------------------------------------------- /inventory/quay-enterprise/group_vars/lb.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ## HAProxy Configurations 4 | #haproxy_stats_enabled: True 5 | 6 | -------------------------------------------------------------------------------- /roles/aws/manage-keypairs/tests/keypair.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: aws-provisioner 4 | roles: 5 | - aws/manage-keypairs 6 | -------------------------------------------------------------------------------- /roles/config-docker-compose/tests/inventory/host_vars/docker01.example.com: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | docker_username: dockeruser 4 | 5 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tests/group_vars/iscsi.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | iscsi_target: "192.168.1.21" 4 | iscsi_brand: "NETAPP" 5 | -------------------------------------------------------------------------------- /roles/config-nexus/tests/inventory: -------------------------------------------------------------------------------- 1 | [ocp-nexus] 2 | localhost nexus_url=nexus:8081 nexus_port=8081 ansible_connection=local 3 | -------------------------------------------------------------------------------- /roles/config-openvpn/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [openvpn-server] 3 | 192.168.1.2 ansible_user=centos ansible_become=True 4 | -------------------------------------------------------------------------------- /roles/config-satellite/tests/hosts: -------------------------------------------------------------------------------- 1 | 2 | [satellite-server] 3 | sat.example.com ansible_user=root ansible_host=192.168.1.10 4 | -------------------------------------------------------------------------------- /roles/config-software-src/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prep.yml 4 | - import_tasks: mount-software.yml 5 | 6 | -------------------------------------------------------------------------------- /roles/config-vnc-server/files/xstartup-mate: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | unset DBUS_SESSION_BUS_ADDRESS 4 | /usr/bin/mate-session 5 | 6 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: restart named 4 | include_tasks: restart_named.yml 5 | -------------------------------------------------------------------------------- /roles/get-remote-file/tests/get-file.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: file-endpoint 4 | roles: 5 | - get-remote-file 6 | 7 | -------------------------------------------------------------------------------- /roles/manage-sshd-config/test/inventory/hosts: -------------------------------------------------------------------------------- 1 | test.server ansible_host=192.168.1.8 ansible_user=fedora ansible_become=true 2 | -------------------------------------------------------------------------------- /roles/osp/packstack-install/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: infra_osp_hosts 4 | roles: 5 | - packstack-install 6 | -------------------------------------------------------------------------------- /files/clouds.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible: 4 | use_hostnames: True 5 | expand_hostvars: True 6 | fail_on_errors: True 7 | 8 | -------------------------------------------------------------------------------- /inventory/bastion/hosts: -------------------------------------------------------------------------------- 1 | 2 | [osp-provisioner] 3 | localhost 4 | 5 | [bastion] 6 | 7 | [osp_instances:children] 8 | bastion 9 | -------------------------------------------------------------------------------- /playbooks/provision-rh-sso/deploy-rh-sso.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: rh-sso-hosts 4 | roles: 5 | - role: config-rh-sso 6 | 7 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/templates/associate_galaxy_credential.j2: -------------------------------------------------------------------------------- 1 | { 2 | "id": {{ galaxy_credential_id }} 3 | } 4 | -------------------------------------------------------------------------------- /roles/aws/manage-networks/tests/networks.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: aws-provisioner 4 | roles: 5 | - aws/manage-networks 6 | -------------------------------------------------------------------------------- /roles/config-hostname/tests/inventory/group_vars/my-host.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | hostname: "cool" 4 | dns_domain: "hostname.com" 5 | 6 | -------------------------------------------------------------------------------- /roles/config-idm-server/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: idm-server 4 | become: yes 5 | roles: 6 | - config-idm-server 7 | -------------------------------------------------------------------------------- /roles/config-nagios-target/files/nrpe.d/check_mem.cfg: -------------------------------------------------------------------------------- 1 | 2 | command[check_mem]=/usr/lib64/nagios/plugins/check_mem -w 90 -c 95 3 | -------------------------------------------------------------------------------- /roles/config-openvpn/tests/openvpn-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: openvpn_servers 4 | roles: 5 | - role: config-openvpn 6 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-records/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: nsupdate/main.yml 4 | - include_tasks: route53/main.yml 5 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-records/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: localhost 4 | roles: 5 | - role: dns/manage-dns-records 6 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: dns-servers 4 | roles: 5 | - dns/manage-dns-zones-bind 6 | -------------------------------------------------------------------------------- /roles/nfs-server/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prep.yml 4 | - import_tasks: lvm.yml 5 | - import_tasks: shares.yml 6 | -------------------------------------------------------------------------------- /roles/notifications/md-to-html/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | markdown_content: "Hello, this is **bold** text" 4 | -------------------------------------------------------------------------------- /inventory/scripts/google-sheets/requirements.txt: -------------------------------------------------------------------------------- 1 | configparser==3.5.0 2 | gspread==3.0.1 3 | oauth2client==4.1.3 4 | pyasn1==0.4.4 5 | 6 | -------------------------------------------------------------------------------- /playbooks/manage-confluence-space/playbook.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: confluence 4 | roles: 5 | - manage-confluence-space 6 | 7 | -------------------------------------------------------------------------------- /playbooks/provision-idm-server/configure-idm-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: idm-server 4 | roles: 5 | - role: config-idm-server 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-subscription-manifest/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: subscription-manifest.yml 4 | -------------------------------------------------------------------------------- /roles/config-docker/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: restart docker 4 | service: 5 | name: docker 6 | state: restarted 7 | -------------------------------------------------------------------------------- /roles/config-pxe/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prep.yml 4 | - import_tasks: pxe.yml 5 | - import_tasks: kickstart.yml 6 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: dns-servers 4 | roles: 5 | - dns/config-dns-server-bind 6 | -------------------------------------------------------------------------------- /roles/identity-management/list-users-by-group/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [manage-users-host] 3 | localhost ansible_connection=local 4 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-password/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | user_name: "" 4 | clear_text_password: "" 5 | 6 | -------------------------------------------------------------------------------- /roles/notifications/html-to-md/tests/README.md: -------------------------------------------------------------------------------- 1 | Example command 2 | -------------- 3 | 4 | ansible-playbook -i inventory playbook.yml 5 | -------------------------------------------------------------------------------- /roles/notifications/html-to-md/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | html_content:

Hello, this is bold text

4 | -------------------------------------------------------------------------------- /roles/notifications/md-to-html/tests/README.md: -------------------------------------------------------------------------------- 1 | Example command 2 | -------------- 3 | 4 | ansible-playbook -i inventory playbook.yml 5 | -------------------------------------------------------------------------------- /roles/setup-slack/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Test slack setup 4 | hosts: localhost 5 | roles: 6 | - setup-slack 7 | 8 | -------------------------------------------------------------------------------- /inventory/dns-server/group_vars/dns-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Need to become "root" to preform the install 4 | ansible_become: True 5 | 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: install.yml 4 | 5 | - import_tasks: install-cert.yml 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-projects/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-projects 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-schedules/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-schedules 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-settings/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-settings 6 | -------------------------------------------------------------------------------- /roles/certs/acme-host-cert/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: cert-host 3 | roles: 4 | - certs/generate-csr 5 | - certs/acme-host-cert 6 | -------------------------------------------------------------------------------- /roles/config-nagios-target/files/nrpe.d/check_dns.cfg: -------------------------------------------------------------------------------- 1 | 2 | command[check_dns_service]=/usr/lib64/nagios/plugins/check_service.sh named 3 | 4 | -------------------------------------------------------------------------------- /roles/config-repo-server/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_role: 4 | name: config-httpd 5 | 6 | - import_tasks: mount-iso.yml 7 | 8 | -------------------------------------------------------------------------------- /roles/config-selinux/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # "targeted" is the "default" policy for most systems 4 | target_policy: 'targeted' 5 | -------------------------------------------------------------------------------- /roles/config-selinux/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Test SELinux config" 4 | hosts: all 5 | roles: 6 | - role: config-selinux 7 | -------------------------------------------------------------------------------- /roles/config-versionlock/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | versionlock_packages: 4 | - 'bash-*' 5 | - 'NetworkManager-*' 6 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: dns-servers 4 | roles: 5 | - dns/manage-dns-zones-route53 6 | -------------------------------------------------------------------------------- /roles/file-management/remove-files/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: localhost 3 | remote_user: root 4 | roles: 5 | - remove-files 6 | -------------------------------------------------------------------------------- /roles/load-balancers/manage-haproxy/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | temp_new_file: '/etc/haproxy/haproxy.cfg.new' 4 | lb_https_backends: {} 5 | -------------------------------------------------------------------------------- /roles/osp/admin-floating-ip/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: localhost 3 | remote_user: root 4 | roles: 5 | - admin-floating-ip 6 | 7 | -------------------------------------------------------------------------------- /roles/scm/git/tasks/remove.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Remove git directory 4 | file: 5 | path: "{{ scm_dir }}" 6 | state: absent 7 | -------------------------------------------------------------------------------- /inventory/minishift-remote/hosts: -------------------------------------------------------------------------------- 1 | [osp-provisioner] 2 | localhost 3 | 4 | [osp_instances:children] 5 | minishift_remote 6 | 7 | [minishift_remote] -------------------------------------------------------------------------------- /playbooks/provision-idm-server/delete-aws-instance.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - import_playbook: ../aws/delete-instance.yml 3 | vars: 4 | state: absent 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credentials/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-credentials 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-inventories 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-workflow-templates/templates/workflow-node-template.j2: -------------------------------------------------------------------------------- 1 | { 2 | "unified_job_template": {{ job_template_id }} 3 | } 4 | -------------------------------------------------------------------------------- /roles/config-chrony/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Reload chrony" 4 | service: 5 | name: 'chronyd' 6 | state: restarted 7 | 8 | -------------------------------------------------------------------------------- /roles/config-docker-compose/tests/inventory/group_vars/docker_hosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | docker_install: true 4 | docker_compose_install: true 5 | 6 | -------------------------------------------------------------------------------- /roles/config-idm-server/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # tasks file for idm 3 | 4 | - import_tasks: 'prep.yml' 5 | - import_tasks: 'configure_idm.yml' 6 | -------------------------------------------------------------------------------- /roles/config-packages/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | list_of_packages_to_install: 4 | - 'vim' 5 | - 'git' 6 | - 'ansible' 7 | -------------------------------------------------------------------------------- /roles/config-pip-packages/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Test install pip packages 3 | hosts: all 4 | roles: 5 | - config-pip-packages 6 | -------------------------------------------------------------------------------- /roles/identity-management/manage-rh-sso-identities/templates/manage-groups.json.j2: -------------------------------------------------------------------------------- 1 | { 2 | "name": "{{ group_data.name | mandatory }}", 3 | } 4 | -------------------------------------------------------------------------------- /roles/nfs-server/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [nfs-server] 3 | 192.168.1.2 ansible_user=fedora ansible_become=True nfs_storage_device=/dev/vdb 4 | -------------------------------------------------------------------------------- /roles/osp/admin-sec-group/test/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: all 4 | connection: local 5 | roles: 6 | - role: osp/admin-sec-group 7 | 8 | -------------------------------------------------------------------------------- /roles/scm/quay/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: localhost 3 | tasks: 4 | - include_role: 5 | name: "{{ playbook_dir }}/../../quay" 6 | -------------------------------------------------------------------------------- /playbooks/provision-nfs-server/nfs-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Create NFS server' 4 | hosts: nfs-server 5 | roles: 6 | - role: nfs-server 7 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/config-ansible-tower 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-job-templates/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-job-templates 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-organizations 6 | -------------------------------------------------------------------------------- /roles/config-docker-compose/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | docker_compose_install: false 4 | 5 | docker_compose_packages: 6 | - docker-compose 7 | -------------------------------------------------------------------------------- /roles/identity-management/populate-users/test/inventory: -------------------------------------------------------------------------------- 1 | --- 2 | [all:vars] 3 | csv_doc_file_name=sheet1.csv 4 | 5 | [identity] 6 | localhost 7 | 8 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/config-ansible-tower-ocp 6 | -------------------------------------------------------------------------------- /roles/aws/manage-security-groups/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: "manage-security-groups.yml" 4 | with_items: "{{ aws_security_groups }}" 5 | -------------------------------------------------------------------------------- /roles/dhcp/tests/inventory: -------------------------------------------------------------------------------- 1 | # Staging inventory file 2 | [all:vars] 3 | 4 | 5 | [dhcp] 6 | dhcp1.test.lab 7 | dhcp2.test.lab dhcp_service_enabled=False 8 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-password/test/inventory/hosts: -------------------------------------------------------------------------------- 1 | test.server ansible_host=192.168.1.8 ansible_user=fedora ansible_become=true 2 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-ssh-authkeys/test/inventory/hosts: -------------------------------------------------------------------------------- 1 | test.server ansible_host=192.168.1.8 ansible_user=fedora ansible_become=true 2 | -------------------------------------------------------------------------------- /roles/update-host/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: update-host.yml 4 | - import_tasks: reboot-host.yml 5 | - import_tasks: wait-for-host.yml 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ldap/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/config-ansible-tower-ldap 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: restart-tower 4 | command: ansible-tower-service restart 5 | become: True 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credential-types/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-credential-types 6 | 7 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-workflow-templates/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/manage-workflow-templates 6 | -------------------------------------------------------------------------------- /roles/config-hostname/tasks/main.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - block: 4 | - import_tasks: prep.yml 5 | - import_tasks: set-hostname.yml 6 | become: True 7 | 8 | -------------------------------------------------------------------------------- /roles/config-ipa-client/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Configure the host for IPA/IdM use' 4 | hosts: all 5 | roles: 6 | - role: config-ipa-client 7 | -------------------------------------------------------------------------------- /roles/config-packages/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Test installing additional packages" 4 | hosts: all 5 | roles: 6 | - role: config-packages 7 | -------------------------------------------------------------------------------- /roles/config-routes/tests/infrahosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Configure routes on the host' 4 | hosts: infra_hosts 5 | roles: 6 | - role: config-routes 7 | -------------------------------------------------------------------------------- /roles/config-satellite/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Configure Satellite' 4 | hosts: satellite-server 5 | roles: 6 | - role: config-satellite 7 | 8 | -------------------------------------------------------------------------------- /roles/config-vnc-server/files/xstartup-gnome: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | unset SESSION_MANAGER 4 | unset DBUS_SESSION_BUS_ADDRESS 5 | exec /etc/X11/xinit/xinitrc 6 | 7 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-password/test/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | user_name: user1 4 | clear_text_password: test1234 5 | 6 | -------------------------------------------------------------------------------- /roles/manage-server-ca-cert/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | list_of_additional_ca_certs: [] 4 | server_ca_location: "/etc/pki/ca-trust/source/anchors/" 5 | 6 | -------------------------------------------------------------------------------- /roles/osp/admin-keystone-domain/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: yum-clean-metadata 4 | command: yum clean metadata 5 | args: 6 | warn: no 7 | 8 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-license/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/config-ansible-tower-license 6 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-projects/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-schedules/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-settings/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/config-chrony/tests/inventory: -------------------------------------------------------------------------------- 1 | # Staging inventory file 2 | [all:vars] 3 | 4 | chrony_allow_subnet="192.168.1/21" 5 | 6 | 7 | [ntp_servers] 8 | 192.168.1.3 9 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: iscsi.yml 4 | when: 5 | - iscsi_target is defined 6 | - iscsi_target|trim != '' 7 | -------------------------------------------------------------------------------- /roles/config-lvm/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: prep.yml 4 | 5 | - include_tasks: lvm.yml 6 | with_items: 7 | - "{{ lvm_entries | default([]) }}" 8 | -------------------------------------------------------------------------------- /roles/config-versionlock/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Test versionlock of some packages" 4 | hosts: all 5 | roles: 6 | - role: config-versionlock 7 | -------------------------------------------------------------------------------- /roles/manage-jira/tests/playbook.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Test Jira Role 3 | hosts: jira 4 | vars_files: 5 | - vars/vars_atlassian 6 | roles: 7 | - manage-jira 8 | -------------------------------------------------------------------------------- /roles/rhsm/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Testing RHSM functional for Satellite 6 integration 4 | hosts: test-sat6 5 | roles: 6 | - role: rhsm 7 | 8 | -------------------------------------------------------------------------------- /roles/update-host/tasks/wait-for-host.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Waiting for server to come back" 4 | wait_for_connection: 5 | delay: 15 6 | timeout: 300 7 | -------------------------------------------------------------------------------- /playbooks/aws/delete-instance.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Delete AWS Instance 3 | hosts: aws-provisioner 4 | become: False 5 | roles: 6 | - role: aws/delete-instance 7 | -------------------------------------------------------------------------------- /roles/ansible/tower/launch-tower-jobs/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credentials/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-job-templates/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/config-minishift-remote/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Restart Docker 4 | become: true 5 | service: 6 | name: docker 7 | state: restarted 8 | 9 | -------------------------------------------------------------------------------- /roles/config-mysql/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Install Containerized MySQL 4 | include_tasks: install_containerized.yml 5 | when: mode == "containerized" 6 | -------------------------------------------------------------------------------- /roles/config-pxe/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | tftpserver_root_dir: "/var/lib/tftpboot" 4 | 5 | default_pxe_menu_title: "PXE Boot Menu" 6 | default_pxe_timeout: 300 7 | -------------------------------------------------------------------------------- /images/infra-ansible/root/usr/local/bin/user_setup: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | mkdir -p ${HOME}/.ssh 4 | chown ${USER_UID}:0 ${HOME}/.ssh 5 | chmod ug+rwx ${HOME}/.ssh 6 | 7 | rm $0 8 | -------------------------------------------------------------------------------- /playbooks/aws/provision-instance.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Provision AWS instance 3 | hosts: aws-provisioner 4 | become: False 5 | roles: 6 | - role: aws/create-instance 7 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ldap/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credential-types/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-workflow-templates/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/wait-for-tower-to-be-ready/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/aws/manage-security-groups/tests/secgroups.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: aws-provisioner 4 | roles: 5 | - aws/manage-networks 6 | - aws/manage-security-groups 7 | -------------------------------------------------------------------------------- /roles/config-pxe/tasks/kickstart.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install kickstart files" 4 | copy: 5 | src: "{{ ks_files }}" 6 | dest: "{{ ks_files_destination }}" 7 | 8 | -------------------------------------------------------------------------------- /roles/discover-redirect-url/tests/inventory/host_vars/localhost.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_connection: local 4 | ansible_python_interpreter: "{{ ansible_playbook_python }}" 5 | -------------------------------------------------------------------------------- /playbooks/identity.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Configure IdM/IPA' 4 | hosts: idm-clients 5 | roles: 6 | - role: config-ipa-client 7 | tags: 8 | - configure_idm_client 9 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-license/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/config-nagios-target/files/nrpe.d/check_openshift_node.cfg: -------------------------------------------------------------------------------- 1 | 2 | command[check_openshift_node_service]=/usr/lib64/nagios/plugins/check_service.sh atomic-openshift-node 3 | 4 | -------------------------------------------------------------------------------- /roles/config-routes/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Notify about Network reload" 4 | debug: 5 | msg: "Networking Static Routes altered - Network reload needed." 6 | 7 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/templates/tsig-key.j2: -------------------------------------------------------------------------------- 1 | key {{ item.key }} { 2 | algorithm {{ key_content.key_algorithm }}; 3 | secret "{{ key_content.key_secret }}"; 4 | }; 5 | -------------------------------------------------------------------------------- /roles/scm/add-webhooks-github/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: webhooks-server 3 | tasks: 4 | - include_role: 5 | name: "{{ playbook_dir }}/../../add-webhooks-github" 6 | -------------------------------------------------------------------------------- /inventory/minishift-remote/group_vars/minishift_remote.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_user: centos 4 | ansible_become: True 5 | 6 | docker_install: True 7 | install_prerequisites: True 8 | 9 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp-ldap-ca/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | openshift_project: "tower" 4 | 5 | secret_volume_patch_data: 6 | key: ldap.py 7 | path: ldap.py 8 | -------------------------------------------------------------------------------- /roles/config-nagios-target/files/nrpe.d/check_openshift_master.cfg: -------------------------------------------------------------------------------- 1 | 2 | command[check_openshift_master_service]=/usr/lib64/nagios/plugins/check_service.sh atomic-openshift-master 3 | 4 | -------------------------------------------------------------------------------- /roles/identity-management/populate-users/test/playbook.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Import identities information from CSV file 4 | hosts: identity 5 | roles: 6 | - populate-users 7 | -------------------------------------------------------------------------------- /roles/load-balancers/manage-haproxy/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: 'install.yml' 4 | - include_tasks: 'generate-config.yml' 5 | - include_tasks: 'activate-config.yml' 6 | -------------------------------------------------------------------------------- /roles/osp/admin-network/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: "manage-networks.yml" 4 | 5 | - import_tasks: "manage-subnets.yml" 6 | 7 | - import_tasks: "manage-routers.yml" 8 | -------------------------------------------------------------------------------- /roles/osp/packstack-install/tasks/packstack-install.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Run packstack with the proper answer file" 4 | command: "packstack --answer-file=''{{ answer_file }}''" 5 | -------------------------------------------------------------------------------- /roles/scm/github.com/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: 'github.com cleanup temp' 3 | delegate_to: localhost 4 | file: 5 | path: '{{ tmp_dir.path }}' 6 | state: absent 7 | 8 | -------------------------------------------------------------------------------- /roles/scm/github.com/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: localhost 3 | remote_user: root 4 | tasks: 5 | - include_role: 6 | name: "{{ playbook_dir }}/../../github.com" 7 | 8 | -------------------------------------------------------------------------------- /roles/scm/gitlab.com/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: localhost 3 | remote_user: root 4 | tasks: 5 | - include_role: 6 | name: "{{ playbook_dir }}/../../gitlab.com" 7 | 8 | -------------------------------------------------------------------------------- /inventory/scripts/google-sheets/config.ini: -------------------------------------------------------------------------------- 1 | [default] 2 | spreadsheet_url = https://docs.google.com/spreadsheets/ 3 | sheet = Users 4 | credentials_file = credentials.json 5 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ldap/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: restart-tower 4 | service: 5 | name: supervisord 6 | state: restarted 7 | become: True 8 | 9 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-subscription-manifest/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: tower 4 | roles: 5 | - role: ansible/tower/config-ansible-tower-subscription-manifest 6 | -------------------------------------------------------------------------------- /roles/config-docker-compose/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [all:vars] 2 | 3 | [docker_hosts] 4 | docker01.example.com ansible_user=root ansible_host=192.168.1.20 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /inventory/nfs-server/hosts: -------------------------------------------------------------------------------- 1 | 2 | [osp-provisioner] 3 | localhost 4 | 5 | [nfs-server] 6 | 7 | [osp_instances:children] 8 | nfs-server 9 | 10 | [rhsm_hosts:children] 11 | nfs-server 12 | -------------------------------------------------------------------------------- /inventory/quay-enterprise/group_vars/quay_enterprise.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Superuser Configuration 4 | quay_superuser_username: "" 5 | quay_superuser_password: "" 6 | quay_superuser_email: "" 7 | 8 | -------------------------------------------------------------------------------- /playbooks/update-dhcp-config.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Update dhcpd config' 4 | hosts: dhcp-servers 5 | roles: 6 | - role: dhcp 7 | tags: 8 | - update_dhcp_config 9 | 10 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-subscription-manifest/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_ansible_tower_url: 'https://localhost' 4 | default_ansible_tower_admin_username: 'admin' 5 | -------------------------------------------------------------------------------- /roles/config-ipa-client/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | move_local_user_home: False 4 | new_local_home_dir: "/lclhome" 5 | temporary_username: "lcluser" 6 | 7 | ipa_client_install: false 8 | 9 | -------------------------------------------------------------------------------- /roles/config-lvm/tasks/prep.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Install required packages' 4 | package: 5 | name: '{{ item }}' 6 | state: installed 7 | with_items: 8 | - lvm2 9 | 10 | -------------------------------------------------------------------------------- /roles/manage-ssh-private-keys/test/playbook.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Test the role to add the keys 4 | - name: "Update access" 5 | hosts: all 6 | roles: 7 | - role: manage-ssh-private-keys 8 | -------------------------------------------------------------------------------- /roles/manage-sshd-config/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'reload sshd' 4 | service: 5 | name: '{{ item }}' 6 | state: restarted 7 | with_items: 8 | - sshd 9 | 10 | -------------------------------------------------------------------------------- /roles/notifications/html-to-md/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: "prereq.yml" 4 | when: 5 | - install_prereq|default(False) 6 | 7 | - import_tasks: "convert_html_to_md.yml" 8 | 9 | -------------------------------------------------------------------------------- /roles/notifications/md-to-html/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: "prereq.yml" 4 | when: 5 | - install_prereq|default(False) 6 | 7 | - import_tasks: "convert_md_to_html.yml" 8 | 9 | -------------------------------------------------------------------------------- /roles/config-hostname/tasks/prep.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Install required packages' 4 | package: 5 | name: '{{ item }}' 6 | state: installed 7 | with_items: 8 | - libselinux-python 9 | -------------------------------------------------------------------------------- /roles/config-ipa-client/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install, configure and enable IPA/IdM integration" 4 | import_tasks: ipa.yml 5 | when: 6 | - ipa_client_install|default(False) 7 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tasks/process-zones.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: process-one-zone.yml 4 | with_items: 5 | - "{{ view.zones }}" 6 | loop_control: 7 | loop_var: "zone" 8 | -------------------------------------------------------------------------------- /roles/get-remote-file/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | file_destination_root: "{{ inventory_dir }}/../files" 4 | 5 | validate_certs: true 6 | 7 | file_perms: 0755 8 | file_name: "{{ rem_file_name }}" 9 | -------------------------------------------------------------------------------- /roles/identity-management/manage-user-password/test/vars/passwdfile4.json: -------------------------------------------------------------------------------- 1 | { 2 | "users" : [ 3 | { 4 | "user_name": "test", 5 | "password": "" 6 | } 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /playbooks/provision-rh-sso/update-rh-sso-cert.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: rh-sso-hosts 4 | tasks: 5 | - import_role: 6 | name: config-rh-sso 7 | tasks_from: setup-rh-sso-ssl.yml 8 | 9 | -------------------------------------------------------------------------------- /playbooks/update-dns-records.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Update DNS records' 4 | hosts: dns-records-manage-host 5 | roles: 6 | - role: dns/manage-dns-records 7 | tags: 8 | - update_dns_records 9 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp-ldap-ca/files/ldap.py: -------------------------------------------------------------------------------- 1 | AUTH_LDAP_GLOBAL_OPTIONS = { 2 | ldap.OPT_X_TLS_REQUIRE_CERT: True, 3 | ldap.OPT_X_TLS_CACERTFILE: "/etc/certs/ldap.pem" 4 | } 5 | -------------------------------------------------------------------------------- /roles/config-docker-compose/tasks/docker-compose.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: "Install additional packages for Docker Compose" 3 | package: 4 | name: "{{ docker_compose_packages }}" 5 | state: latest 6 | -------------------------------------------------------------------------------- /roles/config-routes/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [all:vars] 2 | 3 | [infra_hosts] 4 | infra-1.example.com ansible_user=fedora ansible_become=True ansible_host=192.168.1.10 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tasks/process-views.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: process-zones.yml 4 | with_items: 5 | - "{{ dns_data.views }}" 6 | loop_control: 7 | loop_var: "view" 8 | -------------------------------------------------------------------------------- /roles/manage-confluence-space/tests/playbook.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Test Confluence Role 3 | hosts: confluence 4 | vars_files: 5 | - vars/vars_atlassian 6 | roles: 7 | - manage-confluence-space 8 | -------------------------------------------------------------------------------- /playbooks/ansible/tower/update-tower-cert.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: ansible-tower 4 | tasks: 5 | - import_role: 6 | name: ansible/tower/config-ansible-tower 7 | tasks_from: install-cert 8 | 9 | -------------------------------------------------------------------------------- /roles/config-software-src/tasks/prep.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Install required packages' 4 | package: 5 | name: '{{ item }}' 6 | state: installed 7 | with_items: 8 | - nfs-utils 9 | 10 | -------------------------------------------------------------------------------- /roles/config-timezone/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: set timezone to {{ timezone }} 4 | timezone: 5 | name: "{{ timezone }}" 6 | when: 7 | - timezone is defined 8 | - timezone | trim != "" 9 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/templates/logging.j2: -------------------------------------------------------------------------------- 1 | 2 | logging { 3 | channel default_debug { 4 | file "data/named.run"; 5 | severity dynamic; 6 | }; 7 | }; 8 | -------------------------------------------------------------------------------- /inventory/ansible-tower/hosts: -------------------------------------------------------------------------------- 1 | 2 | [osp-provisioner] 3 | localhost 4 | 5 | [tower-management-host] 6 | localhost 7 | 8 | [osp_instances:children] 9 | ansible-tower 10 | 11 | [ansible-tower] 12 | 13 | 14 | -------------------------------------------------------------------------------- /playbooks/certs/generate-idm-cert.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Generate and store away the IdM based cert" 4 | hosts: cert-host 5 | roles: 6 | - role: certs/generate-csr 7 | - role: certs/idm-host-cert 8 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ldap/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - block: # when ansible_tower.ldap is defined 4 | 5 | - include_tasks: ldap.yml 6 | 7 | when: 8 | - ansible_tower.ldap is defined 9 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-subscription-manifest/templates/manifest.j2: -------------------------------------------------------------------------------- 1 | { 2 | "manifest": "{{ lookup('file', ansible_tower.install.manifest_file) | b64encode }}", 3 | "eula_accepted": true 4 | } 5 | -------------------------------------------------------------------------------- /roles/aws/manage-networks/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: "manage-vpcs.yml" 4 | with_items: "{{ aws_networks }}" 5 | 6 | - include_tasks: "manage-subnets.yml" 7 | with_items: "{{ aws_subnets }}" 8 | -------------------------------------------------------------------------------- /roles/certs/acme-host-cert/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_acme_directory: https://acme-v02.api.letsencrypt.org/directory 4 | default_acme_version: 2 5 | default_acme_challenge: 'dns-01' 6 | 7 | acme: {} 8 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tests/inventory: -------------------------------------------------------------------------------- 1 | 2 | 3 | [iscsi] 4 | node-1 ansible_user=fedora ansible_become=True ansible_host=192.168.1.11 5 | node-2 ansible_user=fedora ansible_become=True ansible_host=192.168.1.12 6 | -------------------------------------------------------------------------------- /roles/config-versionlock/tasks/prereq-RedHat.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install required packages" 4 | package: 5 | name: "{{ item }}" 6 | state: installed 7 | with_items: 8 | - yum-plugin-versionlock 9 | -------------------------------------------------------------------------------- /inventory/satellite-server/hosts: -------------------------------------------------------------------------------- 1 | 2 | [osp-provisioner] 3 | localhost 4 | 5 | [satellite-server] 6 | 7 | [osp_instances:children] 8 | satellite-server 9 | 10 | [rhsm_hosts:children] 11 | satellite-server 12 | -------------------------------------------------------------------------------- /roles/config-linux-desktop/config-gnome/tasks/gnome-Fedora.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: "Install additional packages for Gnome" 3 | dnf: 4 | name: "{{ item }}" 5 | state: present 6 | with_items: 7 | - '@gnome' 8 | 9 | -------------------------------------------------------------------------------- /roles/config-openvpn/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Default OpenVPN RPM to be installed 4 | # NOTE: this is the CentOS flavor 5 | openvpn_rpm: http://swupdate.openvpn.org/as/openvpn-as-2.1.9-CentOS7.x86_64.rpm 6 | 7 | -------------------------------------------------------------------------------- /roles/config-vlans/tests/infrahosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Configure VLANs on the infrastructure hosts' 4 | hosts: infra_hosts 5 | roles: 6 | - role: config_vlans 7 | tags: 8 | - configure_infra_hosts 9 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/tests/inventory/group_vars/forward-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | named_config: 4 | recursion: 'yes' 5 | dnssec_enable: 'yes' 6 | dnssec_validation: 'yes' 7 | dnssec_lookaside: 'no' 8 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-records/tasks/nsupdate/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: nsupdate-server.yml 4 | with_subelements: 5 | - "{{ dns_data.views }}" 6 | - zones 7 | loop_control: 8 | loop_var: dns 9 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-records/tasks/route53/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: process-records.yml 4 | with_subelements: 5 | - "{{ dns_data.views }}" 6 | - zones 7 | loop_control: 8 | loop_var: dns 9 | -------------------------------------------------------------------------------- /playbooks/certs/generate-lets-encrypt-cert.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Generate and store away the Let's Encrypt Certs" 4 | hosts: cert-host 5 | roles: 6 | - role: certs/generate-csr 7 | - role: certs/acme-host-cert 8 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tests/host_vars/node-2.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | iscsi_initiatorname: iqn.1994-05.com.example:node-2 4 | 5 | disk_mapping: 6 | - lun: 0 7 | vg: vg0 8 | lv: lv0 9 | mount_path: /mnt/vg0-lv0 10 | -------------------------------------------------------------------------------- /roles/config-linux-desktop/config-lxde/tasks/lxde-Fedora.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: "Install additional packages for LXDE" 3 | dnf: 4 | name: "{{ item }}" 5 | state: present 6 | with_items: 7 | - '@lxde-desktop' 8 | 9 | -------------------------------------------------------------------------------- /roles/config-linux-desktop/config-mate/tasks/mate-Fedora.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: "Install additional packages for MATE" 3 | dnf: 4 | name: "{{ item }}" 5 | state: present 6 | with_items: 7 | - '@MATE Desktop' 8 | 9 | -------------------------------------------------------------------------------- /roles/config-linux-desktop/config-xfce/tasks/xfce-Fedora.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: "Install additional packages for XFCE" 3 | dnf: 4 | name: "{{ item }}" 5 | state: present 6 | with_items: 7 | - '@Xfce Desktop' 8 | 9 | -------------------------------------------------------------------------------- /roles/config-nagios-target/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Ensure all prerequisites are met 4 | - import_tasks: prerequisites.yml 5 | 6 | # Setup and prepare NRPE (Nagios Remote Plugin Executor) 7 | - import_tasks: nrpe.yml 8 | -------------------------------------------------------------------------------- /roles/config-satellite/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: "prereq.yml" 4 | - import_tasks: "install.yml" 5 | - import_tasks: "manifest.yml" 6 | - import_tasks: "repos.yml" 7 | - import_tasks: "activation_keys.yml" 8 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/templates/controls.j2: -------------------------------------------------------------------------------- 1 | 2 | // use the default rndc key 3 | include "/etc/rndc.key"; 4 | 5 | controls { 6 | inet 127.0.0.1 port 953 7 | allow { 127.0.0.1; } keys { "rndc-key"; }; 8 | }; 9 | -------------------------------------------------------------------------------- /roles/notifications/send-email/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # This test covers the full feature set provided by the role 3 | 4 | - name: Test email/send role 5 | hosts: localhost 6 | roles: 7 | - notifications/send-email 8 | -------------------------------------------------------------------------------- /playbooks/manage-identities/manage-atlassian-identities.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Manage Atlassian Identities (users/groups) 4 | hosts: identity-hosts 5 | roles: 6 | - role: identity-management/manage-atlassian-identities 7 | -------------------------------------------------------------------------------- /playbooks/notifications/email-notify-single-user.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Send HTML e-mail message to a single user" 4 | hosts: mail-host 5 | gather_facts: no 6 | tasks: 7 | - include_tasks: email-notify-tasks.yml 8 | 9 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tasks/iscsi.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prereq.yml 4 | - import_tasks: iscsi-config.yml 5 | - import_tasks: multipath-config.yml 6 | - import_tasks: lvm-config.yml 7 | - import_tasks: lock-lvm.yml 8 | -------------------------------------------------------------------------------- /roles/config-routes/tasks/prereq-Fedora.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install additional packages needed to process tasks" 4 | package: 5 | name: "{{ item }}" 6 | state: latest 7 | with_items: 8 | - libselinux-python 9 | -------------------------------------------------------------------------------- /roles/config-routes/templates/route.j2: -------------------------------------------------------------------------------- 1 | {% for r in route.entries %} 2 | ADDRESS{{ loop.index0 }}="{{ r.address }}" 3 | NETMASK{{ loop.index0 }}="{{ r.netmask }}" 4 | GATEWAY{{ loop.index0 }}="{{ r.gateway }}" 5 | {% endfor %} 6 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-ssh-authkeys/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: 'authorizedkeys.yml' 4 | when: 5 | - user_name is defined 6 | - key_url is defined 7 | - key_url|trim != "" 8 | 9 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp-ldap-ca/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: ocp_set_ca_certificate.yml 4 | when: 5 | - ansible_tower.ldap.ca_cert is defined 6 | - ansible_tower.ldap.ca_cert|trim != "" 7 | 8 | -------------------------------------------------------------------------------- /roles/config-libvirt/tasks/services.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Enable and start service 4 | service: 5 | name: "{{ service_name }}" 6 | state: started 7 | enabled: yes 8 | when: 9 | - libvirtenable 10 | 11 | -------------------------------------------------------------------------------- /roles/config-redis/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Install Containerized Redis 4 | include_tasks: install_containerized.yml 5 | when: mode == "containerized" 6 | 7 | - name: Flush Handlers (Redis) 8 | meta: flush_handlers 9 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/templates/view-config-1.j2: -------------------------------------------------------------------------------- 1 | 2 | view "{{ view_name }}" { 3 | match-clients { "{{ view_name }}"; }; 4 | 5 | recursion {{ view_recursion }}; 6 | 7 | # End of 'view' defined in the next template file 8 | -------------------------------------------------------------------------------- /roles/identity-management/manage-user-password/test/vars/passwdfile2.json: -------------------------------------------------------------------------------- 1 | { 2 | "users" : [ 3 | { 4 | "user_name": "test", 5 | "password": "", 6 | "generate": True 7 | } 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /roles/scm/gitlab.com/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # defaults file for gitlab 3 | gitlab_api_base: https://gitlab.com/api/v4 4 | gitlab_api_projects: "{{ gitlab_api_base }}/projects" 5 | gitlab_api_groups: "{{ gitlab_api_base }}/groups" 6 | -------------------------------------------------------------------------------- /playbooks/install_mongodb.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Install mongodb 3 | hosts: dbserver 4 | become: yes 5 | vars: 6 | mongodb_ver: 3.4 7 | os_family: redhat 8 | os_ver: 7 9 | roles: 10 | - install-mongodb 11 | 12 | -------------------------------------------------------------------------------- /roles/certs/idm-host-cert/templates/cert.j2: -------------------------------------------------------------------------------- 1 | -----BEGIN {{ cert_file_type }}----- 2 | {% for c in cert_file_content %}{{ c }}{% if loop.index % 64 == 0 %}{{ "\n" }}{% endif %} 3 | {% endfor %} 4 | 5 | -----END {{ cert_file_type }}----- 6 | -------------------------------------------------------------------------------- /roles/config-bonding/templates/bonding_slave.j2: -------------------------------------------------------------------------------- 1 | TYPE="Ethernet" 2 | SLAVE="yes" 3 | DEVICE="{{ ifcfg.1.device }}" 4 | NAME="{{ name | default(ifcfg.1.device) }}" 5 | ONBOOT="{{ onboot | default('yes') }}" 6 | MASTER="{{ ifcfg.0.device }}" 7 | -------------------------------------------------------------------------------- /roles/config-bonding/tests/infrahosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Configure bonding on the infrastructure hosts' 4 | hosts: infra_hosts 5 | roles: 6 | - role: config_bonding 7 | tags: 8 | - configure_infra_hosts 9 | 10 | -------------------------------------------------------------------------------- /roles/config-docker-compose/tests/dockerhosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Install Docker Compose on the Docker hosts' 4 | hosts: docker_hosts 5 | roles: 6 | - role: config-docker-compose 7 | tags: 8 | - configure_docker_hosts 9 | -------------------------------------------------------------------------------- /roles/config-nagios-target/files/nrpe.d/check_nfs.cfg: -------------------------------------------------------------------------------- 1 | 2 | command[check_nfsserver_service]=/usr/lib64/nagios/plugins/check_service.sh nfs-server 3 | command[check_rpcbind_service]=/usr/lib64/nagios/plugins/check_service.sh rpcbind 4 | 5 | -------------------------------------------------------------------------------- /roles/config-quay-builder/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Restart Quay Builder Service 4 | systemd: 5 | name: "{{ quay_builder_service }}" 6 | enabled: yes 7 | state: restarted 8 | daemon_reload: yes 9 | 10 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tasks/loop-zones.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Loop over all zones 4 | include_tasks: loop-records.yml 5 | with_items: 6 | - "{{ zones_records.results }}" 7 | loop_control: 8 | loop_var: r53_zone 9 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-password/tasks/password.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Change {{ user_name }}'s password" 4 | user: 5 | name: "{{ user_name}}" 6 | password: "{{ clear_text_password|encrypt_password }}" 7 | 8 | -------------------------------------------------------------------------------- /roles/keepalived/tasks/keepalived-config.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Populate the keepalived.conf file' 4 | template: 5 | src: keepalived_conf.j2 6 | dest: '/etc/keepalived/keepalived.conf' 7 | notify: 'restart keepalived' 8 | 9 | -------------------------------------------------------------------------------- /roles/scm/quay/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | quay_host: https://quay.io 3 | 4 | quay_api_base: "{{ quay_host }}/api/v1" 5 | 6 | quay_api_token: "" 7 | 8 | quay_validate_certs: true 9 | 10 | quay_prune: false 11 | 12 | orgs: [] 13 | -------------------------------------------------------------------------------- /playbooks/provision-satellite-server/configure-satellite-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: satellite-server 4 | pre_tasks: 5 | - import_tasks: generate-lvm-list.yml 6 | roles: 7 | - role: config-lvm 8 | - role: config-satellite 9 | -------------------------------------------------------------------------------- /roles/config-bonding/tests/inventory/host_vars/infra-1.example.com: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | mgmt_net_ip: '192.168.1.11' 4 | mgmt_net_netmask: '255.255.255.0' 5 | mgmt_net_gateway: '192.168.1.1' 6 | mgmt_net_dns1: '8.8.8.8' 7 | mgmt_net_dns2: '8.8.4.4' 8 | 9 | -------------------------------------------------------------------------------- /roles/config-bonding/tests/inventory/host_vars/infra-2.example.com: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | mgmt_net_ip: '192.168.1.12' 4 | mgmt_net_netmask: '255.255.255.0' 5 | mgmt_net_gateway: '192.168.1.1' 6 | mgmt_net_dns1: '8.8.8.8' 7 | mgmt_net_dns2: '8.8.4.4' 8 | 9 | -------------------------------------------------------------------------------- /roles/config-container-storage-setup/templates/docker-storage-setup-dm.j2: -------------------------------------------------------------------------------- 1 | DEVS="{{ docker_dev }}" 2 | VG="{{ docker_vg }}" 3 | DATA_SIZE="{{ docker_data_size }}" 4 | EXTRA_DOCKER_STORAGE_OPTIONS="--storage-opt dm.basesize={{ docker_dm_basesize }}" -------------------------------------------------------------------------------- /roles/config-ipa-client/tasks/prereq-CentOS.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install additional packages for IPA/IdM" 4 | package: 5 | name: "{{ item }}" 6 | state: latest 7 | with_items: 8 | - ipa-client 9 | - libsss_sudo 10 | -------------------------------------------------------------------------------- /roles/config-ipa-client/tasks/prereq-RedHat.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install additional packages for IPA/IdM" 4 | package: 5 | name: "{{ item }}" 6 | state: latest 7 | with_items: 8 | - ipa-client 9 | - libsss_sudo 10 | -------------------------------------------------------------------------------- /roles/config-nagios-target/tasks/prerequisites.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Ensure the correct repos and software packages are installed 4 | #- import_tasks: enable-repos.yml 5 | #- import_tasks: install-epel.yml 6 | #- import_tasks: install-nagios.yml 7 | -------------------------------------------------------------------------------- /roles/config-software-src/tasks/mount-software.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Mount the software repository" 4 | mount: 5 | path: "{{ iso_repo_dir }}" 6 | src: "{{ iso_repo_nfs }}" 7 | fstype: nfs 8 | state: mounted 9 | 10 | -------------------------------------------------------------------------------- /roles/config-versionlock/tasks/versionlock.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Add version locks for specified packages" 4 | shell: > 5 | {{ ansible_pkg_mgr }} versionlock {{ item }} 6 | with_items: 7 | - "{{ versionlock_packages }}" 8 | 9 | -------------------------------------------------------------------------------- /roles/config-vlans/tests/inventory/host_vars/infra-1.example.com: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | mgmt_net_ip: '192.168.1.11' 4 | mgmt_net_netmask: '255.255.255.0' 5 | mgmt_net_gateway: '192.168.1.1' 6 | mgmt_net_dns1: '8.8.8.8' 7 | mgmt_net_dns2: '8.8.4.4' 8 | 9 | -------------------------------------------------------------------------------- /roles/config-vlans/tests/inventory/host_vars/infra-2.example.com: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | mgmt_net_ip: '192.168.1.12' 4 | mgmt_net_netmask: '255.255.255.0' 5 | mgmt_net_gateway: '192.168.1.1' 6 | mgmt_net_dns1: '8.8.8.8' 7 | mgmt_net_dns2: '8.8.4.4' 8 | 9 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | route53_processing: False 4 | 5 | ttl: 300 6 | 7 | aws_access_key: "{{ lookup('env','AWS_ACCESS_KEY_ID') }}" 8 | aws_secret_key: "{{ lookup('env','AWS_SECRET_ACCESS_KEY') }}" 9 | -------------------------------------------------------------------------------- /roles/identity-management/manage-user-password/test/vars/passwdfile3.json: -------------------------------------------------------------------------------- 1 | { 2 | "users" : [ 3 | { 4 | "user_name": "test", 5 | "password": "", 6 | "generate": "" 7 | } 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /roles/manage-jira/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: prepare_vars.yml 4 | 5 | - include_tasks: create_project_category.yml 6 | 7 | - include_tasks: create_permission_scheme.yml 8 | 9 | - include_tasks: create_project.yml 10 | -------------------------------------------------------------------------------- /.github/dependabot.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | version: 2 3 | updates: 4 | 5 | - package-ecosystem: "github-actions" 6 | directory: "/" 7 | schedule: 8 | # Check for updates to GitHub Actions every weekday 9 | interval: "daily" 10 | -------------------------------------------------------------------------------- /files/openstack.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # file must be named openstack.yaml or openstack.yml 3 | # Make the plugin behave like the default behavior of the old script 4 | plugin: openstack 5 | expand_hostvars: yes 6 | fail_on_errors: yes 7 | all_projects: yes 8 | -------------------------------------------------------------------------------- /playbooks/manage-identities/manage-rh-sso-identities.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Manage Red Hat SSO Identities (users/groups) 4 | hosts: identity-hosts 5 | gather_facts: no 6 | roles: 7 | - role: identity-management/manage-rh-sso-identities 8 | -------------------------------------------------------------------------------- /playbooks/update-dns-zones.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Update DNS zones' 4 | hosts: dns-zones-manage-host 5 | roles: 6 | - role: dns/manage-dns-zones-bind 7 | - role: dns/manage-dns-zones-route53 8 | tags: 9 | - update_dns_zones 10 | -------------------------------------------------------------------------------- /roles/aws/delete-instance/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: getcreds.yml 4 | - import_tasks: getvpc.yml 5 | - import_tasks: getinstance.yml 6 | - import_tasks: dns.yml 7 | - import_tasks: instance.yml 8 | - import_tasks: securitygroup.yml 9 | -------------------------------------------------------------------------------- /roles/config-bonding/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [all:vars] 2 | 3 | [infra_hosts] 4 | infra-1.example.com ansible_user=root ansible_host=192.168.1.11 5 | infra-2.example.com ansible_user=root ansible_host=192.168.1.12 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tasks/prereq.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Install required packages' 4 | package: 5 | name: '{{ item }}' 6 | state: installed 7 | with_items: 8 | - iscsi-initiator-utils 9 | - device-mapper-multipath 10 | -------------------------------------------------------------------------------- /roles/config-nagios-server/templates/common.cfg.j2: -------------------------------------------------------------------------------- 1 | 2 | # hostgroup 3 | 4 | define hostgroup{ 5 | hostgroup_name {{hostvars[item]['hostgroup_name']}} 6 | alias {{hostvars[item]['hostgroup_alias']}} 7 | } 8 | 9 | -------------------------------------------------------------------------------- /roles/config-nagios-target/files/nrpe.d/check_docker.cfg: -------------------------------------------------------------------------------- 1 | 2 | command[check_vda1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/vda1 3 | 4 | command[check_docker_storage]=/usr/lib64/nagios/plugins/check_docker_storage -w 80 -c 90 5 | 6 | -------------------------------------------------------------------------------- /roles/config-postgresql/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Install Containerized PostgreSQL 4 | include_tasks: install_containerized.yml 5 | when: mode == "containerized" 6 | 7 | - name: Flush Handlers (Postgresql) 8 | meta: flush_handlers 9 | -------------------------------------------------------------------------------- /roles/config-vlans/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | [all:vars] 2 | 3 | [infra_hosts] 4 | infra-1.example.com ansible_user=root ansible_host=192.168.1.11 5 | infra-2.example.com ansible_user=root ansible_host=192.168.1.12 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /roles/notifications/html-to-md/tasks/prereq.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install additional packages" 4 | package: 5 | name: "{{ item }}" 6 | state: "{{ prereq_state | default('installed') }}" 7 | with_items: 8 | - pandoc 9 | 10 | -------------------------------------------------------------------------------- /roles/notifications/md-to-html/tasks/prereq.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install additional packages" 4 | package: 5 | name: "{{ item }}" 6 | state: "{{ prereq_state | default('installed') }}" 7 | with_items: 8 | - pandoc 9 | 10 | -------------------------------------------------------------------------------- /roles/update-host/tasks/update-host.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Update the host" 4 | package: 5 | name: "*" 6 | state: latest 7 | register: host_updated 8 | when: 9 | - pkg_update|default(False) 10 | become: True 11 | 12 | -------------------------------------------------------------------------------- /ansible.cfg: -------------------------------------------------------------------------------- 1 | [defaults] 2 | host_key_checking = False 3 | retry_files_enabled = False 4 | callback_whitelist = profile_tasks 5 | 6 | [inventory] 7 | # fail more helpfully when the inventory file does not parse (Ansible 2.4+) 8 | unparsed_is_failed=true 9 | -------------------------------------------------------------------------------- /roles/config-docker/tasks/kernel_cgroups_v1.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Update Grub config file" 4 | shell: grubby --args="{{ grub_add_arg }}" --update-kernel=ALL 5 | 6 | - name: "Reboot the host to apply the changes made with grub" 7 | reboot: 8 | 9 | -------------------------------------------------------------------------------- /roles/config-ipa-client/tasks/prereq-Fedora.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install packages for IPA/IdM" 4 | package: 5 | name: 6 | - freeipa-client 7 | - sssd-nfs-idmap 8 | - python3-libselinux 9 | state: latest 10 | 11 | -------------------------------------------------------------------------------- /roles/config-nagios-target/tasks/enable-repos.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Enable the 'rhel-7-server-optional-rpms' repo 4 | command: "/usr/bin/subscription-manager repos --enable={{ item }}" 5 | with_items: 6 | - rhel-7-server-optional-rpms 7 | 8 | -------------------------------------------------------------------------------- /roles/config-pip-packages/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | pip: 4 | packages: 5 | - awscli==1.16.210 6 | - Flask==1.1.1 7 | - ansible-tower-cli==3.3.6 8 | virtualenv: /tmp/venv 9 | virtualenv_python: python3.7 10 | -------------------------------------------------------------------------------- /roles/discover-redirect-url/tests/playbook.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: redirect_host 4 | tasks: 5 | - import_role: 6 | name: discover-redirect-url 7 | - debug: 8 | msg: "key={{redirect_var_name}}, value={{ my_test_var_name }}" 9 | -------------------------------------------------------------------------------- /roles/notifications/html-to-md/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Test converting HTML to MD 4 | hosts: localhost 5 | roles: 6 | - notifications/html-to-md 7 | tasks: 8 | - debug: 9 | msg: "{{ html_to_md.md_message }}" 10 | -------------------------------------------------------------------------------- /roles/scm/git/templates/ssh_config.j2: -------------------------------------------------------------------------------- 1 | Host * 2 | 3 | LogLevel DEBUG 4 | 5 | IdentityFile {{ ssh_key }} 6 | 7 | BatchMode yes 8 | 9 | VisualHostKey yes 10 | 11 | StrictHostKeyChecking no 12 | 13 | UserKnownHostsFile /dev/null 14 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: precheck.yml 4 | - import_tasks: openshift_authenticate.yml 5 | - import_tasks: create_project.yml 6 | - import_tasks: setup_pvc.yml 7 | - import_tasks: deploy_tower.yml 8 | -------------------------------------------------------------------------------- /roles/config-nagios-target/tasks/install-nagios.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Installing the Nagios Software Packages 4 | package: 5 | name="{{item}}" 6 | state=present 7 | with_items: 8 | - nrpe 9 | - nagios-plugins* 10 | tags: epel 11 | -------------------------------------------------------------------------------- /roles/config-packages/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: rhelpackages.yml 4 | when: 5 | - yum_preferred 6 | - ansible_distribution == "RedHat" 7 | 8 | - import_tasks: packages.yml 9 | when: 10 | - not yum_preferred 11 | 12 | -------------------------------------------------------------------------------- /roles/identity-management/list-users-by-group/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: manage-users-host 4 | gather_facts: no 5 | roles: 6 | - role: list-users-by-group 7 | tasks: 8 | - debug: 9 | msg: "{{ list_of_users }}" 10 | 11 | -------------------------------------------------------------------------------- /roles/identity-management/manage-user-password/test/vars/passwdfile1.json: -------------------------------------------------------------------------------- 1 | { 2 | "users" : [ 3 | { 4 | "user_name": "test", 5 | "password": "test1234", 6 | "generate": True 7 | } 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /roles/identity-management/manage-user-password/test/vars/passwdfile5.json: -------------------------------------------------------------------------------- 1 | { 2 | "users" : [ 3 | { 4 | "user_name": "test", 5 | "password": "test1234", 6 | "generate": False 7 | } 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /roles/install-mongodb/tests/install_mongodb.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Install mongodb 3 | hosts: dbserver 4 | become: yes 5 | vars: 6 | mongodb_ver: 3.4 7 | os_family: redhat 8 | os_ver: 7 9 | roles: 10 | - install-mongodb 11 | 12 | -------------------------------------------------------------------------------- /roles/rhsm/tests/group_vars/test-sat6.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | rhsm_server_hostname: "sat6.example.com" 4 | rhsm_org_id: "my_org" 5 | rhsm_activationkey: "my_activation_key" 6 | rhsm_pool: "^my_pool_name$" 7 | 8 | rhsm_repos: 9 | - "rhel-7-server-rpms" 10 | -------------------------------------------------------------------------------- /inventory/quay-enterprise/group_vars/clair.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | #clair_database_username: clair 4 | #clair_database_password: clair 5 | #clair_database_admin_username: "" 6 | #clair_database_admin_password: "" 7 | #clair_database_name: clair 8 | #clair_database_port: 5433 9 | -------------------------------------------------------------------------------- /playbooks/osp/delete-osp-instance.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Delete Instance(s) 4 | hosts: osp-provisioner 5 | vars: 6 | osp_resource_state: absent 7 | roles: 8 | - osp/admin-instance 9 | - osp/admin-sec-group 10 | - osp/admin-volume 11 | 12 | -------------------------------------------------------------------------------- /roles/config-redis/templates/redis.j2: -------------------------------------------------------------------------------- 1 | IMAGE={{ redis_image }} 2 | REDIS_CONTAINER_STORAGE_DIR={{ redis_container_storage_dir }} 3 | REDIS_HOST_STORAGE_DIR={{ redis_storage_dir }} 4 | REDIS_CONTAINER_PORT={{ redis_container_port }} 5 | REDIS_HOST_PORT={{ redis_host_port }} -------------------------------------------------------------------------------- /roles/dns/manage-dns-records/tasks/nsupdate/nsupdate-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: process-records.yml 4 | with_items: 5 | - "{{ dns.1.nsupdate }}" 6 | when: 7 | - dns.1.nsupdate is defined 8 | loop_control: 9 | loop_var: nsupdate 10 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/templates/group.j2: -------------------------------------------------------------------------------- 1 | { 2 | "name": "{{ group.name }}", 3 | "description": "{{ group.description | default('') }}", 4 | "inventory": {{ inv_id }}, 5 | "variables": "{{ group.variables | from_yaml | default('---') }}" 6 | } 7 | -------------------------------------------------------------------------------- /roles/aws/manage-keypairs/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: "prereqs.yml" 4 | 5 | - include_tasks: "manage-existing-keys.yml" 6 | with_items: "{{ existing_keys }}" 7 | 8 | - include_tasks: "manage-new-keys.yml" 9 | with_items: "{{ new_keys }}" 10 | -------------------------------------------------------------------------------- /roles/dhcp/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: dhcp 4 | become: yes 5 | vars_files: 6 | - vars.yml 7 | pre_tasks: 8 | - debug: 9 | msg: "Development Playbook to install a dhcp server and get it running" 10 | roles: 11 | - dhcp 12 | 13 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | package_state: present 4 | 5 | dns_server_type: 'master' 6 | 7 | named_config_recursion: yes 8 | 9 | named_config_views: [] 10 | named_config_allow_query: [] 11 | named_config_allow_transfer: [] 12 | -------------------------------------------------------------------------------- /playbooks/subscribe-host.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Example run (localhost needed to source username/password with "prep.yml") 4 | # > ansible-playbook -i subscribe-host.yml -l "myhosts,localhost" 5 | 6 | - import_playbook: "prep.yml" 7 | - import_playbook: "rhsm.yml" 8 | 9 | -------------------------------------------------------------------------------- /roles/identity-management/htpasswd-from-dict/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | htpasswd_output_path: /tmp/htpasswd 3 | htpasswd_users: [] 4 | 5 | # htpasswd_users: 6 | # - username: user1 7 | # password: password1 8 | # - username: user2 9 | # password: password2 10 | -------------------------------------------------------------------------------- /OWNERS: -------------------------------------------------------------------------------- 1 | # See the OWNERS docs at https://go.k8s.io/owners 2 | 3 | reviewers: 4 | - etsauer 5 | - oybed 6 | - pabrahamsson 7 | - paulbarfuss 8 | - sabre1041 9 | approvers: 10 | - etsauer 11 | - oybed 12 | - pabrahamsson 13 | - paulbarfuss 14 | - sabre1041 15 | -------------------------------------------------------------------------------- /roles/config-chrony/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | config_chrony_services: 4 | - firewalld 5 | - chronyd 6 | 7 | config_chrony_firewall_services: 8 | - ntp 9 | 10 | config_chrony_packages: 11 | - chrony 12 | - firewalld 13 | 14 | chrony_allow_subnet: 127.0.0.1 15 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-password/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: 'password.yml' 4 | when: 5 | - user_name is defined 6 | - user_name|trim != "" 7 | - clear_text_password is defined 8 | - clear_text_password|trim != "" 9 | 10 | -------------------------------------------------------------------------------- /inventory/quay-enterprise/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Authentication to access Quay Registry 4 | quay_registry_auth: "" 5 | 6 | ## Custom hostname for Load Balancing and SSL Certificates 7 | #quay_hostname: 8 | 9 | # Recommended Settings 10 | quay_ssl_enable: True 11 | 12 | -------------------------------------------------------------------------------- /inventory/quay-enterprise/hosts: -------------------------------------------------------------------------------- 1 | [quay_enterprise] 2 | 3 | [redis] 4 | 5 | [database] 6 | 7 | [clair] 8 | 9 | [lb] 10 | 11 | [quay_builder] 12 | 13 | [docker_hosts] 14 | 15 | [docker_hosts:children] 16 | quay_enterprise 17 | redis 18 | database 19 | clair 20 | quay_builder 21 | -------------------------------------------------------------------------------- /inventory/rh-sso/hosts: -------------------------------------------------------------------------------- 1 | 2 | [osp-provisioner] 3 | localhost 4 | 5 | [osp_instances:children] 6 | rh-sso-hosts 7 | 8 | [rh-sso-hosts] 9 | 10 | [rhsm_hosts:children] 11 | rh-sso-hosts 12 | 13 | [identity-hosts] 14 | localhost 15 | 16 | [cert-host:children] 17 | rh-sso-hosts 18 | -------------------------------------------------------------------------------- /playbooks/osp/manage-user-network.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # See the roles README for detailed info on inventory requirements. 4 | # https://github.com/redhat-cop/infra-ansible/blob/master/roles/osp/admin-network/README.md 5 | 6 | - hosts: osp-provisioner 7 | roles: 8 | - osp/admin-network 9 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "cleanup temp dir" 4 | file: 5 | path: "{{ ansible_tower_tmp_dir_path }}" 6 | state: absent 7 | run_once: True 8 | when: 9 | - clean_up is undefined or clean_up|bool == true 10 | -------------------------------------------------------------------------------- /roles/config-versionlock/tasks/prereq-Fedora.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install required packages" 4 | package: 5 | name: "{{ item }}" 6 | state: installed 7 | with_items: 8 | - python2-dnf-plugins-extras-versionlock 9 | - python3-dnf-plugins-extras-versionlock 10 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/tasks/print_keys.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Print configured keys - if requested" 4 | debug: 5 | var: nsupdate_keys 6 | run_once: true 7 | when: 8 | - print_dns_keys|default(False) 9 | delegate_to: "{{ ansible_play_hosts | first }}" 10 | -------------------------------------------------------------------------------- /roles/nfs-server/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | nfs_shares: 4 | - name: registry 5 | - name: metrics 6 | nfs_owner: "root" 7 | nfs_group: "root" 8 | nfs_mode: "0755" 9 | nfs_share_options: "ro" 10 | - name: logging 11 | - name: data 12 | 13 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/templates/inventory.j2: -------------------------------------------------------------------------------- 1 | { 2 | "name": "{{ inventory.name }}", 3 | "description": "{{ inventory.description | default('') }}", 4 | "organization": {{ org_id }}, 5 | "variables": "{{ inventory.variables | from_yaml | default('') }}" 6 | } 7 | -------------------------------------------------------------------------------- /roles/aws/delete-instance/tasks/securitygroup.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Delete Security Groups 3 | ec2_group: 4 | name: "{{ item.name }}" 5 | region: "{{ aws_region }}" 6 | state: absent 7 | vpc_id: "{{ vpc.vpcs[0].vpc_id }}" 8 | with_items: "{{ security_groups | default([]) }}" 9 | -------------------------------------------------------------------------------- /roles/config-idm-server/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Ensure firewalld is running 4 | service: 5 | name: firewalld 6 | state: started 7 | enabled: yes 8 | 9 | - name: Ensure IdM is running at boot 10 | service: 11 | name: ipa 12 | enabled: yes 13 | 14 | -------------------------------------------------------------------------------- /roles/config-idm-server/tests/inventory: -------------------------------------------------------------------------------- 1 | [all:vars] 2 | idm_master_hostname=idm1.test.lab 3 | idm_domain=test.lab 4 | idm_realm=test.lab 5 | idm_dm_password=test123$ 6 | idm_admin_password=test123$ 7 | 8 | [idm-server] 9 | idm1.test.lab 10 | idm2.test.lab idm_src=idm1.test.lab 11 | 12 | -------------------------------------------------------------------------------- /roles/config-nagios-target/tasks/install-epel.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Installing EPEL Software Repo 4 | package: 5 | name="{{item}}" 6 | state=present 7 | with_items: 8 | - http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 9 | tags: epel 10 | 11 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/tests/inventory/group_vars/dns-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | named_config: 4 | recursion: 'no' 5 | dnssec_enable: 'yes' 6 | dnssec_validation: 'yes' 7 | dnssec_lookaside: 'no' 8 | allow_transfer: 9 | - 192.168.48.21 10 | - 192.168.48.22 11 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/templates/view-config-2.j2: -------------------------------------------------------------------------------- 1 | 2 | include "/etc/named.rfc1912.zones"; 3 | 4 | zone "." { 5 | type forward; 6 | forwarders { 7 | {% for forwarder in view_forwarders %} 8 | {{ forwarder }}; 9 | {% endfor %} 10 | }; 11 | }; 12 | 13 | 14 | }; 15 | -------------------------------------------------------------------------------- /roles/osp/packstack-post/files/nova-ssh.te: -------------------------------------------------------------------------------- 1 | 2 | module nova-ssh 1.0; 3 | 4 | require { 5 | type nova_var_lib_t; 6 | type sshd_t; 7 | class file { getattr open read }; 8 | } 9 | 10 | #============= sshd_t ============== 11 | allow sshd_t nova_var_lib_t:file { getattr open read }; 12 | -------------------------------------------------------------------------------- /inventory/nfs-server/group_vars/nfs-server.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # Need to become "root" to perform the install 4 | ansible_become: true 5 | 6 | nfs_storage_device: /dev/vdb 7 | 8 | nfs_shares: 9 | - name: share1 10 | - name: share2 11 | - name: share3 12 | - name: share4 13 | - name: share5 14 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/templates/host.j2: -------------------------------------------------------------------------------- 1 | { 2 | "name": "{{ host.name }}", 3 | "description": "{{ host.description | default('') }}", 4 | "inventory": {{ inv_id }}, 5 | "enabled": true, 6 | "variables": "{{ host.variables | from_yaml | default('---') }}" 7 | } 8 | -------------------------------------------------------------------------------- /roles/config-httpd/tasks/seed.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Seed web server with content' 4 | copy: 5 | src: "{{ httpd_seed_dir }}" 6 | dest: "{{ html_document_root | default(default_document_root) }}" 7 | when: 8 | - httpd_seed_dir is defined 9 | - httpd_seed_dir|trim != "" 10 | -------------------------------------------------------------------------------- /roles/config-pip-packages/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Install Python software packages 4 | pip: 5 | name: "{{ item }}" 6 | virtualenv: "{{ pip.virtualenv | default(omit) }}" 7 | virtualenv_python: "{{ pip.virtualenv_python | default(omit) }}" 8 | loop: "{{ pip.packages }}" 9 | -------------------------------------------------------------------------------- /roles/config-vlans/tests/inventory/group_vars/infra_hosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | vlans: 4 | - device: tenant.vlan11 5 | physdev: eth0 6 | vlan_id: 11 7 | - device: tenant.vlan12 8 | physdev: eth0 9 | vlan_id: 12 10 | - device: tenant.vlan13 11 | physdev: eth0 12 | vlan_id: 13 13 | 14 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tasks/loop-records.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Loop through zone records 4 | include_tasks: empty-zone.yml 5 | with_subelements: 6 | - "{{ r53_zone.ResourceRecordSets }}" 7 | - ResourceRecords 8 | loop_control: 9 | loop_var: r53_record 10 | -------------------------------------------------------------------------------- /roles/nfs-server/tasks/lvm.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Check if LV has been created and mounted" 4 | shell: "lsblk {{ nfs_storage_device }} | egrep 'lvm.*/exports'" 5 | register: lvm_check 6 | ignore_errors: yes 7 | 8 | - include_tasks: configure_lvm.yml 9 | when: lvm_check.rc != 0 10 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-credentials/tests/inventory/group_vars/tower.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | tower_admin_password: "admin01" 4 | 5 | ansible_tower: 6 | credentials: 7 | - name: "Cred1" 8 | description: "My Credential 1" 9 | organization: "Default" 10 | credential_type: "Machine" 11 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-settings/tests/inventory/group_vars/tower.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_tower: 4 | admin_password: 'admin01$' 5 | settings: 6 | AWX_PROOT_SHOW_PATHS: 7 | - /var/lib/awx/.ssh 8 | - /var/lib/awx/projects 9 | - /tmp 10 | url: https://192.168.1.21 11 | -------------------------------------------------------------------------------- /roles/certs/acme-host-cert/tasks/rm-dns-records.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "LE Cert DNS cleanup" 4 | vars: 5 | certificate_dns_entries: "{{ certificate_dns_cleanup }}" 6 | include_role: 7 | name: "dns/manage-dns-records" 8 | when: 9 | - certificate_dns_cleanup is defined 10 | 11 | -------------------------------------------------------------------------------- /roles/config-ipa-client/tests/inventory: -------------------------------------------------------------------------------- 1 | [all:vars] 2 | 3 | ipa_client_install=yes 4 | ipa_domain=test.example.com 5 | ipa_automount_location=userhome 6 | ipa_username=testuser 7 | ipa_password=testuserpassword 8 | 9 | [ipa-client] 10 | 192.168.1.16 ansible_user=fedora ansible_become=True 11 | -------------------------------------------------------------------------------- /roles/config-nexus/tests/ocp-test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # This test assumes a locally running Nexus3 app. 3 | # The easiest way to acheive that is via `docker run -it -p 8081:8081 sonatype/nexus3 4 | 5 | - name: "Configure Nexus" 6 | hosts: ocp-nexus 7 | 8 | roles: 9 | - configure-nexus 10 | 11 | -------------------------------------------------------------------------------- /roles/dhcp/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: prereq.yml 4 | 5 | # build the config file locally 6 | - import_tasks: dhcpconfig.yml 7 | delegate_to: localhost 8 | run_once: true 9 | 10 | # install the packages and copy the file from the local system 11 | - import_tasks: dhcp.yml 12 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: determine-action.yml 4 | 5 | - block: 6 | - import_tasks: prereq.yml 7 | - import_tasks: get-zone-records.yml 8 | - import_tasks: process-views.yml 9 | when: 10 | - route53_processing|bool == True 11 | -------------------------------------------------------------------------------- /roles/get-remote-file/tests/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | rem_file_protocol: "https" 4 | rem_file_location: "example.com" 5 | rem_file_name: "ca.crt" 6 | 7 | file_destination_root: "{{ inventory_dir }}/../files" 8 | file_destination: "my-app/app-cert" 9 | file_name: "ca.crt" 10 | 11 | -------------------------------------------------------------------------------- /roles/scm/github.com/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # defaults file for github 3 | github_api_base: https://api.github.com/orgs/{{ github_org_name }} 4 | github_api_proj: "{{ github_api_base }}/projects" 5 | github_api_teams: "{{ github_api_base }}/teams" 6 | github_api_repos: "{{ github_api_base }}/repos" 7 | -------------------------------------------------------------------------------- /playbooks/install.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_playbook: "prep.yml" 4 | 5 | - import_playbook: "infra-hosts.yml" 6 | 7 | - import_playbook: "infra-virt-hosts.yml" 8 | 9 | - import_playbook: "vm.yml" 10 | 11 | - import_playbook: "services.yml" 12 | 13 | - import_playbook: "manage-lb/lb-vms.yml" 14 | -------------------------------------------------------------------------------- /playbooks/osp/manage-object-container.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # See the roles README for detailed info on inventory requirements. 4 | # https://github.com/redhat-cop/infra-ansible/blob/main/roles/osp/admin-object-container/README.md 5 | 6 | - hosts: osp-provisioner 7 | roles: 8 | - osp/admin-object-container 9 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/tests/inventory/group_vars/tower.yml: -------------------------------------------------------------------------------- 1 | --- 2 | ansible_tower: 3 | admin_password: 'admin01' 4 | organizations: 5 | - name: 'Demo Organization' 6 | description: 'Describe your demo organization' 7 | galaxy_credentials: 8 | - 'Ansible Galaxy' 9 | -------------------------------------------------------------------------------- /roles/config-routes/tasks/prereq.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Include prereqs per the type of OS" 4 | include_tasks: "{{ distro_file }}" 5 | with_first_found: 6 | - files: 7 | - prereq-{{ ansible_distribution }}.yml 8 | skip: true 9 | loop_control: 10 | loop_var: distro_file 11 | 12 | -------------------------------------------------------------------------------- /inventory/idm-server/hosts: -------------------------------------------------------------------------------- 1 | 2 | [osp-provisioner] 3 | localhost 4 | 5 | #[aws-provisioner] 6 | #localhost 7 | 8 | [idm-server] 9 | idm.example.com 10 | 11 | [dns-records-manage-host] 12 | localhost 13 | 14 | [osp_instances:children] 15 | idm-server 16 | 17 | [rhsm_hosts:children] 18 | idm-server 19 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tasks/lvm-config.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - include_tasks: configure_lvm.yml 4 | loop_control: 5 | loop_var: disk 6 | with_items: 7 | - "{{ disk_mapping }}" 8 | 9 | - name: "Updated PV metadata" 10 | command: 'pvscan --cache' 11 | when: 12 | - disk_mapping|length > 0 13 | -------------------------------------------------------------------------------- /roles/config-nexus/files/nist-proxy-repos.groovy: -------------------------------------------------------------------------------- 1 | import org.sonatype.nexus.blobstore.api.BlobStoreManager; 2 | 3 | if ( !repository.repositoryManager.exists( 'nist-proxy-repos' ) ) { 4 | repository.createRawProxy( 'nist-proxy-repos', 'https://nvd.nist.gov/feeds/', BlobStoreManager.DEFAULT_BLOBSTORE_NAME); 5 | } -------------------------------------------------------------------------------- /roles/ansible/tower/manage-inventories/templates/group-member.j2: -------------------------------------------------------------------------------- 1 | { 2 | "name": "{{ group_member.name }}", 3 | "description": "{{ group_member.description | default('') }}", 4 | "enabled": "true", 5 | "instance_id": "", 6 | "variables": "{{ group_member.variables | from_yaml | default('') }}" 7 | } 8 | -------------------------------------------------------------------------------- /roles/config-clair/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Restart Clair Service 4 | systemd: 5 | name: "{{ clair_name }}" 6 | enabled: yes 7 | state: restarted 8 | daemon_reload: yes 9 | 10 | - name: restart firewalld 11 | service: 12 | name: firewalld 13 | state: restarted 14 | 15 | -------------------------------------------------------------------------------- /roles/config-redis/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Restart Redis Service 4 | systemd: 5 | name: "{{ redis_service }}" 6 | enabled: yes 7 | state: restarted 8 | daemon_reload: yes 9 | 10 | - name: restart firewalld 11 | service: 12 | name: firewalld 13 | state: restarted 14 | -------------------------------------------------------------------------------- /roles/config-routes/tests/inventory/group_vars/infra_hosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | routes: 4 | - device: eth0 5 | entries: 6 | - address: 192.168.10.0 7 | netmask: 255.255.255.0 8 | gateway: 192.168.1.1 9 | - address: 192.168.11.0 10 | netmask: 255.255.255.0 11 | gateway: 192.168.1.1 12 | 13 | -------------------------------------------------------------------------------- /roles/scm/add-webhooks-github/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # tasks file for add-webhooks 3 | 4 | - name: Add Webhooks 5 | include_tasks: add-webhook.yml 6 | vars: 7 | url: "{{ item.url }}" 8 | events: "{{ item.events }}" 9 | is_active: "{{ item.is_active }}" 10 | with_items: "{{ webhooks }}" 11 | -------------------------------------------------------------------------------- /playbooks/notifications/email-notify-group-of-users.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Obtain list of users to e-mail" 4 | hosts: mail-host 5 | gather_facts: no 6 | tasks: 7 | - include_role: 8 | name: roles/identity-management/list-users-by-group 9 | 10 | - import_playbook: email-notify-list-of-users.yml 11 | -------------------------------------------------------------------------------- /roles/config-quay-enterprise/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Restart quay service 4 | systemd: 5 | name: "{{ quay_service }}" 6 | enabled: yes 7 | state: restarted 8 | daemon_reload: yes 9 | 10 | - name: restart firewalld 11 | service: 12 | name: firewalld 13 | state: restarted 14 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-route53/tasks/determine-action.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Determine if Route53 processing is required 4 | set_fact: 5 | route53_processing: True 6 | when: 7 | - item.1.route53 is defined 8 | with_subelements: 9 | - "{{ dns_data.views | default({}) }}" 10 | - zones 11 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-ssh-authkeys/test/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | user_name: user1 4 | clear_text_password: test123 5 | 6 | authorized_keyfile: "{{ inventory_dir }}/../authorized_keys" 7 | reset_keyfile: yes 8 | 9 | 10 | key_url: "{{ lookup('file', authorized_keyfile) }}" 11 | -------------------------------------------------------------------------------- /roles/nfs-server/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | default_nfs_owner: "nfsnobody" 4 | default_nfs_group: "nfsnobody" 5 | default_nfs_mode: "0777" 6 | 7 | default_nfs_vg_name: "nfs" 8 | default_nfs_lv_name: "exports" 9 | default_nfs_share_basedir: "/exports" 10 | default_nfs_share_options: "rw,root_squash,no_wdelay" 11 | -------------------------------------------------------------------------------- /playbooks/provision-dns-server/configure-dns-server-bind.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - hosts: dns-server 4 | roles: 5 | - role: dns/config-dns-server-bind 6 | tags: 7 | - 'never' 8 | - 'install' 9 | 10 | - hosts: dns-server 11 | roles: 12 | - role: dns/manage-dns-zones-bind 13 | tags: 14 | - 'always' 15 | -------------------------------------------------------------------------------- /roles/config-iscsi-client/tests/host_vars/node-1.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | iscsi_initiatorname: iqn.1994-05.com.example:node-1 4 | 5 | disk_mapping: 6 | - lun: 0 7 | vg: vg0 8 | lv: lv0 9 | mount_path: /mnt/vg0-lv0 10 | - lun: 1 11 | vg: vg1 12 | lv: lv0 13 | mount_path: /var/vg1-lv0 14 | - lun: 2 15 | vg: vg2 16 | -------------------------------------------------------------------------------- /roles/config-rh-sso/templates/auth-flow.json.j2: -------------------------------------------------------------------------------- 1 | { 2 | "alias": "{{ af.name | mandatory }}", 3 | "builtIn": "{{ af.builtin | default(false)}}", 4 | "description": "{{ af.description | default(af.name) }}", 5 | "providerId": "{{ af.providerId | default('basic-flow') }}", 6 | "topLevel": true, 7 | } 8 | 9 | 10 | -------------------------------------------------------------------------------- /roles/identity-management/list-users-by-group/tasks/generate-list-of-users.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Populate list of users" 4 | set_fact: 5 | list_of_users: "{{ list_of_users | default([]) }} + [ {{ item }} ]" 6 | when: 7 | - item.user_name in user_group.members 8 | with_items: 9 | - "{{ users }}" 10 | 11 | -------------------------------------------------------------------------------- /playbooks/provision-bastion/bastion.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - import_playbook: ../osp/manage-user-network.yml 3 | when: 4 | - hosting_infrastructure == 'openstack' 5 | 6 | - import_playbook: ../osp/provision-osp-instance.yml 7 | when: 8 | - hosting_infrastructure == 'openstack' 9 | 10 | 11 | - import_playbook: install.yml 12 | -------------------------------------------------------------------------------- /roles/manage-ssh-private-keys/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Add SSH keys to remote host 4 | include_tasks: process-ssh-key.yml 5 | loop: "{{ ssh_private_keys }}" 6 | loop_control: 7 | loop_var: ssh_key 8 | when: 9 | - ssh_private_keys is defined 10 | - (ssh_private_keys | type_debug) == 'list' 11 | -------------------------------------------------------------------------------- /roles/notifications/md-to-html/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Test converting MD to HTML 4 | hosts: localhost 5 | roles: 6 | - notifications/md-to-html 7 | tasks: 8 | - debug: 9 | msg: "{{ md_to_html.html_body_message }}" 10 | - debug: 11 | msg: "{{ md_to_html.html_message }}" 12 | 13 | -------------------------------------------------------------------------------- /roles/update-host/tasks/reboot-host.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ## don's wait for the host to come back, another task in place 4 | - name: "Reboot the host - {{ inventory_hostname }}" 5 | reboot: 6 | reboot_timeout: 0 7 | ignore_errors: true 8 | when: 9 | - host_updated.changed or force_host_reboot 10 | become: True 11 | -------------------------------------------------------------------------------- /roles/config-container-storage-setup/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | docker_dev: /dev/vdb 4 | docker_vg: docker-vol 5 | docker_data_size: 95%VG 6 | docker_dm_basesize: "3G" 7 | container_root_lv_name: dockerlv 8 | container_root_lv_mount_path: /var/lib/docker 9 | 10 | config_file_dest: /etc/sysconfig/docker-storage-setup 11 | 12 | -------------------------------------------------------------------------------- /roles/config-docker/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | docker_install: False 3 | docker_username: root 4 | docker_network_interface: docker0 5 | mtu_offset: 0 6 | docker_interface: docker0 7 | external_interface: default_ipv4 8 | docker_network_file: /etc/sysconfig/docker-network 9 | grub_add_arg: "systemd.unified_cgroup_hierarchy=0" 10 | -------------------------------------------------------------------------------- /roles/config-libvirt/tasks/packages.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Install packages 4 | yum: 5 | name: "{{ libvirt_base_packages }}" 6 | state: present 7 | 8 | - name: "Install Virt-Manager" 9 | yum: 10 | name: "{{ virt_manager_packages }}" 11 | state: present 12 | when: 13 | - virt_manager_install 14 | 15 | -------------------------------------------------------------------------------- /roles/config-postgresql/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Restart PostgreSQL Service 4 | systemd: 5 | name: "{{ postgresql_service }}" 6 | enabled: yes 7 | state: restarted 8 | daemon_reload: yes 9 | 10 | - name: restart firewalld 11 | service: 12 | name: firewalld 13 | state: restarted 14 | 15 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/tests/inventory/hosts: -------------------------------------------------------------------------------- 1 | 2 | [dns-servers:children] 3 | dns-server 4 | forward-server 5 | 6 | [dns-server] 7 | 192.168.10.15 ansible_user=centos ansible_become=True dns_server_type=master 8 | 9 | [forward-server] 10 | 192.168.10.17 ansible_user=centos ansible_become=True dns_server_type=master 11 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: determine-action.yml 4 | 5 | - block: 6 | - include_tasks: prereq.yml 7 | - include_tasks: process-views.yml 8 | - include_tasks: keys.yml 9 | - include_tasks: print_keys.yml 10 | when: 11 | - named_processing|bool == True 12 | 13 | -------------------------------------------------------------------------------- /roles/identity-management/manage-idm-identities/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Process IPA/IdM Identities when targeted 4 | block: 5 | 6 | - import_tasks: create_users.yml 7 | - import_tasks: create_groups.yml 8 | 9 | when: 10 | - identities.targets is undefined or 11 | 'idm' in identities.targets 12 | -------------------------------------------------------------------------------- /playbooks/manage-identities/manage-aws-identities.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Manage AWS Identities (users/groups) 4 | hosts: identity-hosts 5 | roles: 6 | - role: identity-management/manage-aws-identities 7 | - role: identity-management/manage-user-password 8 | - role: identity-management/manage-aws-user-password 9 | 10 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/templates/organization.j2: -------------------------------------------------------------------------------- 1 | { 2 | "name": '{{ organization.name }}', 3 | "description": '{{ organization.description | default('') }}', 4 | "max_hosts": '{{ organization.max_hosts | default(0) | int }}', 5 | "custom_virtualenv": '{{ organization.custom_virtualenv | default(omit) }}' 6 | } 7 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-ssh-authkeys/tasks/authorizedkeys.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Update authorized keys for user: {{ user_name|default(ansible_user) }}" 4 | authorized_key: 5 | user: "{{ user_name|default(ansible_user) }}" 6 | exclusive: "{{ reset_keyfile|default('no') }}" 7 | key: "{{ key_url }}" 8 | 9 | -------------------------------------------------------------------------------- /inventory/scripts/google-sheets/credentials.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "service_account", 3 | "project_id": "", 4 | "private_key_id": "", 5 | "private_key": "", 6 | "client_email": "", 7 | "client_id": "", 8 | "auth_uri": "", 9 | "token_uri": "", 10 | "auth_provider_x509_cert_url": "", 11 | "client_x509_cert_url": "" 12 | } 13 | -------------------------------------------------------------------------------- /roles/config-versionlock/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Include prereqs per the type of OS" 4 | include_tasks: "{{ distro_file }}" 5 | with_first_found: 6 | - files: 7 | - prereq-{{ ansible_distribution }}.yml 8 | skip: true 9 | loop_control: 10 | loop_var: distro_file 11 | 12 | - import_tasks: versionlock.yml 13 | -------------------------------------------------------------------------------- /roles/identity-management/list-users-by-group/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Find users part of group and generate list of users" 4 | include_tasks: generate-list-of-users.yml 5 | when: 6 | - user_group.name == target_group 7 | with_items: 8 | - "{{ user_groups }}" 9 | loop_control: 10 | loop_var: user_group 11 | 12 | -------------------------------------------------------------------------------- /playbooks/manage-identities/manage-idm-identities.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Manage IPA/IdM identities 4 | hosts: identity-hosts 5 | gather_facts: no 6 | roles: 7 | - role: identity-management/manage-idm-identities 8 | - role: identity-management/manage-user-password 9 | - role: identity-management/manage-idm-user-password 10 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/tasks/determine-action.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Determine if named processing is required 4 | set_fact: 5 | named_processing: True 6 | when: 7 | - item.0.named is defined or 8 | item.1.named is defined 9 | with_subelements: 10 | - "{{ dns_data.views | default({}) }}" 11 | - zones 12 | -------------------------------------------------------------------------------- /roles/config-container-storage-setup/templates/docker-storage-setup-overlayfs.j2: -------------------------------------------------------------------------------- 1 | DEVS="{{ docker_dev }}" 2 | VG="{{ docker_vg }}" 3 | DATA_SIZE="{{ docker_data_size }}" 4 | STORAGE_DRIVER=overlay2 5 | CONTAINER_ROOT_LV_NAME="{{ container_root_lv_name }}" 6 | CONTAINER_ROOT_LV_MOUNT_PATH="{{ container_root_lv_mount_path }}" 7 | CONTAINER_ROOT_LV_SIZE=100%FREE -------------------------------------------------------------------------------- /roles/certs/acme-host-cert/tasks/create-directories.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - file: 4 | path: "{{ target_cert_files.host_cert | dirname }}" 5 | recurse: yes 6 | - file: 7 | path: "{{ target_cert_files.fullchain | dirname }}" 8 | recurse: yes 9 | - file: 10 | path: "{{ target_cert_files.intermediate_ca | dirname }}" 11 | recurse: yes 12 | -------------------------------------------------------------------------------- /roles/certs/idm-host-cert/tests/group_vars/cert-host.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | idm_fqdn: "idm.example.com" 4 | idm_user: "admin" 5 | idm_password: "admin!" 6 | host_name: "host-1.example.com" 7 | host_realm: "EXAMPLE.COM" 8 | host_description: "Testing My Host Cert" 9 | target_host_cert_file: "/tmp/{{ host_name }}.pem" 10 | target_ca_cert_file: "/tmp/ca.pem" 11 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: restart named 4 | service: 5 | name: named 6 | state: restarted 7 | 8 | - name: reload named 9 | service: 10 | name: named 11 | state: reloaded 12 | 13 | - name: cleanup temp 14 | file: 15 | path: "{{ dns_zone_temp_config_dir }}" 16 | state: absent 17 | -------------------------------------------------------------------------------- /roles/scm/git/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Clean-up temporary SSH directory 4 | file: 5 | path: "{{ ssh_dir }}" 6 | state: absent 7 | changed_when: false 8 | listen: 9 | - Remove SSH keys 10 | 11 | - name: Remove git credentials 12 | include_tasks: 13 | file: remove_git_creds.yml 14 | listen: Remove git credentials 15 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp/templates/pvc.j2: -------------------------------------------------------------------------------- 1 | --- 2 | kind: PersistentVolumeClaim 3 | apiVersion: v1 4 | metadata: 5 | name: {{ openshift_pg_pvc_name }} 6 | namespace: {{ openshift_project }} 7 | spec: 8 | accessModes: 9 | - ReadWriteOnce 10 | resources: 11 | requests: 12 | storage: {{ openshift_pg_pvc_size }} 13 | 14 | -------------------------------------------------------------------------------- /roles/manage-sshd-config/tasks/sshd-update.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Update sshd_config with provided values" 4 | lineinfile: 5 | path: /etc/ssh/sshd_config 6 | backup: yes 7 | regexp: '^{{ item.key }}' 8 | line: '{{ item.key }} {{ item.value }}' 9 | notify: 'reload sshd' 10 | with_dict: "{{ update_sshd_config | default({}) }}" 11 | 12 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-schedules/tests/inventory/group_vars/tower.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_tower: 4 | admin_password: "admin01" 5 | schedules: 6 | - name: "Demo Schedule" 7 | description: "My Schedule" 8 | rrule: "DTSTART;TZID=US-Eastern:20201222T110000Z RRULE:FREQ=WEEKLY;INTERVAL=1;COUNT=1" 9 | unified_job_template: "Demo Job Template" 10 | -------------------------------------------------------------------------------- /roles/config-linux-desktop/config-lxde/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install, configure and enable LXDE" 4 | include_tasks: "{{ distro_file }}" 5 | with_first_found: 6 | - files: 7 | - lxde-{{ ansible_distribution }}.yml 8 | skip: true 9 | loop_control: 10 | loop_var: distro_file 11 | when: 12 | - lxde_install|default(False) 13 | 14 | -------------------------------------------------------------------------------- /roles/config-linux-desktop/config-xfce/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install, configure and enable XFCE" 4 | include_tasks: "{{ distro_file }}" 5 | with_first_found: 6 | - files: 7 | - xfce-{{ ansible_distribution }}.yml 8 | skip: true 9 | loop_control: 10 | loop_var: distro_file 11 | when: 12 | - xfce_install|default(False) 13 | 14 | -------------------------------------------------------------------------------- /roles/notifications/html-to-md/tasks/convert_html_to_md.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Convert HTML to markdown(md)" 4 | shell: > 5 | echo '{{ html_content }}' | pandoc -f html -t markdown 6 | register: result 7 | 8 | - name: "Store away converted Markdown(md) in a dict" 9 | set_fact: 10 | html_to_md: 11 | md_message: "{{ result.stdout }}" 12 | 13 | -------------------------------------------------------------------------------- /roles/virt-install/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Unmount install ISO' 4 | mount: 5 | path: "{{ item.value }}" 6 | state: absent 7 | loop: "{{ mounted_iso | dict2items }}" 8 | 9 | - name: 'Remove authorized_keys' 10 | file: 11 | path: "{{ default_http_dir }}/{{ virtinstall_authorized_keys | basename }}" 12 | state: absent 13 | 14 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp/tasks/create_project.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Checking if target OCP project exists 4 | command: oc get project {{ openshift_project }} 5 | register: getProject 6 | failed_when: false 7 | 8 | - name: Creating target OCP project 9 | command: oc new-project {{ openshift_project }} 10 | when: getProject.rc != 0 11 | -------------------------------------------------------------------------------- /roles/config-libvirt/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # defaults file to use to default variables 4 | libvirtenable: true 5 | 6 | libvirt_base_packages: 7 | - libguestfs-tools 8 | - virt-install 9 | - qemu-kvm 10 | - libvirt 11 | 12 | service_name: "libvirtd" 13 | 14 | virt_manager_install: true 15 | 16 | virt_manager_packages: 17 | - virt-manager 18 | 19 | -------------------------------------------------------------------------------- /roles/config-linux-desktop/config-gnome/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install, configure and enable Gnome" 4 | include_tasks: "{{ distro_file }}" 5 | with_first_found: 6 | - files: 7 | - gnome-{{ ansible_distribution }}.yml 8 | skip: true 9 | loop_control: 10 | loop_var: distro_file 11 | when: 12 | - gnome_install|default(False) 13 | 14 | -------------------------------------------------------------------------------- /playbooks/manage-jira/README.md: -------------------------------------------------------------------------------- 1 | ## Jira Project Playbook 2 | This playbook is used to automate the creation of project on Jira. 3 | 4 | ### Example 5 | Please refer to the [roles](../../roles/manage-jira/README.md) directory for information regarding the variables required to run this playbook. 6 | 7 | ### Running the playbook 8 | `$ ansible-playbook -i inventory playbook.yaml` 9 | -------------------------------------------------------------------------------- /roles/ansible/prep-for-ansible/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Force gather facts - an error is normal" 4 | setup: 5 | check_mode: no 6 | ignore_errors: True 7 | register: facts 8 | 9 | - name: "Install python2 and dnf stuff to allow for Ansible operation" 10 | raw: dnf -y install python-dnf libselinux-python 11 | when: 12 | - facts is failed 13 | 14 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp/tasks/update_tower_inventory.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Add or replace group_vars in the Tower Installer" 4 | lineinfile: 5 | path: "{{ ansible_tower_dir }}/group_vars/all" 6 | regexp: "^{{ item.key }}:.*$" 7 | line: "{{ item.key }}: {{ item.value }}" 8 | loop: "{{ lookup('dict', tower_vars_overrides) }}" 9 | 10 | -------------------------------------------------------------------------------- /roles/config-linux-desktop/config-mate/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Install, configure and enable MATE Desktop" 4 | include_tasks: "{{ distro_file }}" 5 | with_first_found: 6 | - files: 7 | - mate-{{ ansible_distribution }}.yml 8 | skip: true 9 | loop_control: 10 | loop_var: distro_file 11 | when: 12 | - mate_install|default(False) 13 | 14 | -------------------------------------------------------------------------------- /roles/config-nexus/files/nist-proxy-repos.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nist-proxy-repos", 3 | "type": "groovy", 4 | "content": "import org.sonatype.nexus.blobstore.api.BlobStoreManager; if ( !repository.repositoryManager.exists( 'nist-proxy-repos' ) ) { repository.createRawProxy( 'nist-proxy-repos', 'https://nvd.nist.gov/feeds/', BlobStoreManager.DEFAULT_BLOBSTORE_NAME);}" 5 | } 6 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/tasks/restart_named.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Check current state of 'named' 4 | shell: systemctl status named 5 | register: current_service_state 6 | ignore_errors: true 7 | 8 | - name: Restart service if already running 9 | service: 10 | name: named 11 | state: restarted 12 | when: 13 | - current_service_state.rc == 0 14 | -------------------------------------------------------------------------------- /playbooks/manage-identities/manage-local-user-access.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Update local access for account:{{ user_name }}' 4 | hosts: all 5 | roles: 6 | - role: identity-management/manage-local-user-password 7 | - role: identity-management/manage-local-user-ssh-authkeys 8 | - role: manage-sshd-config 9 | tags: 10 | - manage-local-user-access 11 | 12 | -------------------------------------------------------------------------------- /roles/ansible/tower/config-ansible-tower-ocp-ssh/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Add SSH keys to OCP as secrets and mount as volumes 4 | include_tasks: ocp-process-ssh-key.yml 5 | loop: "{{ ocp_ssh_private_keys }}" 6 | loop_control: 7 | loop_var: ssh_key 8 | when: 9 | - ocp_ssh_private_keys is defined 10 | - (ocp_ssh_private_keys | type_debug) == 'list' 11 | -------------------------------------------------------------------------------- /roles/config-rh-sso/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | rh_sso_host: "{{ ansible_default_ipv4.address }}" 4 | rh_sso_protocol: https 5 | rh_sso_port: 8443 6 | rh_sso_port_list: 7 | - 8443/tcp 8 | - 9990/tcp 9 | 10 | client_vars: 11 | authenticator_type_opts: 12 | - client-secret 13 | - client-jwt 14 | protocol_opts: 15 | - openid-connect 16 | - saml 17 | 18 | -------------------------------------------------------------------------------- /roles/certs/idm-host-cert/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: "idm-login.yml" 4 | 5 | - import_tasks: "register-host.yml" 6 | 7 | - import_tasks: "create-host-cert.yml" 8 | 9 | - import_tasks: "retrieve-ca-cert.yml" 10 | 11 | - import_tasks: "create-directories.yml" 12 | 13 | - import_tasks: "write-certs-to-file.yml" 14 | 15 | - import_tasks: "print-certs.yml" 16 | 17 | -------------------------------------------------------------------------------- /roles/config-packages/tasks/rhelpackages.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Remove Software packages/tools using yum." 4 | yum: 5 | name: "{{ list_of_packages_to_remove | default([]) }}" 6 | state: absent 7 | 8 | - name: 'Install additional Software packages/tools using yum.' 9 | yum: 10 | name: '{{ list_of_packages_to_install | default([]) }}' 11 | state: latest 12 | 13 | -------------------------------------------------------------------------------- /roles/config-routes/tasks/route.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Configure route for the specific interface" 4 | template: 5 | src: route.j2 6 | dest: /etc/sysconfig/network-scripts/route-{{ route.device }} 7 | with_items: 8 | - '{{ routes }}' 9 | loop_control: 10 | loop_var: route 11 | when: 12 | - routes is defined 13 | notify: 'Notify about Network reload' 14 | -------------------------------------------------------------------------------- /roles/dns/manage-dns-zones-bind/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | named_processing: false 4 | 5 | default_ttl: 300 6 | 7 | bind_user: named 8 | bind_group: named 9 | 10 | runtime_config_location: "/var/named" 11 | zone_files_location: "{{ runtime_config_location }}/static" 12 | 13 | default_recursion: false 14 | dnssec_keygen_size: 256 15 | dnssec_keygen_algorithm: HMAC-SHA256 16 | -------------------------------------------------------------------------------- /roles/manage-confluence-space/tests/vars/vars_atlassian: -------------------------------------------------------------------------------- 1 | --- 2 | atlassian: 3 | username: user@example.com 4 | password: YourPassword123 5 | url: https://example-test.atlassian.net 6 | 7 | confluence: 8 | source: 9 | key: TEMP 10 | 11 | destination: 12 | key: TEMP2 13 | name: Example Test Wiki 2 14 | description: Followup Confluence Testing 15 | -------------------------------------------------------------------------------- /roles/osp/admin-nova-flavor/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Create the flavor" 4 | os_nova_flavor: 5 | cloud: "{{ item.cloud | default(osp_default_cloud) | default(omit) }}" 6 | vcpus: "{{ item.vcpus }}" 7 | ram: "{{ item.ram }}" 8 | disk: "{{ item.disk }}" 9 | name: "{{ item.name }}" 10 | with_items: 11 | - "{{ osp_custom_flavors | default([]) }}" 12 | -------------------------------------------------------------------------------- /inventory/dns-server/hosts: -------------------------------------------------------------------------------- 1 | 2 | # 'osp-provisioner' is needed by the OSP related playbooks to provision the OSP instances 3 | [osp-provisioner] 4 | localhost 5 | 6 | [dns-server] 7 | 8 | # 'osp_instances' is needed by the OSP related playbooks to perform the provisioning of the OSP instances 9 | [osp_instances:children] 10 | dns-server 11 | 12 | [rhsm_hosts:children] 13 | dns-server 14 | -------------------------------------------------------------------------------- /roles/aws/create-instance/tasks/getvpc.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Gather VPC facts 3 | ec2_vpc_net_facts: 4 | filters: 5 | tag:Name: "{{ vpc_name }}" 6 | region: "{{ aws_region }}" 7 | register: vpc 8 | 9 | - name: Gather Subnet facts 10 | ec2_vpc_subnet_facts: 11 | filters: 12 | tag:Name: "{{ vpc_name }}" 13 | region: "{{ aws_region }}" 14 | register: sub 15 | -------------------------------------------------------------------------------- /roles/aws/delete-instance/tasks/getvpc.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Gather VPC facts 3 | ec2_vpc_net_facts: 4 | filters: 5 | tag:Name: "{{ vpc_name }}" 6 | region: "{{ aws_region }}" 7 | register: vpc 8 | 9 | - name: Gather Subnet facts 10 | ec2_vpc_subnet_facts: 11 | filters: 12 | tag:Name: "{{ vpc_name }}" 13 | region: "{{ aws_region }}" 14 | register: sub 15 | -------------------------------------------------------------------------------- /roles/config-vnc-server/files/xstartup-xfce: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -r /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n 4 | export LANG 5 | export SYSFONT 6 | vncconfig -iconic & 7 | unset DBUS_SESSION_BUS_ADDRESS 8 | 9 | [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources 10 | xsetroot -solid grey 11 | xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & 12 | startxfce4 & 13 | 14 | -------------------------------------------------------------------------------- /roles/identity-management/htpasswd-from-dict/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - hosts: localhost 3 | remote_user: root 4 | roles: 5 | - identity-management/htpasswd-from-dict 6 | vars: 7 | htpasswd_users: 8 | - username: user1 9 | password: password1 10 | - username: user2 11 | password: password2 12 | htpasswd_output_path: /tmp/ansible-test/htpasswd 13 | -------------------------------------------------------------------------------- /playbooks/osp/install-osp-cluster.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_playbook: ../infra-hosts.yml 4 | 5 | - hosts: infra_osp_hosts 6 | roles: 7 | - { role: config-software-src, when: '"controller" in osp_roles' } 8 | 9 | - hosts: infra_osp_hosts 10 | roles: 11 | - role: osp/packstack-install 12 | - role: osp/packstack-post 13 | 14 | - import_playbook: update-osp-cluster-admin.yml 15 | 16 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-organizations/templates/galaxy_credential.j2: -------------------------------------------------------------------------------- 1 | { 2 | "name": "{{ galaxy_credential.name }}", 3 | "description": "{{ galaxy_credential.description | default('') }}", 4 | "organization": {{ organization_id | default('') }}, 5 | "credential_type": {{ galaxy_credential_type_id | default('') }}, 6 | "inputs": {{ galaxy_credential.inputs | default({}) | to_json }} 7 | } 8 | -------------------------------------------------------------------------------- /roles/config-vnc-server/files/SELinuxVNC.te: -------------------------------------------------------------------------------- 1 | 2 | module SELinuxVNC 1.0; 3 | 4 | require { 5 | type nfs_t; 6 | type vnc_session_t; 7 | class dir { add_name search write }; 8 | class file { create open write }; 9 | } 10 | 11 | #============= vnc_session_t ============== 12 | allow vnc_session_t nfs_t:dir { add_name search write }; 13 | allow vnc_session_t nfs_t:file { create open write }; 14 | -------------------------------------------------------------------------------- /roles/osp/admin-project/tasks/tenant-roles.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Assign role for project {{ project.name }}" 4 | shell: > 5 | openstack role add \ 6 | --user "{{ item.0.user }}" \ 7 | --user-domain "{{ item.0.user_domain | default('') }}" \ 8 | --project "{{ project.name }}" \ 9 | "{{ item.1 }}" 10 | with_subelements: 11 | - "{{ project.members }}" 12 | - roles 13 | -------------------------------------------------------------------------------- /playbooks/manage-confluence-space/README.md: -------------------------------------------------------------------------------- 1 | ## Confluence Space Playbook 2 | This playbook is used to copy confluence space from one location to another. 3 | 4 | ### Example 5 | Please refer to the [roles](../../roles/manage-confluence-space/README.md) directory for information regarding the variables required to run this playbook. 6 | 7 | ### Running the playbook 8 | `$ ansible-playbook -i invetory playbook.yaml` 9 | -------------------------------------------------------------------------------- /roles/certs/idm-host-cert/tasks/idm-login.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Login and create a session with the IdM" 4 | uri: 5 | url: "https://{{ idm_fqdn }}/ipa/session/login_password" 6 | method: POST 7 | body: "user={{ idm_user }}&password={{ idm_password }}" 8 | validate_certs: no 9 | headers: 10 | Content-Type: "application/x-www-form-urlencoded" 11 | register: idm_session 12 | 13 | -------------------------------------------------------------------------------- /roles/config-idm-server/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # defaults file for idm 3 | 4 | idm_principal: admin 5 | 6 | # TODO: Update to follow the instructions here: 7 | # https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html-single/installing_identity_management/index#installing-packages-required-for-an-idm-server_preparing-the-system-for-ipa-server-installation 8 | idm_rpms: [] 9 | 10 | -------------------------------------------------------------------------------- /roles/config-selinux/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Configure SELinux" 4 | selinux: 5 | state: "{{ target_state | default('enforcing') }}" 6 | policy: "{{ (target_state == 'disabled') | ternary(omit, target_policy) }}" 7 | 8 | - name: "Relabel SElinux contexts" 9 | command: "restorecon -r {{ selinux_relabel_dir | default('/') }}" 10 | when: selinux_relabel | default('no') | bool 11 | 12 | -------------------------------------------------------------------------------- /roles/keepalived/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'reload sysctl' 4 | command: sysctl -p 5 | 6 | 7 | - name: 'start and enable keepalived services' 8 | service: 9 | name: '{{ item }}' 10 | enabled: yes 11 | state: started 12 | with_items: 13 | - keepalived 14 | 15 | 16 | - name: 'restart keepalived' 17 | service: 18 | name: keepalived 19 | state: restarted 20 | 21 | -------------------------------------------------------------------------------- /roles/manage-confluence-space/templates/space.j2: -------------------------------------------------------------------------------- 1 | { 2 | "key": "{{ atlassian.confluence.destination.key }}", 3 | "name": "{{ atlassian.confluence.destination.name }}", 4 | "description": { 5 | "plain": { 6 | "value": "{{ atlassian.confluence.destination.description }}", 7 | "representation": "plain" 8 | } 9 | }, 10 | "metadata": {} 11 | } 12 | 13 | -------------------------------------------------------------------------------- /roles/osp/admin-nova-service/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Disable nova compute services on selected hosts" 4 | shell: > 5 | source {{ admin_keystonerc_file }}; 6 | openstack compute service set --disable {{ item }} nova-compute 7 | with_items: 8 | - "{{ ansible_play_hosts }}" 9 | when: 10 | - hostvars[item].nova_service is defined 11 | - hostvars[item].nova_service == 'disabled' 12 | -------------------------------------------------------------------------------- /roles/config-docker-compose/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Make sure dependencies are met" 4 | vars: 5 | docker_install: True 6 | include_role: 7 | name: config-docker 8 | when: 9 | - docker_compose_install|default(False) 10 | 11 | - name: "Install, configure and enable Docker-compose" 12 | import_tasks: docker-compose.yml 13 | when: 14 | - docker_compose_install|default(False) 15 | -------------------------------------------------------------------------------- /roles/config-mysql/handlers/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Restart MySQL Service 4 | systemd: 5 | name: "{{ mysql_name }}" 6 | enabled: yes 7 | state: restarted 8 | daemon_reload: yes 9 | 10 | - name: restart firewalld 11 | service: 12 | name: firewalld 13 | state: restarted 14 | 15 | - name: restart iptables 16 | service: 17 | name: iptables 18 | state: restarted 19 | 20 | -------------------------------------------------------------------------------- /roles/config-packages/tasks/packages.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Remove Software packages/tools using package module." 4 | package: 5 | name: "{{ list_of_packages_to_remove | default([]) }}" 6 | state: absent 7 | 8 | - name: "Install additional Software packages/tools using package module." 9 | package: 10 | name: "{{ list_of_packages_to_install | default([]) }}" 11 | state: installed 12 | 13 | -------------------------------------------------------------------------------- /roles/osp/packstack-install/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Prepare the OSP hosts" 4 | import_tasks: host-prep.yml 5 | 6 | - import_tasks: packstack-install-prep.yml 7 | run_once: true 8 | delegate_to: "{{ ansible_play_hosts | first }}" 9 | 10 | - import_tasks: sync-keys.yml 11 | 12 | - import_tasks: packstack-install.yml 13 | run_once: true 14 | delegate_to: "{{ ansible_play_hosts | first }}" 15 | -------------------------------------------------------------------------------- /roles/identity-management/manage-idm-identities/tests/create_idm.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # This test covers the full feature set provided by the role 3 | 4 | - name: Create Test Identities 5 | hosts: ipa 6 | 7 | vars_files: 8 | - vars/idm.json 9 | 10 | vars: 11 | ipa_admin_user: admin 12 | ipa_admin_password: test123 13 | ipa_host: idm.example.com 14 | 15 | roles: 16 | - manage-idm-identities 17 | -------------------------------------------------------------------------------- /roles/osp/admin-user/tasks/roles.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Grant access for account {{ user.name }}" 4 | shell: > 5 | openstack role add \ 6 | --user "{{ user.name }}" \ 7 | --user-domain "{{ user.domain }}" \ 8 | --project "{{ item.0.name }}" \ 9 | --project-domain "{{ item.0.domain }}" \ 10 | "{{ item.1 }}" 11 | with_subelements: 12 | - "{{ user.projects }}" 13 | - roles 14 | -------------------------------------------------------------------------------- /roles/config-quay-builder/templates/quay-builder.j2: -------------------------------------------------------------------------------- 1 | QUAY_BUILDER_IMAGE={{ quay_builder_image }} 2 | QUAY_BUILDER_HOST_CONFIG_DIR={{ quay_builder_config_dir }} 3 | QUAY_ADDRESS={{ quay_enterprise_hostname }} 4 | {% if quay_builder_ssl_trust_configure %} 5 | QUAY_BUILDER_SSL_TRUST_HOST_FILE={{ quay_builder_ssl_trust_host_file }} 6 | QUAY_BUILDER_SSL_TRUST_CONTAINER_FILE={{ quay_builder_ssl_trust_container_file }} 7 | {% endif %} 8 | -------------------------------------------------------------------------------- /roles/manage-sshd-config/test/inventory/group_vars/all.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # needed to setup for the test conditions 3 | user_name: root 4 | authorized_keyfile: "{{ inventory_dir }}/../authorized_keys" 5 | key_url: "{{ lookup('file', authorized_keyfile) }}" 6 | 7 | reset_keyfile: yes 8 | clear_text_password: test1234 9 | 10 | #needed to test the role 11 | update_sshd_config: 12 | PermitRootLogin: "without-password" 13 | 14 | -------------------------------------------------------------------------------- /roles/osp/admin-image/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Create the image" 4 | os_image: 5 | cloud: "{{ item.cloud | default(osp_default_cloud) | default(omit) }}" 6 | filename: "{{ item.filename }}" 7 | disk_format: "{{ item.disk_format | default(omit) }}" 8 | is_public: "{{ item.is_public | default(omit) }}" 9 | name: "{{ item.name }}" 10 | with_items: 11 | - "{{ osp_images | default([]) }}" 12 | -------------------------------------------------------------------------------- /roles/config-mysql/templates/mysql.j2: -------------------------------------------------------------------------------- 1 | MYSQL_IMAGE={{ mysql_image }} 2 | MYSQL_USER={{ mysql_username }} 3 | MYSQL_PASSWORD={{ mysql_password }} 4 | MYSQL_ROOT_PASSWORD={{ mysql_root_password }} 5 | MYSQL_DATABASE={{ mysql_database }} 6 | MYSQL_CONTAINER_STORAGE_DIR={{ mysql_container_storage_dir }} 7 | MYSQL_HOST_STORAGE_DIR={{ mysql_storage_dir }} 8 | MYSQL_HOST_PORT={{ mysql_host_port }} 9 | MYSQL_CONTAINER_PORT={{ mysql_container_port }} -------------------------------------------------------------------------------- /roles/load-balancers/manage-haproxy/templates/lb_http_stats.j2: -------------------------------------------------------------------------------- 1 | 2 | frontend lb_stats_fe 3 | bind {{ page_config.host_vip | default('*') }}:{{ page_config.host_port }} 4 | 5 | default_backend lb_stats_be 6 | 7 | 8 | backend lb_stats_be 9 | mode http 10 | stats enable 11 | stats uri /stats 12 | stats realm Haproxy\ Statistics 13 | stats auth {{ page_config.username }}:{{ page_config.password }} 14 | -------------------------------------------------------------------------------- /roles/dns/config-dns-server-bind/files/named.conf: -------------------------------------------------------------------------------- 1 | // This is the primary configuration file for the BIND DNS server named. 2 | // 3 | 4 | include "/etc/named/named.conf.options"; 5 | 6 | include "/etc/named/named.conf.logging"; 7 | 8 | include "/etc/named/named.conf.acl"; 9 | 10 | include "/etc/named/named.conf.controls"; 11 | 12 | include "/etc/named/named.conf.tsig-keys"; 13 | 14 | include "/etc/named/named.conf.view"; 15 | -------------------------------------------------------------------------------- /roles/manage-sshd-config/test/id_rsa_user1.pub: -------------------------------------------------------------------------------- 1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDURd2gSSwnr41hcF3tlUSx17FJQHBB9a2pFj7qnDkSEYO6r7EVBBUihSXLovwSUqLNz08lJ+4ymd4eM/m9sKkMb0UgsGuTgxpRooIgawcmPOzCi5x8FLjAeI1jmlOpvKdqXK/3bILQUXSFsWXIklso9olBQ0VOPv+RuYVUcPzEhYjSIx8pEg4tmqWU6zDNt4LkYrH7CMwifkWw+Dh6fo+0J7kOotwFxCzqttboVYii9iEazSBNnm6RFSj/6MLsOKdYrqFLiJoVCJK0XSZo+oHHKjucK8G1ZkAOx97g7WDszz9XLj3GSKis+CJpjXnBtgBijV12oYWXs1/jlzCON8hT user1@test.lab 2 | -------------------------------------------------------------------------------- /roles/manage-sshd-config/test/id_rsa_user2.pub: -------------------------------------------------------------------------------- 1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDWxIwWsWIxrG/yCSUXTp9zzumP9+IbUnefOjP+ggmkDbHOfIzGJCjI93ksNS+V3ekdgAWtUAMT+zoAcYmjAiFj4HanIispo1TCP7LsMIIGku3maoJduvAnBRWTMqaOFspmA1ndek7fzIRTM+tCr7G56TU/S00RjCvqndtrCnxUTqJ2A2/9h5dgI/5JrN8p+H+0qLCLObsdooYI8u5LtTykPWersk/MBnEDkKTeCFHYO7pAOfY65fZCuOLHKn7mccvR80nNFr9RTdtrxAIdo+9fd+V4HQF2qpynxXnXPJHo/RH1Mx/+2Lk5nDJ7DooDtZ7xXuUoS3K848RQaxJ+4kOR user2@test.lab 2 | -------------------------------------------------------------------------------- /playbooks/infra-virt-hosts.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: 'Configure libvirt on the infrastructure hosts' 4 | hosts: infra_virt_hosts 5 | roles: 6 | - role: config-libvirt 7 | tags: 8 | - configure_infra_hosts_libvirt 9 | 10 | - name: 'Configure the software source to ensure it is available for use' 11 | hosts: infra_virt_hosts 12 | roles: 13 | - role: config-software-src 14 | tags: 15 | - configure_software_src 16 | 17 | -------------------------------------------------------------------------------- /playbooks/manage-identities/manage-identities.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Manage IPA/IdM Identities" 4 | import_playbook: manage-idm-identities.yml 5 | 6 | - name: "Manage Atlassian Identities" 7 | import_playbook: manage-atlassian-identities.yml 8 | 9 | - name: "Manage AWS Identities" 10 | import_playbook: manage-aws-identities.yml 11 | 12 | - name: "Manage RH SSO Identities" 13 | import_playbook: manage-rh-sso-identities.yml 14 | -------------------------------------------------------------------------------- /playbooks/minishift-remote/configure-minishift-remote.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Configure Minishift Remote Machine 4 | hosts: minishift_remote 5 | tasks: 6 | - name: Configure prerequisites 7 | import_tasks: prerequisites.yml 8 | when: (install_prerequisites | bool) | default(False) 9 | 10 | - name: Setup Remote Machine to Host Minishift 11 | import_role: 12 | name: config-minishift-remote 13 | 14 | -------------------------------------------------------------------------------- /roles/aws/create-instance/tasks/securitygroup.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Create Security Groups 3 | ec2_group: 4 | name: "{{ item.name }}" 5 | description: "{{ item.description }}" 6 | purge_rules: false 7 | purge_rules_egress: false 8 | region: "{{ aws_region }}" 9 | state: present 10 | vpc_id: "{{ vpc.vpcs[0].vpc_id }}" 11 | rules: "{{ item.rules }}" 12 | with_items: "{{ security_groups | default([]) }}" 13 | -------------------------------------------------------------------------------- /roles/ansible/tower/manage-projects/tests/inventory/group_vars/tower.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | ansible_tower: 4 | admin_password: "admin01" 5 | projects: 6 | - name: "Project1" 7 | description: "My Project" 8 | scm_type: "git" 9 | scm_url: "https://github.com/redhat-cop/infra-ansible.git" 10 | scm_branch: "master" 11 | scm_credential_name: "my-credential" 12 | scm_update_on_launch: true 13 | organization: "Default" 14 | -------------------------------------------------------------------------------- /roles/aws/create-instance/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - import_tasks: getcreds.yml 4 | - import_tasks: getvpc.yml 5 | - import_tasks: securitygroup.yml 6 | - import_tasks: instance.yml 7 | - import_tasks: dns.yml 8 | 9 | - name: Wait for instance to be ready 10 | wait_for: 11 | port: 22 12 | host: "{{ aws_instance.hostname_prefix }}.{{ vpc_name }}.{{ dns_domain }}" 13 | delay: 20 14 | timeout: 60 15 | connection: local 16 | -------------------------------------------------------------------------------- /roles/config-satellite/tasks/activation_keys.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Get current subscriptions" 4 | shell: hammer -u "{{ satellite_username }}" -p "{{ satellite_password }}" --output=yaml subscription list --organization "{{ satellite_organization }}" 5 | register: subids 6 | 7 | - include_tasks: process-one-activation-key.yml 8 | loop: "{{ satellite_activation_keys }}" 9 | loop_control: 10 | loop_var: activation_key 11 | 12 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-password/filter_plugins/encrypt_password.py: -------------------------------------------------------------------------------- 1 | import crypt 2 | 3 | def encrypt_password(entry): 4 | 5 | return crypt.crypt(entry, crypt.mksalt(crypt.METHOD_SHA512)) 6 | 7 | 8 | class FilterModule(object): 9 | ''' A filter to encrypt a clear text password with SHA512''' 10 | def filters(self): 11 | return { 12 | 'encrypt_password': encrypt_password 13 | } 14 | -------------------------------------------------------------------------------- /roles/osp/packstack-install/tasks/host-prep.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Disable firewalld and NetworkManager" 4 | service: 5 | name: "{{ item }}" 6 | state: stopped 7 | enabled: no 8 | with_items: 9 | - 'NetworkManager' 10 | - 'firewalld' 11 | 12 | - name: "Enable and start 'network' service" 13 | service: 14 | name: "{{ item }}" 15 | state: started 16 | enabled: yes 17 | with_items: 18 | - 'network' 19 | -------------------------------------------------------------------------------- /roles/config-quay-enterprise/tasks/configure_systemd.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Configure systemd environment files 4 | template: 5 | src: "quay.j2" 6 | dest: "{{ systemd_environmentfile_dir}}/{{ quay_name }}" 7 | notify: "Restart quay service" 8 | 9 | - name: Configure systemd unit files 10 | template: 11 | src: "quay.service.j2" 12 | dest: "{{ systemd_service_dir}}/{{ quay_service }}" 13 | notify: "Restart quay service" 14 | -------------------------------------------------------------------------------- /roles/identity-management/list-users-by-group/tests/README.md: -------------------------------------------------------------------------------- 1 | # Test execution 2 | 3 | ## Test #1 4 | 5 | ``` 6 | ansible-playbook -i inventory test.yml -e 'target_group=group1' 7 | ``` 8 | 9 | This should return a list of `user1`, `user2`, `user3` 10 | 11 | 12 | ## Test #2 13 | 14 | ``` 15 | ansible-playbook -i inventory test.yml -e 'target_group=group2' 16 | ``` 17 | 18 | This should return a list of `user2`, `user4`, `user5` 19 | 20 | -------------------------------------------------------------------------------- /roles/notifications/md-to-html/tasks/convert_md_to_html.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Convert markdown(md) to HTML" 4 | shell: > 5 | echo "{{ markdown_content }}" | pandoc -f markdown -t html 6 | register: result 7 | 8 | - name: "Store away converted Markdown(md) in a dict" 9 | set_fact: 10 | md_to_html: 11 | html_body_message: "{{ result.stdout }}" 12 | html_message: "{{ result.stdout }}" 13 | 14 | -------------------------------------------------------------------------------- /roles/setup-slack/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Initialise channels name to id mapping 3 | set_fact: 4 | channel_mapping: {} 5 | 6 | - name: Create channels 7 | include_tasks: create_channels.yml 8 | with_items: "{{ slack_channels }}" 9 | loop_control: 10 | loop_var: channel 11 | 12 | - name: Invite users 13 | include_tasks: invite_users.yml 14 | with_items: "{{ slack_users }}" 15 | loop_control: 16 | loop_var: user 17 | -------------------------------------------------------------------------------- /roles/config-docker/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - block: 4 | - name: "Install, configure and enable Docker" 5 | import_tasks: docker.yml 6 | 7 | - name: "Configure docker mtu" 8 | import_tasks: mtu.yml 9 | 10 | - name: "Configure cgroups v1 if requested" 11 | import_tasks: kernel_cgroups_v1.yml 12 | when: 13 | - kernel_cgroups_v1|default(False) 14 | when: 15 | - docker_install|default(False) 16 | 17 | -------------------------------------------------------------------------------- /roles/identity-management/manage-atlassian-identities/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | 4 | - name: Process Atlassian Identitie(s) if target is specified 5 | block: 6 | 7 | - include_tasks: create_users.yml 8 | - include_tasks: create_groups.yml 9 | 10 | - include_tasks: delete_users.yml 11 | - include_tasks: delete_groups.yml 12 | 13 | when: 14 | - identities.targets is undefined or 15 | 'atlassian' in identities.targets 16 | -------------------------------------------------------------------------------- /roles/add-sonar-plugin/tests/test.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: Install C++ Community Plugin For SonarQube 4 | hosts: ocp-sonarqube 5 | 6 | roles: 7 | - role: add-sonar-plugin 8 | vars: 9 | plugin_url: https://github.com/SonarOpenCommunity/sonar-cxx/releases/download/cxx-1.2.2/sonar-cxx-plugin-1.2.2.1653.jar 10 | install_location: /opt/sonarqube/extensions/plugins 11 | namespace: deven-role-test 12 | pod_prefix: sonarqube 13 | -------------------------------------------------------------------------------- /roles/config-timezone/tests/molecule/default/converge.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Converge 3 | hosts: node 4 | roles: 5 | - role: config-timezone 6 | tasks: 7 | - name: Get Timezone 8 | shell: 9 | cmd: timedatectl show -p Timezone 10 | register: tz_data 11 | - name: Verify system timezone matches inventory timezone 12 | assert: 13 | that: 14 | - timezone == tz_data.stdout | regex_replace('Timezone=') 15 | -------------------------------------------------------------------------------- /roles/identity-management/manage-aws-identities/tasks/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - name: Process all tasks 3 | block: 4 | - include_tasks: create_users.yml 5 | - include_tasks: create_policies.yml 6 | - include_tasks: create_groups.yml 7 | - include_tasks: delete_users.yml 8 | - include_tasks: delete_policies.yml 9 | - include_tasks: delete_groups.yml 10 | 11 | when: 12 | - identities.targets is undefined or 'aws' in identities.targets 13 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-ssh-authkeys/test/id_rsa_user1.pub: -------------------------------------------------------------------------------- 1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDURd2gSSwnr41hcF3tlUSx17FJQHBB9a2pFj7qnDkSEYO6r7EVBBUihSXLovwSUqLNz08lJ+4ymd4eM/m9sKkMb0UgsGuTgxpRooIgawcmPOzCi5x8FLjAeI1jmlOpvKdqXK/3bILQUXSFsWXIklso9olBQ0VOPv+RuYVUcPzEhYjSIx8pEg4tmqWU6zDNt4LkYrH7CMwifkWw+Dh6fo+0J7kOotwFxCzqttboVYii9iEazSBNnm6RFSj/6MLsOKdYrqFLiJoVCJK0XSZo+oHHKjucK8G1ZkAOx97g7WDszz9XLj3GSKis+CJpjXnBtgBijV12oYWXs1/jlzCON8hT user1@test.lab 2 | -------------------------------------------------------------------------------- /roles/identity-management/manage-local-user-ssh-authkeys/test/id_rsa_user2.pub: -------------------------------------------------------------------------------- 1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDWxIwWsWIxrG/yCSUXTp9zzumP9+IbUnefOjP+ggmkDbHOfIzGJCjI93ksNS+V3ekdgAWtUAMT+zoAcYmjAiFj4HanIispo1TCP7LsMIIGku3maoJduvAnBRWTMqaOFspmA1ndek7fzIRTM+tCr7G56TU/S00RjCvqndtrCnxUTqJ2A2/9h5dgI/5JrN8p+H+0qLCLObsdooYI8u5LtTykPWersk/MBnEDkKTeCFHYO7pAOfY65fZCuOLHKn7mccvR80nNFr9RTdtrxAIdo+9fd+V4HQF2qpynxXnXPJHo/RH1Mx/+2Lk5nDJ7DooDtZ7xXuUoS3K848RQaxJ+4kOR user2@test.lab 2 | -------------------------------------------------------------------------------- /roles/identity-management/manage-user-password/defaults/main.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | generate_password_length: '16' 4 | 5 | # The char set can be one of the following: 6 | # - ascii_lowercase 7 | # - ascii_uppercase 8 | # - digits 9 | # - hexdigits 10 | # - octdigits 11 | # - printable 12 | # - punctuation 13 | # - whitespace 14 | # 15 | # ... or just a string of characters to use 16 | # 17 | generate_password_char_sets: 'ascii_letters,digits,!#%+,-./:=?_|' 18 | 19 | -------------------------------------------------------------------------------- /roles/config-repo-server/tasks/mount-iso.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - name: "Ensure the ISO mount dir exist" 4 | file: 5 | path: "{{ item.iso_file_target }}" 6 | state: directory 7 | with_items: 8 | - "{{ hosted_isos }}" 9 | 10 | - name: "Mount the ISOs" 11 | mount: 12 | path: "{{ item.iso_file_target }}" 13 | src: "{{ item.iso_file_path }}" 14 | fstype: iso9660 15 | state: mounted 16 | with_items: 17 | - "{{ hosted_isos }}" 18 | 19 | --------------------------------------------------------------------------------