This repository hosts the cloud.azure_ops
Ansible Collection.
The collection includes a variety of Ansible roles and playbook to help automate the management of resources on Microsoft Azure.
This collection has been tested against following Ansible versions: >=2.13.0.
Click on the name of a plugin or module to view that content's documentation:
Name | Description |
---|---|
cloud.azure_ops.azure_load_balancer_with_public_ip | A role to manage Azure Load Balancer. |
cloud.azure_ops.azure_manage_postgresql | A role to manage Azure PostGreSQL Database. |
cloud.azure_ops.azure_manage_network_interface | A role to manage Azure Network Interface. |
cloud.azure_ops.azure_manage_networking_stack | A role to manage Azure Networking Stack. |
cloud.azure_ops.azure_manage_resource_group | A role to manage Azure Resource Group. |
cloud.azure_ops.azure_manage_security_group | A role to manage Azure Security Group. |
cloud.azure_ops.azure_virtual_machine_with_public_ip | A role to manage Azure Virtual Machine. |
Name | Description |
---|---|
cloud.azure_ops.webapp | A playbook to deploy a web application on azure using virtual machines. |
cloud.azure_ops.webapp_container | A playbook to deploy a web application on azure using containers. |
cloud.azure_ops.vmss_migrate | A playbook to migrate virtual machines of a web application from one azure region to another region. |
cloud.azure_ops.validate_deployment | A playbook to validate successful deployment of web application URL. |
To consume this Validated Content from Automation Hub, please ensure that you add the following lines to your ansible.cfg file.
[galaxy]
server_list = automation_hub
[galaxy_server.automation_hub]
url=https://cloud.redhat.com/api/automation-hub/
auth_url=https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token
token=<SuperSecretToken>
The token can be obtained from the Automation Hub Web UI.
Once the above steps are done, you can run the following command to install the collection.
ansible-galaxy collection install cloud.azure_ops
Once installed, you can reference the cloud.azure_ops collection content by its fully qualified collection name (FQCN), for example:
- hosts: all
tasks:
- name: Create load balancer
ansible.builtin.include_role:
name: cloud.azure_ops.azure_load_balancer_with_public_ip
vars:
operation: create
azure_resource_group: "{{ resource_group }}"
azure_load_balancer:
name: "{{ resource_group }}-lb"
- Ansible Using collections for more details.
We welcome community contributions to this collection. If you find problems, please open an issue or create a PR against this collection repository.
The project uses ansible-lint
and black
.
Assuming this repository is checked out in the proper structure,
e.g. collections_root/ansible_collections/cloud/azure_ops/
, run:
tox -e linters
Sanity and unit tests are run as normal:
ansible-test sanity
There are also integration tests in the molecule
directory which are meant to be run against an azure subscription.
az login
molecule test
This collection is tested using GitHub Actions. To know more about CI, refer to CI.md.
GNU General Public License v3.0 or later
See LICENCE to see the full text.