cyral.Repository
Explore with Pulumi AI
# cyral.Repository (Resource)
Manages repositories.
Import ID syntax is
{repository_id}.
Example Usage
More complex examples using cyral.Repository resource are available in the Guides section:
- Create an AWS EC2 sidecar to protect PostgreSQL and MySQL databases
- Setup SSO access to MongoDB cluster using Okta IdP
import * as pulumi from "@pulumi/pulumi";
import * as cyral from "@pulumi/cyral";
//## Minimal Repository
const minimalRepo = new cyral.Repository("minimalRepo", {
    mongodbSettings: {
        serverType: "standalone",
    },
    repoNodes: [{
        host: "mongodb.cyral.com",
        name: "node-1",
        port: 27017,
    }],
    type: "mongodb",
});
//## Repository with Connection Draining and Labels
const repoWithConnDraining = new cyral.Repository("repoWithConnDraining", {
    connectionDraining: {
        auto: true,
        waitTime: 30,
    },
    labels: [
        "single-node",
        "us-east-1",
    ],
    mongodbSettings: {
        serverType: "standalone",
    },
    repoNodes: [{
        host: "mongodb.cyral.com",
        name: "node-1",
        port: 27017,
    }],
    type: "mongodb",
});
//## Multi-Node MongoDB Repository with Replicaset
const multiNodeMongoRepo = new cyral.Repository("multiNodeMongoRepo", {
    labels: [
        "multi-node",
        "us-east-2",
    ],
    mongodbSettings: {
        replicaSetName: "some-replica-set",
        serverType: "replicaset",
    },
    repoNodes: [
        {
            host: "mongodb-node1.cyral.com",
            name: "node-1",
            port: 27017,
        },
        {
            host: "mongodb-node2.cyral.com",
            name: "node-2",
            port: 27017,
        },
        {
            dynamic: true,
            name: "node-3",
        },
    ],
    type: "mongodb",
});
import pulumi
import pulumi_cyral as cyral
### Minimal Repository
minimal_repo = cyral.Repository("minimalRepo",
    mongodb_settings={
        "server_type": "standalone",
    },
    repo_nodes=[{
        "host": "mongodb.cyral.com",
        "name": "node-1",
        "port": 27017,
    }],
    type="mongodb")
### Repository with Connection Draining and Labels
repo_with_conn_draining = cyral.Repository("repoWithConnDraining",
    connection_draining={
        "auto": True,
        "wait_time": 30,
    },
    labels=[
        "single-node",
        "us-east-1",
    ],
    mongodb_settings={
        "server_type": "standalone",
    },
    repo_nodes=[{
        "host": "mongodb.cyral.com",
        "name": "node-1",
        "port": 27017,
    }],
    type="mongodb")
### Multi-Node MongoDB Repository with Replicaset
multi_node_mongo_repo = cyral.Repository("multiNodeMongoRepo",
    labels=[
        "multi-node",
        "us-east-2",
    ],
    mongodb_settings={
        "replica_set_name": "some-replica-set",
        "server_type": "replicaset",
    },
    repo_nodes=[
        {
            "host": "mongodb-node1.cyral.com",
            "name": "node-1",
            "port": 27017,
        },
        {
            "host": "mongodb-node2.cyral.com",
            "name": "node-2",
            "port": 27017,
        },
        {
            "dynamic": True,
            "name": "node-3",
        },
    ],
    type="mongodb")
package main
import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/cyral/v4/cyral"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// ## Minimal Repository
		_, err := cyral.NewRepository(ctx, "minimalRepo", &cyral.RepositoryArgs{
			MongodbSettings: &cyral.RepositoryMongodbSettingsArgs{
				ServerType: pulumi.String("standalone"),
			},
			RepoNodes: cyral.RepositoryRepoNodeArray{
				&cyral.RepositoryRepoNodeArgs{
					Host: pulumi.String("mongodb.cyral.com"),
					Name: pulumi.String("node-1"),
					Port: pulumi.Float64(27017),
				},
			},
			Type: pulumi.String("mongodb"),
		})
		if err != nil {
			return err
		}
		// ## Repository with Connection Draining and Labels
		_, err = cyral.NewRepository(ctx, "repoWithConnDraining", &cyral.RepositoryArgs{
			ConnectionDraining: &cyral.RepositoryConnectionDrainingArgs{
				Auto:     pulumi.Bool(true),
				WaitTime: pulumi.Float64(30),
			},
			Labels: pulumi.StringArray{
				pulumi.String("single-node"),
				pulumi.String("us-east-1"),
			},
			MongodbSettings: &cyral.RepositoryMongodbSettingsArgs{
				ServerType: pulumi.String("standalone"),
			},
			RepoNodes: cyral.RepositoryRepoNodeArray{
				&cyral.RepositoryRepoNodeArgs{
					Host: pulumi.String("mongodb.cyral.com"),
					Name: pulumi.String("node-1"),
					Port: pulumi.Float64(27017),
				},
			},
			Type: pulumi.String("mongodb"),
		})
		if err != nil {
			return err
		}
		// ## Multi-Node MongoDB Repository with Replicaset
		_, err = cyral.NewRepository(ctx, "multiNodeMongoRepo", &cyral.RepositoryArgs{
			Labels: pulumi.StringArray{
				pulumi.String("multi-node"),
				pulumi.String("us-east-2"),
			},
			MongodbSettings: &cyral.RepositoryMongodbSettingsArgs{
				ReplicaSetName: pulumi.String("some-replica-set"),
				ServerType:     pulumi.String("replicaset"),
			},
			RepoNodes: cyral.RepositoryRepoNodeArray{
				&cyral.RepositoryRepoNodeArgs{
					Host: pulumi.String("mongodb-node1.cyral.com"),
					Name: pulumi.String("node-1"),
					Port: pulumi.Float64(27017),
				},
				&cyral.RepositoryRepoNodeArgs{
					Host: pulumi.String("mongodb-node2.cyral.com"),
					Name: pulumi.String("node-2"),
					Port: pulumi.Float64(27017),
				},
				&cyral.RepositoryRepoNodeArgs{
					Dynamic: pulumi.Bool(true),
					Name:    pulumi.String("node-3"),
				},
			},
			Type: pulumi.String("mongodb"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Cyral = Pulumi.Cyral;
return await Deployment.RunAsync(() => 
{
    //## Minimal Repository
    var minimalRepo = new Cyral.Repository("minimalRepo", new()
    {
        MongodbSettings = new Cyral.Inputs.RepositoryMongodbSettingsArgs
        {
            ServerType = "standalone",
        },
        RepoNodes = new[]
        {
            new Cyral.Inputs.RepositoryRepoNodeArgs
            {
                Host = "mongodb.cyral.com",
                Name = "node-1",
                Port = 27017,
            },
        },
        Type = "mongodb",
    });
    //## Repository with Connection Draining and Labels
    var repoWithConnDraining = new Cyral.Repository("repoWithConnDraining", new()
    {
        ConnectionDraining = new Cyral.Inputs.RepositoryConnectionDrainingArgs
        {
            Auto = true,
            WaitTime = 30,
        },
        Labels = new[]
        {
            "single-node",
            "us-east-1",
        },
        MongodbSettings = new Cyral.Inputs.RepositoryMongodbSettingsArgs
        {
            ServerType = "standalone",
        },
        RepoNodes = new[]
        {
            new Cyral.Inputs.RepositoryRepoNodeArgs
            {
                Host = "mongodb.cyral.com",
                Name = "node-1",
                Port = 27017,
            },
        },
        Type = "mongodb",
    });
    //## Multi-Node MongoDB Repository with Replicaset
    var multiNodeMongoRepo = new Cyral.Repository("multiNodeMongoRepo", new()
    {
        Labels = new[]
        {
            "multi-node",
            "us-east-2",
        },
        MongodbSettings = new Cyral.Inputs.RepositoryMongodbSettingsArgs
        {
            ReplicaSetName = "some-replica-set",
            ServerType = "replicaset",
        },
        RepoNodes = new[]
        {
            new Cyral.Inputs.RepositoryRepoNodeArgs
            {
                Host = "mongodb-node1.cyral.com",
                Name = "node-1",
                Port = 27017,
            },
            new Cyral.Inputs.RepositoryRepoNodeArgs
            {
                Host = "mongodb-node2.cyral.com",
                Name = "node-2",
                Port = 27017,
            },
            new Cyral.Inputs.RepositoryRepoNodeArgs
            {
                Dynamic = true,
                Name = "node-3",
            },
        },
        Type = "mongodb",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cyral.Repository;
import com.pulumi.cyral.RepositoryArgs;
import com.pulumi.cyral.inputs.RepositoryMongodbSettingsArgs;
import com.pulumi.cyral.inputs.RepositoryRepoNodeArgs;
import com.pulumi.cyral.inputs.RepositoryConnectionDrainingArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        //## Minimal Repository
        var minimalRepo = new Repository("minimalRepo", RepositoryArgs.builder()
            .mongodbSettings(RepositoryMongodbSettingsArgs.builder()
                .serverType("standalone")
                .build())
            .repoNodes(RepositoryRepoNodeArgs.builder()
                .host("mongodb.cyral.com")
                .name("node-1")
                .port(27017)
                .build())
            .type("mongodb")
            .build());
        //## Repository with Connection Draining and Labels
        var repoWithConnDraining = new Repository("repoWithConnDraining", RepositoryArgs.builder()
            .connectionDraining(RepositoryConnectionDrainingArgs.builder()
                .auto(true)
                .waitTime(30)
                .build())
            .labels(            
                "single-node",
                "us-east-1")
            .mongodbSettings(RepositoryMongodbSettingsArgs.builder()
                .serverType("standalone")
                .build())
            .repoNodes(RepositoryRepoNodeArgs.builder()
                .host("mongodb.cyral.com")
                .name("node-1")
                .port(27017)
                .build())
            .type("mongodb")
            .build());
        //## Multi-Node MongoDB Repository with Replicaset
        var multiNodeMongoRepo = new Repository("multiNodeMongoRepo", RepositoryArgs.builder()
            .labels(            
                "multi-node",
                "us-east-2")
            .mongodbSettings(RepositoryMongodbSettingsArgs.builder()
                .replicaSetName("some-replica-set")
                .serverType("replicaset")
                .build())
            .repoNodes(            
                RepositoryRepoNodeArgs.builder()
                    .host("mongodb-node1.cyral.com")
                    .name("node-1")
                    .port(27017)
                    .build(),
                RepositoryRepoNodeArgs.builder()
                    .host("mongodb-node2.cyral.com")
                    .name("node-2")
                    .port(27017)
                    .build(),
                RepositoryRepoNodeArgs.builder()
                    .dynamic(true)
                    .name("node-3")
                    .build())
            .type("mongodb")
            .build());
    }
}
resources:
  ## Minimal Repository
  minimalRepo:
    type: cyral:Repository
    properties:
      mongodbSettings:
        serverType: standalone
      repoNodes:
        - host: mongodb.cyral.com
          name: node-1
          port: 27017
      type: mongodb
  ## Repository with Connection Draining and Labels
  repoWithConnDraining:
    type: cyral:Repository
    properties:
      connectionDraining:
        auto: true
        waitTime: 30
      labels:
        - single-node
        - us-east-1
      mongodbSettings:
        serverType: standalone
      repoNodes:
        - host: mongodb.cyral.com
          name: node-1
          port: 27017
      type: mongodb
  ## Multi-Node MongoDB Repository with Replicaset
  multiNodeMongoRepo:
    type: cyral:Repository
    properties:
      labels:
        - multi-node
        - us-east-2
      mongodbSettings:
        replicaSetName: some-replica-set
        serverType: replicaset
      repoNodes:
        - host: mongodb-node1.cyral.com
          name: node-1
          port: 27017
        - host: mongodb-node2.cyral.com
          name: node-2
          port: 27017
        - dynamic: true
          name: node-3
      type: mongodb
Create Repository Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Repository(name: string, args: RepositoryArgs, opts?: CustomResourceOptions);@overload
def Repository(resource_name: str,
               args: RepositoryArgs,
               opts: Optional[ResourceOptions] = None)
@overload
def Repository(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               repo_nodes: Optional[Sequence[RepositoryRepoNodeArgs]] = None,
               type: Optional[str] = None,
               connection_draining: Optional[RepositoryConnectionDrainingArgs] = None,
               labels: Optional[Sequence[str]] = None,
               mongodb_settings: Optional[RepositoryMongodbSettingsArgs] = None,
               name: Optional[str] = None,
               redshift_settings: Optional[RepositoryRedshiftSettingsArgs] = None)func NewRepository(ctx *Context, name string, args RepositoryArgs, opts ...ResourceOption) (*Repository, error)public Repository(string name, RepositoryArgs args, CustomResourceOptions? opts = null)
public Repository(String name, RepositoryArgs args)
public Repository(String name, RepositoryArgs args, CustomResourceOptions options)
type: cyral:Repository
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args RepositoryArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args RepositoryArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args RepositoryArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args RepositoryArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args RepositoryArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var repositoryResource = new Cyral.Repository("repositoryResource", new()
{
    RepoNodes = new[]
    {
        new Cyral.Inputs.RepositoryRepoNodeArgs
        {
            Dynamic = false,
            Host = "string",
            Name = "string",
            Port = 0,
        },
    },
    Type = "string",
    ConnectionDraining = new Cyral.Inputs.RepositoryConnectionDrainingArgs
    {
        Auto = false,
        WaitTime = 0,
    },
    Labels = new[]
    {
        "string",
    },
    MongodbSettings = new Cyral.Inputs.RepositoryMongodbSettingsArgs
    {
        ServerType = "string",
        Flavor = "string",
        ReplicaSetName = "string",
        SrvRecordName = "string",
    },
    Name = "string",
    RedshiftSettings = new Cyral.Inputs.RepositoryRedshiftSettingsArgs
    {
        AwsRegion = "string",
        ClusterIdentifier = "string",
        WorkgroupName = "string",
    },
});
example, err := cyral.NewRepository(ctx, "repositoryResource", &cyral.RepositoryArgs{
	RepoNodes: cyral.RepositoryRepoNodeArray{
		&cyral.RepositoryRepoNodeArgs{
			Dynamic: pulumi.Bool(false),
			Host:    pulumi.String("string"),
			Name:    pulumi.String("string"),
			Port:    pulumi.Float64(0),
		},
	},
	Type: pulumi.String("string"),
	ConnectionDraining: &cyral.RepositoryConnectionDrainingArgs{
		Auto:     pulumi.Bool(false),
		WaitTime: pulumi.Float64(0),
	},
	Labels: pulumi.StringArray{
		pulumi.String("string"),
	},
	MongodbSettings: &cyral.RepositoryMongodbSettingsArgs{
		ServerType:     pulumi.String("string"),
		Flavor:         pulumi.String("string"),
		ReplicaSetName: pulumi.String("string"),
		SrvRecordName:  pulumi.String("string"),
	},
	Name: pulumi.String("string"),
	RedshiftSettings: &cyral.RepositoryRedshiftSettingsArgs{
		AwsRegion:         pulumi.String("string"),
		ClusterIdentifier: pulumi.String("string"),
		WorkgroupName:     pulumi.String("string"),
	},
})
var repositoryResource = new Repository("repositoryResource", RepositoryArgs.builder()
    .repoNodes(RepositoryRepoNodeArgs.builder()
        .dynamic(false)
        .host("string")
        .name("string")
        .port(0.0)
        .build())
    .type("string")
    .connectionDraining(RepositoryConnectionDrainingArgs.builder()
        .auto(false)
        .waitTime(0.0)
        .build())
    .labels("string")
    .mongodbSettings(RepositoryMongodbSettingsArgs.builder()
        .serverType("string")
        .flavor("string")
        .replicaSetName("string")
        .srvRecordName("string")
        .build())
    .name("string")
    .redshiftSettings(RepositoryRedshiftSettingsArgs.builder()
        .awsRegion("string")
        .clusterIdentifier("string")
        .workgroupName("string")
        .build())
    .build());
repository_resource = cyral.Repository("repositoryResource",
    repo_nodes=[{
        "dynamic": False,
        "host": "string",
        "name": "string",
        "port": 0,
    }],
    type="string",
    connection_draining={
        "auto": False,
        "wait_time": 0,
    },
    labels=["string"],
    mongodb_settings={
        "server_type": "string",
        "flavor": "string",
        "replica_set_name": "string",
        "srv_record_name": "string",
    },
    name="string",
    redshift_settings={
        "aws_region": "string",
        "cluster_identifier": "string",
        "workgroup_name": "string",
    })
const repositoryResource = new cyral.Repository("repositoryResource", {
    repoNodes: [{
        dynamic: false,
        host: "string",
        name: "string",
        port: 0,
    }],
    type: "string",
    connectionDraining: {
        auto: false,
        waitTime: 0,
    },
    labels: ["string"],
    mongodbSettings: {
        serverType: "string",
        flavor: "string",
        replicaSetName: "string",
        srvRecordName: "string",
    },
    name: "string",
    redshiftSettings: {
        awsRegion: "string",
        clusterIdentifier: "string",
        workgroupName: "string",
    },
});
type: cyral:Repository
properties:
    connectionDraining:
        auto: false
        waitTime: 0
    labels:
        - string
    mongodbSettings:
        flavor: string
        replicaSetName: string
        serverType: string
        srvRecordName: string
    name: string
    redshiftSettings:
        awsRegion: string
        clusterIdentifier: string
        workgroupName: string
    repoNodes:
        - dynamic: false
          host: string
          name: string
          port: 0
    type: string
Repository Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Repository resource accepts the following input properties:
- RepoNodes List<RepositoryRepo Node> 
- List of nodes for this repository.
- Type string
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- ConnectionDraining RepositoryConnection Draining 
- Parameters related to connection draining.
- Labels List<string>
- Labels enable you to categorize your repository.
- MongodbSettings RepositoryMongodb Settings 
- Parameters related to MongoDB repositories.
- Name string
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- RedshiftSettings RepositoryRedshift Settings 
- Parameters related to Redshift repositories.
- RepoNodes []RepositoryRepo Node Args 
- List of nodes for this repository.
- Type string
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- ConnectionDraining RepositoryConnection Draining Args 
- Parameters related to connection draining.
- Labels []string
- Labels enable you to categorize your repository.
- MongodbSettings RepositoryMongodb Settings Args 
- Parameters related to MongoDB repositories.
- Name string
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- RedshiftSettings RepositoryRedshift Settings Args 
- Parameters related to Redshift repositories.
- repoNodes List<RepositoryRepo Node> 
- List of nodes for this repository.
- type String
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- connectionDraining RepositoryConnection Draining 
- Parameters related to connection draining.
- labels List<String>
- Labels enable you to categorize your repository.
- mongodbSettings RepositoryMongodb Settings 
- Parameters related to MongoDB repositories.
- name String
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- redshiftSettings RepositoryRedshift Settings 
- Parameters related to Redshift repositories.
- repoNodes RepositoryRepo Node[] 
- List of nodes for this repository.
- type string
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- connectionDraining RepositoryConnection Draining 
- Parameters related to connection draining.
- labels string[]
- Labels enable you to categorize your repository.
- mongodbSettings RepositoryMongodb Settings 
- Parameters related to MongoDB repositories.
- name string
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- redshiftSettings RepositoryRedshift Settings 
- Parameters related to Redshift repositories.
- repo_nodes Sequence[RepositoryRepo Node Args] 
- List of nodes for this repository.
- type str
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- connection_draining RepositoryConnection Draining Args 
- Parameters related to connection draining.
- labels Sequence[str]
- Labels enable you to categorize your repository.
- mongodb_settings RepositoryMongodb Settings Args 
- Parameters related to MongoDB repositories.
- name str
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- redshift_settings RepositoryRedshift Settings Args 
- Parameters related to Redshift repositories.
- repoNodes List<Property Map>
- List of nodes for this repository.
- type String
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- connectionDraining Property Map
- Parameters related to connection draining.
- labels List<String>
- Labels enable you to categorize your repository.
- mongodbSettings Property Map
- Parameters related to MongoDB repositories.
- name String
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- redshiftSettings Property Map
- Parameters related to Redshift repositories.
Outputs
All input properties are implicitly available as output properties. Additionally, the Repository resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing Repository Resource
Get an existing Repository resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: RepositoryState, opts?: CustomResourceOptions): Repository@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        connection_draining: Optional[RepositoryConnectionDrainingArgs] = None,
        labels: Optional[Sequence[str]] = None,
        mongodb_settings: Optional[RepositoryMongodbSettingsArgs] = None,
        name: Optional[str] = None,
        redshift_settings: Optional[RepositoryRedshiftSettingsArgs] = None,
        repo_nodes: Optional[Sequence[RepositoryRepoNodeArgs]] = None,
        type: Optional[str] = None) -> Repositoryfunc GetRepository(ctx *Context, name string, id IDInput, state *RepositoryState, opts ...ResourceOption) (*Repository, error)public static Repository Get(string name, Input<string> id, RepositoryState? state, CustomResourceOptions? opts = null)public static Repository get(String name, Output<String> id, RepositoryState state, CustomResourceOptions options)resources:  _:    type: cyral:Repository    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- ConnectionDraining RepositoryConnection Draining 
- Parameters related to connection draining.
- Labels List<string>
- Labels enable you to categorize your repository.
- MongodbSettings RepositoryMongodb Settings 
- Parameters related to MongoDB repositories.
- Name string
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- RedshiftSettings RepositoryRedshift Settings 
- Parameters related to Redshift repositories.
- RepoNodes List<RepositoryRepo Node> 
- List of nodes for this repository.
- Type string
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- ConnectionDraining RepositoryConnection Draining Args 
- Parameters related to connection draining.
- Labels []string
- Labels enable you to categorize your repository.
- MongodbSettings RepositoryMongodb Settings Args 
- Parameters related to MongoDB repositories.
- Name string
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- RedshiftSettings RepositoryRedshift Settings Args 
- Parameters related to Redshift repositories.
- RepoNodes []RepositoryRepo Node Args 
- List of nodes for this repository.
- Type string
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- connectionDraining RepositoryConnection Draining 
- Parameters related to connection draining.
- labels List<String>
- Labels enable you to categorize your repository.
- mongodbSettings RepositoryMongodb Settings 
- Parameters related to MongoDB repositories.
- name String
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- redshiftSettings RepositoryRedshift Settings 
- Parameters related to Redshift repositories.
- repoNodes List<RepositoryRepo Node> 
- List of nodes for this repository.
- type String
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- connectionDraining RepositoryConnection Draining 
- Parameters related to connection draining.
- labels string[]
- Labels enable you to categorize your repository.
- mongodbSettings RepositoryMongodb Settings 
- Parameters related to MongoDB repositories.
- name string
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- redshiftSettings RepositoryRedshift Settings 
- Parameters related to Redshift repositories.
- repoNodes RepositoryRepo Node[] 
- List of nodes for this repository.
- type string
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- connection_draining RepositoryConnection Draining Args 
- Parameters related to connection draining.
- labels Sequence[str]
- Labels enable you to categorize your repository.
- mongodb_settings RepositoryMongodb Settings Args 
- Parameters related to MongoDB repositories.
- name str
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- redshift_settings RepositoryRedshift Settings Args 
- Parameters related to Redshift repositories.
- repo_nodes Sequence[RepositoryRepo Node Args] 
- List of nodes for this repository.
- type str
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
- connectionDraining Property Map
- Parameters related to connection draining.
- labels List<String>
- Labels enable you to categorize your repository.
- mongodbSettings Property Map
- Parameters related to MongoDB repositories.
- name String
- Repository name that will be used internally in the control plane (ex: your_repo_name).
- redshiftSettings Property Map
- Parameters related to Redshift repositories.
- repoNodes List<Property Map>
- List of nodes for this repository.
- type String
- Repository type. List of supported types: - denodo-dremio-dynamodb-dynamodbstreams-galera-mariadb- mongodb-- mysql-- oracle-- postgresql-- redshift-- s3-- snowflake-- sqlserver
 
Supporting Types
RepositoryConnectionDraining, RepositoryConnectionDrainingArgs      
RepositoryMongodbSettings, RepositoryMongodbSettingsArgs      
- ServerType string
- Type of the MongoDB server. Allowed values: - replicaset
- standalone
- sharded
 - The following conditions apply: - If shardedandsrv_record_namenot provided, then allrepo_nodeblocks must be static (seedynamic).
- If shardedandsrv_record_nameprovided, then allrepo_nodeblocks must be dynamic (seedynamic).
- If standalone, then only onerepo_nodeblock can be declared and it must be static (seedynamic). Thesrv_record_nameis not supported in this configuration.
- If replicasetandsrv_record_namenot provided, thenrepo_nodeblocks may mix dynamic and static nodes (seedynamic).
- If replicasetandsrv_record_nameprovided, thenrepo_nodeblocks must be dynamic (seedynamic).
 
- Flavor string
- The flavor of the MongoDB deployment. Allowed values: - mongodb
- documentdb
 - The following conditions apply: - The documentdbflavor cannot be combined with the MongoDB Server typesharded.
 
- ReplicaSet stringName 
- Name of the replica set, if applicable.
- SrvRecord stringName 
- Name of a DNS SRV record which contains cluster topology details. If specified, then all repo_nodeblocks must be declared dynamic (seedynamic). Only supported forserver_type="sharded"or `server_type="replicaset".
- ServerType string
- Type of the MongoDB server. Allowed values: - replicaset
- standalone
- sharded
 - The following conditions apply: - If shardedandsrv_record_namenot provided, then allrepo_nodeblocks must be static (seedynamic).
- If shardedandsrv_record_nameprovided, then allrepo_nodeblocks must be dynamic (seedynamic).
- If standalone, then only onerepo_nodeblock can be declared and it must be static (seedynamic). Thesrv_record_nameis not supported in this configuration.
- If replicasetandsrv_record_namenot provided, thenrepo_nodeblocks may mix dynamic and static nodes (seedynamic).
- If replicasetandsrv_record_nameprovided, thenrepo_nodeblocks must be dynamic (seedynamic).
 
- Flavor string
- The flavor of the MongoDB deployment. Allowed values: - mongodb
- documentdb
 - The following conditions apply: - The documentdbflavor cannot be combined with the MongoDB Server typesharded.
 
- ReplicaSet stringName 
- Name of the replica set, if applicable.
- SrvRecord stringName 
- Name of a DNS SRV record which contains cluster topology details. If specified, then all repo_nodeblocks must be declared dynamic (seedynamic). Only supported forserver_type="sharded"or `server_type="replicaset".
- serverType String
- Type of the MongoDB server. Allowed values: - replicaset
- standalone
- sharded
 - The following conditions apply: - If shardedandsrv_record_namenot provided, then allrepo_nodeblocks must be static (seedynamic).
- If shardedandsrv_record_nameprovided, then allrepo_nodeblocks must be dynamic (seedynamic).
- If standalone, then only onerepo_nodeblock can be declared and it must be static (seedynamic). Thesrv_record_nameis not supported in this configuration.
- If replicasetandsrv_record_namenot provided, thenrepo_nodeblocks may mix dynamic and static nodes (seedynamic).
- If replicasetandsrv_record_nameprovided, thenrepo_nodeblocks must be dynamic (seedynamic).
 
- flavor String
- The flavor of the MongoDB deployment. Allowed values: - mongodb
- documentdb
 - The following conditions apply: - The documentdbflavor cannot be combined with the MongoDB Server typesharded.
 
- replicaSet StringName 
- Name of the replica set, if applicable.
- srvRecord StringName 
- Name of a DNS SRV record which contains cluster topology details. If specified, then all repo_nodeblocks must be declared dynamic (seedynamic). Only supported forserver_type="sharded"or `server_type="replicaset".
- serverType string
- Type of the MongoDB server. Allowed values: - replicaset
- standalone
- sharded
 - The following conditions apply: - If shardedandsrv_record_namenot provided, then allrepo_nodeblocks must be static (seedynamic).
- If shardedandsrv_record_nameprovided, then allrepo_nodeblocks must be dynamic (seedynamic).
- If standalone, then only onerepo_nodeblock can be declared and it must be static (seedynamic). Thesrv_record_nameis not supported in this configuration.
- If replicasetandsrv_record_namenot provided, thenrepo_nodeblocks may mix dynamic and static nodes (seedynamic).
- If replicasetandsrv_record_nameprovided, thenrepo_nodeblocks must be dynamic (seedynamic).
 
- flavor string
- The flavor of the MongoDB deployment. Allowed values: - mongodb
- documentdb
 - The following conditions apply: - The documentdbflavor cannot be combined with the MongoDB Server typesharded.
 
- replicaSet stringName 
- Name of the replica set, if applicable.
- srvRecord stringName 
- Name of a DNS SRV record which contains cluster topology details. If specified, then all repo_nodeblocks must be declared dynamic (seedynamic). Only supported forserver_type="sharded"or `server_type="replicaset".
- server_type str
- Type of the MongoDB server. Allowed values: - replicaset
- standalone
- sharded
 - The following conditions apply: - If shardedandsrv_record_namenot provided, then allrepo_nodeblocks must be static (seedynamic).
- If shardedandsrv_record_nameprovided, then allrepo_nodeblocks must be dynamic (seedynamic).
- If standalone, then only onerepo_nodeblock can be declared and it must be static (seedynamic). Thesrv_record_nameis not supported in this configuration.
- If replicasetandsrv_record_namenot provided, thenrepo_nodeblocks may mix dynamic and static nodes (seedynamic).
- If replicasetandsrv_record_nameprovided, thenrepo_nodeblocks must be dynamic (seedynamic).
 
- flavor str
- The flavor of the MongoDB deployment. Allowed values: - mongodb
- documentdb
 - The following conditions apply: - The documentdbflavor cannot be combined with the MongoDB Server typesharded.
 
- replica_set_ strname 
- Name of the replica set, if applicable.
- srv_record_ strname 
- Name of a DNS SRV record which contains cluster topology details. If specified, then all repo_nodeblocks must be declared dynamic (seedynamic). Only supported forserver_type="sharded"or `server_type="replicaset".
- serverType String
- Type of the MongoDB server. Allowed values: - replicaset
- standalone
- sharded
 - The following conditions apply: - If shardedandsrv_record_namenot provided, then allrepo_nodeblocks must be static (seedynamic).
- If shardedandsrv_record_nameprovided, then allrepo_nodeblocks must be dynamic (seedynamic).
- If standalone, then only onerepo_nodeblock can be declared and it must be static (seedynamic). Thesrv_record_nameis not supported in this configuration.
- If replicasetandsrv_record_namenot provided, thenrepo_nodeblocks may mix dynamic and static nodes (seedynamic).
- If replicasetandsrv_record_nameprovided, thenrepo_nodeblocks must be dynamic (seedynamic).
 
- flavor String
- The flavor of the MongoDB deployment. Allowed values: - mongodb
- documentdb
 - The following conditions apply: - The documentdbflavor cannot be combined with the MongoDB Server typesharded.
 
- replicaSet StringName 
- Name of the replica set, if applicable.
- srvRecord StringName 
- Name of a DNS SRV record which contains cluster topology details. If specified, then all repo_nodeblocks must be declared dynamic (seedynamic). Only supported forserver_type="sharded"or `server_type="replicaset".
RepositoryRedshiftSettings, RepositoryRedshiftSettingsArgs      
- AwsRegion string
- Code of the AWS region where the Redshift instance is deployed.
- ClusterIdentifier string
- Name of the provisioned cluster.
- WorkgroupName string
- Workgroup name for serverless cluster.
- AwsRegion string
- Code of the AWS region where the Redshift instance is deployed.
- ClusterIdentifier string
- Name of the provisioned cluster.
- WorkgroupName string
- Workgroup name for serverless cluster.
- awsRegion String
- Code of the AWS region where the Redshift instance is deployed.
- clusterIdentifier String
- Name of the provisioned cluster.
- workgroupName String
- Workgroup name for serverless cluster.
- awsRegion string
- Code of the AWS region where the Redshift instance is deployed.
- clusterIdentifier string
- Name of the provisioned cluster.
- workgroupName string
- Workgroup name for serverless cluster.
- aws_region str
- Code of the AWS region where the Redshift instance is deployed.
- cluster_identifier str
- Name of the provisioned cluster.
- workgroup_name str
- Workgroup name for serverless cluster.
- awsRegion String
- Code of the AWS region where the Redshift instance is deployed.
- clusterIdentifier String
- Name of the provisioned cluster.
- workgroupName String
- Workgroup name for serverless cluster.
RepositoryRepoNode, RepositoryRepoNodeArgs      
- Dynamic bool
- Only supported for MongoDB in cluster configurations.
Indicates if the node is dynamically discovered, meaning that the sidecar will query the cluster to get the topology information and discover the addresses of the dynamic nodes. If set to true,hostandportmust be empty. A node with value of this field as false consideredstatic. The following conditions apply:- The total number of declared repo_nodeblocks must match the actual number of nodes in the cluster.
- If there are static nodes in the configuration, they must be declared before all dynamic nodes.
- See the MongoDB-specific configuration in the mongodb_settings.
 
- The total number of declared 
- Host string
- Repo node host (ex: somerepo.cyral.com). Can be empty if node is dynamic.
- Name string
- Name of the repo node.
- Port double
- Repository access port (ex: 3306). Can be empty if node is dynamic.
- Dynamic bool
- Only supported for MongoDB in cluster configurations.
Indicates if the node is dynamically discovered, meaning that the sidecar will query the cluster to get the topology information and discover the addresses of the dynamic nodes. If set to true,hostandportmust be empty. A node with value of this field as false consideredstatic. The following conditions apply:- The total number of declared repo_nodeblocks must match the actual number of nodes in the cluster.
- If there are static nodes in the configuration, they must be declared before all dynamic nodes.
- See the MongoDB-specific configuration in the mongodb_settings.
 
- The total number of declared 
- Host string
- Repo node host (ex: somerepo.cyral.com). Can be empty if node is dynamic.
- Name string
- Name of the repo node.
- Port float64
- Repository access port (ex: 3306). Can be empty if node is dynamic.
- dynamic Boolean
- Only supported for MongoDB in cluster configurations.
Indicates if the node is dynamically discovered, meaning that the sidecar will query the cluster to get the topology information and discover the addresses of the dynamic nodes. If set to true,hostandportmust be empty. A node with value of this field as false consideredstatic. The following conditions apply:- The total number of declared repo_nodeblocks must match the actual number of nodes in the cluster.
- If there are static nodes in the configuration, they must be declared before all dynamic nodes.
- See the MongoDB-specific configuration in the mongodb_settings.
 
- The total number of declared 
- host String
- Repo node host (ex: somerepo.cyral.com). Can be empty if node is dynamic.
- name String
- Name of the repo node.
- port Double
- Repository access port (ex: 3306). Can be empty if node is dynamic.
- dynamic boolean
- Only supported for MongoDB in cluster configurations.
Indicates if the node is dynamically discovered, meaning that the sidecar will query the cluster to get the topology information and discover the addresses of the dynamic nodes. If set to true,hostandportmust be empty. A node with value of this field as false consideredstatic. The following conditions apply:- The total number of declared repo_nodeblocks must match the actual number of nodes in the cluster.
- If there are static nodes in the configuration, they must be declared before all dynamic nodes.
- See the MongoDB-specific configuration in the mongodb_settings.
 
- The total number of declared 
- host string
- Repo node host (ex: somerepo.cyral.com). Can be empty if node is dynamic.
- name string
- Name of the repo node.
- port number
- Repository access port (ex: 3306). Can be empty if node is dynamic.
- dynamic bool
- Only supported for MongoDB in cluster configurations.
Indicates if the node is dynamically discovered, meaning that the sidecar will query the cluster to get the topology information and discover the addresses of the dynamic nodes. If set to true,hostandportmust be empty. A node with value of this field as false consideredstatic. The following conditions apply:- The total number of declared repo_nodeblocks must match the actual number of nodes in the cluster.
- If there are static nodes in the configuration, they must be declared before all dynamic nodes.
- See the MongoDB-specific configuration in the mongodb_settings.
 
- The total number of declared 
- host str
- Repo node host (ex: somerepo.cyral.com). Can be empty if node is dynamic.
- name str
- Name of the repo node.
- port float
- Repository access port (ex: 3306). Can be empty if node is dynamic.
- dynamic Boolean
- Only supported for MongoDB in cluster configurations.
Indicates if the node is dynamically discovered, meaning that the sidecar will query the cluster to get the topology information and discover the addresses of the dynamic nodes. If set to true,hostandportmust be empty. A node with value of this field as false consideredstatic. The following conditions apply:- The total number of declared repo_nodeblocks must match the actual number of nodes in the cluster.
- If there are static nodes in the configuration, they must be declared before all dynamic nodes.
- See the MongoDB-specific configuration in the mongodb_settings.
 
- The total number of declared 
- host String
- Repo node host (ex: somerepo.cyral.com). Can be empty if node is dynamic.
- name String
- Name of the repo node.
- port Number
- Repository access port (ex: 3306). Can be empty if node is dynamic.
Package Details
- Repository
- cyral cyralinc/terraform-provider-cyral
- License
- Notes
- This Pulumi package is based on the cyralTerraform Provider.