Skip to content
This repository has been archived by the owner on Nov 14, 2024. It is now read-only.

Commit

Permalink
Sql database port (#244)
Browse files Browse the repository at this point in the history
Signed-off-by: Modular Magician <magic-modules@google.com>
  • Loading branch information
modular-magician authored and rambleraptor committed May 20, 2019
1 parent 50f3d9b commit d5d3667
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 24 deletions.
21 changes: 7 additions & 14 deletions lib/ansible/modules/cloud/google/gcp_sql_database.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,15 +59,10 @@
description:
- The name of the database in the Cloud SQL instance.
- This does not include the project ID or instance name.
required: false
required: true
instance:
description:
- The name of the Cloud SQL instance. This does not include the project ID.
- 'This field represents a link to a Instance resource in GCP. It can be specified
in two ways. First, you can place a dictionary with key ''name'' and value of
your resource''s name Alternatively, you can add `register: name-of-resource`
to a gcp_sql_instance task and then set this instance field to "{{ name-of-resource
}}"'
required: true
extends_documentation_fragment: gcp
'''
Expand Down Expand Up @@ -121,7 +116,7 @@
description:
- The name of the Cloud SQL instance. This does not include the project ID.
returned: success
type: dict
type: str
'''

################################################################################
Expand All @@ -145,8 +140,8 @@ def main():
state=dict(default='present', choices=['present', 'absent'], type='str'),
charset=dict(type='str'),
collation=dict(type='str'),
name=dict(type='str'),
instance=dict(required=True, type='dict'),
name=dict(required=True, type='str'),
instance=dict(required=True, type='str'),
)
)

Expand Down Expand Up @@ -218,13 +213,11 @@ def fetch_resource(module, link, kind, allow_not_found=True):


def self_link(module):
res = {'project': module.params['project'], 'instance': replace_resource_dict(module.params['instance'], 'name'), 'name': module.params['name']}
return "https://www.googleapis.com/sql/v1beta4/projects/{project}/instances/{instance}/databases/{name}".format(**res)
return "https://www.googleapis.com/sql/v1beta4/projects/{project}/instances/{instance}/databases/{name}".format(**module.params)


def collection(module):
res = {'project': module.params['project'], 'instance': replace_resource_dict(module.params['instance'], 'name')}
return "https://www.googleapis.com/sql/v1beta4/projects/{project}/instances/{instance}/databases".format(**res)
return "https://www.googleapis.com/sql/v1beta4/projects/{project}/instances/{instance}/databases".format(**module.params)


def return_if_object(module, response, kind, allow_not_found=False):
Expand Down Expand Up @@ -272,7 +265,7 @@ def is_different(module, response):
# Remove unnecessary properties from the response.
# This is for doing comparisons with Ansible's current parameters.
def response_to_hash(module, response):
return {u'charset': response.get(u'charset'), u'collation': response.get(u'collation'), u'name': response.get(u'name')}
return {u'charset': response.get(u'charset'), u'collation': response.get(u'collation'), u'name': module.params.get('name')}


def async_op_url(module, extra_data=None):
Expand Down
14 changes: 4 additions & 10 deletions lib/ansible/modules/cloud/google/gcp_sql_database_facts.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,6 @@
instance:
description:
- The name of the Cloud SQL instance. This does not include the project ID.
- 'This field represents a link to a Instance resource in GCP. It can be specified
in two ways. First, you can place a dictionary with key ''name'' and value of
your resource''s name Alternatively, you can add `register: name-of-resource`
to a gcp_sql_instance task and then set this instance field to "{{ name-of-resource
}}"'
required: true
extends_documentation_fragment: gcp
'''
Expand Down Expand Up @@ -88,13 +83,13 @@
description:
- The name of the Cloud SQL instance. This does not include the project ID.
returned: success
type: dict
type: str
'''

################################################################################
# Imports
################################################################################
from ansible.module_utils.gcp_utils import navigate_hash, GcpSession, GcpModule, GcpRequest, replace_resource_dict
from ansible.module_utils.gcp_utils import navigate_hash, GcpSession, GcpModule, GcpRequest
import json

################################################################################
Expand All @@ -103,7 +98,7 @@


def main():
module = GcpModule(argument_spec=dict(instance=dict(required=True, type='dict')))
module = GcpModule(argument_spec=dict(instance=dict(required=True, type='str')))

if not module.params['scopes']:
module.params['scopes'] = ['https://www.googleapis.com/auth/sqlservice.admin']
Expand All @@ -118,8 +113,7 @@ def main():


def collection(module):
res = {'project': module.params['project'], 'instance': replace_resource_dict(module.params['instance'], 'name')}
return "https://www.googleapis.com/sql/v1beta4/projects/{project}/instances/{instance}/databases".format(**res)
return "https://www.googleapis.com/sql/v1beta4/projects/{project}/instances/{instance}/databases".format(**module.params)


def fetch_list(module, link):
Expand Down

0 comments on commit d5d3667

Please sign in to comment.