strongdm 1.0.16 → 1.0.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/doc/SDM/AKS.html +2 -2
  3. data/doc/SDM/AKSBasicAuth.html +2 -2
  4. data/doc/SDM/AKSServiceAccount.html +2 -2
  5. data/doc/SDM/AWS.html +21 -3
  6. data/doc/SDM/AWSStore.html +2 -2
  7. data/doc/SDM/AccountAttachment.html +2 -2
  8. data/doc/SDM/AccountAttachmentCreateResponse.html +2 -2
  9. data/doc/SDM/AccountAttachmentDeleteResponse.html +2 -2
  10. data/doc/SDM/AccountAttachmentGetResponse.html +2 -2
  11. data/doc/SDM/AccountCreateResponse.html +2 -2
  12. data/doc/SDM/AccountDeleteResponse.html +2 -2
  13. data/doc/SDM/AccountGetResponse.html +2 -2
  14. data/doc/SDM/AccountGrant.html +2 -2
  15. data/doc/SDM/AccountGrantCreateResponse.html +2 -2
  16. data/doc/SDM/AccountGrantDeleteResponse.html +2 -2
  17. data/doc/SDM/AccountGrantGetResponse.html +2 -2
  18. data/doc/SDM/AccountUpdateResponse.html +2 -2
  19. data/doc/SDM/AmazonEKS.html +21 -3
  20. data/doc/SDM/AmazonES.html +39 -3
  21. data/doc/SDM/Athena.html +39 -3
  22. data/doc/SDM/AuroraMysql.html +2 -2
  23. data/doc/SDM/AuroraPostgres.html +2 -2
  24. data/doc/SDM/BigQuery.html +2 -2
  25. data/doc/SDM/Cassandra.html +2 -2
  26. data/doc/SDM/Citus.html +2 -2
  27. data/doc/SDM/Client.html +7 -4
  28. data/doc/SDM/Clustrix.html +2 -2
  29. data/doc/SDM/Cockroach.html +2 -2
  30. data/doc/SDM/ControlPanelGetSSHCAPublicKeyResponse.html +2 -2
  31. data/doc/SDM/DB2LUW.html +2 -2
  32. data/doc/SDM/DB2i.html +2 -2
  33. data/doc/SDM/Druid.html +2 -2
  34. data/doc/SDM/DynamoDB.html +39 -3
  35. data/doc/SDM/Elastic.html +2 -2
  36. data/doc/SDM/ElasticacheRedis.html +2 -2
  37. data/doc/SDM/Gateway.html +2 -2
  38. data/doc/SDM/GoogleGKE.html +2 -2
  39. data/doc/SDM/Greenplum.html +2 -2
  40. data/doc/SDM/HTTPAuth.html +2 -2
  41. data/doc/SDM/HTTPBasicAuth.html +2 -2
  42. data/doc/SDM/HTTPNoAuth.html +2 -2
  43. data/doc/SDM/Kubernetes.html +2 -2
  44. data/doc/SDM/KubernetesBasicAuth.html +2 -2
  45. data/doc/SDM/KubernetesServiceAccount.html +2 -2
  46. data/doc/SDM/Maria.html +2 -2
  47. data/doc/SDM/Memcached.html +2 -2
  48. data/doc/SDM/Memsql.html +2 -2
  49. data/doc/SDM/MongoHost.html +2 -2
  50. data/doc/SDM/MongoLegacyHost.html +2 -2
  51. data/doc/SDM/MongoLegacyReplicaset.html +2 -2
  52. data/doc/SDM/MongoReplicaSet.html +2 -2
  53. data/doc/SDM/Mysql.html +2 -2
  54. data/doc/SDM/NodeCreateResponse.html +2 -2
  55. data/doc/SDM/NodeDeleteResponse.html +2 -2
  56. data/doc/SDM/NodeGetResponse.html +2 -2
  57. data/doc/SDM/NodeUpdateResponse.html +2 -2
  58. data/doc/SDM/Oracle.html +2 -2
  59. data/doc/SDM/Plumbing.html +571 -393
  60. data/doc/SDM/Postgres.html +2 -2
  61. data/doc/SDM/Presto.html +2 -2
  62. data/doc/SDM/RDP.html +2 -2
  63. data/doc/SDM/Redis.html +2 -2
  64. data/doc/SDM/Redshift.html +2 -2
  65. data/doc/SDM/Relay.html +2 -2
  66. data/doc/SDM/ResourceCreateResponse.html +2 -2
  67. data/doc/SDM/ResourceDeleteResponse.html +2 -2
  68. data/doc/SDM/ResourceGetResponse.html +2 -2
  69. data/doc/SDM/ResourceUpdateResponse.html +2 -2
  70. data/doc/SDM/Resources.html +73 -5
  71. data/doc/SDM/Role.html +2 -2
  72. data/doc/SDM/RoleAttachment.html +2 -2
  73. data/doc/SDM/RoleAttachmentCreateResponse.html +2 -2
  74. data/doc/SDM/RoleAttachmentDeleteResponse.html +2 -2
  75. data/doc/SDM/RoleAttachmentGetResponse.html +2 -2
  76. data/doc/SDM/RoleAttachments.html +5 -5
  77. data/doc/SDM/RoleCreateResponse.html +2 -2
  78. data/doc/SDM/RoleDeleteResponse.html +2 -2
  79. data/doc/SDM/RoleGetResponse.html +2 -2
  80. data/doc/SDM/RoleGrant.html +2 -2
  81. data/doc/SDM/RoleGrantCreateResponse.html +2 -2
  82. data/doc/SDM/RoleGrantDeleteResponse.html +2 -2
  83. data/doc/SDM/RoleGrantGetResponse.html +2 -2
  84. data/doc/SDM/RoleGrants.html +5 -5
  85. data/doc/SDM/RoleUpdateResponse.html +2 -2
  86. data/doc/SDM/Roles.html +6 -6
  87. data/doc/SDM/SQLServer.html +2 -2
  88. data/doc/SDM/SSH.html +2 -2
  89. data/doc/SDM/SSHCert.html +2 -2
  90. data/doc/SDM/SecretStoreCreateResponse.html +2 -2
  91. data/doc/SDM/SecretStoreDeleteResponse.html +2 -2
  92. data/doc/SDM/SecretStoreGetResponse.html +2 -2
  93. data/doc/SDM/SecretStoreUpdateResponse.html +2 -2
  94. data/doc/SDM/SecretStores.html +6 -6
  95. data/doc/SDM/Service.html +2 -2
  96. data/doc/SDM/Snowflake.html +2 -2
  97. data/doc/SDM/Sybase.html +2 -2
  98. data/doc/SDM/SybaseIQ.html +2 -2
  99. data/doc/SDM/Tag.html +247 -0
  100. data/doc/SDM/Teradata.html +2 -2
  101. data/doc/SDM/User.html +2 -2
  102. data/doc/SDM/VaultTLSStore.html +2 -2
  103. data/doc/SDM/VaultTokenStore.html +2 -2
  104. data/doc/V1.html +25 -0
  105. data/doc/created.rid +49 -48
  106. data/doc/index.html +2 -0
  107. data/doc/js/search_index.js +1 -1
  108. data/doc/js/search_index.js.gz +0 -0
  109. data/doc/lib/version.html +1 -1
  110. data/doc/table_of_contents.html +529 -489
  111. data/lib/grpc/drivers_pb.rb +8 -0
  112. data/lib/grpc/plumbing.rb +52 -0
  113. data/lib/grpc/resources_pb.rb +12 -0
  114. data/lib/grpc/resources_services_pb.rb +2 -0
  115. data/lib/grpc/spec_pb.rb +6 -0
  116. data/lib/grpc/tags_pb.rb +5 -0
  117. data/lib/models/porcelain.rb +78 -4
  118. data/lib/strongdm.rb +3 -0
  119. data/lib/svc.rb +37 -0
  120. data/lib/version +1 -1
  121. data/lib/version.rb +1 -1
  122. metadata +3 -2
@@ -85,6 +85,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
85
85
  optional :output, :string, 3
86
86
  optional :port_override, :int32, 4
87
87
  optional :region, :string, 5
88
+ optional :role_arn, :string, 6
89
+ optional :role_external_id, :string, 7
88
90
  end
89
91
  add_message "v1.AWS" do
90
92
  optional :id, :string, 32768
@@ -96,6 +98,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
96
98
  optional :secret_access_key, :string, 2
97
99
  optional :healthcheck_region, :string, 4
98
100
  optional :role_arn, :string, 5
101
+ optional :role_external_id, :string, 6
99
102
  end
100
103
  add_message "v1.BigQuery" do
101
104
  optional :id, :string, 32768
@@ -171,6 +174,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
171
174
  optional :region, :string, 3
172
175
  optional :endpoint, :string, 4
173
176
  optional :port_override, :int32, 5
177
+ optional :role_arn, :string, 6
178
+ optional :role_external_id, :string, 7
174
179
  end
175
180
  add_message "v1.AmazonES" do
176
181
  optional :id, :string, 32768
@@ -183,6 +188,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
183
188
  optional :endpoint, :string, 3
184
189
  optional :access_key, :string, 4
185
190
  optional :port_override, :int32, 5
191
+ optional :role_arn, :string, 6
192
+ optional :role_external_id, :string, 7
186
193
  end
