cs_instance: fix py3 user_data base64 (#37135)
* cs_instance: tests: reproduce py3 user_data base64 issue * cs_instance: fix base64 encoding with py3
This commit is contained in:
parent
4b6b2d4206
commit
0130490faa
2 changed files with 23 additions and 4 deletions
|
@ -348,8 +348,13 @@ instance_name:
|
|||
|
||||
import base64
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
from ansible.module_utils.cloudstack import (AnsibleCloudStack, CS_HYPERVISORS, cs_argument_spec,
|
||||
cs_required_together)
|
||||
from ansible.module_utils._text import to_bytes, to_text
|
||||
from ansible.module_utils.cloudstack import (
|
||||
AnsibleCloudStack,
|
||||
CS_HYPERVISORS,
|
||||
cs_argument_spec,
|
||||
cs_required_together
|
||||
)
|
||||
|
||||
|
||||
class AnsibleCloudStackInstance(AnsibleCloudStack):
|
||||
|
@ -592,7 +597,7 @@ class AnsibleCloudStackInstance(AnsibleCloudStack):
|
|||
def get_user_data(self):
|
||||
user_data = self.module.params.get('user_data')
|
||||
if user_data is not None:
|
||||
user_data = base64.b64encode(str(user_data))
|
||||
user_data = to_text(base64.b64encode(to_bytes(user_data)))
|
||||
return user_data
|
||||
|
||||
def get_details(self):
|
||||
|
|
|
@ -15,6 +15,11 @@
|
|||
affinity_group: "{{ cs_resource_prefix }}-ag"
|
||||
security_group: "{{ cs_resource_prefix }}-sg"
|
||||
ssh_key: "{{ cs_resource_prefix }}-sshkey"
|
||||
user_data: |
|
||||
#cloud-config
|
||||
package_upgrade: true
|
||||
packages:
|
||||
- tmux
|
||||
tags: []
|
||||
register: instance
|
||||
check_mode: true
|
||||
|
@ -32,6 +37,11 @@
|
|||
affinity_group: "{{ cs_resource_prefix }}-ag"
|
||||
security_group: "{{ cs_resource_prefix }}-sg"
|
||||
ssh_key: "{{ cs_resource_prefix }}-sshkey"
|
||||
user_data: |
|
||||
#cloud-config
|
||||
package_upgrade: true
|
||||
packages:
|
||||
- tmux
|
||||
tags: []
|
||||
register: instance
|
||||
- name: verify create instance
|
||||
|
@ -54,6 +64,11 @@
|
|||
affinity_group: "{{ cs_resource_prefix }}-ag"
|
||||
security_group: "{{ cs_resource_prefix }}-sg"
|
||||
ssh_key: "{{ cs_resource_prefix }}-sshkey"
|
||||
user_data: |
|
||||
#cloud-config
|
||||
package_upgrade: true
|
||||
packages:
|
||||
- tmux
|
||||
tags: []
|
||||
register: instance
|
||||
- name: verify create instance idempotence
|
||||
|
@ -84,7 +99,6 @@
|
|||
- instance.service_offering == "{{ test_cs_instance_offering_1 }}"
|
||||
- instance.state == "Running"
|
||||
|
||||
|
||||
- name: test running instance not updated
|
||||
cs_instance:
|
||||
name: "{{ cs_resource_prefix }}-vm-{{ instance_number }}"
|
||||
|
|
Loading…
Reference in a new issue