All Products
Search
Document Center

CloudOps Orchestration Service:ACS-Redis-ReleaseInstancePublicConnection

Last Updated:Nov 26, 2024

Template name

ACS-Redis-ReleaseInstancePublicConnection

Execute Now

Template description

Releases the public endpoint of a Tair (Redis OSS-compatible) instance.

Template type

Automated

Owner

Alibaba Cloud

Input parameters

Parameter

Description

Data type

Required

Default value

Limit

instanceId

The ID of the Tair (Redis OSS-compatible) instance.

String

Yes

regionId

The region ID.

String

No

{{ ACS::RegionId }}

OOSAssumeRole

The RAM role that is assumed by CloudOps Orchestration Service (OOS).

String

No

""

Output parameters

N/A.

Permission policy that is required to execute the template

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "kvstore:DescribeDBInstanceNetInfo",
                "kvstore:ReleaseInstancePublicConnection"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

References

ACS-Redis-ReleaseInstancePublicConnection

Template content

FormatVersion: OOS-2019-06-01
Description:
  en: Release the public address of Redis instance
  name-en: ACS-Redis-ReleaseInstancePublicConnection
  categories:
    - security
Parameters:
  regionId:
    Label:
      en: RegionId
    Type: String
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  instanceId:
    Label:
      en: The id of Redis instances
    Type: String
  OOSAssumeRole:
    Label:
      en: OOSAssumeRole
    Type: String
    Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
  - Name: describeDBInstanceNetInfo
    Action: 'ACS::ExecuteAPI'
    Description:
      en: Query the ip type and address of a Redis instance
    Properties:
      Service: R-KVSTORE
      API: DescribeDBInstanceNetInfo
      Parameters:
        RegionId: '{{ regionId }}'
        InstanceId: '{{ instanceId }}'
    Outputs:
      connectionString:
        Type: String
        ValueSelector: '.NetInfoItems.InstanceNetInfo[] | select(.IPType=="Public") | .ConnectionString'
  - Name: checkPublicAddress
    Action: 'ACS::Choice'
    Description:
      En: Whether to release instance public connection
    Properties:
      DefaultTask: releaseInstancePublicConnection
      Choices:
        - When:
            'Fn::Equals':
              - Null
              - '{{ describeDBInstanceNetInfo.connectionString }}'
          NextTask: 'ACS::END'
  - Name: releaseInstancePublicConnection
    Action: 'ACS::ExecuteAPI'
    Description:
      En: Release the public address of Redis instances
    Properties:
      Service: R-KVSTORE
      API: ReleaseInstancePublicConnection
      Parameters:
        RegionId: '{{ regionId }}'
        InstanceId: '{{ instanceId }}'
        CurrentConnectionString: '{{ describeDBInstanceNetInfo.connectionString }}'
Metadata:
  ALIYUN::OOS::Interface:
    ParameterGroups:
      - Parameters:
          - regionId
          - instanceId
        Label:
          default:
            en: Select Instances
      - Parameters:
          - OOSAssumeRole
        Label:
          default:
            en: Control Options