Ansible Cloud Source Repositories (#165)

Signed-off-by: Modular Magician <magic-modules@google.com>
This commit is contained in:
The Magician 2019-01-17 13:56:04 -08:00 committed by Alex Stephen
parent 2ebb8245b5
commit e6ae9ac421
4 changed files with 42 additions and 43 deletions

View file

@ -62,11 +62,11 @@ notes:
EXAMPLES = ''' EXAMPLES = '''
- name: create a repository - name: create a repository
gcp_sourcerepo_repository: gcp_sourcerepo_repository:
name: projects/test_project/repos/test_object name: projects/test_project/repos/test_object
project: test_project project: "test_project"
auth_kind: serviceaccount auth_kind: "serviceaccount"
service_account_file: "/tmp/auth.pem" service_account_file: "/tmp/auth.pem"
state: present state: present
''' '''
RETURN = ''' RETURN = '''
@ -142,8 +142,7 @@ def create(module, link):
def update(module, link): def update(module, link):
delete(module, self_link(module)) module.fail_json(msg="Repository cannot be edited")
create(module, collection(module))
def delete(module, link): def delete(module, link):
@ -186,8 +185,8 @@ def return_if_object(module, response, allow_not_found=False):
try: try:
module.raise_for_status(response) module.raise_for_status(response)
result = response.json() result = response.json()
except getattr(json.decoder, 'JSONDecodeError', ValueError): except getattr(json.decoder, 'JSONDecodeError', ValueError) as inst:
module.fail_json(msg="Invalid JSON response with error: %s" % response.text) module.fail_json(msg="Invalid JSON response with error: %s" % inst)
if navigate_hash(result, ['error', 'errors']): if navigate_hash(result, ['error', 'errors']):
module.fail_json(msg=navigate_hash(result, ['error', 'errors'])) module.fail_json(msg=navigate_hash(result, ['error', 'errors']))

View file

@ -44,17 +44,16 @@ extends_documentation_fragment: gcp
''' '''
EXAMPLES = ''' EXAMPLES = '''
- name: " a repository facts" - name: a repository facts
gcp_sourcerepo_repository_facts: gcp_sourcerepo_repository_facts:
project: test_project project: test_project
auth_kind: serviceaccount auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem" service_account_file: "/tmp/auth.pem"
state: facts
''' '''
RETURN = ''' RETURN = '''
resources: items:
description: List of resources description: List of items
returned: always returned: always
type: complex type: complex
contains: contains:
@ -99,7 +98,7 @@ def main():
items = items.get('repos') items = items.get('repos')
else: else:
items = [] items = []
return_value = {'resources': items} return_value = {'items': items}
module.exit_json(**return_value) module.exit_json(**return_value)

View file

@ -1,2 +1,3 @@
--- ---
resource_name: "{{ resource_prefix }}" # defaults file
resource_name: '{{resource_prefix}}'

View file

@ -15,19 +15,19 @@
# Pre-test setup # Pre-test setup
- name: delete a repository - name: delete a repository
gcp_sourcerepo_repository: gcp_sourcerepo_repository:
name: projects/{{ gcp_project }}/repos/{{ resource_name }} name: projects/{{ gcp_project }}/repos/{{ resource_name }}
project: "{{ gcp_project }}" project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}" auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}" service_account_file: "{{ gcp_cred_file }}"
state: absent state: absent
#---------------------------------------------------------- #----------------------------------------------------------
- name: create a repository - name: create a repository
gcp_sourcerepo_repository: gcp_sourcerepo_repository:
name: projects/{{ gcp_project }}/repos/{{ resource_name }} name: projects/{{ gcp_project }}/repos/{{ resource_name }}
project: "{{ gcp_project }}" project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}" auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}" service_account_file: "{{ gcp_cred_file }}"
state: present state: present
register: result register: result
- name: assert changed is true - name: assert changed is true
assert: assert:
@ -48,11 +48,11 @@
# ---------------------------------------------------------------------------- # ----------------------------------------------------------------------------
- name: create a repository that already exists - name: create a repository that already exists
gcp_sourcerepo_repository: gcp_sourcerepo_repository:
name: projects/{{ gcp_project }}/repos/{{ resource_name }} name: projects/{{ gcp_project }}/repos/{{ resource_name }}
project: "{{ gcp_project }}" project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}" auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}" service_account_file: "{{ gcp_cred_file }}"
state: present state: present
register: result register: result
- name: assert changed is false - name: assert changed is false
assert: assert:
@ -61,11 +61,11 @@
#---------------------------------------------------------- #----------------------------------------------------------
- name: delete a repository - name: delete a repository
gcp_sourcerepo_repository: gcp_sourcerepo_repository:
name: projects/{{ gcp_project }}/repos/{{ resource_name }} name: projects/{{ gcp_project }}/repos/{{ resource_name }}
project: "{{ gcp_project }}" project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}" auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}" service_account_file: "{{ gcp_cred_file }}"
state: absent state: absent
register: result register: result
- name: assert changed is true - name: assert changed is true
assert: assert:
@ -86,11 +86,11 @@
# ---------------------------------------------------------------------------- # ----------------------------------------------------------------------------
- name: delete a repository that does not exist - name: delete a repository that does not exist
gcp_sourcerepo_repository: gcp_sourcerepo_repository:
name: projects/{{ gcp_project }}/repos/{{ resource_name }} name: projects/{{ gcp_project }}/repos/{{ resource_name }}
project: "{{ gcp_project }}" project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}" auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}" service_account_file: "{{ gcp_cred_file }}"
state: absent state: absent
register: result register: result
- name: assert changed is false - name: assert changed is false
assert: assert: