mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-04-30 23:48:54 +00:00
Reformat everything.
This commit is contained in:
parent
3f2213791a
commit
340ff8586d
1008 changed files with 61301 additions and 58309 deletions
|
|
@ -41,13 +41,20 @@ class AnsibleACSError(Exception):
|
|||
|
||||
def acs_common_argument_spec():
|
||||
return dict(
|
||||
alicloud_access_key=dict(aliases=['access_key_id', 'access_key'], no_log=True,
|
||||
fallback=(env_fallback, ['ALICLOUD_ACCESS_KEY', 'ALICLOUD_ACCESS_KEY_ID'])),
|
||||
alicloud_secret_key=dict(aliases=['secret_access_key', 'secret_key'], no_log=True,
|
||||
fallback=(env_fallback, ['ALICLOUD_SECRET_KEY', 'ALICLOUD_SECRET_ACCESS_KEY'])),
|
||||
alicloud_security_token=dict(aliases=['security_token'], no_log=True,
|
||||
fallback=(env_fallback, ['ALICLOUD_SECURITY_TOKEN'])),
|
||||
ecs_role_name=dict(aliases=['role_name'], fallback=(env_fallback, ['ALICLOUD_ECS_ROLE_NAME']))
|
||||
alicloud_access_key=dict(
|
||||
aliases=["access_key_id", "access_key"],
|
||||
no_log=True,
|
||||
fallback=(env_fallback, ["ALICLOUD_ACCESS_KEY", "ALICLOUD_ACCESS_KEY_ID"]),
|
||||
),
|
||||
alicloud_secret_key=dict(
|
||||
aliases=["secret_access_key", "secret_key"],
|
||||
no_log=True,
|
||||
fallback=(env_fallback, ["ALICLOUD_SECRET_KEY", "ALICLOUD_SECRET_ACCESS_KEY"]),
|
||||
),
|
||||
alicloud_security_token=dict(
|
||||
aliases=["security_token"], no_log=True, fallback=(env_fallback, ["ALICLOUD_SECURITY_TOKEN"])
|
||||
),
|
||||
ecs_role_name=dict(aliases=["role_name"], fallback=(env_fallback, ["ALICLOUD_ECS_ROLE_NAME"])),
|
||||
)
|
||||
|
||||
|
||||
|
|
@ -55,31 +62,38 @@ def ecs_argument_spec():
|
|||
spec = acs_common_argument_spec()
|
||||
spec.update(
|
||||
dict(
|
||||
alicloud_region=dict(required=True, aliases=['region', 'region_id'],
|
||||
fallback=(env_fallback, ['ALICLOUD_REGION', 'ALICLOUD_REGION_ID'])),
|
||||
alicloud_assume_role_arn=dict(fallback=(env_fallback, ['ALICLOUD_ASSUME_ROLE_ARN']),
|
||||
aliases=['assume_role_arn']),
|
||||
alicloud_assume_role_session_name=dict(fallback=(env_fallback, ['ALICLOUD_ASSUME_ROLE_SESSION_NAME']),
|
||||
aliases=['assume_role_session_name']),
|
||||
alicloud_assume_role_session_expiration=dict(type='int',
|
||||
fallback=(env_fallback,
|
||||
['ALICLOUD_ASSUME_ROLE_SESSION_EXPIRATION']),
|
||||
aliases=['assume_role_session_expiration']),
|
||||
alicloud_assume_role=dict(type='dict', aliases=['assume_role']),
|
||||
profile=dict(fallback=(env_fallback, ['ALICLOUD_PROFILE'])),
|
||||
shared_credentials_file=dict(fallback=(env_fallback, ['ALICLOUD_SHARED_CREDENTIALS_FILE']))
|
||||
alicloud_region=dict(
|
||||
required=True,
|
||||
aliases=["region", "region_id"],
|
||||
fallback=(env_fallback, ["ALICLOUD_REGION", "ALICLOUD_REGION_ID"]),
|
||||
),
|
||||
alicloud_assume_role_arn=dict(
|
||||
fallback=(env_fallback, ["ALICLOUD_ASSUME_ROLE_ARN"]), aliases=["assume_role_arn"]
|
||||
),
|
||||
alicloud_assume_role_session_name=dict(
|
||||
fallback=(env_fallback, ["ALICLOUD_ASSUME_ROLE_SESSION_NAME"]), aliases=["assume_role_session_name"]
|
||||
),
|
||||
alicloud_assume_role_session_expiration=dict(
|
||||
type="int",
|
||||
fallback=(env_fallback, ["ALICLOUD_ASSUME_ROLE_SESSION_EXPIRATION"]),
|
||||
aliases=["assume_role_session_expiration"],
|
||||
),
|
||||
alicloud_assume_role=dict(type="dict", aliases=["assume_role"]),
|
||||
profile=dict(fallback=(env_fallback, ["ALICLOUD_PROFILE"])),
|
||||
shared_credentials_file=dict(fallback=(env_fallback, ["ALICLOUD_SHARED_CREDENTIALS_FILE"])),
|
||||
)
|
||||
)
|
||||
return spec
|
||||
|
||||
|
||||
def get_acs_connection_info(params):
|
||||
|
||||
ecs_params = dict(acs_access_key_id=params.get('alicloud_access_key'),
|
||||
acs_secret_access_key=params.get('alicloud_secret_key'),
|
||||
security_token=params.get('alicloud_security_token'),
|
||||
ecs_role_name=params.get('ecs_role_name'),
|
||||
user_agent='Ansible-Provider-Alicloud')
|
||||
ecs_params = dict(
|
||||
acs_access_key_id=params.get("alicloud_access_key"),
|
||||
acs_secret_access_key=params.get("alicloud_secret_key"),
|
||||
security_token=params.get("alicloud_security_token"),
|
||||
ecs_role_name=params.get("ecs_role_name"),
|
||||
user_agent="Ansible-Provider-Alicloud",
|
||||
)
|
||||
return ecs_params
|
||||
|
||||
|
||||
|
|
@ -88,76 +102,98 @@ def connect_to_acs(acs_module, region, **params):
|
|||
if not conn:
|
||||
if region not in [acs_module_region.id for acs_module_region in acs_module.regions()]:
|
||||
raise AnsibleACSError(
|
||||
f"Region {region} does not seem to be available for acs module {acs_module.__name__}.")
|
||||
f"Region {region} does not seem to be available for acs module {acs_module.__name__}."
|
||||
)
|
||||
else:
|
||||
raise AnsibleACSError(
|
||||
f"Unknown problem connecting to region {region} for acs module {acs_module.__name__}.")
|
||||
f"Unknown problem connecting to region {region} for acs module {acs_module.__name__}."
|
||||
)
|
||||
return conn
|
||||
|
||||
|
||||
def get_assume_role(params):
|
||||
""" Return new params """
|
||||
"""Return new params"""
|
||||
sts_params = get_acs_connection_info(params)
|
||||
assume_role = {}
|
||||
if params.get('assume_role'):
|
||||
assume_role['alicloud_assume_role_arn'] = params['assume_role'].get('role_arn')
|
||||
assume_role['alicloud_assume_role_session_name'] = params['assume_role'].get('session_name')
|
||||
assume_role['alicloud_assume_role_session_expiration'] = params['assume_role'].get('session_expiration')
|
||||
assume_role['alicloud_assume_role_policy'] = params['assume_role'].get('policy')
|
||||
if params.get("assume_role"):
|
||||
assume_role["alicloud_assume_role_arn"] = params["assume_role"].get("role_arn")
|
||||
assume_role["alicloud_assume_role_session_name"] = params["assume_role"].get("session_name")
|
||||
assume_role["alicloud_assume_role_session_expiration"] = params["assume_role"].get("session_expiration")
|
||||
assume_role["alicloud_assume_role_policy"] = params["assume_role"].get("policy")
|
||||
|
||||
assume_role_params = {
|
||||
'role_arn': params.get('alicloud_assume_role_arn') if params.get('alicloud_assume_role_arn') else assume_role.get('alicloud_assume_role_arn'),
|
||||
'role_session_name': params.get('alicloud_assume_role_session_name') if params.get('alicloud_assume_role_session_name')
|
||||
else assume_role.get('alicloud_assume_role_session_name'),
|
||||
'duration_seconds': params.get('alicloud_assume_role_session_expiration') if params.get('alicloud_assume_role_session_expiration')
|
||||
else assume_role.get('alicloud_assume_role_session_expiration', 3600),
|
||||
'policy': assume_role.get('alicloud_assume_role_policy', {})
|
||||
"role_arn": params.get("alicloud_assume_role_arn")
|
||||
if params.get("alicloud_assume_role_arn")
|
||||
else assume_role.get("alicloud_assume_role_arn"),
|
||||
"role_session_name": params.get("alicloud_assume_role_session_name")
|
||||
if params.get("alicloud_assume_role_session_name")
|
||||
else assume_role.get("alicloud_assume_role_session_name"),
|
||||
"duration_seconds": params.get("alicloud_assume_role_session_expiration")
|
||||
if params.get("alicloud_assume_role_session_expiration")
|
||||
else assume_role.get("alicloud_assume_role_session_expiration", 3600),
|
||||
"policy": assume_role.get("alicloud_assume_role_policy", {}),
|
||||
}
|
||||
|
||||
try:
|
||||
sts = connect_to_acs(footmark.sts, params.get('alicloud_region'), **sts_params).assume_role(**assume_role_params).read()
|
||||
sts_params['acs_access_key_id'], sts_params['acs_secret_access_key'], sts_params['security_token'] \
|
||||
= sts['access_key_id'], sts['access_key_secret'], sts['security_token']
|
||||
sts = (
|
||||
connect_to_acs(footmark.sts, params.get("alicloud_region"), **sts_params)
|
||||
.assume_role(**assume_role_params)
|
||||
.read()
|
||||
)
|
||||
sts_params["acs_access_key_id"], sts_params["acs_secret_access_key"], sts_params["security_token"] = (
|
||||
sts["access_key_id"],
|
||||
sts["access_key_secret"],
|
||||
sts["security_token"],
|
||||
)
|
||||
except AnsibleACSError as e:
|
||||
params.fail_json(msg=str(e))
|
||||
return sts_params
|
||||
|
||||
|
||||
def get_profile(params):
|
||||
if not params['alicloud_access_key'] and not params['ecs_role_name'] and params['profile']:
|
||||
path = params['shared_credentials_file'] if params['shared_credentials_file'] else f"{os.getenv('HOME')}/.aliyun/config.json"
|
||||
if not params["alicloud_access_key"] and not params["ecs_role_name"] and params["profile"]:
|
||||
path = (
|
||||
params["shared_credentials_file"]
|
||||
if params["shared_credentials_file"]
|
||||
else f"{os.getenv('HOME')}/.aliyun/config.json"
|
||||
)
|
||||
auth = {}
|
||||
with open(path, 'r') as f:
|
||||
for pro in json.load(f)['profiles']:
|
||||
if params['profile'] == pro['name']:
|
||||
with open(path, "r") as f:
|
||||
for pro in json.load(f)["profiles"]:
|
||||
if params["profile"] == pro["name"]:
|
||||
auth = pro
|
||||
if auth:
|
||||
if auth['mode'] == 'AK' and auth.get('access_key_id') and auth.get('access_key_secret'):
|
||||
params['alicloud_access_key'] = auth.get('access_key_id')
|
||||
params['alicloud_secret_key'] = auth.get('access_key_secret')
|
||||
params['alicloud_region'] = auth.get('region_id')
|
||||
if auth["mode"] == "AK" and auth.get("access_key_id") and auth.get("access_key_secret"):
|
||||
params["alicloud_access_key"] = auth.get("access_key_id")
|
||||
params["alicloud_secret_key"] = auth.get("access_key_secret")
|
||||
params["alicloud_region"] = auth.get("region_id")
|
||||
params = get_acs_connection_info(params)
|
||||
elif auth['mode'] == 'StsToken' and auth.get('access_key_id') and auth.get('access_key_secret') and auth.get('sts_token'):
|
||||
params['alicloud_access_key'] = auth.get('access_key_id')
|
||||
params['alicloud_secret_key'] = auth.get('access_key_secret')
|
||||
params['security_token'] = auth.get('sts_token')
|
||||
params['alicloud_region'] = auth.get('region_id')
|
||||
elif (
|
||||
auth["mode"] == "StsToken"
|
||||
and auth.get("access_key_id")
|
||||
and auth.get("access_key_secret")
|
||||
and auth.get("sts_token")
|
||||
):
|
||||
params["alicloud_access_key"] = auth.get("access_key_id")
|
||||
params["alicloud_secret_key"] = auth.get("access_key_secret")
|
||||
params["security_token"] = auth.get("sts_token")
|
||||
params["alicloud_region"] = auth.get("region_id")
|
||||
params = get_acs_connection_info(params)
|
||||
elif auth['mode'] == 'EcsRamRole':
|
||||
params['ecs_role_name'] = auth.get('ram_role_name')
|
||||
params['alicloud_region'] = auth.get('region_id')
|
||||
elif auth["mode"] == "EcsRamRole":
|
||||
params["ecs_role_name"] = auth.get("ram_role_name")
|
||||
params["alicloud_region"] = auth.get("region_id")
|
||||
params = get_acs_connection_info(params)
|
||||
elif auth['mode'] == 'RamRoleArn' and auth.get('ram_role_arn'):
|
||||
params['alicloud_access_key'] = auth.get('access_key_id')
|
||||
params['alicloud_secret_key'] = auth.get('access_key_secret')
|
||||
params['security_token'] = auth.get('sts_token')
|
||||
params['ecs_role_name'] = auth.get('ram_role_name')
|
||||
params['alicloud_assume_role_arn'] = auth.get('ram_role_arn')
|
||||
params['alicloud_assume_role_session_name'] = auth.get('ram_session_name')
|
||||
params['alicloud_assume_role_session_expiration'] = auth.get('expired_seconds')
|
||||
params['alicloud_region'] = auth.get('region_id')
|
||||
elif auth["mode"] == "RamRoleArn" and auth.get("ram_role_arn"):
|
||||
params["alicloud_access_key"] = auth.get("access_key_id")
|
||||
params["alicloud_secret_key"] = auth.get("access_key_secret")
|
||||
params["security_token"] = auth.get("sts_token")
|
||||
params["ecs_role_name"] = auth.get("ram_role_name")
|
||||
params["alicloud_assume_role_arn"] = auth.get("ram_role_arn")
|
||||
params["alicloud_assume_role_session_name"] = auth.get("ram_session_name")
|
||||
params["alicloud_assume_role_session_expiration"] = auth.get("expired_seconds")
|
||||
params["alicloud_region"] = auth.get("region_id")
|
||||
params = get_assume_role(params)
|
||||
elif params.get('alicloud_assume_role_arn') or params.get('assume_role'):
|
||||
elif params.get("alicloud_assume_role_arn") or params.get("assume_role"):
|
||||
params = get_assume_role(params)
|
||||
else:
|
||||
params = get_acs_connection_info(params)
|
||||
|
|
@ -165,10 +201,10 @@ def get_profile(params):
|
|||
|
||||
|
||||
def ecs_connect(module):
|
||||
""" Return an ecs connection"""
|
||||
"""Return an ecs connection"""
|
||||
ecs_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
ecs = connect_to_acs(footmark.ecs, region, **ecs_params)
|
||||
|
|
@ -179,10 +215,10 @@ def ecs_connect(module):
|
|||
|
||||
|
||||
def slb_connect(module):
|
||||
""" Return an slb connection"""
|
||||
"""Return an slb connection"""
|
||||
slb_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
slb = connect_to_acs(footmark.slb, region, **slb_params)
|
||||
|
|
@ -193,10 +229,10 @@ def slb_connect(module):
|
|||
|
||||
|
||||
def dns_connect(module):
|
||||
""" Return an dns connection"""
|
||||
"""Return an dns connection"""
|
||||
dns_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
dns = connect_to_acs(footmark.dns, region, **dns_params)
|
||||
|
|
@ -207,10 +243,10 @@ def dns_connect(module):
|
|||
|
||||
|
||||
def vpc_connect(module):
|
||||
""" Return an vpc connection"""
|
||||
"""Return an vpc connection"""
|
||||
vpc_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
vpc = connect_to_acs(footmark.vpc, region, **vpc_params)
|
||||
|
|
@ -221,10 +257,10 @@ def vpc_connect(module):
|
|||
|
||||
|
||||
def rds_connect(module):
|
||||
""" Return an rds connection"""
|
||||
"""Return an rds connection"""
|
||||
rds_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
rds = connect_to_acs(footmark.rds, region, **rds_params)
|
||||
|
|
@ -235,10 +271,10 @@ def rds_connect(module):
|
|||
|
||||
|
||||
def ess_connect(module):
|
||||
""" Return an ess connection"""
|
||||
"""Return an ess connection"""
|
||||
ess_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
ess = connect_to_acs(footmark.ess, region, **ess_params)
|
||||
|
|
@ -249,10 +285,10 @@ def ess_connect(module):
|
|||
|
||||
|
||||
def sts_connect(module):
|
||||
""" Return an sts connection"""
|
||||
"""Return an sts connection"""
|
||||
sts_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
sts = connect_to_acs(footmark.sts, region, **sts_params)
|
||||
|
|
@ -263,10 +299,10 @@ def sts_connect(module):
|
|||
|
||||
|
||||
def ram_connect(module):
|
||||
""" Return an ram connection"""
|
||||
"""Return an ram connection"""
|
||||
ram_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
ram = connect_to_acs(footmark.ram, region, **ram_params)
|
||||
|
|
@ -277,10 +313,10 @@ def ram_connect(module):
|
|||
|
||||
|
||||
def market_connect(module):
|
||||
""" Return an market connection"""
|
||||
"""Return an market connection"""
|
||||
market_params = get_profile(module.params)
|
||||
# If we have a region specified, connect to its endpoint.
|
||||
region = module.params.get('alicloud_region')
|
||||
region = module.params.get("alicloud_region")
|
||||
if region:
|
||||
try:
|
||||
market = connect_to_acs(footmark.market, region, **market_params)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue