mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-05-07 05:42:50 +00:00
Additional DevTest Lab modules (#53091)
* [WIP] Additional DevTest Lab modules * updates * try global schedule again * dtl schedule * try full dtl schedule test * fixing schedule * fixed problem * another fix * fixed test * different time format * fixed absent state * test policy idempotence * more updates * updated devtestlabpolicy * fixed syntax * updated dtl policy test * updated image id * fixed test * fixed bug * fixed bugs and docs * fixed bug * + small cleanup * reenabled tests but disabled leaking tests * disabled test
This commit is contained in:
committed by
Matt Davis
parent
0aa472a110
commit
c431d18e28
@@ -1,6 +1,17 @@
|
||||
cloud/azure
|
||||
destructive
|
||||
shippable/azure/group2
|
||||
disabled
|
||||
azure_rm_devtestlabvirtualnetwork
|
||||
azure_rm_devtestlab_facts
|
||||
azure_rm_devtestlabarmtemplate
|
||||
azure_rm_devtestlabartifact
|
||||
azure_rm_devtestlabartifactsource_facts
|
||||
azure_rm_devtestlabartifactsource
|
||||
azure_rm_devtestlabcustomimage
|
||||
azure_rm_devtestlabpolicy
|
||||
azure_rm_devtestlabschedule
|
||||
azure_rm_devtestlabvirtualmachine_facts
|
||||
azure_rm_devtestlabvirtualmachine_facts
|
||||
azure_rm_devtestlabvirtualnetwork_facts
|
||||
azure_rm_devtestlabvirtualnetwork
|
||||
disabled
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
location: eastus
|
||||
storage_type: standard
|
||||
premium_data_disks: no
|
||||
register: output
|
||||
register: output_lab
|
||||
- name: Check if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
@@ -60,44 +60,168 @@
|
||||
that:
|
||||
- output.changed
|
||||
|
||||
- name: List DevTest Lab in a resource group
|
||||
azure_rm_devtestlab_facts:
|
||||
resource_group: "{{ resource_group }}"
|
||||
register: output_lab
|
||||
- name: Assert that facts are returned
|
||||
assert:
|
||||
that:
|
||||
- output_lab.changed == False
|
||||
- output_lab.labs[0]['id'] != None
|
||||
- output_lab.labs[0]['resource_group'] != None
|
||||
- output_lab.labs[0]['name'] != None
|
||||
- output_lab.labs[0]['location'] != None
|
||||
- output_lab.labs[0]['storage_type'] != None
|
||||
- output_lab.labs[0]['premium_data_disks'] != None
|
||||
- output_lab.labs[0]['provisioning_state'] != None
|
||||
- output_lab.labs[0]['vault_name'] != None
|
||||
|
||||
- name: Get DevTest Lab facts
|
||||
azure_rm_devtestlab_facts:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ lab_name }}"
|
||||
register: output
|
||||
register: output_lab
|
||||
- name: Assert that facts are returned
|
||||
assert:
|
||||
that:
|
||||
- output.changed == False
|
||||
- output.labs[0]['id'] != None
|
||||
- output.labs[0]['resource_group'] != None
|
||||
- output.labs[0]['name'] != None
|
||||
- output.labs[0]['location'] != None
|
||||
- output.labs[0]['storage_type'] != None
|
||||
- output.labs[0]['premium_data_disks'] != None
|
||||
- output.labs[0]['provisioning_state'] != None
|
||||
- output.labs[0]['artifacts_storage_account'] != None
|
||||
- output.labs[0]['default_premium_storage_account'] != None
|
||||
- output.labs[0]['default_storage_account'] != None
|
||||
- output.labs[0]['premium_data_disk_storage_account'] != None
|
||||
- output.labs[0]['vault_name'] != None
|
||||
- output_lab.changed == False
|
||||
- output_lab.labs[0]['id'] != None
|
||||
- output_lab.labs[0]['resource_group'] != None
|
||||
- output_lab.labs[0]['name'] != None
|
||||
- output_lab.labs[0]['location'] != None
|
||||
- output_lab.labs[0]['storage_type'] != None
|
||||
- output_lab.labs[0]['premium_data_disks'] != None
|
||||
- output_lab.labs[0]['provisioning_state'] != None
|
||||
- output_lab.labs[0]['artifacts_storage_account'] != None
|
||||
- output_lab.labs[0]['default_premium_storage_account'] != None
|
||||
- output_lab.labs[0]['default_storage_account'] != None
|
||||
- output_lab.labs[0]['premium_data_disk_storage_account'] != None
|
||||
- output_lab.labs[0]['vault_name'] != None
|
||||
|
||||
- name: List DevTest Lab in a resource group
|
||||
azure_rm_devtestlab_facts:
|
||||
# azure_rm_devtestlabpolicy
|
||||
- name: Create instance of DevTest Lab Policy
|
||||
azure_rm_devtestlabpolicy:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
policy_set_name: myDtlPolicySet
|
||||
name: myDtlPolicy
|
||||
fact_name: user_owned_lab_vm_count
|
||||
threshold: 5
|
||||
register: output
|
||||
- name: Assert that facts are returned
|
||||
- debug:
|
||||
var: output
|
||||
- name: Assert if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
- output.changed == False
|
||||
- output.labs[0]['id'] != None
|
||||
- output.labs[0]['resource_group'] != None
|
||||
- output.labs[0]['name'] != None
|
||||
- output.labs[0]['location'] != None
|
||||
- output.labs[0]['storage_type'] != None
|
||||
- output.labs[0]['premium_data_disks'] != None
|
||||
- output.labs[0]['provisioning_state'] != None
|
||||
- output.labs[0]['vault_name'] != None
|
||||
- output.changed
|
||||
|
||||
- name: Create instance of DevTest Lab Policy -- idempotent
|
||||
azure_rm_devtestlabpolicy:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
policy_set_name: myDtlPolicySet
|
||||
name: myDtlPolicy
|
||||
fact_name: user_owned_lab_vm_count
|
||||
threshold: 5
|
||||
register: output
|
||||
- debug:
|
||||
var: output
|
||||
- name: Assert if the change was not reported
|
||||
assert:
|
||||
that:
|
||||
- not output.changed
|
||||
|
||||
- name: Create instance of DevTest Lab Policy -- change value
|
||||
azure_rm_devtestlabpolicy:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
policy_set_name: myDtlPolicySet
|
||||
name: myDtlPolicy
|
||||
fact_name: user_owned_lab_vm_count
|
||||
threshold: 6
|
||||
register: output
|
||||
- debug:
|
||||
var: output
|
||||
- name: Assert if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
|
||||
- name: Delete instance of DevTest Lab Policy
|
||||
azure_rm_devtestlabpolicy:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
policy_set_name: myDtlPolicySet
|
||||
name: myDtlPolicy
|
||||
state: absent
|
||||
register: output
|
||||
- debug:
|
||||
var: output
|
||||
- name: Assert if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
|
||||
# azure_rm_devtestlabschedule
|
||||
- name: Create instance of DevTest Lab Schedule
|
||||
azure_rm_devtestlabschedule:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
name: lab_vms_shutdown
|
||||
time: "1030"
|
||||
time_zone_id: "UTC+12"
|
||||
register: output
|
||||
- debug:
|
||||
var: output
|
||||
- name: Assert if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
|
||||
- name: Update instance of DevTest Lab Schedule -- idempotent
|
||||
azure_rm_devtestlabschedule:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
name: lab_vms_shutdown
|
||||
time: "1030"
|
||||
time_zone_id: "UTC+12"
|
||||
register: output
|
||||
- debug:
|
||||
var: output
|
||||
- name: Assert if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
- not output.changed
|
||||
|
||||
- name: Update instance of DevTest Lab Schedule -- change time
|
||||
azure_rm_devtestlabschedule:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
name: lab_vms_shutdown
|
||||
time: "1130"
|
||||
time_zone_id: "UTC+12"
|
||||
register: output
|
||||
- debug:
|
||||
var: output
|
||||
- name: Assert if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
|
||||
- name: Delete instance of DevTest Lab Schedule
|
||||
azure_rm_devtestlabschedule:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
name: lab_vms_shutdown
|
||||
state: absent
|
||||
register: output
|
||||
- debug:
|
||||
var: output
|
||||
- name: Assert if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
|
||||
- name: Create instance of DevTest Labs virtual network
|
||||
azure_rm_devtestlabvirtualnetwork:
|
||||
@@ -261,11 +385,13 @@
|
||||
allow_claim: no
|
||||
expiration_date: "2029-02-22T01:49:12.117974Z"
|
||||
register: output
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Assert that change was registered
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Update instance of DTL Virtual Machine with same parameters
|
||||
azure_rm_devtestlabvirtualmachine:
|
||||
@@ -291,11 +417,13 @@
|
||||
allow_claim: no
|
||||
expiration_date: "2029-02-22T01:49:12.117974Z"
|
||||
register: output
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Assert that nothing has changed
|
||||
assert:
|
||||
that:
|
||||
- output.changed == false
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Update instance of DTL Virtual Machine - change notes
|
||||
azure_rm_devtestlabvirtualmachine:
|
||||
@@ -321,66 +449,70 @@
|
||||
allow_claim: no
|
||||
expiration_date: "2029-02-22T01:49:12.117974Z"
|
||||
register: output
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Assert that change was registered
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Get Facts of DTL Virtual Machine
|
||||
azure_rm_devtestlabvirtualmachine_facts:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
name: "{{ vm_name }}"
|
||||
register: output
|
||||
register: output_vm
|
||||
- name: Assert that facts are returned
|
||||
assert:
|
||||
that:
|
||||
- output.changed == False
|
||||
- output.virtualmachines[0]['id'] != None
|
||||
- output.virtualmachines[0]['resource_group'] != None
|
||||
- output.virtualmachines[0]['lab_name'] != None
|
||||
- output.virtualmachines[0]['name'] != None
|
||||
- output.virtualmachines[0]['compute_vm_id'] != None
|
||||
- output.virtualmachines[0]['compute_vm_resource_group'] != None
|
||||
- output.virtualmachines[0]['compute_vm_name'] != None
|
||||
- output.virtualmachines[0]['disallow_public_ip_address'] != None
|
||||
- output.virtualmachines[0]['expiration_date'] != None
|
||||
- output.virtualmachines[0]['fqdn'] != None
|
||||
- output.virtualmachines[0]['id'] != None
|
||||
- output.virtualmachines[0]['image'] != None
|
||||
- output.virtualmachines[0]['notes'] != None
|
||||
- output.virtualmachines[0]['os_type'] != None
|
||||
- output.virtualmachines[0]['provisioning_state'] != None
|
||||
- output.virtualmachines[0]['storage_type'] != None
|
||||
- output.virtualmachines[0]['user_name'] != None
|
||||
- output.virtualmachines[0]['vm_size'] != None
|
||||
- output_vm.changed == False
|
||||
- output_vm.virtualmachines[0]['id'] != None
|
||||
- output_vm.virtualmachines[0]['resource_group'] != None
|
||||
- output_vm.virtualmachines[0]['lab_name'] != None
|
||||
- output_vm.virtualmachines[0]['name'] != None
|
||||
- output_vm.virtualmachines[0]['compute_vm_id'] != None
|
||||
- output_vm.virtualmachines[0]['compute_vm_resource_group'] != None
|
||||
- output_vm.virtualmachines[0]['compute_vm_name'] != None
|
||||
- output_vm.virtualmachines[0]['disallow_public_ip_address'] != None
|
||||
- output_vm.virtualmachines[0]['expiration_date'] != None
|
||||
- output_vm.virtualmachines[0]['fqdn'] != None
|
||||
- output_vm.virtualmachines[0]['id'] != None
|
||||
- output_vm.virtualmachines[0]['image'] != None
|
||||
- output_vm.virtualmachines[0]['notes'] != None
|
||||
- output_vm.virtualmachines[0]['os_type'] != None
|
||||
- output_vm.virtualmachines[0]['provisioning_state'] != None
|
||||
- output_vm.virtualmachines[0]['storage_type'] != None
|
||||
- output_vm.virtualmachines[0]['user_name'] != None
|
||||
- output_vm.virtualmachines[0]['vm_size'] != None
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: List Facts of DTL Virtual Machine
|
||||
azure_rm_devtestlabvirtualmachine_facts:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
register: output
|
||||
register: output_vm
|
||||
- name: Assert that facts are returned
|
||||
assert:
|
||||
that:
|
||||
- output.changed == False
|
||||
- output.virtualmachines[0]['id'] != None
|
||||
- output.virtualmachines[0]['resource_group'] != None
|
||||
- output.virtualmachines[0]['lab_name'] != None
|
||||
- output.virtualmachines[0]['name'] != None
|
||||
- output.virtualmachines[0]['compute_vm_id'] != None
|
||||
- output.virtualmachines[0]['disallow_public_ip_address'] != None
|
||||
- output.virtualmachines[0]['expiration_date'] != None
|
||||
- output.virtualmachines[0]['fqdn'] != None
|
||||
- output.virtualmachines[0]['id'] != None
|
||||
- output.virtualmachines[0]['image'] != None
|
||||
- output.virtualmachines[0]['notes'] != None
|
||||
- output.virtualmachines[0]['os_type'] != None
|
||||
- output.virtualmachines[0]['provisioning_state'] != None
|
||||
- output.virtualmachines[0]['storage_type'] != None
|
||||
- output.virtualmachines[0]['user_name'] != None
|
||||
- output.virtualmachines[0]['vm_size'] != None
|
||||
- output_vm.changed == False
|
||||
- output_vm.virtualmachines[0]['id'] != None
|
||||
- output_vm.virtualmachines[0]['resource_group'] != None
|
||||
- output_vm.virtualmachines[0]['lab_name'] != None
|
||||
- output_vm.virtualmachines[0]['name'] != None
|
||||
- output_vm.virtualmachines[0]['compute_vm_id'] != None
|
||||
- output_vm.virtualmachines[0]['disallow_public_ip_address'] != None
|
||||
- output_vm.virtualmachines[0]['expiration_date'] != None
|
||||
- output_vm.virtualmachines[0]['fqdn'] != None
|
||||
- output_vm.virtualmachines[0]['id'] != None
|
||||
- output_vm.virtualmachines[0]['image'] != None
|
||||
- output_vm.virtualmachines[0]['notes'] != None
|
||||
- output_vm.virtualmachines[0]['os_type'] != None
|
||||
- output_vm.virtualmachines[0]['provisioning_state'] != None
|
||||
- output_vm.virtualmachines[0]['storage_type'] != None
|
||||
- output_vm.virtualmachines[0]['user_name'] != None
|
||||
- output_vm.virtualmachines[0]['vm_size'] != None
|
||||
when: "github_token | length > 0"
|
||||
|
||||
|
||||
- name: List all artifact sources
|
||||
@@ -525,6 +657,80 @@
|
||||
- output.artifacts[0]['publisher'] != None
|
||||
- "output.artifacts | length == 1"
|
||||
|
||||
- name: Create instance of DevTest Lab Environment
|
||||
azure_rm_devtestlabenvironment:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
user_name: zim
|
||||
name: myEnvironment
|
||||
location: eastus
|
||||
deployment_template: "{{ output_lab.labs[0].id }}/artifactSources/public environment repo/armTemplates/WebApp"
|
||||
register: output
|
||||
- name: Assert if the change was correctly reported
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Create instance of DevTest Lab Environment - idempotent
|
||||
azure_rm_devtestlabenvironment:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
user_name: zim
|
||||
name: myEnvironment
|
||||
location: eastus
|
||||
deployment_template:
|
||||
artifact_source_name: public environment repo
|
||||
name: WebApp
|
||||
register: output
|
||||
- name: Assert if the change was not detected
|
||||
assert:
|
||||
that:
|
||||
- not output.changed
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Delete instance of DevTest Lab Environment
|
||||
azure_rm_devtestlabenvironment:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
user_name: zim
|
||||
name: myEnvironment
|
||||
state: absent
|
||||
register: output
|
||||
- name: Assert that change was detected
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Create instance of DevTest Lab Image
|
||||
azure_rm_devtestlabcustomimage:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
name: myImage
|
||||
source_vm: "{{ output_vm.virtualmachines[0]['name'] }}"
|
||||
linux_os_state: non_deprovisioned
|
||||
register: output
|
||||
- name: Assert that change was detected
|
||||
assert:
|
||||
that:
|
||||
- output.changed
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Create instance of DevTest Lab Image -- idempotent
|
||||
azure_rm_devtestlabcustomimage:
|
||||
resource_group: "{{ resource_group }}"
|
||||
lab_name: "{{ lab_name }}"
|
||||
name: myImage
|
||||
source_vm: "{{ output_vm.virtualmachines[0]['name'] }}"
|
||||
linux_os_state: non_deprovisioned
|
||||
register: output
|
||||
- name: Assert that change was detected
|
||||
assert:
|
||||
that:
|
||||
- not output.changed
|
||||
when: "github_token | length > 0"
|
||||
|
||||
- name: Delete instance of Lab -- check mode
|
||||
azure_rm_devtestlab:
|
||||
resource_group: "{{ resource_group }}"
|
||||
|
||||
Reference in New Issue
Block a user