strongdm 13.2.0 → 13.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cc9f3ee2d31a3da47674d692fda3db6f15590e4c6a8bbe3d6b3cd256bef0601c
4
- data.tar.gz: e411a2b674e3df05b7d09387b4dd5b4fc77fde509e544a16c27fb951b0ec3ca6
3
+ metadata.gz: 2d22c8ccc70aa1a21201b8ac4fa3f2c18e0ddce01d8ce75b2ea89a7e8146f956
4
+ data.tar.gz: 565b761e2a960a2de128e78304ac20cc88b4d6ec0ee45c73dc841718e9d13af9
5
5
  SHA512:
6
- metadata.gz: cd3b01d10dd14e3a8f7c1b168c1ac9ffdbe939daa0f2c027c7048c5893ecf5a9e8d753b7c17e5a979c779cbca8a2b24ff61e1dddaa7218c2bfff41827bb4e905
7
- data.tar.gz: f4ab4e6befd64a08b2d4f3d99ce9aad3451ca2d07e7676cdb7567661e41180b9ddcce39f08168c0a8bd9783eb77c9f4a1137fa00f8fb51178615d4aa11ed55f6
6
+ metadata.gz: 799fa35622222bcc59f0c1967399bec21a5b2cec2e68febad1893a4d378f11bbb883c6246e6a96f554210a36c0733d0db883c630823db22af20f779e7e316108
7
+ data.tar.gz: 7d5cae46851f2b94fc0a512697dc258672d1a73ad6efed911696074982b58eb621fd0834e613b038b00feaa62d5a1f3c3baf1e695777f53d3d4a6b85dcbb4ce7
data/.git/ORIG_HEAD CHANGED
@@ -1 +1 @@
1
- d2332b223f397155e757daed36263d569cc623e9
1
+ 521b91f1f817e0ee896af3b7ccf29d29491c1b92
data/.git/index CHANGED
Binary file
data/.git/logs/HEAD CHANGED
@@ -1,3 +1,3 @@
1
- 0000000000000000000000000000000000000000 d2332b223f397155e757daed36263d569cc623e9 root <root@066618afa5b6.(none)> 1741225284 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
- d2332b223f397155e757daed36263d569cc623e9 d2332b223f397155e757daed36263d569cc623e9 root <root@066618afa5b6.(none)> 1741225284 +0000 checkout: moving from master to master
3
- d2332b223f397155e757daed36263d569cc623e9 4116587f7cfd88cd8e90c8f13af5f1a13c851530 root <root@066618afa5b6.(none)> 1741225284 +0000 merge origin/development: Fast-forward
1
+ 0000000000000000000000000000000000000000 521b91f1f817e0ee896af3b7ccf29d29491c1b92 root <root@f2f34566b279.(none)> 1741715149 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
+ 521b91f1f817e0ee896af3b7ccf29d29491c1b92 521b91f1f817e0ee896af3b7ccf29d29491c1b92 root <root@f2f34566b279.(none)> 1741715149 +0000 checkout: moving from master to master
3
+ 521b91f1f817e0ee896af3b7ccf29d29491c1b92 d083930c831fd58555dfe5ad34bcaec81b755fc6 root <root@f2f34566b279.(none)> 1741715149 +0000 merge origin/development: Fast-forward
@@ -1,2 +1,2 @@
1
- 0000000000000000000000000000000000000000 d2332b223f397155e757daed36263d569cc623e9 root <root@066618afa5b6.(none)> 1741225284 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
- d2332b223f397155e757daed36263d569cc623e9 4116587f7cfd88cd8e90c8f13af5f1a13c851530 root <root@066618afa5b6.(none)> 1741225284 +0000 merge origin/development: Fast-forward
1
+ 0000000000000000000000000000000000000000 521b91f1f817e0ee896af3b7ccf29d29491c1b92 root <root@f2f34566b279.(none)> 1741715149 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
+ 521b91f1f817e0ee896af3b7ccf29d29491c1b92 d083930c831fd58555dfe5ad34bcaec81b755fc6 root <root@f2f34566b279.(none)> 1741715149 +0000 merge origin/development: Fast-forward
@@ -1 +1 @@
1
- 0000000000000000000000000000000000000000 d2332b223f397155e757daed36263d569cc623e9 root <root@066618afa5b6.(none)> 1741225284 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
1
+ 0000000000000000000000000000000000000000 521b91f1f817e0ee896af3b7ccf29d29491c1b92 root <root@f2f34566b279.(none)> 1741715149 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
data/.git/packed-refs CHANGED
@@ -1,6 +1,6 @@
1
1
  # pack-refs with: peeled fully-peeled sorted
