parent
07e9959f90
commit
39ea3dd18c
@ -0,0 +1,2 @@
|
|||||||
|
[all]
|
||||||
|
ansible_master ansible_host=<ansible host IP address> ansible_port=<SSH port on ansible host> ansible_user=root
|
@ -0,0 +1,18 @@
|
|||||||
|
#
|
||||||
|
# More details on how to use DECORT Ansible module can be found at:
|
||||||
|
# https://github.com/rudecs/decort-ansible/wiki
|
||||||
|
#
|
||||||
|
|
||||||
|
- hosts: ansible_master
|
||||||
|
tasks:
|
||||||
|
- name: obtain JWT
|
||||||
|
decort_jwt:
|
||||||
|
oauth2_url: "{{ decort_sso }}" # "https://sso.digitalenergy.online"
|
||||||
|
validity: 1200
|
||||||
|
register: my_jwt
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out JWT
|
||||||
|
debug:
|
||||||
|
var: my_jwt.jwt
|
||||||
|
delegate_to: localhost
|
@ -0,0 +1,190 @@
|
|||||||
|
#
|
||||||
|
# More details on how to use DECORT Ansible module can be found at:
|
||||||
|
# https://github.com/rudecs/decort-ansible/wiki
|
||||||
|
#
|
||||||
|
|
||||||
|
- hosts: ansible_master
|
||||||
|
vars_files:
|
||||||
|
- vars.yaml
|
||||||
|
tasks:
|
||||||
|
- name: obtain JWT
|
||||||
|
decort_jwt:
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
validity: 1200
|
||||||
|
register: token
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: obtain OS image
|
||||||
|
decort_osimage:
|
||||||
|
authenticator: jwt
|
||||||
|
jwt: "{{ token.jwt }}"
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
controller_url: "{{ decort_ctrl }}"
|
||||||
|
image_name: "{{ os_image_name }}"
|
||||||
|
account_name: "{{ target_account_name }}"
|
||||||
|
verify_ssl: false
|
||||||
|
register: my_image
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out the result
|
||||||
|
debug:
|
||||||
|
var: my_image.facts
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: manage RG
|
||||||
|
decort_rg:
|
||||||
|
authenticator: jwt
|
||||||
|
jwt: "{{ token.jwt }}"
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
controller_url: "{{ decort_ctrl }}"
|
||||||
|
account_id: 32
|
||||||
|
rg_name: "{{ target_rg_name }}"
|
||||||
|
state: present
|
||||||
|
verify_ssl: false
|
||||||
|
register: my_rg
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out the result
|
||||||
|
debug:
|
||||||
|
var: my_rg.facts
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: manage ViNS 01
|
||||||
|
decort_vins:
|
||||||
|
authenticator: jwt
|
||||||
|
jwt: "{{ token.jwt }}"
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
controller_url: "{{ decort_ctrl }}"
|
||||||
|
vins_name: "{{ vins01_name }}"
|
||||||
|
rg_id: "{{ my_rg.facts.id }}"
|
||||||
|
ext_net_id: "{{ target_ext_net_id }}"
|
||||||
|
state: present
|
||||||
|
verify_ssl: false
|
||||||
|
register: my_vins01
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out the result
|
||||||
|
debug:
|
||||||
|
var: my_vins01.facts
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: manage ViNS 02
|
||||||
|
decort_vins:
|
||||||
|
authenticator: jwt
|
||||||
|
jwt: "{{ token.jwt }}"
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
controller_url: "{{ decort_ctrl }}"
|
||||||
|
vins_name: "{{ vins02_name }}"
|
||||||
|
rg_id: "{{ my_rg.facts.id }}"
|
||||||
|
ext_net_id: -1
|
||||||
|
state: present
|
||||||
|
verify_ssl: false
|
||||||
|
register: my_vins02
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out the result
|
||||||
|
debug:
|
||||||
|
var: my_vins02.facts
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: manage data disk 01
|
||||||
|
decort_disk:
|
||||||
|
authenticator: jwt
|
||||||
|
jwt: "{{ token.jwt }}"
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
controller_url: "{{ decort_ctrl }}"
|
||||||
|
name: "{{ datadisk01_name }}"
|
||||||
|
size: "{{ datadisk01_size }}"
|
||||||
|
account_name: "{{ target_account_name }}"
|
||||||
|
pool: data01
|
||||||
|
place_with: "{{ my_image.facts.id }}"
|
||||||
|
state: present
|
||||||
|
verify_ssl: false
|
||||||
|
register: my_disk01
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out the result
|
||||||
|
debug:
|
||||||
|
var: my_disk01.facts
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: manage data disk 02
|
||||||
|
decort_disk:
|
||||||
|
authenticator: jwt
|
||||||
|
jwt: "{{ token.jwt }}"
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
controller_url: "{{ decort_ctrl }}"
|
||||||
|
name: "{{ datadisk02_name }}"
|
||||||
|
size: "{{ datadisk02_size }}"
|
||||||
|
account_name: "{{ target_account_name }}"
|
||||||
|
pool: data01
|
||||||
|
place_with: "{{ my_image.facts.id }}"
|
||||||
|
state: present
|
||||||
|
verify_ssl: false
|
||||||
|
register: my_disk02
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out the result
|
||||||
|
debug:
|
||||||
|
var: my_disk02.facts
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: manage KVM X86 VM
|
||||||
|
decort_kvmvm:
|
||||||
|
authenticator: jwt
|
||||||
|
jwt: "{{ token.jwt }}"
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
controller_url: "{{ decort_ctrl }}"
|
||||||
|
name: "{{ vm01_name }}"
|
||||||
|
arch: KVM_X86
|
||||||
|
ram: "{{ vm01_ram }}"
|
||||||
|
cpu: "{{ vm01_cpu }}"
|
||||||
|
image_id: "{{ my_image.facts.id }}"
|
||||||
|
boot_disk: "{{ vm01_boot_disk }}"
|
||||||
|
data_disks:
|
||||||
|
- "{{ my_disk01.facts.id }}"
|
||||||
|
- "{{ my_disk02.facts.id }}"
|
||||||
|
networks:
|
||||||
|
- type: VINS
|
||||||
|
id: "{{ my_vins01.facts.id }}"
|
||||||
|
- type: VINS
|
||||||
|
id: "{{ my_vins02.facts.id }}"
|
||||||
|
- type: EXTNET
|
||||||
|
id: "{{ target_ext_net_id }}"
|
||||||
|
rg_id: "{{ my_rg.facts.id }}"
|
||||||
|
state: present
|
||||||
|
verify_ssl: false
|
||||||
|
register: my_kvmvm
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out the result
|
||||||
|
debug:
|
||||||
|
var: my_kvmvm.facts
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: manage PFW rules on Compute
|
||||||
|
decort_pfw:
|
||||||
|
authenticator: jwt
|
||||||
|
jwt: "{{ token.jwt }}"
|
||||||
|
oauth2_url: "{{ decort_sso }}"
|
||||||
|
controller_url: "{{ decort_ctrl }}"
|
||||||
|
compute_id: "{{ my_kvmvm.facts.id }}"
|
||||||
|
vins_id: "{{ my_vins01.facts.id }}"
|
||||||
|
rules:
|
||||||
|
- public_port_start: 30022
|
||||||
|
local_port: 22
|
||||||
|
proto: tcp
|
||||||
|
- public_port_start: 30080
|
||||||
|
public_port_end: 30085
|
||||||
|
local_port: 30080
|
||||||
|
proto: tcp
|
||||||
|
state: present
|
||||||
|
verify_ssl: false
|
||||||
|
register: my_pfw
|
||||||
|
delegate_to: localhost
|
||||||
|
|
||||||
|
- name: print out the result
|
||||||
|
debug:
|
||||||
|
var: my_pfw.facts
|
||||||
|
delegate_to: localhost
|
||||||
|
|
@ -0,0 +1,26 @@
|
|||||||
|
#
|
||||||
|
# More details on how to use DECORT Ansible module can be found at:
|
||||||
|
# https://github.com/rudecs/decort-ansible/wiki
|
||||||
|
#
|
||||||
|
|
||||||
|
decort_sso: "put DECORT SSO application URL here" # "https://sso.digitalenergy.online"
|
||||||
|
decort_ctrl: "put DECORT controller URL here" # "https://ds1.digitalenergy.online"
|
||||||
|
|
||||||
|
target_account_name: "your account name"
|
||||||
|
target_rg_name: "target resource group name"
|
||||||
|
os_image_name: "OS image name"
|
||||||
|
|
||||||
|
vins01_name: "Vins01-ansible"
|
||||||
|
vins02_name: "Vins02-ansible"
|
||||||
|
target_ext_net_id: 0
|
||||||
|
|
||||||
|
datadisk01_name: "Data01-ansible"
|
||||||
|
datadisk01_size: 5
|
||||||
|
|
||||||
|
datadisk02_name: "Data02-ansible"
|
||||||
|
datadisk02_size: 5
|
||||||
|
|
||||||
|
vm01_name: "Vm01-ansible"
|
||||||
|
vm01_cpu: 1
|
||||||
|
vm01_ram: 1024
|
||||||
|
vm01_boot_disk: 10
|
Loading…
Reference in new issue