From bcad8e6f0994bb77d53ba743de673b741b831e0c Mon Sep 17 00:00:00 2001 From: hellertang Date: Mon, 2 May 2022 23:34:26 +0800 Subject: [PATCH] support pgsql kms key --- go.mod | 4 +- go.sum | 30 + .../resource_tc_postgresql_instance.go | 116 ++ .../service_tencentcloud_postgresql.go | 46 +- .../tencentcloud/common/http/request.go | 2 +- .../tencentcloud/postgres/v20170312/client.go | 1126 +++++++++++------ .../tencentcloud/postgres/v20170312/errors.go | 18 + .../tencentcloud/postgres/v20170312/models.go | 365 +++++- vendor/modules.txt | 4 +- .../docs/r/postgresql_instance.html.markdown | 39 + 10 files changed, 1332 insertions(+), 418 deletions(-) diff --git a/go.mod b/go.mod index 2ab07b2071..89611f91bb 100644 --- a/go.mod +++ b/go.mod @@ -31,7 +31,7 @@ require ( github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.283 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit v1.0.199 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.377 - github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.389 + github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.391 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.385 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.359 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dayu v1.0.335 @@ -43,7 +43,7 @@ require ( github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/kms v1.0.199 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.199 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.329 - github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.332 + github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.391 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.290 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.199 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/scf v1.0.275 diff --git a/go.sum b/go.sum index 7351ce3479..6923c6ada8 100644 --- a/go.sum +++ b/go.sum @@ -523,8 +523,11 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.383 h1:1TFC github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.383/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.385 h1:bwgb0FZJRlPcDn3uRJfA7rI7dZejg7LZS0b8rUBE2CQ= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.385/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.386/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.389 h1:Ndw52BGqx09zNotV8hFkEw8kHbWa2MG+1Txwqwv3URY= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.389/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.391 h1:aygYrFPSM5eFw2ysGJH4eAV4UXxl+zbPNaQWOHPlS3o= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.391/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.199 h1:ajgJogYSIQ5u1PIbiV5nsvr5K0fYpm1/T7Dy+mxEM6U= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.199/go.mod h1:AqyM/ZZMD7q5mHBqNY9YImbSpEpoEe7E/vrTbUWX+po= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.351 h1:zqJsH5pxGT57La7NAOOyMQxsuM11pupNBwV1dzXcT24= @@ -570,6 +573,10 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.306 h1:R/ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.306/go.mod h1:Rh/4NXBd0aqmaRGDYcW4gL2Zi8JShGZiB23zrfVaS90= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.332 h1:SVk3UU8oGyAMJOlyYvJW1luD8GqLnfnBLg0BEzUyH6k= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.332/go.mod h1:Rh/4NXBd0aqmaRGDYcW4gL2Zi8JShGZiB23zrfVaS90= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.386 h1:AQdMq4sHZ0xucFnH5irRbvmBgD6COgW0GqAYIwo7gLA= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.386/go.mod h1:51M3XBtzN29uP0rxKs7+cdEidtPlSm+oGMj2gXBqXcg= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.391 h1:1yZh5MrlFqawVGhLdd38hi5HoaKc4LgB+8cEgLT2Qo4= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.391/go.mod h1:BZSQiBjNQ+6/gL1fFXBr/0BOuPTdHmSYoIg4/AkmZB4= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.290 h1:osYZxh9ApEc8UpvIMwjAUfdl7ytRcWUpcnnqLIpiJ/U= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.290/go.mod h1:En+pdagcHkAASorHT1l8R6tUtieRNNxaQ7nfyqWPefk= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.199 h1:lXCng7HQqvubF7uwa7x5COsDZlJEjEJ/RBpaeYGc0+I= @@ -646,6 +653,7 @@ github.com/yangwenmai/ratelimit v0.0.0-20180104140304-44221c2292e1 h1:q6c//IMJug github.com/yangwenmai/ratelimit v0.0.0-20180104140304-44221c2292e1/go.mod h1:Rl8MvKI/yVRGN91gMEZAIf/92QtFQBSG/QFRHWQZtmo= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/zclconf/go-cty v1.0.0/go.mod h1:xnAOWiHeOqg2nWS62VtQ7pbOu17FtxJNW8RLEih+O3s= github.com/zclconf/go-cty v1.1.0/go.mod h1:xnAOWiHeOqg2nWS62VtQ7pbOu17FtxJNW8RLEih+O3s= github.com/zclconf/go-cty v1.2.0/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q/N4PQ8= @@ -670,6 +678,8 @@ golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550 h1:ObdrDkeb4kJdCP557AjRjq69pTHfNouLtWZG7j9rPN8= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 h1:7I4JAnoQBe7ZtJcBaYHi5UtiO8tQHbUSXxL+pnGRANg= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= @@ -683,6 +693,8 @@ golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKG golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0 h1:KU7oHjnv3XNWfa5COkzUifxZmxp1TyI7ImMXqFxLwvQ= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3 h1:kQgndtyPBW/JIYERgdxfwMYh3AVStj88WQTlNDi2a+o= +golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= golang.org/x/net v0.0.0-20180530234432-1e491301e022/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -706,6 +718,9 @@ golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200301022130-244492dfa37a h1:GuSPYbZzB5/dcLNCwLQLsg3obCJtX9IJhpXkvY7kzk0= golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f h1:OfiFi4JbukWwe3lzw+xunroH1mnC1e2Gy5cxNJApiSY= +golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45 h1:SVwTIAaPC2U/AvvLNZ2a7OVsmBpC8L5BlwK1whH3hm0= @@ -716,6 +731,7 @@ golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -742,10 +758,20 @@ golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200523222454-059865788121 h1:rITEj+UZHYC927n8GT97eC3zrpzXdb/voyeOuVKS46o= golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211019181941-9d821ace8654 h1:id054HUawV2/6IGm2IV8KZQjqtwAOo2CYlOToYqa0d0= +golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -781,10 +807,14 @@ golang.org/x/tools v0.0.0-20200414032229-332987a829c3/go.mod h1:EkVYQZoAsY45+roY golang.org/x/tools v0.0.0-20200422022333-3d57cf2e726e/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200502202811-ed308ab3e770 h1:M9Fif0OxNji8w+HvmhVQ8KJtiZOsjU9RgslJGhn95XE= golang.org/x/tools v0.0.0-20200502202811-ed308ab3e770/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.1.10 h1:QjFRCZxdOhBJ/UNgnBZLbNV13DlbnK0quyivTnXJM20= +golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= diff --git a/tencentcloud/resource_tc_postgresql_instance.go b/tencentcloud/resource_tc_postgresql_instance.go index 446f96f83b..85452d72ad 100644 --- a/tencentcloud/resource_tc_postgresql_instance.go +++ b/tencentcloud/resource_tc_postgresql_instance.go @@ -99,6 +99,39 @@ resource "tencentcloud_postgresql_instance" "foo" { } ``` +create pgsql with kms key +``` +resource "tencentcloud_postgresql_instance" "pg" { + name = "tf_postsql_instance" + availability_zone = "ap-guangzhou-6" + charge_type = "POSTPAID_BY_HOUR" + vpc_id = "vpc-86v957zb" + subnet_id = "subnet-enm92y0m" + engine_version = "11.12" + # db_major_vesion = "11" + db_kernel_version = "v11.12_r1.3" + need_support_tde = 1 + kms_key_id = "788c606a-c7b7-11ec-82d1-5254001e5c4e" + kms_region = "ap-guangzhou" + root_password = "xxxxxxxxxx" + charset = "LATIN1" + project_id = 0 + memory = 4 + storage = 100 + + backup_plan { + min_backup_start_time = "00:10:11" + max_backup_start_time = "01:10:11" + base_backup_retention_period = 7 + backup_period = ["tuesday", "wednesday"] + } + + tags = { + tf = "test" + } +} +``` + Import postgresql instance can be imported using the id, e.g. @@ -159,6 +192,21 @@ func resourceTencentCloudPostgresqlInstance() *schema.Resource { Default: "10.4", Description: "Version of the postgresql database engine. Valid values: `10.4`, `11.8`, `12.4`.", }, + "db_major_vesion": { + Type: schema.TypeString, + Optional: true, + Computed: true, + Description: "PostgreSQL major version number. Valid values: 10, 11, 12, 13. " + + "If it is specified, an instance running the latest kernel of PostgreSQL DBMajorVersion will be created.", + }, + "db_kernel_version": { + Type: schema.TypeString, + Optional: true, + Computed: true, + Description: "PostgreSQL kernel version number. " + + "If it is specified, an instance running kernel DBKernelVersion will be created.", + }, + "vpc_id": { Type: schema.TypeString, ForceNew: true, @@ -241,6 +289,24 @@ func resourceTencentCloudPostgresqlInstance() *schema.Resource { ValidateFunc: validateAllowedStringValue(POSTGRESQL_DB_CHARSET), Description: "Charset of the root account. Valid values are `UTF8`,`LATIN1`.", }, + "need_support_tde": { + Type: schema.TypeInt, + Optional: true, + Computed: true, + Description: "Whether to support data transparent encryption, 1: yes, 0: no (default).", + }, + "kms_key_id": { + Type: schema.TypeString, + Optional: true, + Computed: true, + Description: "KeyId of the custom key.", + }, + "kms_region": { + Type: schema.TypeString, + Optional: true, + Computed: true, + Description: "Region of the custom key.", + }, "public_access_switch": { Type: schema.TypeBool, Optional: true, @@ -382,6 +448,29 @@ func resourceTencentCloudPostgresqlInstanceCreate(d *schema.ResourceData, meta i var outErr, inErr error var allowVersion, allowMemory []string + var ( + dbMajorVersion = "" + dbKernelVersion = "" + needSupportTde = 0 + kmsKeyId = "" + kmsRegion = "" + ) + + if v, ok := d.GetOk("db_major_vesion"); ok { + dbMajorVersion = v.(string) + } + if v, ok := d.GetOk("db_kernel_version"); ok { + dbKernelVersion = v.(string) + } + if v, ok := d.GetOk("need_support_tde"); ok { + needSupportTde = v.(int) + } + if v, ok := d.GetOk("kms_key_id"); ok { + kmsKeyId = v.(string) + } + if v, ok := d.GetOk("kms_region"); ok { + kmsRegion = v.(string) + } requestSecurityGroup := make([]string, 0, len(securityGroups)) for _, v := range securityGroups { @@ -450,6 +539,8 @@ func resourceTencentCloudPostgresqlInstanceCreate(d *schema.ResourceData, meta i instanceId, inErr = postgresqlService.CreatePostgresqlInstance(ctx, name, dbVersion, + dbMajorVersion, + dbKernelVersion, payType, specCode, 0, projectId, @@ -463,6 +554,9 @@ func resourceTencentCloudPostgresqlInstanceCreate(d *schema.ResourceData, meta i password, charset, dbNodeSet, + needSupportTde, + kmsKeyId, + kmsRegion, ) if inErr != nil { return retryError(inErr) @@ -841,6 +935,13 @@ func resourceTencentCloudPostgresqlInstanceUpdate(d *schema.ResourceData, meta i paramEntrys["max_standby_streaming_delay"] = strconv.Itoa(v.(int)) } } + if d.HasChange("db_major_vesion") || d.HasChange("db_kernel_version") { + return fmt.Errorf("Not support change db major version or kernel version.") + } + + if d.HasChange("need_support_tde") || d.HasChange("kms_key_id") || d.HasChange("kms_region") { + return fmt.Errorf("Not support change params contact with data transparent encryption.") + } if len(paramEntrys) != 0 { outErr = resource.Retry(writeRetryTimeout, func() *resource.RetryError { inErr := postgresqlService.ModifyPgParams(ctx, instanceId, paramEntrys) @@ -917,6 +1018,8 @@ func resourceTencentCloudPostgresqlInstanceRead(d *schema.ResourceData, meta int _ = d.Set("vpc_id", instance.VpcId) _ = d.Set("subnet_id", instance.SubnetId) _ = d.Set("engine_version", instance.DBVersion) + _ = d.Set("db_major_vesion", instance.DBMajorVersion) + _ = d.Set("db_kernel_version", instance.DBKernelVersion) _ = d.Set("name", instance.DBInstanceName) _ = d.Set("charset", instance.DBCharset) if rootUser != "" { @@ -997,6 +1100,19 @@ func resourceTencentCloudPostgresqlInstanceRead(d *schema.ResourceData, meta int _ = d.Set("memory", instance.DBInstanceMemory) _ = d.Set("storage", instance.DBInstanceStorage) + // kms + kmsRequest := postgresql.NewDescribeEncryptionKeysRequest() + kmsRequest.DBInstanceId = helper.String(d.Id()) + _ = d.Set("need_support_tde", instance.IsSupportTDE) + has, kms, err := postgresqlService.DescribeDBEncryptionKeys(ctx, kmsRequest) + if err != nil { + return err + } + if has { + _ = d.Set("kms_key_id", kms.KeyId) + _ = d.Set("kms_region", kms.KeyRegion) + } + // Uid, must use var filters = make([]*postgresql.Filter, 0, 10) idFilter := &postgresql.Filter{ diff --git a/tencentcloud/service_tencentcloud_postgresql.go b/tencentcloud/service_tencentcloud_postgresql.go index 2ea7252003..d815dc596d 100644 --- a/tencentcloud/service_tencentcloud_postgresql.go +++ b/tencentcloud/service_tencentcloud_postgresql.go @@ -21,11 +21,12 @@ type PostgresqlService struct { func (me *PostgresqlService) CreatePostgresqlInstance( ctx context.Context, - name, dbVersion, chargeType, specCode string, autoRenewFlag, projectId, period int, subnetId, vpcId, zone string, + name, dbVersion, dbMajorVersion, dbKernelVersion, chargeType, specCode string, autoRenewFlag, projectId, period int, subnetId, vpcId, zone string, securityGroups []string, storage int, username, password, charset string, dbNodeSet []*postgresql.DBNode, + needSupportTde int, kmsKeyId, kmsRegion string, ) (instanceId string, errRet error) { logId := getLogId(ctx) request := postgresql.NewCreateInstancesRequest() @@ -36,6 +37,12 @@ func (me *PostgresqlService) CreatePostgresqlInstance( }() request.Name = &name request.DBVersion = &dbVersion + if dbMajorVersion != "" { + request.DBMajorVersion = helper.String(dbMajorVersion) + } + if dbKernelVersion != "" { + request.DBKernelVersion = helper.String(dbKernelVersion) + } request.InstanceChargeType = &chargeType request.SpecCode = &specCode request.AutoRenewFlag = helper.IntInt64(autoRenewFlag) @@ -50,6 +57,16 @@ func (me *PostgresqlService) CreatePostgresqlInstance( request.AdminPassword = &password request.Charset = &charset + if needSupportTde == 1 { + request.NeedSupportTDE = helper.IntUint64(1) + if kmsKeyId != "" { + request.KMSKeyId = helper.String(kmsKeyId) + } + if kmsRegion != "" { + request.KMSRegion = helper.String(kmsRegion) + } + } + if len(securityGroups) > 0 { request.SecurityGroupIds = make([]*string, 0, len(securityGroups)) for v := range securityGroups { @@ -686,6 +703,33 @@ func (me *PostgresqlService) DescribeDBInstanceAttribute(ctx context.Context, re return } +func (me *PostgresqlService) DescribeDBEncryptionKeys(ctx context.Context, request *postgresql.DescribeEncryptionKeysRequest) (has bool, key *postgresql.EncryptionKey, errRet error) { + logId := getLogId(ctx) + defer func() { + if errRet != nil { + log.Printf("[CRITAL]%s api[%s] fail, request body [%s], reason[%s]\n", + logId, request.GetAction(), request.ToJsonString(), errRet.Error()) + } + }() + + ratelimit.Check(request.GetAction()) + response, err := me.client.UsePostgresqlClient().DescribeEncryptionKeys(request) + if err != nil { + errRet = err + return + } + + keys := response.Response.EncryptionKeys + if len(keys) < 1 { + return + } + has = true + key = keys[0] + log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", + logId, request.GetAction(), request.ToJsonString(), response.ToJsonString()) + return +} + func (me *PostgresqlService) DescribePostgresqlReadOnlyGroups(ctx context.Context, filter []*postgresql.Filter) (instanceList []*postgresql.ReadOnlyGroup, errRet error) { logId := getLogId(ctx) request := postgresql.NewDescribeReadOnlyGroupsRequest() diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go index b8e8945a92..2c088e510f 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go @@ -254,7 +254,7 @@ func CompleteCommonParams(request Request, region string) { params["Action"] = request.GetAction() params["Timestamp"] = strconv.FormatInt(time.Now().Unix(), 10) params["Nonce"] = strconv.Itoa(rand.Int()) - params["RequestClient"] = "SDK_GO_1.0.389" + params["RequestClient"] = "SDK_GO_1.0.391" } func ConstructParams(req Request) (err error) { diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/client.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/client.go index 0816a39f76..398c914829 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/client.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/client.go @@ -16,6 +16,7 @@ package v20170312 import ( "context" + "errors" "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common" tchttp "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http" "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile" @@ -87,13 +88,7 @@ func NewAddDBInstanceToReadOnlyGroupResponse() (response *AddDBInstanceToReadOnl // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) AddDBInstanceToReadOnlyGroup(request *AddDBInstanceToReadOnlyGroupRequest) (response *AddDBInstanceToReadOnlyGroupResponse, err error) { - if request == nil { - request = NewAddDBInstanceToReadOnlyGroupRequest() - } - - response = NewAddDBInstanceToReadOnlyGroupResponse() - err = c.Send(request, response) - return + return c.AddDBInstanceToReadOnlyGroupWithContext(context.Background(), request) } // AddDBInstanceToReadOnlyGroup @@ -125,6 +120,11 @@ func (c *Client) AddDBInstanceToReadOnlyGroupWithContext(ctx context.Context, re if request == nil { request = NewAddDBInstanceToReadOnlyGroupRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("AddDBInstanceToReadOnlyGroup require credential") + } + request.SetContext(ctx) response = NewAddDBInstanceToReadOnlyGroupResponse() @@ -168,15 +168,10 @@ func NewCloneDBInstanceResponse() (response *CloneDBInstanceResponse) { // INVALIDPARAMETERVALUE_ILLEGALREGION = "InvalidParameterValue.IllegalRegion" // INVALIDPARAMETERVALUE_ILLEGALZONE = "InvalidParameterValue.IllegalZone" // INVALIDPARAMETERVALUE_INVALIDPARAMETERVALUEERROR = "InvalidParameterValue.InvalidParameterValueError" +// INVALIDPARAMETERVALUE_INVALIDZONEIDERROR = "InvalidParameterValue.InvalidZoneIdError" // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" func (c *Client) CloneDBInstance(request *CloneDBInstanceRequest) (response *CloneDBInstanceResponse, err error) { - if request == nil { - request = NewCloneDBInstanceRequest() - } - - response = NewCloneDBInstanceResponse() - err = c.Send(request, response) - return + return c.CloneDBInstanceWithContext(context.Background(), request) } // CloneDBInstance @@ -198,11 +193,17 @@ func (c *Client) CloneDBInstance(request *CloneDBInstanceRequest) (response *Clo // INVALIDPARAMETERVALUE_ILLEGALREGION = "InvalidParameterValue.IllegalRegion" // INVALIDPARAMETERVALUE_ILLEGALZONE = "InvalidParameterValue.IllegalZone" // INVALIDPARAMETERVALUE_INVALIDPARAMETERVALUEERROR = "InvalidParameterValue.InvalidParameterValueError" +// INVALIDPARAMETERVALUE_INVALIDZONEIDERROR = "InvalidParameterValue.InvalidZoneIdError" // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" func (c *Client) CloneDBInstanceWithContext(ctx context.Context, request *CloneDBInstanceRequest) (response *CloneDBInstanceResponse, err error) { if request == nil { request = NewCloneDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("CloneDBInstance require credential") + } + request.SetContext(ctx) response = NewCloneDBInstanceResponse() @@ -250,13 +251,7 @@ func NewCloseDBExtranetAccessResponse() (response *CloseDBExtranetAccessResponse // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) CloseDBExtranetAccess(request *CloseDBExtranetAccessRequest) (response *CloseDBExtranetAccessResponse, err error) { - if request == nil { - request = NewCloseDBExtranetAccessRequest() - } - - response = NewCloseDBExtranetAccessResponse() - err = c.Send(request, response) - return + return c.CloseDBExtranetAccessWithContext(context.Background(), request) } // CloseDBExtranetAccess @@ -285,6 +280,11 @@ func (c *Client) CloseDBExtranetAccessWithContext(ctx context.Context, request * if request == nil { request = NewCloseDBExtranetAccessRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("CloseDBExtranetAccess require credential") + } + request.SetContext(ctx) response = NewCloseDBExtranetAccessResponse() @@ -351,13 +351,7 @@ func NewCloseServerlessDBExtranetAccessResponse() (response *CloseServerlessDBEx // UNKNOWNERROR = "UnknownError" // VPCERROR = "VpcError" func (c *Client) CloseServerlessDBExtranetAccess(request *CloseServerlessDBExtranetAccessRequest) (response *CloseServerlessDBExtranetAccessResponse, err error) { - if request == nil { - request = NewCloseServerlessDBExtranetAccessRequest() - } - - response = NewCloseServerlessDBExtranetAccessResponse() - err = c.Send(request, response) - return + return c.CloseServerlessDBExtranetAccessWithContext(context.Background(), request) } // CloseServerlessDBExtranetAccess @@ -405,6 +399,11 @@ func (c *Client) CloseServerlessDBExtranetAccessWithContext(ctx context.Context, if request == nil { request = NewCloseServerlessDBExtranetAccessRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("CloseServerlessDBExtranetAccess require credential") + } + request.SetContext(ctx) response = NewCloseServerlessDBExtranetAccessResponse() @@ -412,6 +411,89 @@ func (c *Client) CloseServerlessDBExtranetAccessWithContext(ctx context.Context, return } +func NewCreateDBInstanceNetworkAccessRequest() (request *CreateDBInstanceNetworkAccessRequest) { + request = &CreateDBInstanceNetworkAccessRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("postgres", APIVersion, "CreateDBInstanceNetworkAccess") + + + return +} + +func NewCreateDBInstanceNetworkAccessResponse() (response *CreateDBInstanceNetworkAccessResponse) { + response = &CreateDBInstanceNetworkAccessResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// CreateDBInstanceNetworkAccess +// 可对实例进行网络的添加操作。 +// +// 可能返回的错误码: +// AUTHFAILURE = "AuthFailure" +// FAILEDOPERATION_CAMSIGANDAUTHERROR = "FailedOperation.CamSigAndAuthError" +// FAILEDOPERATION_CREATEBASICNETWORKDENIEDERROR = "FailedOperation.CreateBasicNetworkDeniedError" +// FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" +// FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" +// FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" +// FAILEDOPERATION_FLOWCREATEERROR = "FailedOperation.FlowCreateError" +// FAILEDOPERATION_GETSUBNETERROR = "FailedOperation.GetSubnetError" +// FAILEDOPERATION_GETVPCINFOERROR = "FailedOperation.GetVpcInfoError" +// FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" +// FAILEDOPERATION_QUERYSPECERROR = "FailedOperation.QuerySpecError" +// FAILEDOPERATION_SERVERLESSNOTSUPPORTEDERROR = "FailedOperation.ServerlessNotSupportedError" +// FLOWERROR = "FlowError" +// INTERNALERROR_MARSHALERROR = "InternalError.MarshalError" +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" +// OPERATIONDENIED_INSTANCEIPV6NOTSUPPORTEDERROR = "OperationDenied.InstanceIpv6NotSupportedError" +// OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" +// RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" +func (c *Client) CreateDBInstanceNetworkAccess(request *CreateDBInstanceNetworkAccessRequest) (response *CreateDBInstanceNetworkAccessResponse, err error) { + return c.CreateDBInstanceNetworkAccessWithContext(context.Background(), request) +} + +// CreateDBInstanceNetworkAccess +// 可对实例进行网络的添加操作。 +// +// 可能返回的错误码: +// AUTHFAILURE = "AuthFailure" +// FAILEDOPERATION_CAMSIGANDAUTHERROR = "FailedOperation.CamSigAndAuthError" +// FAILEDOPERATION_CREATEBASICNETWORKDENIEDERROR = "FailedOperation.CreateBasicNetworkDeniedError" +// FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" +// FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" +// FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" +// FAILEDOPERATION_FLOWCREATEERROR = "FailedOperation.FlowCreateError" +// FAILEDOPERATION_GETSUBNETERROR = "FailedOperation.GetSubnetError" +// FAILEDOPERATION_GETVPCINFOERROR = "FailedOperation.GetVpcInfoError" +// FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" +// FAILEDOPERATION_QUERYSPECERROR = "FailedOperation.QuerySpecError" +// FAILEDOPERATION_SERVERLESSNOTSUPPORTEDERROR = "FailedOperation.ServerlessNotSupportedError" +// FLOWERROR = "FlowError" +// INTERNALERROR_MARSHALERROR = "InternalError.MarshalError" +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" +// OPERATIONDENIED_INSTANCEIPV6NOTSUPPORTEDERROR = "OperationDenied.InstanceIpv6NotSupportedError" +// OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" +// RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" +func (c *Client) CreateDBInstanceNetworkAccessWithContext(ctx context.Context, request *CreateDBInstanceNetworkAccessRequest) (response *CreateDBInstanceNetworkAccessResponse, err error) { + if request == nil { + request = NewCreateDBInstanceNetworkAccessRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("CreateDBInstanceNetworkAccess require credential") + } + + request.SetContext(ctx) + + response = NewCreateDBInstanceNetworkAccessResponse() + err = c.Send(request, response) + return +} + func NewCreateDBInstancesRequest() (request *CreateDBInstancesRequest) { request = &CreateDBInstancesRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -502,13 +584,7 @@ func NewCreateDBInstancesResponse() (response *CreateDBInstancesResponse) { // UNAUTHORIZEDOPERATION_USERHASNOREALNAMEAUTHENTICATION = "UnauthorizedOperation.UserHasNoRealnameAuthentication" // UNKNOWNERROR = "UnknownError" func (c *Client) CreateDBInstances(request *CreateDBInstancesRequest) (response *CreateDBInstancesResponse, err error) { - if request == nil { - request = NewCreateDBInstancesRequest() - } - - response = NewCreateDBInstancesResponse() - err = c.Send(request, response) - return + return c.CreateDBInstancesWithContext(context.Background(), request) } // CreateDBInstances @@ -587,6 +663,11 @@ func (c *Client) CreateDBInstancesWithContext(ctx context.Context, request *Crea if request == nil { request = NewCreateDBInstancesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("CreateDBInstances require credential") + } + request.SetContext(ctx) response = NewCreateDBInstancesResponse() @@ -672,6 +753,7 @@ func NewCreateInstancesResponse() (response *CreateInstancesResponse) { // INVALIDPARAMETERVALUE_PARAMETERCHARACTERERROR = "InvalidParameterValue.ParameterCharacterError" // INVALIDPARAMETERVALUE_PARAMETERHANDLEERROR = "InvalidParameterValue.ParameterHandleError" // INVALIDPARAMETERVALUE_PARAMETERLENGTHLIMITERROR = "InvalidParameterValue.ParameterLengthLimitError" +// INVALIDPARAMETERVALUE_PARAMETEROUTRANGEERROR = "InvalidParameterValue.ParameterOutRangeError" // INVALIDPARAMETERVALUE_REGIONNOTSUPPORTED = "InvalidParameterValue.RegionNotSupported" // INVALIDPARAMETERVALUE_SPECNOTRECOGNIZEDERROR = "InvalidParameterValue.SpecNotRecognizedError" // INVALIDPARAMETERVALUE_STRUCTPARSEFAILED = "InvalidParameterValue.StructParseFailed" @@ -687,13 +769,7 @@ func NewCreateInstancesResponse() (response *CreateInstancesResponse) { // UNAUTHORIZEDOPERATION_USERHASNOREALNAMEAUTHENTICATION = "UnauthorizedOperation.UserHasNoRealnameAuthentication" // UNKNOWNERROR = "UnknownError" func (c *Client) CreateInstances(request *CreateInstancesRequest) (response *CreateInstancesResponse, err error) { - if request == nil { - request = NewCreateInstancesRequest() - } - - response = NewCreateInstancesResponse() - err = c.Send(request, response) - return + return c.CreateInstancesWithContext(context.Background(), request) } // CreateInstances @@ -757,6 +833,7 @@ func (c *Client) CreateInstances(request *CreateInstancesRequest) (response *Cre // INVALIDPARAMETERVALUE_PARAMETERCHARACTERERROR = "InvalidParameterValue.ParameterCharacterError" // INVALIDPARAMETERVALUE_PARAMETERHANDLEERROR = "InvalidParameterValue.ParameterHandleError" // INVALIDPARAMETERVALUE_PARAMETERLENGTHLIMITERROR = "InvalidParameterValue.ParameterLengthLimitError" +// INVALIDPARAMETERVALUE_PARAMETEROUTRANGEERROR = "InvalidParameterValue.ParameterOutRangeError" // INVALIDPARAMETERVALUE_REGIONNOTSUPPORTED = "InvalidParameterValue.RegionNotSupported" // INVALIDPARAMETERVALUE_SPECNOTRECOGNIZEDERROR = "InvalidParameterValue.SpecNotRecognizedError" // INVALIDPARAMETERVALUE_STRUCTPARSEFAILED = "InvalidParameterValue.StructParseFailed" @@ -775,6 +852,11 @@ func (c *Client) CreateInstancesWithContext(ctx context.Context, request *Create if request == nil { request = NewCreateInstancesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("CreateInstances require credential") + } + request.SetContext(ctx) response = NewCreateInstancesResponse() @@ -839,6 +921,7 @@ func NewCreateReadOnlyDBInstanceResponse() (response *CreateReadOnlyDBInstanceRe // INVALIDPARAMETER_VPCNOTFOUNDERROR = "InvalidParameter.VpcNotFoundError" // INVALIDPARAMETERVALUE_ACCOUNTEXIST = "InvalidParameterValue.AccountExist" // INVALIDPARAMETERVALUE_BADSPEC = "InvalidParameterValue.BadSpec" +// INVALIDPARAMETERVALUE_DATACONVERTERROR = "InvalidParameterValue.DataConvertError" // INVALIDPARAMETERVALUE_ILLEGALINSTANCECHARGETYPE = "InvalidParameterValue.IllegalInstanceChargeType" // INVALIDPARAMETERVALUE_ILLEGALPROJECTID = "InvalidParameterValue.IllegalProjectId" // INVALIDPARAMETERVALUE_ILLEGALREGION = "InvalidParameterValue.IllegalRegion" @@ -873,13 +956,7 @@ func NewCreateReadOnlyDBInstanceResponse() (response *CreateReadOnlyDBInstanceRe // UNAUTHORIZEDOPERATION_USERHASNOREALNAMEAUTHENTICATION = "UnauthorizedOperation.UserHasNoRealnameAuthentication" // UNKNOWNERROR = "UnknownError" func (c *Client) CreateReadOnlyDBInstance(request *CreateReadOnlyDBInstanceRequest) (response *CreateReadOnlyDBInstanceResponse, err error) { - if request == nil { - request = NewCreateReadOnlyDBInstanceRequest() - } - - response = NewCreateReadOnlyDBInstanceResponse() - err = c.Send(request, response) - return + return c.CreateReadOnlyDBInstanceWithContext(context.Background(), request) } // CreateReadOnlyDBInstance @@ -922,6 +999,7 @@ func (c *Client) CreateReadOnlyDBInstance(request *CreateReadOnlyDBInstanceReque // INVALIDPARAMETER_VPCNOTFOUNDERROR = "InvalidParameter.VpcNotFoundError" // INVALIDPARAMETERVALUE_ACCOUNTEXIST = "InvalidParameterValue.AccountExist" // INVALIDPARAMETERVALUE_BADSPEC = "InvalidParameterValue.BadSpec" +// INVALIDPARAMETERVALUE_DATACONVERTERROR = "InvalidParameterValue.DataConvertError" // INVALIDPARAMETERVALUE_ILLEGALINSTANCECHARGETYPE = "InvalidParameterValue.IllegalInstanceChargeType" // INVALIDPARAMETERVALUE_ILLEGALPROJECTID = "InvalidParameterValue.IllegalProjectId" // INVALIDPARAMETERVALUE_ILLEGALREGION = "InvalidParameterValue.IllegalRegion" @@ -959,6 +1037,11 @@ func (c *Client) CreateReadOnlyDBInstanceWithContext(ctx context.Context, reques if request == nil { request = NewCreateReadOnlyDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("CreateReadOnlyDBInstance require credential") + } + request.SetContext(ctx) response = NewCreateReadOnlyDBInstanceResponse() @@ -1013,13 +1096,7 @@ func NewCreateReadOnlyGroupResponse() (response *CreateReadOnlyGroupResponse) { // STRUCTPARSEFAILED = "StructParseFailed" // UNKNOWNERROR = "UnknownError" func (c *Client) CreateReadOnlyGroup(request *CreateReadOnlyGroupRequest) (response *CreateReadOnlyGroupResponse, err error) { - if request == nil { - request = NewCreateReadOnlyGroupRequest() - } - - response = NewCreateReadOnlyGroupResponse() - err = c.Send(request, response) - return + return c.CreateReadOnlyGroupWithContext(context.Background(), request) } // CreateReadOnlyGroup @@ -1055,6 +1132,11 @@ func (c *Client) CreateReadOnlyGroupWithContext(ctx context.Context, request *Cr if request == nil { request = NewCreateReadOnlyGroupRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("CreateReadOnlyGroup require credential") + } + request.SetContext(ctx) response = NewCreateReadOnlyGroupResponse() @@ -1062,6 +1144,83 @@ func (c *Client) CreateReadOnlyGroupWithContext(ctx context.Context, request *Cr return } +func NewCreateReadOnlyGroupNetworkAccessRequest() (request *CreateReadOnlyGroupNetworkAccessRequest) { + request = &CreateReadOnlyGroupNetworkAccessRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("postgres", APIVersion, "CreateReadOnlyGroupNetworkAccess") + + + return +} + +func NewCreateReadOnlyGroupNetworkAccessResponse() (response *CreateReadOnlyGroupNetworkAccessResponse) { + response = &CreateReadOnlyGroupNetworkAccessResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// CreateReadOnlyGroupNetworkAccess +// 可对RO组进行网络的添加操作。 +// +// 可能返回的错误码: +// AUTHFAILURE = "AuthFailure" +// FAILEDOPERATION_CAMSIGANDAUTHERROR = "FailedOperation.CamSigAndAuthError" +// FAILEDOPERATION_CREATEBASICNETWORKDENIEDERROR = "FailedOperation.CreateBasicNetworkDeniedError" +// FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" +// FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" +// FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" +// FAILEDOPERATION_FLOWCREATEERROR = "FailedOperation.FlowCreateError" +// FAILEDOPERATION_GETSUBNETERROR = "FailedOperation.GetSubnetError" +// FAILEDOPERATION_GETVPCINFOERROR = "FailedOperation.GetVpcInfoError" +// FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" +// FAILEDOPERATION_ROGROUPNOTFOUNDERROR = "FailedOperation.ROGroupNotFoundError" +// FLOWERROR = "FlowError" +// INTERNALERROR_FLOWERROR = "InternalError.FlowError" +// INTERNALERROR_MARSHALERROR = "InternalError.MarshalError" +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_ROGROUPSTATUSERROR = "OperationDenied.ROGroupStatusError" +func (c *Client) CreateReadOnlyGroupNetworkAccess(request *CreateReadOnlyGroupNetworkAccessRequest) (response *CreateReadOnlyGroupNetworkAccessResponse, err error) { + return c.CreateReadOnlyGroupNetworkAccessWithContext(context.Background(), request) +} + +// CreateReadOnlyGroupNetworkAccess +// 可对RO组进行网络的添加操作。 +// +// 可能返回的错误码: +// AUTHFAILURE = "AuthFailure" +// FAILEDOPERATION_CAMSIGANDAUTHERROR = "FailedOperation.CamSigAndAuthError" +// FAILEDOPERATION_CREATEBASICNETWORKDENIEDERROR = "FailedOperation.CreateBasicNetworkDeniedError" +// FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" +// FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" +// FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" +// FAILEDOPERATION_FLOWCREATEERROR = "FailedOperation.FlowCreateError" +// FAILEDOPERATION_GETSUBNETERROR = "FailedOperation.GetSubnetError" +// FAILEDOPERATION_GETVPCINFOERROR = "FailedOperation.GetVpcInfoError" +// FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" +// FAILEDOPERATION_ROGROUPNOTFOUNDERROR = "FailedOperation.ROGroupNotFoundError" +// FLOWERROR = "FlowError" +// INTERNALERROR_FLOWERROR = "InternalError.FlowError" +// INTERNALERROR_MARSHALERROR = "InternalError.MarshalError" +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_ROGROUPSTATUSERROR = "OperationDenied.ROGroupStatusError" +func (c *Client) CreateReadOnlyGroupNetworkAccessWithContext(ctx context.Context, request *CreateReadOnlyGroupNetworkAccessRequest) (response *CreateReadOnlyGroupNetworkAccessResponse, err error) { + if request == nil { + request = NewCreateReadOnlyGroupNetworkAccessRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("CreateReadOnlyGroupNetworkAccess require credential") + } + + request.SetContext(ctx) + + response = NewCreateReadOnlyGroupNetworkAccessResponse() + err = c.Send(request, response) + return +} + func NewCreateServerlessDBInstanceRequest() (request *CreateServerlessDBInstanceRequest) { request = &CreateServerlessDBInstanceRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -1107,6 +1266,7 @@ func NewCreateServerlessDBInstanceResponse() (response *CreateServerlessDBInstan // INVALIDPARAMETERVALUE_INVALIDPARAMETERVALUEERROR = "InvalidParameterValue.InvalidParameterValueError" // INVALIDPARAMETERVALUE_INVALIDPASSWORDFORMAT = "InvalidParameterValue.InvalidPasswordFormat" // INVALIDPARAMETERVALUE_INVALIDZONEIDERROR = "InvalidParameterValue.InvalidZoneIdError" +// INVALIDPARAMETERVALUE_PARAMETERCHARACTERERROR = "InvalidParameterValue.ParameterCharacterError" // INVALIDPARAMETERVALUE_PARAMETERHANDLEERROR = "InvalidParameterValue.ParameterHandleError" // INVALIDPARAMETERVALUE_REGIONNOTSUPPORTED = "InvalidParameterValue.RegionNotSupported" // INVALIDPARAMETERVALUE_STRUCTPARSEFAILED = "InvalidParameterValue.StructParseFailed" @@ -1117,13 +1277,7 @@ func NewCreateServerlessDBInstanceResponse() (response *CreateServerlessDBInstan // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" // UNAUTHORIZEDOPERATION_USERHASNOREALNAMEAUTHENTICATION = "UnauthorizedOperation.UserHasNoRealnameAuthentication" func (c *Client) CreateServerlessDBInstance(request *CreateServerlessDBInstanceRequest) (response *CreateServerlessDBInstanceResponse, err error) { - if request == nil { - request = NewCreateServerlessDBInstanceRequest() - } - - response = NewCreateServerlessDBInstanceResponse() - err = c.Send(request, response) - return + return c.CreateServerlessDBInstanceWithContext(context.Background(), request) } // CreateServerlessDBInstance @@ -1154,6 +1308,7 @@ func (c *Client) CreateServerlessDBInstance(request *CreateServerlessDBInstanceR // INVALIDPARAMETERVALUE_INVALIDPARAMETERVALUEERROR = "InvalidParameterValue.InvalidParameterValueError" // INVALIDPARAMETERVALUE_INVALIDPASSWORDFORMAT = "InvalidParameterValue.InvalidPasswordFormat" // INVALIDPARAMETERVALUE_INVALIDZONEIDERROR = "InvalidParameterValue.InvalidZoneIdError" +// INVALIDPARAMETERVALUE_PARAMETERCHARACTERERROR = "InvalidParameterValue.ParameterCharacterError" // INVALIDPARAMETERVALUE_PARAMETERHANDLEERROR = "InvalidParameterValue.ParameterHandleError" // INVALIDPARAMETERVALUE_REGIONNOTSUPPORTED = "InvalidParameterValue.RegionNotSupported" // INVALIDPARAMETERVALUE_STRUCTPARSEFAILED = "InvalidParameterValue.StructParseFailed" @@ -1167,6 +1322,11 @@ func (c *Client) CreateServerlessDBInstanceWithContext(ctx context.Context, requ if request == nil { request = NewCreateServerlessDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("CreateServerlessDBInstance require credential") + } + request.SetContext(ctx) response = NewCreateServerlessDBInstanceResponse() @@ -1174,6 +1334,83 @@ func (c *Client) CreateServerlessDBInstanceWithContext(ctx context.Context, requ return } +func NewDeleteDBInstanceNetworkAccessRequest() (request *DeleteDBInstanceNetworkAccessRequest) { + request = &DeleteDBInstanceNetworkAccessRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("postgres", APIVersion, "DeleteDBInstanceNetworkAccess") + + + return +} + +func NewDeleteDBInstanceNetworkAccessResponse() (response *DeleteDBInstanceNetworkAccessResponse) { + response = &DeleteDBInstanceNetworkAccessResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// DeleteDBInstanceNetworkAccess +// 可对实例进行网络的删除操作。 +// +// 可能返回的错误码: +// AUTHFAILURE = "AuthFailure" +// FAILEDOPERATION_CAMAUTHFAILED = "FailedOperation.CamAuthFailed" +// FAILEDOPERATION_CAMSIGANDAUTHERROR = "FailedOperation.CamSigAndAuthError" +// FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" +// FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" +// FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" +// FAILEDOPERATION_FLOWCREATEERROR = "FailedOperation.FlowCreateError" +// FAILEDOPERATION_GETVPCINFOERROR = "FailedOperation.GetVpcInfoError" +// FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" +// FAILEDOPERATION_QUERYSPECERROR = "FailedOperation.QuerySpecError" +// FAILEDOPERATION_SERVERLESSNOTSUPPORTEDERROR = "FailedOperation.ServerlessNotSupportedError" +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" +// OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" +// OPERATIONDENIED_ROINSTANCEIPV6NOTSUPPORTEDERROR = "OperationDenied.ROInstanceIpv6NotSupportedError" +// RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" +func (c *Client) DeleteDBInstanceNetworkAccess(request *DeleteDBInstanceNetworkAccessRequest) (response *DeleteDBInstanceNetworkAccessResponse, err error) { + return c.DeleteDBInstanceNetworkAccessWithContext(context.Background(), request) +} + +// DeleteDBInstanceNetworkAccess +// 可对实例进行网络的删除操作。 +// +// 可能返回的错误码: +// AUTHFAILURE = "AuthFailure" +// FAILEDOPERATION_CAMAUTHFAILED = "FailedOperation.CamAuthFailed" +// FAILEDOPERATION_CAMSIGANDAUTHERROR = "FailedOperation.CamSigAndAuthError" +// FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" +// FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" +// FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" +// FAILEDOPERATION_FLOWCREATEERROR = "FailedOperation.FlowCreateError" +// FAILEDOPERATION_GETVPCINFOERROR = "FailedOperation.GetVpcInfoError" +// FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" +// FAILEDOPERATION_QUERYSPECERROR = "FailedOperation.QuerySpecError" +// FAILEDOPERATION_SERVERLESSNOTSUPPORTEDERROR = "FailedOperation.ServerlessNotSupportedError" +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" +// OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" +// OPERATIONDENIED_ROINSTANCEIPV6NOTSUPPORTEDERROR = "OperationDenied.ROInstanceIpv6NotSupportedError" +// RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" +func (c *Client) DeleteDBInstanceNetworkAccessWithContext(ctx context.Context, request *DeleteDBInstanceNetworkAccessRequest) (response *DeleteDBInstanceNetworkAccessResponse, err error) { + if request == nil { + request = NewDeleteDBInstanceNetworkAccessRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("DeleteDBInstanceNetworkAccess require credential") + } + + request.SetContext(ctx) + + response = NewDeleteDBInstanceNetworkAccessResponse() + err = c.Send(request, response) + return +} + func NewDeleteReadOnlyGroupRequest() (request *DeleteReadOnlyGroupRequest) { request = &DeleteReadOnlyGroupRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -1211,13 +1448,7 @@ func NewDeleteReadOnlyGroupResponse() (response *DeleteReadOnlyGroupResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // SYSTEMERROR = "SystemError" func (c *Client) DeleteReadOnlyGroup(request *DeleteReadOnlyGroupRequest) (response *DeleteReadOnlyGroupResponse, err error) { - if request == nil { - request = NewDeleteReadOnlyGroupRequest() - } - - response = NewDeleteReadOnlyGroupResponse() - err = c.Send(request, response) - return + return c.DeleteReadOnlyGroupWithContext(context.Background(), request) } // DeleteReadOnlyGroup @@ -1243,6 +1474,11 @@ func (c *Client) DeleteReadOnlyGroupWithContext(ctx context.Context, request *De if request == nil { request = NewDeleteReadOnlyGroupRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DeleteReadOnlyGroup require credential") + } + request.SetContext(ctx) response = NewDeleteReadOnlyGroupResponse() @@ -1250,6 +1486,75 @@ func (c *Client) DeleteReadOnlyGroupWithContext(ctx context.Context, request *De return } +func NewDeleteReadOnlyGroupNetworkAccessRequest() (request *DeleteReadOnlyGroupNetworkAccessRequest) { + request = &DeleteReadOnlyGroupNetworkAccessRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("postgres", APIVersion, "DeleteReadOnlyGroupNetworkAccess") + + + return +} + +func NewDeleteReadOnlyGroupNetworkAccessResponse() (response *DeleteReadOnlyGroupNetworkAccessResponse) { + response = &DeleteReadOnlyGroupNetworkAccessResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// DeleteReadOnlyGroupNetworkAccess +// 可对RO组进行网络的删除操作。 +// +// 可能返回的错误码: +// AUTHFAILURE = "AuthFailure" +// FAILEDOPERATION_CAMAUTHFAILED = "FailedOperation.CamAuthFailed" +// FAILEDOPERATION_CAMSIGANDAUTHERROR = "FailedOperation.CamSigAndAuthError" +// FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" +// FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" +// FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" +// FAILEDOPERATION_FLOWCREATEERROR = "FailedOperation.FlowCreateError" +// FAILEDOPERATION_GETVPCINFOERROR = "FailedOperation.GetVpcInfoError" +// FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" +// FAILEDOPERATION_ROGROUPNOTFOUNDERROR = "FailedOperation.ROGroupNotFoundError" +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_ROGROUPSTATUSERROR = "OperationDenied.ROGroupStatusError" +func (c *Client) DeleteReadOnlyGroupNetworkAccess(request *DeleteReadOnlyGroupNetworkAccessRequest) (response *DeleteReadOnlyGroupNetworkAccessResponse, err error) { + return c.DeleteReadOnlyGroupNetworkAccessWithContext(context.Background(), request) +} + +// DeleteReadOnlyGroupNetworkAccess +// 可对RO组进行网络的删除操作。 +// +// 可能返回的错误码: +// AUTHFAILURE = "AuthFailure" +// FAILEDOPERATION_CAMAUTHFAILED = "FailedOperation.CamAuthFailed" +// FAILEDOPERATION_CAMSIGANDAUTHERROR = "FailedOperation.CamSigAndAuthError" +// FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" +// FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" +// FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" +// FAILEDOPERATION_FLOWCREATEERROR = "FailedOperation.FlowCreateError" +// FAILEDOPERATION_GETVPCINFOERROR = "FailedOperation.GetVpcInfoError" +// FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" +// FAILEDOPERATION_ROGROUPNOTFOUNDERROR = "FailedOperation.ROGroupNotFoundError" +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_ROGROUPSTATUSERROR = "OperationDenied.ROGroupStatusError" +func (c *Client) DeleteReadOnlyGroupNetworkAccessWithContext(ctx context.Context, request *DeleteReadOnlyGroupNetworkAccessRequest) (response *DeleteReadOnlyGroupNetworkAccessResponse, err error) { + if request == nil { + request = NewDeleteReadOnlyGroupNetworkAccessRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("DeleteReadOnlyGroupNetworkAccess require credential") + } + + request.SetContext(ctx) + + response = NewDeleteReadOnlyGroupNetworkAccessResponse() + err = c.Send(request, response) + return +} + func NewDeleteServerlessDBInstanceRequest() (request *DeleteServerlessDBInstanceRequest) { request = &DeleteServerlessDBInstanceRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -1291,15 +1596,9 @@ func NewDeleteServerlessDBInstanceResponse() (response *DeleteServerlessDBInstan // OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" // REGIONNOTSUPPORTED = "RegionNotSupported" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" -// RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" -func (c *Client) DeleteServerlessDBInstance(request *DeleteServerlessDBInstanceRequest) (response *DeleteServerlessDBInstanceResponse, err error) { - if request == nil { - request = NewDeleteServerlessDBInstanceRequest() - } - - response = NewDeleteServerlessDBInstanceResponse() - err = c.Send(request, response) - return +// RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" +func (c *Client) DeleteServerlessDBInstance(request *DeleteServerlessDBInstanceRequest) (response *DeleteServerlessDBInstanceResponse, err error) { + return c.DeleteServerlessDBInstanceWithContext(context.Background(), request) } // DeleteServerlessDBInstance @@ -1331,6 +1630,11 @@ func (c *Client) DeleteServerlessDBInstanceWithContext(ctx context.Context, requ if request == nil { request = NewDeleteServerlessDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DeleteServerlessDBInstance require credential") + } + request.SetContext(ctx) response = NewDeleteServerlessDBInstanceResponse() @@ -1371,13 +1675,7 @@ func NewDescribeAccountsResponse() (response *DescribeAccountsResponse) { // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeAccounts(request *DescribeAccountsRequest) (response *DescribeAccountsResponse, err error) { - if request == nil { - request = NewDescribeAccountsRequest() - } - - response = NewDescribeAccountsResponse() - err = c.Send(request, response) - return + return c.DescribeAccountsWithContext(context.Background(), request) } // DescribeAccounts @@ -1399,6 +1697,11 @@ func (c *Client) DescribeAccountsWithContext(ctx context.Context, request *Descr if request == nil { request = NewDescribeAccountsRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeAccounts require credential") + } + request.SetContext(ctx) response = NewDescribeAccountsResponse() @@ -1435,13 +1738,7 @@ func NewDescribeAvailableRecoveryTimeResponse() (response *DescribeAvailableReco // OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeAvailableRecoveryTime(request *DescribeAvailableRecoveryTimeRequest) (response *DescribeAvailableRecoveryTimeResponse, err error) { - if request == nil { - request = NewDescribeAvailableRecoveryTimeRequest() - } - - response = NewDescribeAvailableRecoveryTimeResponse() - err = c.Send(request, response) - return + return c.DescribeAvailableRecoveryTimeWithContext(context.Background(), request) } // DescribeAvailableRecoveryTime @@ -1459,6 +1756,11 @@ func (c *Client) DescribeAvailableRecoveryTimeWithContext(ctx context.Context, r if request == nil { request = NewDescribeAvailableRecoveryTimeRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeAvailableRecoveryTime require credential") + } + request.SetContext(ctx) response = NewDescribeAvailableRecoveryTimeResponse() @@ -1497,13 +1799,7 @@ func NewDescribeBackupPlansResponse() (response *DescribeBackupPlansResponse) { // OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeBackupPlans(request *DescribeBackupPlansRequest) (response *DescribeBackupPlansResponse, err error) { - if request == nil { - request = NewDescribeBackupPlansRequest() - } - - response = NewDescribeBackupPlansResponse() - err = c.Send(request, response) - return + return c.DescribeBackupPlansWithContext(context.Background(), request) } // DescribeBackupPlans @@ -1523,6 +1819,11 @@ func (c *Client) DescribeBackupPlansWithContext(ctx context.Context, request *De if request == nil { request = NewDescribeBackupPlansRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeBackupPlans require credential") + } + request.SetContext(ctx) response = NewDescribeBackupPlansResponse() @@ -1559,13 +1860,7 @@ func NewDescribeCloneDBInstanceSpecResponse() (response *DescribeCloneDBInstance // OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" // OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" func (c *Client) DescribeCloneDBInstanceSpec(request *DescribeCloneDBInstanceSpecRequest) (response *DescribeCloneDBInstanceSpecResponse, err error) { - if request == nil { - request = NewDescribeCloneDBInstanceSpecRequest() - } - - response = NewDescribeCloneDBInstanceSpecResponse() - err = c.Send(request, response) - return + return c.DescribeCloneDBInstanceSpecWithContext(context.Background(), request) } // DescribeCloneDBInstanceSpec @@ -1583,6 +1878,11 @@ func (c *Client) DescribeCloneDBInstanceSpecWithContext(ctx context.Context, req if request == nil { request = NewDescribeCloneDBInstanceSpecRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeCloneDBInstanceSpec require credential") + } + request.SetContext(ctx) response = NewDescribeCloneDBInstanceSpecResponse() @@ -1631,13 +1931,7 @@ func NewDescribeDBBackupsResponse() (response *DescribeDBBackupsResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // UNKNOWNERROR = "UnknownError" func (c *Client) DescribeDBBackups(request *DescribeDBBackupsRequest) (response *DescribeDBBackupsResponse, err error) { - if request == nil { - request = NewDescribeDBBackupsRequest() - } - - response = NewDescribeDBBackupsResponse() - err = c.Send(request, response) - return + return c.DescribeDBBackupsWithContext(context.Background(), request) } // DescribeDBBackups @@ -1667,6 +1961,11 @@ func (c *Client) DescribeDBBackupsWithContext(ctx context.Context, request *Desc if request == nil { request = NewDescribeDBBackupsRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeDBBackups require credential") + } + request.SetContext(ctx) response = NewDescribeDBBackupsResponse() @@ -1708,17 +2007,12 @@ func NewDescribeDBErrlogsResponse() (response *DescribeDBErrlogsResponse) { // INVALIDPARAMETERVALUE_INTERFACENAMENOTFOUND = "InvalidParameterValue.InterfaceNameNotFound" // INVALIDPARAMETERVALUE_INVALIDPARAMETERVALUEERROR = "InvalidParameterValue.InvalidParameterValueError" // INVALIDPARAMETERVALUE_PARAMETERHANDLEERROR = "InvalidParameterValue.ParameterHandleError" +// INVALIDPARAMETERVALUE_PARAMETERVALUEEXCEEDERROR = "InvalidParameterValue.ParameterValueExceedError" // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeDBErrlogs(request *DescribeDBErrlogsRequest) (response *DescribeDBErrlogsResponse, err error) { - if request == nil { - request = NewDescribeDBErrlogsRequest() - } - - response = NewDescribeDBErrlogsResponse() - err = c.Send(request, response) - return + return c.DescribeDBErrlogsWithContext(context.Background(), request) } // DescribeDBErrlogs @@ -1738,6 +2032,7 @@ func (c *Client) DescribeDBErrlogs(request *DescribeDBErrlogsRequest) (response // INVALIDPARAMETERVALUE_INTERFACENAMENOTFOUND = "InvalidParameterValue.InterfaceNameNotFound" // INVALIDPARAMETERVALUE_INVALIDPARAMETERVALUEERROR = "InvalidParameterValue.InvalidParameterValueError" // INVALIDPARAMETERVALUE_PARAMETERHANDLEERROR = "InvalidParameterValue.ParameterHandleError" +// INVALIDPARAMETERVALUE_PARAMETERVALUEEXCEEDERROR = "InvalidParameterValue.ParameterValueExceedError" // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" @@ -1745,6 +2040,11 @@ func (c *Client) DescribeDBErrlogsWithContext(ctx context.Context, request *Desc if request == nil { request = NewDescribeDBErrlogsRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeDBErrlogs require credential") + } + request.SetContext(ctx) response = NewDescribeDBErrlogsResponse() @@ -1792,13 +2092,7 @@ func NewDescribeDBInstanceAttributeResponse() (response *DescribeDBInstanceAttri // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeDBInstanceAttribute(request *DescribeDBInstanceAttributeRequest) (response *DescribeDBInstanceAttributeResponse, err error) { - if request == nil { - request = NewDescribeDBInstanceAttributeRequest() - } - - response = NewDescribeDBInstanceAttributeResponse() - err = c.Send(request, response) - return + return c.DescribeDBInstanceAttributeWithContext(context.Background(), request) } // DescribeDBInstanceAttribute @@ -1827,6 +2121,11 @@ func (c *Client) DescribeDBInstanceAttributeWithContext(ctx context.Context, req if request == nil { request = NewDescribeDBInstanceAttributeRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeDBInstanceAttribute require credential") + } + request.SetContext(ctx) response = NewDescribeDBInstanceAttributeResponse() @@ -1862,13 +2161,7 @@ func NewDescribeDBInstanceParametersResponse() (response *DescribeDBInstancePara // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // UNKNOWNERROR = "UnknownError" func (c *Client) DescribeDBInstanceParameters(request *DescribeDBInstanceParametersRequest) (response *DescribeDBInstanceParametersResponse, err error) { - if request == nil { - request = NewDescribeDBInstanceParametersRequest() - } - - response = NewDescribeDBInstanceParametersResponse() - err = c.Send(request, response) - return + return c.DescribeDBInstanceParametersWithContext(context.Background(), request) } // DescribeDBInstanceParameters @@ -1885,6 +2178,11 @@ func (c *Client) DescribeDBInstanceParametersWithContext(ctx context.Context, re if request == nil { request = NewDescribeDBInstanceParametersRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeDBInstanceParameters require credential") + } + request.SetContext(ctx) response = NewDescribeDBInstanceParametersResponse() @@ -1935,13 +2233,7 @@ func NewDescribeDBInstancesResponse() (response *DescribeDBInstancesResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) DescribeDBInstances(request *DescribeDBInstancesRequest) (response *DescribeDBInstancesResponse, err error) { - if request == nil { - request = NewDescribeDBInstancesRequest() - } - - response = NewDescribeDBInstancesResponse() - err = c.Send(request, response) - return + return c.DescribeDBInstancesWithContext(context.Background(), request) } // DescribeDBInstances @@ -1973,6 +2265,11 @@ func (c *Client) DescribeDBInstancesWithContext(ctx context.Context, request *De if request == nil { request = NewDescribeDBInstancesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeDBInstances require credential") + } + request.SetContext(ctx) response = NewDescribeDBInstancesResponse() @@ -2017,13 +2314,7 @@ func NewDescribeDBSlowlogsResponse() (response *DescribeDBSlowlogsResponse) { // OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeDBSlowlogs(request *DescribeDBSlowlogsRequest) (response *DescribeDBSlowlogsResponse, err error) { - if request == nil { - request = NewDescribeDBSlowlogsRequest() - } - - response = NewDescribeDBSlowlogsResponse() - err = c.Send(request, response) - return + return c.DescribeDBSlowlogsWithContext(context.Background(), request) } // DescribeDBSlowlogs @@ -2049,6 +2340,11 @@ func (c *Client) DescribeDBSlowlogsWithContext(ctx context.Context, request *Des if request == nil { request = NewDescribeDBSlowlogsRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeDBSlowlogs require credential") + } + request.SetContext(ctx) response = NewDescribeDBSlowlogsResponse() @@ -2098,13 +2394,7 @@ func NewDescribeDBXlogsResponse() (response *DescribeDBXlogsResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // UNKNOWNERROR = "UnknownError" func (c *Client) DescribeDBXlogs(request *DescribeDBXlogsRequest) (response *DescribeDBXlogsResponse, err error) { - if request == nil { - request = NewDescribeDBXlogsRequest() - } - - response = NewDescribeDBXlogsResponse() - err = c.Send(request, response) - return + return c.DescribeDBXlogsWithContext(context.Background(), request) } // DescribeDBXlogs @@ -2135,6 +2425,11 @@ func (c *Client) DescribeDBXlogsWithContext(ctx context.Context, request *Descri if request == nil { request = NewDescribeDBXlogsRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeDBXlogs require credential") + } + request.SetContext(ctx) response = NewDescribeDBXlogsResponse() @@ -2185,13 +2480,7 @@ func NewDescribeDatabasesResponse() (response *DescribeDatabasesResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) DescribeDatabases(request *DescribeDatabasesRequest) (response *DescribeDatabasesResponse, err error) { - if request == nil { - request = NewDescribeDatabasesRequest() - } - - response = NewDescribeDatabasesResponse() - err = c.Send(request, response) - return + return c.DescribeDatabasesWithContext(context.Background(), request) } // DescribeDatabases @@ -2223,6 +2512,11 @@ func (c *Client) DescribeDatabasesWithContext(ctx context.Context, request *Desc if request == nil { request = NewDescribeDatabasesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeDatabases require credential") + } + request.SetContext(ctx) response = NewDescribeDatabasesResponse() @@ -2230,6 +2524,53 @@ func (c *Client) DescribeDatabasesWithContext(ctx context.Context, request *Desc return } +func NewDescribeEncryptionKeysRequest() (request *DescribeEncryptionKeysRequest) { + request = &DescribeEncryptionKeysRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + request.Init().WithApiInfo("postgres", APIVersion, "DescribeEncryptionKeys") + + + return +} + +func NewDescribeEncryptionKeysResponse() (response *DescribeEncryptionKeysResponse) { + response = &DescribeEncryptionKeysResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return +} + +// DescribeEncryptionKeys +// 获取实例的密钥信息列表。 +// +// 可能返回的错误码: +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +func (c *Client) DescribeEncryptionKeys(request *DescribeEncryptionKeysRequest) (response *DescribeEncryptionKeysResponse, err error) { + return c.DescribeEncryptionKeysWithContext(context.Background(), request) +} + +// DescribeEncryptionKeys +// 获取实例的密钥信息列表。 +// +// 可能返回的错误码: +// OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +func (c *Client) DescribeEncryptionKeysWithContext(ctx context.Context, request *DescribeEncryptionKeysRequest) (response *DescribeEncryptionKeysResponse, err error) { + if request == nil { + request = NewDescribeEncryptionKeysRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeEncryptionKeys require credential") + } + + request.SetContext(ctx) + + response = NewDescribeEncryptionKeysResponse() + err = c.Send(request, response) + return +} + func NewDescribeOrdersRequest() (request *DescribeOrdersRequest) { request = &DescribeOrdersRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2265,13 +2606,7 @@ func NewDescribeOrdersResponse() (response *DescribeOrdersResponse) { // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeOrders(request *DescribeOrdersRequest) (response *DescribeOrdersResponse, err error) { - if request == nil { - request = NewDescribeOrdersRequest() - } - - response = NewDescribeOrdersResponse() - err = c.Send(request, response) - return + return c.DescribeOrdersWithContext(context.Background(), request) } // DescribeOrders @@ -2295,6 +2630,11 @@ func (c *Client) DescribeOrdersWithContext(ctx context.Context, request *Describ if request == nil { request = NewDescribeOrdersRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeOrders require credential") + } + request.SetContext(ctx) response = NewDescribeOrdersResponse() @@ -2329,13 +2669,7 @@ func NewDescribeParamsEventResponse() (response *DescribeParamsEventResponse) { // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeParamsEvent(request *DescribeParamsEventRequest) (response *DescribeParamsEventResponse, err error) { - if request == nil { - request = NewDescribeParamsEventRequest() - } - - response = NewDescribeParamsEventResponse() - err = c.Send(request, response) - return + return c.DescribeParamsEventWithContext(context.Background(), request) } // DescribeParamsEvent @@ -2351,6 +2685,11 @@ func (c *Client) DescribeParamsEventWithContext(ctx context.Context, request *De if request == nil { request = NewDescribeParamsEventRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeParamsEvent require credential") + } + request.SetContext(ctx) response = NewDescribeParamsEventResponse() @@ -2394,13 +2733,7 @@ func NewDescribeProductConfigResponse() (response *DescribeProductConfigResponse // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeProductConfig(request *DescribeProductConfigRequest) (response *DescribeProductConfigResponse, err error) { - if request == nil { - request = NewDescribeProductConfigRequest() - } - - response = NewDescribeProductConfigResponse() - err = c.Send(request, response) - return + return c.DescribeProductConfigWithContext(context.Background(), request) } // DescribeProductConfig @@ -2425,6 +2758,11 @@ func (c *Client) DescribeProductConfigWithContext(ctx context.Context, request * if request == nil { request = NewDescribeProductConfigRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeProductConfig require credential") + } + request.SetContext(ctx) response = NewDescribeProductConfigResponse() @@ -2466,13 +2804,7 @@ func NewDescribeReadOnlyGroupsResponse() (response *DescribeReadOnlyGroupsRespon // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeReadOnlyGroups(request *DescribeReadOnlyGroupsRequest) (response *DescribeReadOnlyGroupsResponse, err error) { - if request == nil { - request = NewDescribeReadOnlyGroupsRequest() - } - - response = NewDescribeReadOnlyGroupsResponse() - err = c.Send(request, response) - return + return c.DescribeReadOnlyGroupsWithContext(context.Background(), request) } // DescribeReadOnlyGroups @@ -2495,6 +2827,11 @@ func (c *Client) DescribeReadOnlyGroupsWithContext(ctx context.Context, request if request == nil { request = NewDescribeReadOnlyGroupsRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeReadOnlyGroups require credential") + } + request.SetContext(ctx) response = NewDescribeReadOnlyGroupsResponse() @@ -2538,13 +2875,7 @@ func NewDescribeRegionsResponse() (response *DescribeRegionsResponse) { // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeRegions(request *DescribeRegionsRequest) (response *DescribeRegionsResponse, err error) { - if request == nil { - request = NewDescribeRegionsRequest() - } - - response = NewDescribeRegionsResponse() - err = c.Send(request, response) - return + return c.DescribeRegionsWithContext(context.Background(), request) } // DescribeRegions @@ -2569,6 +2900,11 @@ func (c *Client) DescribeRegionsWithContext(ctx context.Context, request *Descri if request == nil { request = NewDescribeRegionsRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeRegions require credential") + } + request.SetContext(ctx) response = NewDescribeRegionsResponse() @@ -2623,13 +2959,7 @@ func NewDescribeServerlessDBInstancesResponse() (response *DescribeServerlessDBI // SYSTEMERROR = "SystemError" // UNKNOWNERROR = "UnknownError" func (c *Client) DescribeServerlessDBInstances(request *DescribeServerlessDBInstancesRequest) (response *DescribeServerlessDBInstancesResponse, err error) { - if request == nil { - request = NewDescribeServerlessDBInstancesRequest() - } - - response = NewDescribeServerlessDBInstancesResponse() - err = c.Send(request, response) - return + return c.DescribeServerlessDBInstancesWithContext(context.Background(), request) } // DescribeServerlessDBInstances @@ -2665,6 +2995,11 @@ func (c *Client) DescribeServerlessDBInstancesWithContext(ctx context.Context, r if request == nil { request = NewDescribeServerlessDBInstancesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeServerlessDBInstances require credential") + } + request.SetContext(ctx) response = NewDescribeServerlessDBInstancesResponse() @@ -2699,13 +3034,7 @@ func NewDescribeSlowQueryAnalysisResponse() (response *DescribeSlowQueryAnalysis // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeSlowQueryAnalysis(request *DescribeSlowQueryAnalysisRequest) (response *DescribeSlowQueryAnalysisResponse, err error) { - if request == nil { - request = NewDescribeSlowQueryAnalysisRequest() - } - - response = NewDescribeSlowQueryAnalysisResponse() - err = c.Send(request, response) - return + return c.DescribeSlowQueryAnalysisWithContext(context.Background(), request) } // DescribeSlowQueryAnalysis @@ -2721,6 +3050,11 @@ func (c *Client) DescribeSlowQueryAnalysisWithContext(ctx context.Context, reque if request == nil { request = NewDescribeSlowQueryAnalysisRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeSlowQueryAnalysis require credential") + } + request.SetContext(ctx) response = NewDescribeSlowQueryAnalysisResponse() @@ -2755,13 +3089,7 @@ func NewDescribeSlowQueryListResponse() (response *DescribeSlowQueryListResponse // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeSlowQueryList(request *DescribeSlowQueryListRequest) (response *DescribeSlowQueryListResponse, err error) { - if request == nil { - request = NewDescribeSlowQueryListRequest() - } - - response = NewDescribeSlowQueryListResponse() - err = c.Send(request, response) - return + return c.DescribeSlowQueryListWithContext(context.Background(), request) } // DescribeSlowQueryList @@ -2777,6 +3105,11 @@ func (c *Client) DescribeSlowQueryListWithContext(ctx context.Context, request * if request == nil { request = NewDescribeSlowQueryListRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeSlowQueryList require credential") + } + request.SetContext(ctx) response = NewDescribeSlowQueryListResponse() @@ -2820,13 +3153,7 @@ func NewDescribeZonesResponse() (response *DescribeZonesResponse) { // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) DescribeZones(request *DescribeZonesRequest) (response *DescribeZonesResponse, err error) { - if request == nil { - request = NewDescribeZonesRequest() - } - - response = NewDescribeZonesResponse() - err = c.Send(request, response) - return + return c.DescribeZonesWithContext(context.Background(), request) } // DescribeZones @@ -2851,6 +3178,11 @@ func (c *Client) DescribeZonesWithContext(ctx context.Context, request *Describe if request == nil { request = NewDescribeZonesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeZones require credential") + } + request.SetContext(ctx) response = NewDescribeZonesResponse() @@ -2912,13 +3244,7 @@ func NewDestroyDBInstanceResponse() (response *DestroyDBInstanceResponse) { // SYSTEMERROR = "SystemError" // UNKNOWNERROR = "UnknownError" func (c *Client) DestroyDBInstance(request *DestroyDBInstanceRequest) (response *DestroyDBInstanceResponse, err error) { - if request == nil { - request = NewDestroyDBInstanceRequest() - } - - response = NewDestroyDBInstanceResponse() - err = c.Send(request, response) - return + return c.DestroyDBInstanceWithContext(context.Background(), request) } // DestroyDBInstance @@ -2961,6 +3287,11 @@ func (c *Client) DestroyDBInstanceWithContext(ctx context.Context, request *Dest if request == nil { request = NewDestroyDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DestroyDBInstance require credential") + } + request.SetContext(ctx) response = NewDestroyDBInstanceResponse() @@ -3026,13 +3357,7 @@ func NewDisIsolateDBInstancesResponse() (response *DisIsolateDBInstancesResponse // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // UNKNOWNPARAMETER = "UnknownParameter" func (c *Client) DisIsolateDBInstances(request *DisIsolateDBInstancesRequest) (response *DisIsolateDBInstancesResponse, err error) { - if request == nil { - request = NewDisIsolateDBInstancesRequest() - } - - response = NewDisIsolateDBInstancesResponse() - err = c.Send(request, response) - return + return c.DisIsolateDBInstancesWithContext(context.Background(), request) } // DisIsolateDBInstances @@ -3079,6 +3404,11 @@ func (c *Client) DisIsolateDBInstancesWithContext(ctx context.Context, request * if request == nil { request = NewDisIsolateDBInstancesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("DisIsolateDBInstances require credential") + } + request.SetContext(ctx) response = NewDisIsolateDBInstancesResponse() @@ -3134,13 +3464,7 @@ func NewInitDBInstancesResponse() (response *InitDBInstancesResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) InitDBInstances(request *InitDBInstancesRequest) (response *InitDBInstancesResponse, err error) { - if request == nil { - request = NewInitDBInstancesRequest() - } - - response = NewInitDBInstancesResponse() - err = c.Send(request, response) - return + return c.InitDBInstancesWithContext(context.Background(), request) } // InitDBInstances @@ -3177,6 +3501,11 @@ func (c *Client) InitDBInstancesWithContext(ctx context.Context, request *InitDB if request == nil { request = NewInitDBInstancesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("InitDBInstances require credential") + } + request.SetContext(ctx) response = NewInitDBInstancesResponse() @@ -3226,13 +3555,7 @@ func NewInquiryPriceCreateDBInstancesResponse() (response *InquiryPriceCreateDBI // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // OPERATIONDENIED_PAYMODEERROR = "OperationDenied.PayModeError" func (c *Client) InquiryPriceCreateDBInstances(request *InquiryPriceCreateDBInstancesRequest) (response *InquiryPriceCreateDBInstancesResponse, err error) { - if request == nil { - request = NewInquiryPriceCreateDBInstancesRequest() - } - - response = NewInquiryPriceCreateDBInstancesResponse() - err = c.Send(request, response) - return + return c.InquiryPriceCreateDBInstancesWithContext(context.Background(), request) } // InquiryPriceCreateDBInstances @@ -3263,6 +3586,11 @@ func (c *Client) InquiryPriceCreateDBInstancesWithContext(ctx context.Context, r if request == nil { request = NewInquiryPriceCreateDBInstancesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("InquiryPriceCreateDBInstances require credential") + } + request.SetContext(ctx) response = NewInquiryPriceCreateDBInstancesResponse() @@ -3310,13 +3638,7 @@ func NewInquiryPriceRenewDBInstanceResponse() (response *InquiryPriceRenewDBInst // OPERATIONDENIED_POSTPAIDPAYMODEERROR = "OperationDenied.PostPaidPayModeError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) InquiryPriceRenewDBInstance(request *InquiryPriceRenewDBInstanceRequest) (response *InquiryPriceRenewDBInstanceResponse, err error) { - if request == nil { - request = NewInquiryPriceRenewDBInstanceRequest() - } - - response = NewInquiryPriceRenewDBInstanceResponse() - err = c.Send(request, response) - return + return c.InquiryPriceRenewDBInstanceWithContext(context.Background(), request) } // InquiryPriceRenewDBInstance @@ -3345,6 +3667,11 @@ func (c *Client) InquiryPriceRenewDBInstanceWithContext(ctx context.Context, req if request == nil { request = NewInquiryPriceRenewDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("InquiryPriceRenewDBInstance require credential") + } + request.SetContext(ctx) response = NewInquiryPriceRenewDBInstanceResponse() @@ -3397,13 +3724,7 @@ func NewInquiryPriceUpgradeDBInstanceResponse() (response *InquiryPriceUpgradeDB // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) InquiryPriceUpgradeDBInstance(request *InquiryPriceUpgradeDBInstanceRequest) (response *InquiryPriceUpgradeDBInstanceResponse, err error) { - if request == nil { - request = NewInquiryPriceUpgradeDBInstanceRequest() - } - - response = NewInquiryPriceUpgradeDBInstanceResponse() - err = c.Send(request, response) - return + return c.InquiryPriceUpgradeDBInstanceWithContext(context.Background(), request) } // InquiryPriceUpgradeDBInstance @@ -3437,6 +3758,11 @@ func (c *Client) InquiryPriceUpgradeDBInstanceWithContext(ctx context.Context, r if request == nil { request = NewInquiryPriceUpgradeDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("InquiryPriceUpgradeDBInstance require credential") + } + request.SetContext(ctx) response = NewInquiryPriceUpgradeDBInstanceResponse() @@ -3483,6 +3809,7 @@ func NewIsolateDBInstancesResponse() (response *IsolateDBInstancesResponse) { // INVALIDPARAMETER = "InvalidParameter" // INVALIDPARAMETER_TRADEACCESSDENIEDERROR = "InvalidParameter.TradeAccessDeniedError" // INVALIDPARAMETERVALUE = "InvalidParameterValue" +// INVALIDPARAMETERVALUE_DATACONVERTERROR = "InvalidParameterValue.DataConvertError" // INVALIDPARAMETERVALUE_INVALIDPARAMETERVALUEERROR = "InvalidParameterValue.InvalidParameterValueError" // INVALIDVOUCHERID = "InvalidVoucherId" // LIMITEXCEEDED = "LimitExceeded" @@ -3496,13 +3823,7 @@ func NewIsolateDBInstancesResponse() (response *IsolateDBInstancesResponse) { // REQUESTLIMITEXCEEDED = "RequestLimitExceeded" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) IsolateDBInstances(request *IsolateDBInstancesRequest) (response *IsolateDBInstancesResponse, err error) { - if request == nil { - request = NewIsolateDBInstancesRequest() - } - - response = NewIsolateDBInstancesResponse() - err = c.Send(request, response) - return + return c.IsolateDBInstancesWithContext(context.Background(), request) } // IsolateDBInstances @@ -3527,6 +3848,7 @@ func (c *Client) IsolateDBInstances(request *IsolateDBInstancesRequest) (respons // INVALIDPARAMETER = "InvalidParameter" // INVALIDPARAMETER_TRADEACCESSDENIEDERROR = "InvalidParameter.TradeAccessDeniedError" // INVALIDPARAMETERVALUE = "InvalidParameterValue" +// INVALIDPARAMETERVALUE_DATACONVERTERROR = "InvalidParameterValue.DataConvertError" // INVALIDPARAMETERVALUE_INVALIDPARAMETERVALUEERROR = "InvalidParameterValue.InvalidParameterValueError" // INVALIDVOUCHERID = "InvalidVoucherId" // LIMITEXCEEDED = "LimitExceeded" @@ -3543,6 +3865,11 @@ func (c *Client) IsolateDBInstancesWithContext(ctx context.Context, request *Iso if request == nil { request = NewIsolateDBInstancesRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("IsolateDBInstances require credential") + } + request.SetContext(ctx) response = NewIsolateDBInstancesResponse() @@ -3585,13 +3912,7 @@ func NewModifyAccountRemarkResponse() (response *ModifyAccountRemarkResponse) { // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) ModifyAccountRemark(request *ModifyAccountRemarkRequest) (response *ModifyAccountRemarkResponse, err error) { - if request == nil { - request = NewModifyAccountRemarkRequest() - } - - response = NewModifyAccountRemarkResponse() - err = c.Send(request, response) - return + return c.ModifyAccountRemarkWithContext(context.Background(), request) } // ModifyAccountRemark @@ -3615,6 +3936,11 @@ func (c *Client) ModifyAccountRemarkWithContext(ctx context.Context, request *Mo if request == nil { request = NewModifyAccountRemarkRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyAccountRemark require credential") + } + request.SetContext(ctx) response = NewModifyAccountRemarkResponse() @@ -3652,13 +3978,7 @@ func NewModifyBackupPlanResponse() (response *ModifyBackupPlanResponse) { // OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) ModifyBackupPlan(request *ModifyBackupPlanRequest) (response *ModifyBackupPlanResponse, err error) { - if request == nil { - request = NewModifyBackupPlanRequest() - } - - response = NewModifyBackupPlanResponse() - err = c.Send(request, response) - return + return c.ModifyBackupPlanWithContext(context.Background(), request) } // ModifyBackupPlan @@ -3677,6 +3997,11 @@ func (c *Client) ModifyBackupPlanWithContext(ctx context.Context, request *Modif if request == nil { request = NewModifyBackupPlanRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyBackupPlan require credential") + } + request.SetContext(ctx) response = NewModifyBackupPlanResponse() @@ -3713,13 +4038,7 @@ func NewModifyDBInstanceDeploymentResponse() (response *ModifyDBInstanceDeployme // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" func (c *Client) ModifyDBInstanceDeployment(request *ModifyDBInstanceDeploymentRequest) (response *ModifyDBInstanceDeploymentResponse, err error) { - if request == nil { - request = NewModifyDBInstanceDeploymentRequest() - } - - response = NewModifyDBInstanceDeploymentResponse() - err = c.Send(request, response) - return + return c.ModifyDBInstanceDeploymentWithContext(context.Background(), request) } // ModifyDBInstanceDeployment @@ -3737,6 +4056,11 @@ func (c *Client) ModifyDBInstanceDeploymentWithContext(ctx context.Context, requ if request == nil { request = NewModifyDBInstanceDeploymentRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyDBInstanceDeployment require credential") + } + request.SetContext(ctx) response = NewModifyDBInstanceDeploymentResponse() @@ -3783,13 +4107,7 @@ func NewModifyDBInstanceNameResponse() (response *ModifyDBInstanceNameResponse) // OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) ModifyDBInstanceName(request *ModifyDBInstanceNameRequest) (response *ModifyDBInstanceNameResponse, err error) { - if request == nil { - request = NewModifyDBInstanceNameRequest() - } - - response = NewModifyDBInstanceNameResponse() - err = c.Send(request, response) - return + return c.ModifyDBInstanceNameWithContext(context.Background(), request) } // ModifyDBInstanceName @@ -3817,6 +4135,11 @@ func (c *Client) ModifyDBInstanceNameWithContext(ctx context.Context, request *M if request == nil { request = NewModifyDBInstanceNameRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyDBInstanceName require credential") + } + request.SetContext(ctx) response = NewModifyDBInstanceNameResponse() @@ -3848,15 +4171,10 @@ func NewModifyDBInstanceParametersResponse() (response *ModifyDBInstanceParamete // FAILEDOPERATION_CAMAUTHFAILED = "FailedOperation.CamAuthFailed" // FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) ModifyDBInstanceParameters(request *ModifyDBInstanceParametersRequest) (response *ModifyDBInstanceParametersResponse, err error) { - if request == nil { - request = NewModifyDBInstanceParametersRequest() - } - - response = NewModifyDBInstanceParametersResponse() - err = c.Send(request, response) - return + return c.ModifyDBInstanceParametersWithContext(context.Background(), request) } // ModifyDBInstanceParameters @@ -3866,11 +4184,17 @@ func (c *Client) ModifyDBInstanceParameters(request *ModifyDBInstanceParametersR // FAILEDOPERATION_CAMAUTHFAILED = "FailedOperation.CamAuthFailed" // FAILEDOPERATION_FAILEDOPERATIONERROR = "FailedOperation.FailedOperationError" // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" +// OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) ModifyDBInstanceParametersWithContext(ctx context.Context, request *ModifyDBInstanceParametersRequest) (response *ModifyDBInstanceParametersResponse, err error) { if request == nil { request = NewModifyDBInstanceParametersRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyDBInstanceParameters require credential") + } + request.SetContext(ctx) response = NewModifyDBInstanceParametersResponse() @@ -3919,13 +4243,7 @@ func NewModifyDBInstanceReadOnlyGroupResponse() (response *ModifyDBInstanceReadO // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) ModifyDBInstanceReadOnlyGroup(request *ModifyDBInstanceReadOnlyGroupRequest) (response *ModifyDBInstanceReadOnlyGroupResponse, err error) { - if request == nil { - request = NewModifyDBInstanceReadOnlyGroupRequest() - } - - response = NewModifyDBInstanceReadOnlyGroupResponse() - err = c.Send(request, response) - return + return c.ModifyDBInstanceReadOnlyGroupWithContext(context.Background(), request) } // ModifyDBInstanceReadOnlyGroup @@ -3955,6 +4273,11 @@ func (c *Client) ModifyDBInstanceReadOnlyGroupWithContext(ctx context.Context, r if request == nil { request = NewModifyDBInstanceReadOnlyGroupRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyDBInstanceReadOnlyGroup require credential") + } + request.SetContext(ctx) response = NewModifyDBInstanceReadOnlyGroupResponse() @@ -3994,13 +4317,7 @@ func NewModifyDBInstanceSpecResponse() (response *ModifyDBInstanceSpecResponse) // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" func (c *Client) ModifyDBInstanceSpec(request *ModifyDBInstanceSpecRequest) (response *ModifyDBInstanceSpecResponse, err error) { - if request == nil { - request = NewModifyDBInstanceSpecRequest() - } - - response = NewModifyDBInstanceSpecResponse() - err = c.Send(request, response) - return + return c.ModifyDBInstanceSpecWithContext(context.Background(), request) } // ModifyDBInstanceSpec @@ -4021,6 +4338,11 @@ func (c *Client) ModifyDBInstanceSpecWithContext(ctx context.Context, request *M if request == nil { request = NewModifyDBInstanceSpecRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyDBInstanceSpec require credential") + } + request.SetContext(ctx) response = NewModifyDBInstanceSpecResponse() @@ -4066,13 +4388,7 @@ func NewModifyDBInstancesProjectResponse() (response *ModifyDBInstancesProjectRe // OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) ModifyDBInstancesProject(request *ModifyDBInstancesProjectRequest) (response *ModifyDBInstancesProjectResponse, err error) { - if request == nil { - request = NewModifyDBInstancesProjectRequest() - } - - response = NewModifyDBInstancesProjectResponse() - err = c.Send(request, response) - return + return c.ModifyDBInstancesProjectWithContext(context.Background(), request) } // ModifyDBInstancesProject @@ -4099,6 +4415,11 @@ func (c *Client) ModifyDBInstancesProjectWithContext(ctx context.Context, reques if request == nil { request = NewModifyDBInstancesProjectRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyDBInstancesProject require credential") + } + request.SetContext(ctx) response = NewModifyDBInstancesProjectResponse() @@ -4149,13 +4470,7 @@ func NewModifyReadOnlyGroupConfigResponse() (response *ModifyReadOnlyGroupConfig // OPERATIONDENIED_INSTANCESTATUSLIMITOPERROR = "OperationDenied.InstanceStatusLimitOpError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) ModifyReadOnlyGroupConfig(request *ModifyReadOnlyGroupConfigRequest) (response *ModifyReadOnlyGroupConfigResponse, err error) { - if request == nil { - request = NewModifyReadOnlyGroupConfigRequest() - } - - response = NewModifyReadOnlyGroupConfigResponse() - err = c.Send(request, response) - return + return c.ModifyReadOnlyGroupConfigWithContext(context.Background(), request) } // ModifyReadOnlyGroupConfig @@ -4187,6 +4502,11 @@ func (c *Client) ModifyReadOnlyGroupConfigWithContext(ctx context.Context, reque if request == nil { request = NewModifyReadOnlyGroupConfigRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyReadOnlyGroupConfig require credential") + } + request.SetContext(ctx) response = NewModifyReadOnlyGroupConfigResponse() @@ -4229,13 +4549,7 @@ func NewModifySwitchTimePeriodResponse() (response *ModifySwitchTimePeriodRespon // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // UNKNOWNERROR = "UnknownError" func (c *Client) ModifySwitchTimePeriod(request *ModifySwitchTimePeriodRequest) (response *ModifySwitchTimePeriodResponse, err error) { - if request == nil { - request = NewModifySwitchTimePeriodRequest() - } - - response = NewModifySwitchTimePeriodResponse() - err = c.Send(request, response) - return + return c.ModifySwitchTimePeriodWithContext(context.Background(), request) } // ModifySwitchTimePeriod @@ -4259,6 +4573,11 @@ func (c *Client) ModifySwitchTimePeriodWithContext(ctx context.Context, request if request == nil { request = NewModifySwitchTimePeriodRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ModifySwitchTimePeriod require credential") + } + request.SetContext(ctx) response = NewModifySwitchTimePeriodResponse() @@ -4305,13 +4624,7 @@ func NewOpenDBExtranetAccessResponse() (response *OpenDBExtranetAccessResponse) // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) OpenDBExtranetAccess(request *OpenDBExtranetAccessRequest) (response *OpenDBExtranetAccessResponse, err error) { - if request == nil { - request = NewOpenDBExtranetAccessRequest() - } - - response = NewOpenDBExtranetAccessResponse() - err = c.Send(request, response) - return + return c.OpenDBExtranetAccessWithContext(context.Background(), request) } // OpenDBExtranetAccess @@ -4339,6 +4652,11 @@ func (c *Client) OpenDBExtranetAccessWithContext(ctx context.Context, request *O if request == nil { request = NewOpenDBExtranetAccessRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("OpenDBExtranetAccess require credential") + } + request.SetContext(ctx) response = NewOpenDBExtranetAccessResponse() @@ -4404,13 +4722,7 @@ func NewOpenServerlessDBExtranetAccessResponse() (response *OpenServerlessDBExtr // UNKNOWNERROR = "UnknownError" // VPCERROR = "VpcError" func (c *Client) OpenServerlessDBExtranetAccess(request *OpenServerlessDBExtranetAccessRequest) (response *OpenServerlessDBExtranetAccessResponse, err error) { - if request == nil { - request = NewOpenServerlessDBExtranetAccessRequest() - } - - response = NewOpenServerlessDBExtranetAccessResponse() - err = c.Send(request, response) - return + return c.OpenServerlessDBExtranetAccessWithContext(context.Background(), request) } // OpenServerlessDBExtranetAccess @@ -4457,6 +4769,11 @@ func (c *Client) OpenServerlessDBExtranetAccessWithContext(ctx context.Context, if request == nil { request = NewOpenServerlessDBExtranetAccessRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("OpenServerlessDBExtranetAccess require credential") + } + request.SetContext(ctx) response = NewOpenServerlessDBExtranetAccessResponse() @@ -4502,13 +4819,7 @@ func NewRebalanceReadOnlyGroupResponse() (response *RebalanceReadOnlyGroupRespon // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // VPCERROR = "VpcError" func (c *Client) RebalanceReadOnlyGroup(request *RebalanceReadOnlyGroupRequest) (response *RebalanceReadOnlyGroupResponse, err error) { - if request == nil { - request = NewRebalanceReadOnlyGroupRequest() - } - - response = NewRebalanceReadOnlyGroupResponse() - err = c.Send(request, response) - return + return c.RebalanceReadOnlyGroupWithContext(context.Background(), request) } // RebalanceReadOnlyGroup @@ -4535,6 +4846,11 @@ func (c *Client) RebalanceReadOnlyGroupWithContext(ctx context.Context, request if request == nil { request = NewRebalanceReadOnlyGroupRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("RebalanceReadOnlyGroup require credential") + } + request.SetContext(ctx) response = NewRebalanceReadOnlyGroupResponse() @@ -4583,13 +4899,7 @@ func NewRemoveDBInstanceFromReadOnlyGroupResponse() (response *RemoveDBInstanceF // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) RemoveDBInstanceFromReadOnlyGroup(request *RemoveDBInstanceFromReadOnlyGroupRequest) (response *RemoveDBInstanceFromReadOnlyGroupResponse, err error) { - if request == nil { - request = NewRemoveDBInstanceFromReadOnlyGroupRequest() - } - - response = NewRemoveDBInstanceFromReadOnlyGroupResponse() - err = c.Send(request, response) - return + return c.RemoveDBInstanceFromReadOnlyGroupWithContext(context.Background(), request) } // RemoveDBInstanceFromReadOnlyGroup @@ -4619,6 +4929,11 @@ func (c *Client) RemoveDBInstanceFromReadOnlyGroupWithContext(ctx context.Contex if request == nil { request = NewRemoveDBInstanceFromReadOnlyGroupRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("RemoveDBInstanceFromReadOnlyGroup require credential") + } + request.SetContext(ctx) response = NewRemoveDBInstanceFromReadOnlyGroupResponse() @@ -4677,13 +4992,7 @@ func NewRenewInstanceResponse() (response *RenewInstanceResponse) { // RESOURCEUNAVAILABLE_RESOURCENOPERMISSION = "ResourceUnavailable.ResourceNoPermission" // RESOURCEUNAVAILABLE_VPCRESOURCENOTFOUND = "ResourceUnavailable.VpcResourceNotFound" func (c *Client) RenewInstance(request *RenewInstanceRequest) (response *RenewInstanceResponse, err error) { - if request == nil { - request = NewRenewInstanceRequest() - } - - response = NewRenewInstanceResponse() - err = c.Send(request, response) - return + return c.RenewInstanceWithContext(context.Background(), request) } // RenewInstance @@ -4723,6 +5032,11 @@ func (c *Client) RenewInstanceWithContext(ctx context.Context, request *RenewIns if request == nil { request = NewRenewInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("RenewInstance require credential") + } + request.SetContext(ctx) response = NewRenewInstanceResponse() @@ -4771,13 +5085,7 @@ func NewResetAccountPasswordResponse() (response *ResetAccountPasswordResponse) // OPERATIONDENIED_CAMDENIEDERROR = "OperationDenied.CamDeniedError" // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" func (c *Client) ResetAccountPassword(request *ResetAccountPasswordRequest) (response *ResetAccountPasswordResponse, err error) { - if request == nil { - request = NewResetAccountPasswordRequest() - } - - response = NewResetAccountPasswordResponse() - err = c.Send(request, response) - return + return c.ResetAccountPasswordWithContext(context.Background(), request) } // ResetAccountPassword @@ -4807,6 +5115,11 @@ func (c *Client) ResetAccountPasswordWithContext(ctx context.Context, request *R if request == nil { request = NewResetAccountPasswordRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("ResetAccountPassword require credential") + } + request.SetContext(ctx) response = NewResetAccountPasswordResponse() @@ -4853,13 +5166,7 @@ func NewRestartDBInstanceResponse() (response *RestartDBInstanceResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) RestartDBInstance(request *RestartDBInstanceRequest) (response *RestartDBInstanceResponse, err error) { - if request == nil { - request = NewRestartDBInstanceRequest() - } - - response = NewRestartDBInstanceResponse() - err = c.Send(request, response) - return + return c.RestartDBInstanceWithContext(context.Background(), request) } // RestartDBInstance @@ -4887,6 +5194,11 @@ func (c *Client) RestartDBInstanceWithContext(ctx context.Context, request *Rest if request == nil { request = NewRestartDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("RestartDBInstance require credential") + } + request.SetContext(ctx) response = NewRestartDBInstanceResponse() @@ -4933,13 +5245,7 @@ func NewSetAutoRenewFlagResponse() (response *SetAutoRenewFlagResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) SetAutoRenewFlag(request *SetAutoRenewFlagRequest) (response *SetAutoRenewFlagResponse, err error) { - if request == nil { - request = NewSetAutoRenewFlagRequest() - } - - response = NewSetAutoRenewFlagResponse() - err = c.Send(request, response) - return + return c.SetAutoRenewFlagWithContext(context.Background(), request) } // SetAutoRenewFlag @@ -4967,6 +5273,11 @@ func (c *Client) SetAutoRenewFlagWithContext(ctx context.Context, request *SetAu if request == nil { request = NewSetAutoRenewFlagRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("SetAutoRenewFlag require credential") + } + request.SetContext(ctx) response = NewSetAutoRenewFlagResponse() @@ -5023,13 +5334,7 @@ func NewUpgradeDBInstanceResponse() (response *UpgradeDBInstanceResponse) { // RESOURCENOTFOUND_INSTANCENOTFOUNDERROR = "ResourceNotFound.InstanceNotFoundError" // RESOURCEUNAVAILABLE_INVALIDINSTANCESTATUS = "ResourceUnavailable.InvalidInstanceStatus" func (c *Client) UpgradeDBInstance(request *UpgradeDBInstanceRequest) (response *UpgradeDBInstanceResponse, err error) { - if request == nil { - request = NewUpgradeDBInstanceRequest() - } - - response = NewUpgradeDBInstanceResponse() - err = c.Send(request, response) - return + return c.UpgradeDBInstanceWithContext(context.Background(), request) } // UpgradeDBInstance @@ -5067,6 +5372,11 @@ func (c *Client) UpgradeDBInstanceWithContext(ctx context.Context, request *Upgr if request == nil { request = NewUpgradeDBInstanceRequest() } + + if c.GetCredential() == nil { + return nil, errors.New("UpgradeDBInstance require credential") + } + request.SetContext(ctx) response = NewUpgradeDBInstanceResponse() diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/errors.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/errors.go index 275f8465b2..be735d5728 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/errors.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/errors.go @@ -62,6 +62,9 @@ const ( // 管控元数据库访问失败,请稍后重试。如果持续不成功,请联系客服进行处理。 FAILEDOPERATION_DATABASEACCESSERROR = "FailedOperation.DatabaseAccessError" + // 数据操作失败,请联系客服进行处理。 + FAILEDOPERATION_DATABASEAFFECTEDERROR = "FailedOperation.DatabaseAffectedError" + // VPC删除路由失败。 FAILEDOPERATION_DELETEALLROUTE = "FailedOperation.DeleteAllRoute" @@ -113,6 +116,9 @@ const ( // 修改只读组配置失败。 FAILEDOPERATION_MODIFYROGROUPERROR = "FailedOperation.ModifyROGroupError" + // 不符合资源所拥有的的网络数量要求。 + FAILEDOPERATION_NETWORKNUMLIMITERROR = "FailedOperation.NetworkNumLimitError" + // 访问管控服务失败,请稍后重试。如果持续不成功,请联系客服进行处理。 FAILEDOPERATION_OSSACCESSERROR = "FailedOperation.OssAccessError" @@ -167,6 +173,9 @@ const ( // 只读实例已在其他只读组。 FAILEDOPERATION_ROINSTANCEHASINROGROUPERROR = "FailedOperation.ROInstanceHasInROGroupError" + // Serverless实例不支持此操作。 + FAILEDOPERATION_SERVERLESSNOTSUPPORTEDERROR = "FailedOperation.ServerlessNotSupportedError" + // 访问内部服务失败,请稍后重试。如果持续不成功,请联系客服进行处理。 FAILEDOPERATION_SERVICEACCESSERROR = "FailedOperation.ServiceAccessError" @@ -233,6 +242,9 @@ const ( // 管控系统元数据访问异常,请联系客服处理。 INTERNALERROR_INSTANCEDATAERROR = "InternalError.InstanceDataError" + // 后台数据解析失败,请联系客服进行处理。 + INTERNALERROR_MARSHALERROR = "InternalError.MarshalError" + // 系统错误。出现这种错误时,请联系客服支持。 INTERNALERROR_SYSTEMERROR = "InternalError.SystemError" @@ -419,6 +431,9 @@ const ( // 您没有权限操作当前资源。 OPERATIONDENIED_INSTANCEACCESSDENIEDERROR = "OperationDenied.InstanceAccessDeniedError" + // 不支持ipv6。 + OPERATIONDENIED_INSTANCEIPV6NOTSUPPORTEDERROR = "OperationDenied.InstanceIpv6NotSupportedError" + // 实例状态限制当前操作。 OPERATIONDENIED_INSTANCESTATUSDENIEDERROR = "OperationDenied.InstanceStatusDeniedError" @@ -440,6 +455,9 @@ const ( // 只读组状态限制当前操作。 OPERATIONDENIED_ROGROUPSTATUSERROR = "OperationDenied.ROGroupStatusError" + // 只读实例不支持ipv6。 + OPERATIONDENIED_ROINSTANCEIPV6NOTSUPPORTEDERROR = "OperationDenied.ROInstanceIpv6NotSupportedError" + // 只读节点总数不能超过上限值。 OPERATIONDENIED_ROINSTANCECOUNTEXEEDERROR = "OperationDenied.RoInstanceCountExeedError" diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/models.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/models.go index 39b9e3d7cc..fa0a5686c0 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/models.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312/models.go @@ -376,6 +376,72 @@ func (r *CloseServerlessDBExtranetAccessResponse) FromJsonString(s string) error return json.Unmarshal([]byte(s), &r) } +type CreateDBInstanceNetworkAccessRequest struct { + *tchttp.BaseRequest + + // 实例ID,形如:postgres-6bwgamo3。 + DBInstanceId *string `json:"DBInstanceId,omitempty" name:"DBInstanceId"` + + // 私有网络统一 ID。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 子网ID。 + SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + + // 是否指定分配vip true-指定分配 false-自动分配。 + IsAssignVip *bool `json:"IsAssignVip,omitempty" name:"IsAssignVip"` + + // 目标VIP地址。 + Vip *string `json:"Vip,omitempty" name:"Vip"` +} + +func (r *CreateDBInstanceNetworkAccessRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *CreateDBInstanceNetworkAccessRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "DBInstanceId") + delete(f, "VpcId") + delete(f, "SubnetId") + delete(f, "IsAssignVip") + delete(f, "Vip") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "CreateDBInstanceNetworkAccessRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +type CreateDBInstanceNetworkAccessResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 流程ID。 + // 注意:此字段可能返回 null,表示取不到有效值。 + FlowId *int64 `json:"FlowId,omitempty" name:"FlowId"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CreateDBInstanceNetworkAccessResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *CreateDBInstanceNetworkAccessResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type CreateDBInstancesRequest struct { *tchttp.BaseRequest @@ -537,7 +603,7 @@ type CreateInstancesRequest struct { // 项目ID。 ProjectId *int64 `json:"ProjectId,omitempty" name:"ProjectId"` - // PostgreSQL版本。当输入该参数时,会基于此版本创建对应的最新内核版本号实例 + // PostgreSQL版本。当输入该参数时,会基于此版本创建对应的最新内核版本号实例。该参数和DBMajorVersion、DBKernelVersion至少需要传递一个。 DBVersion *string `json:"DBVersion,omitempty" name:"DBVersion"` // 实例计费类型。目前支持:PREPAID(预付费,即包年包月),POSTPAID_BY_HOUR(后付费,即按量计费)。 @@ -573,14 +639,23 @@ type CreateInstancesRequest struct { // 安全组ID。 SecurityGroupIds []*string `json:"SecurityGroupIds,omitempty" name:"SecurityGroupIds"` - // PostgreSQL主要版本。目前支持10,11,12,13这几个版本。当输入该参数时,会基于此版本创建对应的最新内核版本号实例 + // PostgreSQL主要版本。目前支持10,11,12,13这几个版本。当输入该参数时,会基于此版本创建对应的最新内核版本号实例。该参数和DBVersion、DBKernelVersion至少需要传递一个。 DBMajorVersion *string `json:"DBMajorVersion,omitempty" name:"DBMajorVersion"` - // PostgreSQL内核版本。当输入该参数时,会创建该内核版本号实例 + // PostgreSQL内核版本。当输入该参数时,会创建该内核版本号实例。该参数和DBVersion、DBMajorVersion至少需要传递一个。 DBKernelVersion *string `json:"DBKernelVersion,omitempty" name:"DBKernelVersion"` // 实例节点信息,购买跨可用区实例时填写。 DBNodeSet []*DBNode `json:"DBNodeSet,omitempty" name:"DBNodeSet"` + + // 是否需要支持数据透明加密,1:是,0:否(默认)。 + NeedSupportTDE *uint64 `json:"NeedSupportTDE,omitempty" name:"NeedSupportTDE"` + + // 自定义密钥的keyId,若选择自定义密匙加密,则需要传入自定义密匙的keyId,keyId是CMK的唯一标识。 + KMSKeyId *string `json:"KMSKeyId,omitempty" name:"KMSKeyId"` + + // 使用KMS服务的地域,KMSRegion为空默认使用本地域的kms,本地域不支持的情况下需自选其他KMS支持的地域。 + KMSRegion *string `json:"KMSRegion,omitempty" name:"KMSRegion"` } func (r *CreateInstancesRequest) ToJsonString() string { @@ -619,6 +694,9 @@ func (r *CreateInstancesRequest) FromJsonString(s string) error { delete(f, "DBMajorVersion") delete(f, "DBKernelVersion") delete(f, "DBNodeSet") + delete(f, "NeedSupportTDE") + delete(f, "KMSKeyId") + delete(f, "KMSRegion") if len(f) > 0 { return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "CreateInstancesRequest has unknown keys!", "") } @@ -711,7 +789,7 @@ type CreateReadOnlyDBInstanceRequest struct { // 只读组ID。 ReadOnlyGroupId *string `json:"ReadOnlyGroupId,omitempty" name:"ReadOnlyGroupId"` - // 实例需要绑定的Tag信息,默认为空 + // 实例需要绑定的Tag信息,默认为空(该类型为Tag数组类型) TagList *Tag `json:"TagList,omitempty" name:"TagList"` // 安全组id @@ -785,6 +863,72 @@ func (r *CreateReadOnlyDBInstanceResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type CreateReadOnlyGroupNetworkAccessRequest struct { + *tchttp.BaseRequest + + // RO组ID,形如:pgro-4t9c6g7k。 + ReadOnlyGroupId *string `json:"ReadOnlyGroupId,omitempty" name:"ReadOnlyGroupId"` + + // 私有网络统一 ID。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 子网ID。 + SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + + // 是否指定分配vip true-指定分配 false-自动分配。 + IsAssignVip *bool `json:"IsAssignVip,omitempty" name:"IsAssignVip"` + + // 目标VIP地址。 + Vip *string `json:"Vip,omitempty" name:"Vip"` +} + +func (r *CreateReadOnlyGroupNetworkAccessRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *CreateReadOnlyGroupNetworkAccessRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "ReadOnlyGroupId") + delete(f, "VpcId") + delete(f, "SubnetId") + delete(f, "IsAssignVip") + delete(f, "Vip") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "CreateReadOnlyGroupNetworkAccessRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +type CreateReadOnlyGroupNetworkAccessResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 流程ID。 + // 注意:此字段可能返回 null,表示取不到有效值。 + FlowId *int64 `json:"FlowId,omitempty" name:"FlowId"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *CreateReadOnlyGroupNetworkAccessResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *CreateReadOnlyGroupNetworkAccessResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type CreateReadOnlyGroupRequest struct { *tchttp.BaseRequest @@ -1113,6 +1257,10 @@ type DBInstance struct { // 实例的节点信息 // 注意:此字段可能返回 null,表示取不到有效值。 DBNodeSet []*DBNode `json:"DBNodeSet,omitempty" name:"DBNodeSet"` + + // 实例是否支持TDE数据加密 0:不支持,1:支持 + // 注意:此字段可能返回 null,表示取不到有效值。 + IsSupportTDE *int64 `json:"IsSupportTDE,omitempty" name:"IsSupportTDE"` } type DBInstanceNetInfo struct { @@ -1152,6 +1300,130 @@ type DBNode struct { Zone *string `json:"Zone,omitempty" name:"Zone"` } +type DeleteDBInstanceNetworkAccessRequest struct { + *tchttp.BaseRequest + + // 实例ID,形如:postgres-6bwgamo3。 + DBInstanceId *string `json:"DBInstanceId,omitempty" name:"DBInstanceId"` + + // 私有网络统一 ID,若是基础网络则传"0"。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 子网ID,若是基础网络则传"0"。 + SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + + // 目标VIP地址。 + Vip *string `json:"Vip,omitempty" name:"Vip"` +} + +func (r *DeleteDBInstanceNetworkAccessRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DeleteDBInstanceNetworkAccessRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "DBInstanceId") + delete(f, "VpcId") + delete(f, "SubnetId") + delete(f, "Vip") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "DeleteDBInstanceNetworkAccessRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +type DeleteDBInstanceNetworkAccessResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 流程ID。 + // 注意:此字段可能返回 null,表示取不到有效值。 + FlowId *int64 `json:"FlowId,omitempty" name:"FlowId"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DeleteDBInstanceNetworkAccessResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DeleteDBInstanceNetworkAccessResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type DeleteReadOnlyGroupNetworkAccessRequest struct { + *tchttp.BaseRequest + + // RO组ID,形如:pgro-4t9c6g7k。 + ReadOnlyGroupId *string `json:"ReadOnlyGroupId,omitempty" name:"ReadOnlyGroupId"` + + // 私有网络统一 ID,若是基础网络则传"0"。 + VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + + // 子网ID,若是基础网络则传"0"。 + SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + + // 目标VIP地址。 + Vip *string `json:"Vip,omitempty" name:"Vip"` +} + +func (r *DeleteReadOnlyGroupNetworkAccessRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DeleteReadOnlyGroupNetworkAccessRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "ReadOnlyGroupId") + delete(f, "VpcId") + delete(f, "SubnetId") + delete(f, "Vip") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "DeleteReadOnlyGroupNetworkAccessRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +type DeleteReadOnlyGroupNetworkAccessResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 流程ID。 + // 注意:此字段可能返回 null,表示取不到有效值。 + FlowId *int64 `json:"FlowId,omitempty" name:"FlowId"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DeleteReadOnlyGroupNetworkAccessResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DeleteReadOnlyGroupNetworkAccessResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DeleteReadOnlyGroupRequest struct { *tchttp.BaseRequest @@ -2004,6 +2276,56 @@ func (r *DescribeDatabasesResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type DescribeEncryptionKeysRequest struct { + *tchttp.BaseRequest + + // 实例ID。 + DBInstanceId *string `json:"DBInstanceId,omitempty" name:"DBInstanceId"` +} + +func (r *DescribeEncryptionKeysRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DescribeEncryptionKeysRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "DBInstanceId") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "DescribeEncryptionKeysRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +type DescribeEncryptionKeysResponse struct { + *tchttp.BaseResponse + Response *struct { + + // 实例密钥信息列表。 + // 注意:此字段可能返回 null,表示取不到有效值。 + EncryptionKeys []*EncryptionKey `json:"EncryptionKeys,omitempty" name:"EncryptionKeys"` + + // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + } `json:"Response"` +} + +func (r *DescribeEncryptionKeysResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DescribeEncryptionKeysResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type DescribeOrdersRequest struct { *tchttp.BaseRequest @@ -2678,6 +3000,33 @@ type DurationAnalysis struct { Count *int64 `json:"Count,omitempty" name:"Count"` } +type EncryptionKey struct { + + // KMS实例加密的KeyId。 + // 注意:此字段可能返回 null,表示取不到有效值。 + KeyId *string `json:"KeyId,omitempty" name:"KeyId"` + + // KMS实例加密Key的别名。 + // 注意:此字段可能返回 null,表示取不到有效值。 + KeyAlias *string `json:"KeyAlias,omitempty" name:"KeyAlias"` + + // 实例加密密钥DEK的密文。 + // 注意:此字段可能返回 null,表示取不到有效值。 + DEKCipherTextBlob *string `json:"DEKCipherTextBlob,omitempty" name:"DEKCipherTextBlob"` + + // 密钥是否启用,1-启用, 0-未启用。 + // 注意:此字段可能返回 null,表示取不到有效值。 + IsEnabled *int64 `json:"IsEnabled,omitempty" name:"IsEnabled"` + + // KMS密钥所在地域。 + // 注意:此字段可能返回 null,表示取不到有效值。 + KeyRegion *string `json:"KeyRegion,omitempty" name:"KeyRegion"` + + // DEK密钥创建时间。 + // 注意:此字段可能返回 null,表示取不到有效值。 + CreateTime *string `json:"CreateTime,omitempty" name:"CreateTime"` +} + type ErrLogDetail struct { // 用户名 @@ -4492,6 +4841,10 @@ type SpecInfo struct { // 规格详细信息列表 SpecItemInfoList []*SpecItemInfo `json:"SpecItemInfoList,omitempty" name:"SpecItemInfoList"` + + // 支持KMS的地域 + // 注意:此字段可能返回 null,表示取不到有效值。 + SupportKMSRegions []*string `json:"SupportKMSRegions,omitempty" name:"SupportKMSRegions"` } type SpecItemInfo struct { @@ -4533,6 +4886,10 @@ type SpecItemInfo struct { // PostgreSQL的内核版本编号 // 注意:此字段可能返回 null,表示取不到有效值。 KernelVersion *string `json:"KernelVersion,omitempty" name:"KernelVersion"` + + // 是否支持TDE数据加密功能,0-不支持,1-支持 + // 注意:此字段可能返回 null,表示取不到有效值。 + IsSupportTDE *int64 `json:"IsSupportTDE,omitempty" name:"IsSupportTDE"` } type Tag struct { diff --git a/vendor/modules.txt b/vendor/modules.txt index 93e9d31fa3..30e661237b 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -555,7 +555,7 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb/v20180317 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit/v20190319 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.377 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls/v20201016 -# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.389 +# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.391 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http @@ -583,7 +583,7 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/kms/v20190118 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.329 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor/v20180724 -# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.332 +# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.391 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres/v20170312 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.290 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns/v20201028 diff --git a/website/docs/r/postgresql_instance.html.markdown b/website/docs/r/postgresql_instance.html.markdown index a21d8fc3f9..e844fb0b9b 100644 --- a/website/docs/r/postgresql_instance.html.markdown +++ b/website/docs/r/postgresql_instance.html.markdown @@ -109,6 +109,40 @@ resource "tencentcloud_postgresql_instance" "foo" { } ``` +create pgsql with kms key + +```hcl +resource "tencentcloud_postgresql_instance" "pg" { + name = "tf_postsql_instance" + availability_zone = "ap-guangzhou-6" + charge_type = "POSTPAID_BY_HOUR" + vpc_id = "vpc-86v957zb" + subnet_id = "subnet-enm92y0m" + engine_version = "11.12" + # db_major_vesion = "11" + db_kernel_version = "v11.12_r1.3" + need_support_tde = 1 + kms_key_id = "788c606a-c7b7-11ec-82d1-5254001e5c4e" + kms_region = "ap-guangzhou" + root_password = "xxxxxxxxxx" + charset = "LATIN1" + project_id = 0 + memory = 4 + storage = 100 + + backup_plan { + min_backup_start_time = "00:10:11" + max_backup_start_time = "01:10:11" + base_backup_retention_period = 7 + backup_period = ["tuesday", "wednesday"] + } + + tags = { + tf = "test" + } +} +``` + ## Argument Reference The following arguments are supported: @@ -121,10 +155,15 @@ The following arguments are supported: * `backup_plan` - (Optional) Specify DB backup plan. * `charge_type` - (Optional, ForceNew) Pay type of the postgresql instance. For now, only `POSTPAID_BY_HOUR` is valid. * `charset` - (Optional, ForceNew) Charset of the root account. Valid values are `UTF8`,`LATIN1`. +* `db_kernel_version` - (Optional) PostgreSQL kernel version number. If it is specified, an instance running kernel DBKernelVersion will be created. +* `db_major_vesion` - (Optional) PostgreSQL major version number. Valid values: 10, 11, 12, 13. If it is specified, an instance running the latest kernel of PostgreSQL DBMajorVersion will be created. * `db_node_set` - (Optional) Specify instance node info for disaster migration. * `engine_version` - (Optional, ForceNew) Version of the postgresql database engine. Valid values: `10.4`, `11.8`, `12.4`. +* `kms_key_id` - (Optional) KeyId of the custom key. +* `kms_region` - (Optional) Region of the custom key. * `max_standby_archive_delay` - (Optional) max_standby_archive_delay applies when WAL data is being read from WAL archive (and is therefore not current). Units are milliseconds if not specified. * `max_standby_streaming_delay` - (Optional) max_standby_streaming_delay applies when WAL data is being received via streaming replication. Units are milliseconds if not specified. +* `need_support_tde` - (Optional) Whether to support data transparent encryption, 1: yes, 0: no (default). * `project_id` - (Optional) Project id, default value is `0`. * `public_access_switch` - (Optional) Indicates whether to enable the access to an instance from public network or not. * `root_user` - (Optional, ForceNew) Instance root account name. This parameter is optional, Default value is `root`.