2
- 4116587f7cfd88cd8e90c8f13af5f1a13c851530 refs/remotes/origin/development
3
- d2332b223f397155e757daed36263d569cc623e9 refs/remotes/origin/master
2
+ d083930c831fd58555dfe5ad34bcaec81b755fc6 refs/remotes/origin/development
3
+ 521b91f1f817e0ee896af3b7ccf29d29491c1b92 refs/remotes/origin/master
4
4
  2e4fe8087177ddea9b3991ca499f758384839c89 refs/tags/untagged-84fd83a4484c785cce63
5
5
  04f604866214fab4d5663b5171a3e596331577bd refs/tags/v0.9.4
6
6
  6f9a7b75b345c65fb554884907b7060680c807b7 refs/tags/v0.9.5
@@ -70,6 +70,8 @@ b68a30b7513dbbdada47704bd34510560b4ee8ca refs/tags/v12.8.0
70
70
  76b1957fe731ca91ce70123ec943bde26ea9e0ec refs/tags/v12.9.1
71
71
  7b3f19015f0280427b602d2b8c5371dddacd8299 refs/tags/v13.0.0
72
72
  d2332b223f397155e757daed36263d569cc623e9 refs/tags/v13.1.0
73
+ 4116587f7cfd88cd8e90c8f13af5f1a13c851530 refs/tags/v13.2.0
74
+ 521b91f1f817e0ee896af3b7ccf29d29491c1b92 refs/tags/v13.2.1
73
75
  e0b1ec0134c7015ccb8c14464cc713c20034159e refs/tags/v2.0.0
74
76
  62a146d9d56852b2ad14ec5d2796cad158d66e1c refs/tags/v2.1.0
75
77
  9de04e628082f4ad0eb9511311479a089d302008 refs/tags/v2.2.0
@@ -1 +1 @@
1
- 4116587f7cfd88cd8e90c8f13af5f1a13c851530
1
+ d083930c831fd58555dfe5ad34bcaec81b755fc6
data/lib/constants.rb CHANGED
@@ -21,6 +21,7 @@ module SDM
21
21
  ROOT_ADMIN = "root-admin"
22
22
  ADMIN = "admin"
23
23
  DATABASE_ADMIN = "database-admin"
24
+ DATABASE_OPERATOR = "database-operator"
24
25
  TEAM_LEADER = "multi-team-leader"
25
26
  USER = "user"
26
27
  AUDITOR = "auditor"
@@ -109,6 +109,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
109
109
  optional :raw_tcp, :message, 2600, "v1.RawTCP"
110
110
  optional :redis, :message, 1600, "v1.Redis"
111
111
  optional :redshift, :message, 1304, "v1.Redshift"
112
+ optional :redshift_iam, :message, 1312, "v1.RedshiftIAM"
113
+ optional :redshift_serverless_iam, :message, 1311, "v1.RedshiftServerlessIAM"
112
114
  optional :sql_server, :message, 1800, "v1.SQLServer"
113
115
  optional :sql_server_azure_ad, :message, 1805, "v1.SQLServerAzureAD"
114
116
  optional :sql_server_kerberos_ad, :message, 1810, "v1.SQLServerKerberosAD"
@@ -1651,6 +1653,44 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
1651
1653
  optional :port_override, :int32, 5
1652
1654
  optional :username, :string, 2
1653
1655
  end
1656
+ add_message "v1.RedshiftIAM" do
1657
+ optional :id, :string, 32768
1658
+ optional :name, :string, 32769
1659
+ optional :healthy, :bool, 32770
1660
+ optional :tags, :message, 32771, "v1.Tags"
1661
+ optional :secret_store_id, :string, 32772
1662
+ optional :egress_filter, :string, 32773
1663
+ optional :bind_interface, :string, 32774
1664
+ optional :proxy_cluster_id, :string, 32776
1665
+ optional :subdomain, :string, 32775
1666
+ optional :cluster_id, :string, 3
1667
+ optional :database, :string, 4
1668
+ optional :hostname, :string, 1
1669
+ optional :override_database, :bool, 7
1670
+ optional :port, :int32, 6
1671
+ optional :port_override, :int32, 5
1672
+ optional :region, :string, 2
1673
+ optional :role_assumption_arn, :string, 11
1674
+ end
1675
+ add_message "v1.RedshiftServerlessIAM" do
1676
+ optional :id, :string, 32768
1677
+ optional :name, :string, 32769
1678
+ optional :healthy, :bool, 32770
1679
+ optional :tags, :message, 32771, "v1.Tags"
1680
+ optional :secret_store_id, :string, 32772
1681
+ optional :egress_filter, :string, 32773
1682
+ optional :bind_interface, :string, 32774
1683
+ optional :proxy_cluster_id, :string, 32776
1684
+ optional :subdomain, :string, 32775
1685
+ optional :database, :string, 4
1686
+ optional :hostname, :string, 1
1687
+ optional :override_database, :bool, 7
1688
+ optional :port, :int32, 6
1689
+ optional :port_override, :int32, 5
1690
+ optional :region, :string, 2
1691
+ optional :role_assumption_arn, :string, 11
1692
+ optional :workgroup, :string, 3
1693
+ end
1654
1694
  add_message "v1.SQLServer" do
1655
1695
  optional :id, :string, 32768
1656
1696
  optional :name, :string, 32769
@@ -1995,6 +2035,8 @@ module V1
1995
2035
  RawTCP = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.RawTCP").msgclass
1996
2036
  Redis = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.Redis").msgclass
1997
2037
  Redshift = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.Redshift").msgclass
2038
+ RedshiftIAM = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.RedshiftIAM").msgclass
2039
+ RedshiftServerlessIAM = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.RedshiftServerlessIAM").msgclass
1998
2040
  SQLServer = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.SQLServer").msgclass
1999
2041
  SQLServerAzureAD = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.SQLServerAzureAD").msgclass
2000
2042
  SQLServerKerberosAD = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.SQLServerKerberosAD").msgclass
data/lib/grpc/plumbing.rb CHANGED
@@ -10556,6 +10556,138 @@ module SDM
10556
10556
  end
10557
10557
  items
10558
10558
  end