187
194
  add_message "v1.Elastic" do
188
195
  optional :id, :string, 32768
@@ -285,6 +292,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
285
292
  optional :region, :string, 6
286
293
  optional :cluster_name, :string, 7
287
294
  optional :role_arn, :string, 8
295
+ optional :role_external_id, :string, 10
288
296
  optional :healthcheck_namespace, :string, 9
289
297
  end
290
298
  add_message "v1.GoogleGKE" do
@@ -262,6 +262,42 @@ module SDM
262
262
  end
263
263
  items
264
264
  end
265
+ def self.convert_tag_to_porcelain(plumbing)
266
+ if plumbing == nil
267
+ return nil
268
+ end
269
+ porcelain = Tag.new()
270
+ porcelain.name = (plumbing.name)
271
+ porcelain.value = (plumbing.value)
272
+ porcelain
273
+ end
274
+
275
+ def self.convert_tag_to_plumbing(porcelain)
276
+ if porcelain == nil
277
+ return nil
278
+ end
279
+ plumbing = V1::Tag.new()
280
+ plumbing.name = (porcelain.name) unless porcelain.name == nil
281
+ plumbing.value = (porcelain.value) unless porcelain.value == nil
282
+ plumbing
283
+ end
284
+ def self.convert_repeated_tag_to_plumbing(porcelains)
285
+ items = Array.new
286
+ porcelains.each do |porcelain|
287
+ plumbing = convert_tag_to_plumbing(porcelain)
288
+ items.append(plumbing)
289
+ end
290
+ items
291
+ end
292
+
293
+ def self.convert_repeated_tag_to_porcelain(plumbings)
294
+ items = Array.new
295
+ plumbings.each do |plumbing|
296
+ porcelain = convert_tag_to_porcelain(plumbing)
297
+ items.append(porcelain)
298
+ end
299
+ items
300
+ end
265
301
  def self.convert_account_attachment_create_response_to_porcelain(plumbing)
266
302
  if plumbing == nil
267
303
  return nil
@@ -1221,6 +1257,8 @@ module SDM
1221
1257
  porcelain.output = (plumbing.output)
1222
1258
  porcelain.port_override = (plumbing.port_override)
1223
1259
  porcelain.region = (plumbing.region)
1260
+ porcelain.role_arn = (plumbing.role_arn)
1261
+ porcelain.role_external_id = (plumbing.role_external_id)
1224
1262
  porcelain
1225
1263
  end
1226
1264
 
@@ -1239,6 +1277,8 @@ module SDM
1239
1277
  plumbing.output = (porcelain.output) unless porcelain.output == nil
1240
1278
  plumbing.port_override = (porcelain.port_override) unless porcelain.port_override == nil
1241
1279
  plumbing.region = (porcelain.region) unless porcelain.region == nil
1280
+ plumbing.role_arn = (porcelain.role_arn) unless porcelain.role_arn == nil
1281
+ plumbing.role_external_id = (porcelain.role_external_id) unless porcelain.role_external_id == nil
1242
1282
  plumbing
1243
1283
  end
1244
1284
  def self.convert_repeated_athena_to_plumbing(porcelains)
@@ -1272,6 +1312,7 @@ module SDM
1272
1312
  porcelain.secret_access_key = (plumbing.secret_access_key)
1273
1313
  porcelain.healthcheck_region = (plumbing.healthcheck_region)
1274
1314
  porcelain.role_arn = (plumbing.role_arn)
1315
+ porcelain.role_external_id = (plumbing.role_external_id)
1275
1316
  porcelain
1276
1317
  end
1277
1318
 
@@ -1289,6 +1330,7 @@ module SDM
1289
1330
  plumbing.secret_access_key = (porcelain.secret_access_key) unless porcelain.secret_access_key == nil
1290
1331
  plumbing.healthcheck_region = (porcelain.healthcheck_region) unless porcelain.healthcheck_region == nil
1291
1332
  plumbing.role_arn = (porcelain.role_arn) unless porcelain.role_arn == nil
1333
+ plumbing.role_external_id = (porcelain.role_external_id) unless porcelain.role_external_id == nil
1292
1334
  plumbing
1293
1335
  end
1294
1336
  def self.convert_repeated_aws_to_plumbing(porcelains)
@@ -1589,6 +1631,8 @@ module SDM
1589
1631
  porcelain.region = (plumbing.region)
1590
1632
  porcelain.endpoint = (plumbing.endpoint)
1591
1633
  porcelain.port_override = (plumbing.port_override)
1634
+ porcelain.role_arn = (plumbing.role_arn)
1635
+ porcelain.role_external_id = (plumbing.role_external_id)
1592
1636
  porcelain
1593
1637
  end
1594
1638
 
@@ -1607,6 +1651,8 @@ module SDM
1607
1651
  plumbing.region = (porcelain.region) unless porcelain.region == nil
1608
1652
  plumbing.endpoint = (porcelain.endpoint) unless porcelain.endpoint == nil
1609
1653
  plumbing.port_override = (porcelain.port_override) unless porcelain.port_override == nil
1654
+ plumbing.role_arn = (porcelain.role_arn) unless porcelain.role_arn == nil
1655
+ plumbing.role_external_id = (porcelain.role_external_id) unless porcelain.role_external_id == nil
1610
1656
  plumbing
1611
1657
  end
1612
1658
  def self.convert_repeated_dynamo_db_to_plumbing(porcelains)
@@ -1641,6 +1687,8 @@ module SDM
1641
1687
  porcelain.endpoint = (plumbing.endpoint)
1642
1688
  porcelain.access_key = (plumbing.access_key)
1643
1689
  porcelain.port_override = (plumbing.port_override)
1690
+ porcelain.role_arn = (plumbing.role_arn)
1691
+ porcelain.role_external_id = (plumbing.role_external_id)
1644
1692
  porcelain
1645
1693
  end
1646
1694
 
@@ -1659,6 +1707,8 @@ module SDM
1659
1707
  plumbing.endpoint = (porcelain.endpoint) unless porcelain.endpoint == nil
1660
1708
  plumbing.access_key = (porcelain.access_key) unless porcelain.access_key == nil
1661
1709
  plumbing.port_override = (porcelain.port_override) unless porcelain.port_override == nil
1710
+ plumbing.role_arn = (porcelain.role_arn) unless porcelain.role_arn == nil
1711
+ plumbing.role_external_id = (porcelain.role_external_id) unless porcelain.role_external_id == nil
1662
1712
  plumbing
1663
1713
  end
1664
1714
  def self.convert_repeated_amazon_es_to_plumbing(porcelains)
@@ -2067,6 +2117,7 @@ module SDM
2067
2117
  porcelain.region = (plumbing.region)
2068
2118
  porcelain.cluster_name = (plumbing.cluster_name)
2069
2119
  porcelain.role_arn = (plumbing.role_arn)
2120
+ porcelain.role_external_id = (plumbing.role_external_id)
2070
2121
  porcelain.healthcheck_namespace = (plumbing.healthcheck_namespace)
2071
2122
  porcelain
2072
2123
  end
@@ -2088,6 +2139,7 @@ module SDM
2088
2139
  plumbing.region = (porcelain.region) unless porcelain.region == nil
2089
2140
  plumbing.cluster_name = (porcelain.cluster_name) unless porcelain.cluster_name == nil
2090
2141
  plumbing.role_arn = (porcelain.role_arn) unless porcelain.role_arn == nil
2142
+ plumbing.role_external_id = (porcelain.role_external_id) unless porcelain.role_external_id == nil
2091
2143
  plumbing.healthcheck_namespace = (porcelain.healthcheck_namespace) unless porcelain.healthcheck_namespace == nil
2092
2144
  plumbing
2093
2145
  end
@@ -20,6 +20,7 @@ require "google/protobuf"
20
20
  require "options_pb"
21
21
  require "spec_pb"
22
22
  require "drivers_pb"
23
+ require "tags_pb"
23
24
  Google::Protobuf::DescriptorPool.generated_pool.build do
24
25
  add_file("resources.proto", :syntax => :proto3) do
25
26
  add_message "v1.ResourceCreateRequest" do
@@ -67,6 +68,15 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
67
68
  repeated :resources, :message, 2, "v1.Resource"
68
69
  optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
69
70
  end
71
+ add_message "v1.EnumerateTagsRequest" do
72
+ optional :meta, :message, 1, "v1.ListRequestMetadata"
73
+ optional :filter, :string, 2
74
+ end
75
+ add_message "v1.EnumerateTagsResponse" do
76
+ optional :meta, :message, 1, "v1.ListResponseMetadata"
77
+ repeated :matches, :message, 2, "v1.Tag"
78
+ optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
79
+ end
70
80
  end
71
81
  end
72
82
 
@@ -81,4 +91,6 @@ module V1
81
91
  ResourceDeleteResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ResourceDeleteResponse").msgclass
82
92
  ResourceListRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ResourceListRequest").msgclass
83
93
  ResourceListResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ResourceListResponse").msgclass
94
+ EnumerateTagsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.EnumerateTagsRequest").msgclass
95
+ EnumerateTagsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.EnumerateTagsResponse").msgclass
84
96
  end
@@ -27,6 +27,8 @@ module V1
27
27
  self.unmarshal_class_method = :decode
28
28
  self.service_name = "v1.Resources"
29
29
 
30
+ # EnumerateTags gets a list of the filter matching tags.
31
+ rpc :EnumerateTags, ::V1::EnumerateTagsRequest, ::V1::EnumerateTagsResponse
30
32
  # Create registers a new Resource.
31
33
  rpc :Create, ::V1::ResourceCreateRequest, ::V1::ResourceCreateResponse
32
34
  # Get reads one Resource by ID.
@@ -69,6 +69,10 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
69
69
  optional :reset_at, :message, 3, "google.protobuf.Timestamp"
70
70
  optional :bucket, :string, 4
71
71
  end
72
+ add_message "v1.GenericRequestMetadata" do
73
+ end
74
+ add_message "v1.GenericResponseMetadata" do
75
+ end
72
76
  end
73
77
  end
74
78
 
@@ -91,4 +95,6 @@ module V1
91
95
  ListRequestMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ListRequestMetadata").msgclass
92
96
  ListResponseMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ListResponseMetadata").msgclass
93
97
  RateLimitMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.RateLimitMetadata").msgclass
98
+ GenericRequestMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.GenericRequestMetadata").msgclass
99
+ GenericResponseMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.GenericResponseMetadata").msgclass
94
100
  end
@@ -27,10 +27,15 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
27
27
  optional :name, :string, 1
28
28
  optional :value, :string, 2
29
29
  end
30
+ add_message "v1.Tag" do
31
+ optional :name, :string, 1
32
+ optional :value, :string, 2
33
+ end
30
34
  end
31
35
  end
32
36
 
33
37
  module V1
34
38
  Tags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.Tags").msgclass
35
39
  Tags::Pair = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.Tags.Pair").msgclass
40
+ Tag = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.Tag").msgclass
36
41
  end
@@ -115,6 +115,32 @@ module SDM
115
115
  end
116
116
  end
117
117
 
118
+ class Tag
119
+ attr_accessor :name
120
+
121
+ attr_accessor :value
122
+
123
+ def initialize(
124
+ name: nil,
125
+ value: nil
126
+ )
127
+ if name != nil
128
+ @name = name
129
+ end
130
+ if value != nil
131
+ @value = value
132
+ end
133
+ end
134
+
135
+ def to_json(options = {})
136
+ hash = {}
137
+ self.instance_variables.each do |var|
138
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
139
+ end
140
+ hash.to_json
141
+ end
142
+ end
143
+
118
144
  # AccountAttachmentCreateResponse reports how the AccountAttachments were created in the system.
119
145
  class AccountAttachmentCreateResponse
120
146
  # Reserved for future use.
@@ -679,6 +705,10 @@ module SDM
679
705
 
680
706
  attr_accessor :region
681
707
 
708
+ attr_accessor :role_arn
709
+
710
+ attr_accessor :role_external_id
711
+
682
712
  def initialize(
683
713
  id: nil,
684
714
  name: nil,
@@ -689,7 +719,9 @@ module SDM
689
719
  secret_access_key: nil,
690
720
  output: nil,
691
721
  port_override: nil,
692
- region: nil
722
+ region: nil,
723
+ role_arn: nil,
724
+ role_external_id: nil
693
725
  )
694
726
  if id != nil
695
727
  @id = id
@@ -721,6 +753,12 @@ module SDM
721
753
  if region != nil
722
754
  @region = region
723
755
  end
756
+ if role_arn != nil
757
+ @role_arn = role_arn
758
+ end
759
+ if role_external_id != nil
760
+ @role_external_id = role_external_id
761
+ end
724
762
  end
725
763
 
726
764
  def to_json(options = {})
@@ -752,6 +790,8 @@ module SDM
752
790
 
753
791
  attr_accessor :role_arn
754
792
 
793
+ attr_accessor :role_external_id
794
+
755
795
  def initialize(
756
796
  id: nil,
757
797
  name: nil,
@@ -761,7 +801,8 @@ module SDM
761
801
  access_key: nil,
762
802
  secret_access_key: nil,
763
803
  healthcheck_region: nil,
764
- role_arn: nil
804
+ role_arn: nil,
805
+ role_external_id: nil
765
806
  )
766
807
  if id != nil
767
808
  @id = id
@@ -790,6 +831,9 @@ module SDM
790
831
  if role_arn != nil
791
832
  @role_arn = role_arn
792
833
  end
834
+ if role_external_id != nil
835
+ @role_external_id = role_external_id
836
+ end
793
837
  end
794
838
 
795
839
  def to_json(options = {})
@@ -1216,6 +1260,10 @@ module SDM
1216
1260
 
1217
1261
  attr_accessor :port_override
1218
1262
 
1263
+ attr_accessor :role_arn
1264
+
1265
+ attr_accessor :role_external_id
1266
+
1219
1267
  def initialize(
1220
1268
  id: nil,
1221
1269
  name: nil,
@@ -1226,7 +1274,9 @@ module SDM
1226
1274
  secret_access_key: nil,
1227
1275
  region: nil,
1228
1276
  endpoint: nil,
1229
- port_override: nil
1277
+ port_override: nil,
1278
+ role_arn: nil,
1279
+ role_external_id: nil
1230
1280
  )
1231
1281
  if id != nil
1232
1282
  @id = id
@@ -1258,6 +1308,12 @@ module SDM
1258
1308
  if port_override != nil
1259
1309
  @port_override = port_override
1260
1310
  end
1311
+ if role_arn != nil
1312
+ @role_arn = role_arn
1313
+ end
1314
+ if role_external_id != nil
1315
+ @role_external_id = role_external_id
1316
+ end
1261
1317
  end
1262
1318
 
1263
1319
  def to_json(options = {})
@@ -1291,6 +1347,10 @@ module SDM
1291
1347
 
1292
1348
  attr_accessor :port_override
1293
1349
 
1350
+ attr_accessor :role_arn
1351
+
1352
+ attr_accessor :role_external_id
1353
+
1294
1354
  def initialize(
1295
1355
  id: nil,
1296
1356
  name: nil,
@@ -1301,7 +1361,9 @@ module SDM
1301
1361
  secret_access_key: nil,
1302
1362
  endpoint: nil,
1303
1363
  access_key: nil,
1304
- port_override: nil
1364
+ port_override: nil,
1365
+ role_arn: nil,
1366
+ role_external_id: nil
1305
1367
  )
1306
1368
  if id != nil
1307
1369
  @id = id
@@ -1333,6 +1395,12 @@ module SDM
1333
1395
  if port_override != nil
1334
1396
  @port_override = port_override
1335
1397
  end
1398
+ if role_arn != nil
1399
+ @role_arn = role_arn
1400
+ end
1401
+ if role_external_id != nil
1402
+ @role_external_id = role_external_id
1403
+ end
1336
1404
  end
1337
1405
 
1338
1406
  def to_json(options = {})
@@ -1919,6 +1987,8 @@ module SDM
1919
1987
 
1920
1988
  attr_accessor :role_arn
1921
1989
 
1990
+ attr_accessor :role_external_id
1991
+
1922
1992
  attr_accessor :healthcheck_namespace
1923
1993
 
1924
1994
  def initialize(
@@ -1934,6 +2004,7 @@ module SDM
1934
2004
  region: nil,
1935
2005
  cluster_name: nil,
1936
2006
  role_arn: nil,
2007
+ role_external_id: nil,
1937
2008
  healthcheck_namespace: nil
1938
2009
  )
1939
2010
  if id != nil
@@ -1972,6 +2043,9 @@ module SDM
1972
2043
  if role_arn != nil
1973
2044
  @role_arn = role_arn
1974
2045
  end
2046
+ if role_external_id != nil
2047
+ @role_external_id = role_external_id
2048
+ end
1975
2049
  if healthcheck_namespace != nil
1976
2050
  @healthcheck_namespace = healthcheck_namespace
1977
2051
  end
@@ -29,6 +29,9 @@ module SDM
29
29
  class Client
30
30
  # Creates a new strongDM API client.
31
31
  def initialize(api_access_key, api_secret_key, host: "api.strongdm.com:443", insecure: false)
32
+ raise TypeError, "client access key must be a string" unless api_access_key.kind_of?(String)
33
+ raise TypeError, "client secret key must be a string" unless api_secret_key.kind_of?(String)
34
+ raise TypeError, "client host must be a string" unless host.kind_of?(String)
32
35
  @api_access_key = api_access_key.strip
33
36
  @api_secret_key = Base64.strict_decode64(api_secret_key.strip)
34
37
  @max_retries = DEFAULT_MAX_RETRIES
data/lib/svc.rb CHANGED
@@ -722,6 +722,43 @@ module SDM
722
722
  @parent = parent
723
723
  end
724
724
 
725
+ # EnumerateTags gets a list of the filter matching tags.
726
+ def enumerate_tags(
727
+ filter,
728
+ *args,
729
+ deadline: nil
730
+ )
731
+ req = V1::EnumerateTagsRequest.new()
732
+ req.meta = V1::ListRequestMetadata.new()
733
+ page_size_option = @parent._test_options["PageSize"]
734
+ if page_size_option.is_a? Integer
735
+ req.meta.limit = page_size_option
736
+ end
737
+
738
+ req.filter = Plumbing::quote_filter_args(filter, *args)
739
+ resp = Enumerator::Generator.new { |g|
740
+ tries = 0
741
+ loop do
742
+ begin
743
+ plumbing_response = @stub.enumerate_tags(req, metadata: @parent.get_metadata("Resources.EnumerateTags", req), deadline: deadline)
744
+ rescue => exception
745
+ if (@parent.shouldRetry(tries, exception))
746
+ tries + +@parent.jitterSleep(tries)
747
+ next
748
+ end
749
+ raise Plumbing::convert_error_to_porcelain(exception)
750
+ end
751
+ tries = 0
752
+ plumbing_response.matches.each do |plumbing_item|
753
+ g.yield Plumbing::convert_tag_to_porcelain(plumbing_item)
754
+ end
755
+ break if plumbing_response.meta.next_cursor == ""
756
+ req.meta.cursor = plumbing_response.meta.next_cursor
757
+ end
758
+ }
759
+ resp
760
+ end
761
+
725
762
  # Create registers a new Resource.
726
763
  def create(
727
764
  resource,