10559
+ def self.convert_redshift_iam_to_porcelain(plumbing)
10560
+ if plumbing == nil
10561
+ return nil
10562
+ end
10563
+ porcelain = RedshiftIAM.new()
10564
+ porcelain.bind_interface = (plumbing.bind_interface)
10565
+ porcelain.cluster_id = (plumbing.cluster_id)
10566
+ porcelain.database = (plumbing.database)
10567
+ porcelain.egress_filter = (plumbing.egress_filter)
10568
+ porcelain.healthy = (plumbing.healthy)
10569
+ porcelain.hostname = (plumbing.hostname)
10570
+ porcelain.id = (plumbing.id)
10571
+ porcelain.name = (plumbing.name)
10572
+ porcelain.override_database = (plumbing.override_database)
10573
+ porcelain.port = (plumbing.port)
10574
+ porcelain.port_override = (plumbing.port_override)
10575
+ porcelain.proxy_cluster_id = (plumbing.proxy_cluster_id)
10576
+ porcelain.region = (plumbing.region)
10577
+ porcelain.role_assumption_arn = (plumbing.role_assumption_arn)
10578
+ porcelain.secret_store_id = (plumbing.secret_store_id)
10579
+ porcelain.subdomain = (plumbing.subdomain)
10580
+ porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
10581
+ porcelain
10582
+ end
10583
+
10584
+ def self.convert_redshift_iam_to_plumbing(porcelain)
10585
+ if porcelain == nil
10586
+ return nil
10587
+ end
10588
+ plumbing = V1::RedshiftIAM.new()
10589
+ plumbing.bind_interface = (porcelain.bind_interface)
10590
+ plumbing.cluster_id = (porcelain.cluster_id)
10591
+ plumbing.database = (porcelain.database)
10592
+ plumbing.egress_filter = (porcelain.egress_filter)
10593
+ plumbing.healthy = (porcelain.healthy)
10594
+ plumbing.hostname = (porcelain.hostname)
10595
+ plumbing.id = (porcelain.id)
10596
+ plumbing.name = (porcelain.name)
10597
+ plumbing.override_database = (porcelain.override_database)
10598
+ plumbing.port = (porcelain.port)
10599
+ plumbing.port_override = (porcelain.port_override)
10600
+ plumbing.proxy_cluster_id = (porcelain.proxy_cluster_id)
10601
+ plumbing.region = (porcelain.region)
10602
+ plumbing.role_assumption_arn = (porcelain.role_assumption_arn)
10603
+ plumbing.secret_store_id = (porcelain.secret_store_id)
10604
+ plumbing.subdomain = (porcelain.subdomain)
10605
+ plumbing.tags = convert_tags_to_plumbing(porcelain.tags)
10606
+ plumbing
10607
+ end
10608
+ def self.convert_repeated_redshift_iam_to_plumbing(porcelains)
10609
+ items = Array.new
10610
+ porcelains.each do |porcelain|
10611
+ plumbing = convert_redshift_iam_to_plumbing(porcelain)
10612
+ items.append(plumbing)
10613
+ end
10614
+ items
10615
+ end
10616
+
10617
+ def self.convert_repeated_redshift_iam_to_porcelain(plumbings)
10618
+ items = Array.new
10619
+ plumbings.each do |plumbing|
10620
+ porcelain = convert_redshift_iam_to_porcelain(plumbing)
10621
+ items.append(porcelain)
10622
+ end
10623
+ items
10624
+ end
10625
+ def self.convert_redshift_serverless_iam_to_porcelain(plumbing)
10626
+ if plumbing == nil
10627
+ return nil
10628
+ end
10629
+ porcelain = RedshiftServerlessIAM.new()
10630
+ porcelain.bind_interface = (plumbing.bind_interface)
10631
+ porcelain.database = (plumbing.database)
10632
+ porcelain.egress_filter = (plumbing.egress_filter)
10633
+ porcelain.healthy = (plumbing.healthy)
10634
+ porcelain.hostname = (plumbing.hostname)
10635
+ porcelain.id = (plumbing.id)
10636
+ porcelain.name = (plumbing.name)
10637
+ porcelain.override_database = (plumbing.override_database)
10638
+ porcelain.port = (plumbing.port)
10639
+ porcelain.port_override = (plumbing.port_override)
10640
+ porcelain.proxy_cluster_id = (plumbing.proxy_cluster_id)
10641
+ porcelain.region = (plumbing.region)
10642
+ porcelain.role_assumption_arn = (plumbing.role_assumption_arn)
10643
+ porcelain.secret_store_id = (plumbing.secret_store_id)
10644
+ porcelain.subdomain = (plumbing.subdomain)
10645
+ porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
10646
+ porcelain.workgroup = (plumbing.workgroup)
10647
+ porcelain
10648
+ end
10649
+
10650
+ def self.convert_redshift_serverless_iam_to_plumbing(porcelain)
10651
+ if porcelain == nil
10652
+ return nil
10653
+ end
10654
+ plumbing = V1::RedshiftServerlessIAM.new()
10655
+ plumbing.bind_interface = (porcelain.bind_interface)
10656
+ plumbing.database = (porcelain.database)
10657
+ plumbing.egress_filter = (porcelain.egress_filter)
10658
+ plumbing.healthy = (porcelain.healthy)
10659
+ plumbing.hostname = (porcelain.hostname)
10660
+ plumbing.id = (porcelain.id)
10661
+ plumbing.name = (porcelain.name)
10662
+ plumbing.override_database = (porcelain.override_database)
10663
+ plumbing.port = (porcelain.port)
10664
+ plumbing.port_override = (porcelain.port_override)
10665
+ plumbing.proxy_cluster_id = (porcelain.proxy_cluster_id)
10666
+ plumbing.region = (porcelain.region)
10667
+ plumbing.role_assumption_arn = (porcelain.role_assumption_arn)
10668
+ plumbing.secret_store_id = (porcelain.secret_store_id)
10669
+ plumbing.subdomain = (porcelain.subdomain)
10670
+ plumbing.tags = convert_tags_to_plumbing(porcelain.tags)
10671
+ plumbing.workgroup = (porcelain.workgroup)
10672
+ plumbing
10673
+ end
10674
+ def self.convert_repeated_redshift_serverless_iam_to_plumbing(porcelains)
10675
+ items = Array.new
10676
+ porcelains.each do |porcelain|
10677
+ plumbing = convert_redshift_serverless_iam_to_plumbing(porcelain)
10678
+ items.append(plumbing)
10679
+ end
10680
+ items
10681
+ end
10682
+
10683
+ def self.convert_repeated_redshift_serverless_iam_to_porcelain(plumbings)
10684
+ items = Array.new
10685
+ plumbings.each do |plumbing|
10686
+ porcelain = convert_redshift_serverless_iam_to_porcelain(plumbing)
10687
+ items.append(porcelain)
10688
+ end
10689
+ items
10690
+ end
10559
10691
  def self.convert_relay_to_porcelain(plumbing)
10560
10692
  if plumbing == nil
10561
10693
  return nil
@@ -11330,6 +11462,12 @@ module SDM
11330
11462
  if porcelain.instance_of? Redshift
11331
11463
  plumbing.redshift = convert_redshift_to_plumbing(porcelain)
11332
11464
  end
11465
+ if porcelain.instance_of? RedshiftIAM
11466
+ plumbing.redshift_iam = convert_redshift_iam_to_plumbing(porcelain)
11467
+ end
11468
+ if porcelain.instance_of? RedshiftServerlessIAM
11469
+ plumbing.redshift_serverless_iam = convert_redshift_serverless_iam_to_plumbing(porcelain)
11470
+ end
11333
11471
  if porcelain.instance_of? SingleStore
11334
11472
  plumbing.single_store = convert_single_store_to_plumbing(porcelain)
11335
11473
  end
@@ -11634,6 +11772,12 @@ module SDM
11634
11772
  if plumbing.redshift != nil
11635
11773
  return convert_redshift_to_porcelain(plumbing.redshift)
11636
11774
  end
11775
+ if plumbing.redshift_iam != nil
11776
+ return convert_redshift_iam_to_porcelain(plumbing.redshift_iam)
11777
+ end
11778
+ if plumbing.redshift_serverless_iam != nil
11779
+ return convert_redshift_serverless_iam_to_porcelain(plumbing.redshift_serverless_iam)
11780
+ end
11637
11781
  if plumbing.single_store != nil
11638
11782
  return convert_single_store_to_porcelain(plumbing.single_store)
11639
11783
  end
@@ -10737,6 +10737,174 @@ module SDM
10737
10737
  end
10738
10738
  end
10739
10739
 
10740
+ # RedshiftIAM is currently unstable, and its API may change, or it may be removed, without a major version bump.
10741
+ class RedshiftIAM
10742
+ # The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided.
10743
+ attr_accessor :bind_interface
10744
+ # Cluster Identified of Redshift cluster
10745
+ attr_accessor :cluster_id
10746
+ # The initial database to connect to. This setting does not by itself prevent switching to another database after connecting.
10747
+ attr_accessor :database
10748
+ # A filter applied to the routing logic to pin datasource to nodes.
10749
+ attr_accessor :egress_filter
10750
+ # True if the datasource is reachable and the credentials are valid.
10751
+ attr_accessor :healthy
10752
+ # The host to dial to initiate a connection from the egress node to this resource.
10753
+ attr_accessor :hostname
10754
+ # Unique identifier of the Resource.
10755
+ attr_accessor :id
10756
+ # Unique human-readable name of the Resource.
10757
+ attr_accessor :name
10758
+ # If set, the database configured cannot be changed by users. This setting is not recommended for most use cases, as some clients will insist their database has changed when it has not, leading to user confusion.
10759
+ attr_accessor :override_database
10760
+ # The port to dial to initiate a connection from the egress node to this resource.
10761
+ attr_accessor :port
10762
+ # The local port used by clients to connect to this resource.
10763
+ attr_accessor :port_override
10764
+ # ID of the proxy cluster for this resource, if any.
10765
+ attr_accessor :proxy_cluster_id
10766
+ # The AWS region to connect to.
10767
+ attr_accessor :region
10768
+ # If provided, the gateway/relay will try to assume this role instead of the underlying compute's role.
10769
+ attr_accessor :role_assumption_arn
10770
+ # ID of the secret store containing credentials for this resource, if any.
10771
+ attr_accessor :secret_store_id
10772
+ # Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
10773
+ attr_accessor :subdomain
10774
+ # Tags is a map of key, value pairs.
10775
+ attr_accessor :tags
10776
+
10777
+ def initialize(
10778
+ bind_interface: nil,
10779
+ cluster_id: nil,
10780
+ database: nil,
10781
+ egress_filter: nil,
10782
+ healthy: nil,
10783
+ hostname: nil,
10784
+ id: nil,
10785
+ name: nil,
10786
+ override_database: nil,
10787
+ port: nil,
10788
+ port_override: nil,
10789
+ proxy_cluster_id: nil,
10790
+ region: nil,
10791
+ role_assumption_arn: nil,
10792
+ secret_store_id: nil,
10793
+ subdomain: nil,
10794
+ tags: nil
10795
+ )
10796
+ @bind_interface = bind_interface == nil ? "" : bind_interface
10797
+ @cluster_id = cluster_id == nil ? "" : cluster_id
10798
+ @database = database == nil ? "" : database
10799
+ @egress_filter = egress_filter == nil ? "" : egress_filter
10800
+ @healthy = healthy == nil ? false : healthy
10801
+ @hostname = hostname == nil ? "" : hostname
10802
+ @id = id == nil ? "" : id
10803
+ @name = name == nil ? "" : name
10804
+ @override_database = override_database == nil ? false : override_database
10805
+ @port = port == nil ? 0 : port
10806
+ @port_override = port_override == nil ? 0 : port_override
10807
+ @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
10808
+ @region = region == nil ? "" : region
10809
+ @role_assumption_arn = role_assumption_arn == nil ? "" : role_assumption_arn
10810
+ @secret_store_id = secret_store_id == nil ? "" : secret_store_id
10811
+ @subdomain = subdomain == nil ? "" : subdomain
10812
+ @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
10813
+ end
10814
+
10815
+ def to_json(options = {})
10816
+ hash = {}
10817
+ self.instance_variables.each do |var|
10818
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
10819
+ end
10820
+ hash.to_json
10821
+ end
10822
+ end
10823
+
10824
+ # RedshiftServerlessIAM is currently unstable, and its API may change, or it may be removed, without a major version bump.
10825
+ class RedshiftServerlessIAM
10826
+ # The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided.
10827
+ attr_accessor :bind_interface
10828
+ # The initial database to connect to. This setting does not by itself prevent switching to another database after connecting.
10829
+ attr_accessor :database
10830
+ # A filter applied to the routing logic to pin datasource to nodes.
10831
+ attr_accessor :egress_filter
10832
+ # True if the datasource is reachable and the credentials are valid.
10833
+ attr_accessor :healthy
10834
+ # The host to dial to initiate a connection from the egress node to this resource.
10835
+ attr_accessor :hostname
10836
+ # Unique identifier of the Resource.
10837
+ attr_accessor :id
10838
+ # Unique human-readable name of the Resource.
10839
+ attr_accessor :name
10840
+ # If set, the database configured cannot be changed by users. This setting is not recommended for most use cases, as some clients will insist their database has changed when it has not, leading to user confusion.
10841
+ attr_accessor :override_database
10842
+ # The port to dial to initiate a connection from the egress node to this resource.
10843
+ attr_accessor :port
10844
+ # The local port used by clients to connect to this resource.
10845
+ attr_accessor :port_override
10846
+ # ID of the proxy cluster for this resource, if any.
10847
+ attr_accessor :proxy_cluster_id
10848
+ # The AWS region to connect to.
10849
+ attr_accessor :region
10850
+ # If provided, the gateway/relay will try to assume this role instead of the underlying compute's role.
10851
+ attr_accessor :role_assumption_arn
10852
+ # ID of the secret store containing credentials for this resource, if any.
10853
+ attr_accessor :secret_store_id
10854
+ # Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
10855
+ attr_accessor :subdomain
10856
+ # Tags is a map of key, value pairs.
10857
+ attr_accessor :tags
10858
+ # Workgroup name in the serverless Redshift
10859
+ attr_accessor :workgroup
10860
+
10861
+ def initialize(
10862
+ bind_interface: nil,
10863
+ database: nil,
10864
+ egress_filter: nil,
10865
+ healthy: nil,
10866
+ hostname: nil,
10867
+ id: nil,
10868
+ name: nil,
10869
+ override_database: nil,
10870
+ port: nil,
10871
+ port_override: nil,
10872
+ proxy_cluster_id: nil,
10873
+ region: nil,
10874
+ role_assumption_arn: nil,
10875
+ secret_store_id: nil,
10876
+ subdomain: nil,
10877
+ tags: nil,
10878
+ workgroup: nil
10879
+ )
10880
+ @bind_interface = bind_interface == nil ? "" : bind_interface
10881
+ @database = database == nil ? "" : database
10882
+ @egress_filter = egress_filter == nil ? "" : egress_filter
10883
+ @healthy = healthy == nil ? false : healthy
10884
+ @hostname = hostname == nil ? "" : hostname
10885
+ @id = id == nil ? "" : id
10886
+ @name = name == nil ? "" : name
10887
+ @override_database = override_database == nil ? false : override_database
10888
+ @port = port == nil ? 0 : port
10889
+ @port_override = port_override == nil ? 0 : port_override
10890
+ @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
10891
+ @region = region == nil ? "" : region
10892
+ @role_assumption_arn = role_assumption_arn == nil ? "" : role_assumption_arn
10893
+ @secret_store_id = secret_store_id == nil ? "" : secret_store_id
10894
+ @subdomain = subdomain == nil ? "" : subdomain
10895
+ @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
10896
+ @workgroup = workgroup == nil ? "" : workgroup
10897
+ end
10898
+
10899
+ def to_json(options = {})
10900
+ hash = {}
10901
+ self.instance_variables.each do |var|
10902
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
10903
+ end
10904
+ hash.to_json
10905
+ end
10906
+ end
10907
+
10740
10908
  # Relay represents a StrongDM CLI installation running in relay mode.
10741
10909
  class Relay
10742
10910
  # Device is a read only device name uploaded by the gateway process when
data/lib/strongdm.rb CHANGED
@@ -29,7 +29,7 @@ module SDM #:nodoc:
29
29
  DEFAULT_BASE_RETRY_DELAY = 0.0030 # 30 ms
30
30
  DEFAULT_MAX_RETRY_DELAY = 300 # 300 seconds
31
31
  API_VERSION = "2024-03-28"
32
- USER_AGENT = "strongdm-sdk-ruby/13.2.0"
32
+ USER_AGENT = "strongdm-sdk-ruby/13.3.0"
33
33
  private_constant :DEFAULT_MAX_RETRIES, :DEFAULT_BASE_RETRY_DELAY, :DEFAULT_MAX_RETRY_DELAY, :API_VERSION, :USER_AGENT
34
34
 
35
35
  # Creates a new strongDM API client.
data/lib/svc.rb CHANGED
@@ -4717,6 +4717,8 @@ module SDM #:nodoc:
4717
4717
  # {RDSPostgresIAM}
4718
4718
  # {Redis}
4719
4719
  # {Redshift}
4720
+ # {RedshiftIAM}
4721
+ # {RedshiftServerlessIAM}
4720
4722
  # {SingleStore}
4721
4723
  # {Snowflake}
4722
4724
  # {Snowsight}
data/lib/version CHANGED
@@ -13,5 +13,5 @@
13
13
  # limitations under the License.
14
14
  #
15
15
  module SDM
16
- VERSION = "13.2.0"
16
+ VERSION = "13.3.0"
17
17
  end
data/lib/version.rb CHANGED
@@ -13,5 +13,5 @@
13
13
  # limitations under the License.
14
14
  #
15
15
  module SDM
16
- VERSION = "13.2.0"
16
+ VERSION = "13.3.0"
17
17
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: strongdm
3
3
  version: !ruby/object:Gem::Version
4
- version: 13.2.0
4
+ version: 13.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - strongDM Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-03-06 00:00:00.000000000 Z
11
+ date: 2025-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: grpc
@@ -81,8 +81,8 @@ files:
81
81
  - "./.git/logs/HEAD"
82
82
  - "./.git/logs/refs/heads/master"
83
83
  - "./.git/logs/refs/remotes/origin/HEAD"
84
- - "./.git/objects/pack/pack-0923a9f957d28143d775f999868bf07efbc9b283.idx"
85
- - "./.git/objects/pack/pack-0923a9f957d28143d775f999868bf07efbc9b283.pack"
84
+ - "./.git/objects/pack/pack-ff5d18ef41dcf0a3ce71a2552c06161908b1eaf3.idx"
85
+ - "./.git/objects/pack/pack-ff5d18ef41dcf0a3ce71a2552c06161908b1eaf3.pack"
86
86
  - "./.git/packed-refs"
87
87
  - "./.git/refs/heads/master"
88
88
  - "./.git/refs/remotes/origin/HEAD"