Google Cloud (GCP) Classic

v6.38.0 published on Thursday, Sep 22, 2022 by Pulumi

DicomStore

A DicomStore is a datastore inside a Healthcare dataset that conforms to the DICOM (https://www.dicomstandard.org/about/) standard for Healthcare information exchange

To get more information about DicomStore, see:

Example Usage

Healthcare Dicom Store Basic

using System.Collections.Generic;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var topic = new Gcp.PubSub.Topic("topic");

    var dataset = new Gcp.Healthcare.Dataset("dataset", new()
    {
        Location = "us-central1",
    });

    var @default = new Gcp.Healthcare.DicomStore("default", new()
    {
        Dataset = dataset.Id,
        NotificationConfig = new Gcp.Healthcare.Inputs.DicomStoreNotificationConfigArgs
        {
            PubsubTopic = topic.Id,
        },
        Labels = 
        {
            { "label1", "labelvalue1" },
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/healthcare"
	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		topic, err := pubsub.NewTopic(ctx, "topic", nil)
		if err != nil {
			return err
		}
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewDicomStore(ctx, "default", &healthcare.DicomStoreArgs{
			Dataset: dataset.ID(),
			NotificationConfig: &healthcare.DicomStoreNotificationConfigArgs{
				PubsubTopic: topic.ID(),
			},
			Labels: pulumi.StringMap{
				"label1": pulumi.String("labelvalue1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.pubsub.Topic;
import com.pulumi.gcp.healthcare.Dataset;
import com.pulumi.gcp.healthcare.DatasetArgs;
import com.pulumi.gcp.healthcare.DicomStore;
import com.pulumi.gcp.healthcare.DicomStoreArgs;
import com.pulumi.gcp.healthcare.inputs.DicomStoreNotificationConfigArgs;
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) {
        var topic = new Topic("topic");

        var dataset = new Dataset("dataset", DatasetArgs.builder()        
            .location("us-central1")
            .build());

        var default_ = new DicomStore("default", DicomStoreArgs.builder()        
            .dataset(dataset.id())
            .notificationConfig(DicomStoreNotificationConfigArgs.builder()
                .pubsubTopic(topic.id())
                .build())
            .labels(Map.of("label1", "labelvalue1"))
            .build());

    }
}
import pulumi
import pulumi_gcp as gcp

topic = gcp.pubsub.Topic("topic")
dataset = gcp.healthcare.Dataset("dataset", location="us-central1")
default = gcp.healthcare.DicomStore("default",
    dataset=dataset.id,
    notification_config=gcp.healthcare.DicomStoreNotificationConfigArgs(
        pubsub_topic=topic.id,
    ),
    labels={
        "label1": "labelvalue1",
    })
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const topic = new gcp.pubsub.Topic("topic", {});
const dataset = new gcp.healthcare.Dataset("dataset", {location: "us-central1"});
const _default = new gcp.healthcare.DicomStore("default", {
    dataset: dataset.id,
    notificationConfig: {
        pubsubTopic: topic.id,
    },
    labels: {
        label1: "labelvalue1",
    },
});
resources:
  default:
    type: gcp:healthcare:DicomStore
    properties:
      dataset: ${dataset.id}
      notificationConfig:
        pubsubTopic: ${topic.id}
      labels:
        label1: labelvalue1
  topic:
    type: gcp:pubsub:Topic
  dataset:
    type: gcp:healthcare:Dataset
    properties:
      location: us-central1

Healthcare Dicom Store Bq Stream

using System.Collections.Generic;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var topic = new Gcp.PubSub.Topic("topic", new()
    {
    }, new CustomResourceOptions
    {
        Provider = google_beta,
    });

    var dataset = new Gcp.Healthcare.Dataset("dataset", new()
    {
        Location = "us-central1",
    }, new CustomResourceOptions
    {
        Provider = google_beta,
    });

    var bqDataset = new Gcp.BigQuery.Dataset("bqDataset", new()
    {
        DatasetId = "dicom_bq_ds",
        FriendlyName = "test",
        Description = "This is a test description",
        Location = "US",
        DeleteContentsOnDestroy = true,
    }, new CustomResourceOptions
    {
        Provider = google_beta,
    });

    var bqTable = new Gcp.BigQuery.Table("bqTable", new()
    {
        DeletionProtection = false,
        DatasetId = bqDataset.DatasetId,
        TableId = "dicom_bq_tb",
    }, new CustomResourceOptions
    {
        Provider = google_beta,
    });

    var @default = new Gcp.Healthcare.DicomStore("default", new()
    {
        Dataset = dataset.Id,
        NotificationConfig = new Gcp.Healthcare.Inputs.DicomStoreNotificationConfigArgs
        {
            PubsubTopic = topic.Id,
        },
        Labels = 
        {
            { "label1", "labelvalue1" },
        },
        StreamConfigs = new[]
        {
            new Gcp.Healthcare.Inputs.DicomStoreStreamConfigArgs
            {
                BigqueryDestination = new Gcp.Healthcare.Inputs.DicomStoreStreamConfigBigqueryDestinationArgs
                {
                    TableUri = Output.Tuple(bqDataset.Project, bqDataset.DatasetId, bqTable.TableId).Apply(values =>
                    {
                        var project = values.Item1;
                        var datasetId = values.Item2;
                        var tableId = values.Item3;
                        return $"bq://{project}.{datasetId}.{tableId}";
                    }),
                },
            },
        },
    }, new CustomResourceOptions
    {
        Provider = google_beta,
    });

});
package main

import (
	"fmt"

	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/bigquery"
	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/healthcare"
	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		topic, err := pubsub.NewTopic(ctx, "topic", nil, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		bqDataset, err := bigquery.NewDataset(ctx, "bqDataset", &bigquery.DatasetArgs{
			DatasetId:               pulumi.String("dicom_bq_ds"),
			FriendlyName:            pulumi.String("test"),
			Description:             pulumi.String("This is a test description"),
			Location:                pulumi.String("US"),
			DeleteContentsOnDestroy: pulumi.Bool(true),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		bqTable, err := bigquery.NewTable(ctx, "bqTable", &bigquery.TableArgs{
			DeletionProtection: pulumi.Bool(false),
			DatasetId:          bqDataset.DatasetId,
			TableId:            pulumi.String("dicom_bq_tb"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = healthcare.NewDicomStore(ctx, "default", &healthcare.DicomStoreArgs{
			Dataset: dataset.ID(),
			NotificationConfig: &healthcare.DicomStoreNotificationConfigArgs{
				PubsubTopic: topic.ID(),
			},
			Labels: pulumi.StringMap{
				"label1": pulumi.String("labelvalue1"),
			},
			StreamConfigs: healthcare.DicomStoreStreamConfigArray{
				&healthcare.DicomStoreStreamConfigArgs{
					BigqueryDestination: &healthcare.DicomStoreStreamConfigBigqueryDestinationArgs{
						TableUri: pulumi.All(bqDataset.Project, bqDataset.DatasetId, bqTable.TableId).ApplyT(func(_args []interface{}) (string, error) {
							project := _args[0].(string)
							datasetId := _args[1].(string)
							tableId := _args[2].(string)
							return fmt.Sprintf("bq://%v.%v.%v", project, datasetId, tableId), nil
						}).(pulumi.StringOutput),
					},
				},
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.pubsub.Topic;
import com.pulumi.gcp.pubsub.TopicArgs;
import com.pulumi.gcp.healthcare.Dataset;
import com.pulumi.gcp.healthcare.DatasetArgs;
import com.pulumi.gcp.bigquery.Dataset;
import com.pulumi.gcp.bigquery.DatasetArgs;
import com.pulumi.gcp.bigquery.Table;
import com.pulumi.gcp.bigquery.TableArgs;
import com.pulumi.gcp.healthcare.DicomStore;
import com.pulumi.gcp.healthcare.DicomStoreArgs;
import com.pulumi.gcp.healthcare.inputs.DicomStoreNotificationConfigArgs;
import com.pulumi.gcp.healthcare.inputs.DicomStoreStreamConfigArgs;
import com.pulumi.gcp.healthcare.inputs.DicomStoreStreamConfigBigqueryDestinationArgs;
import com.pulumi.resources.CustomResourceOptions;
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) {
        var topic = new Topic("topic", TopicArgs.Empty, CustomResourceOptions.builder()
            .provider(google_beta)
            .build());

        var dataset = new Dataset("dataset", DatasetArgs.builder()        
            .location("us-central1")
            .build(), CustomResourceOptions.builder()
                .provider(google_beta)
                .build());

        var bqDataset = new Dataset("bqDataset", DatasetArgs.builder()        
            .datasetId("dicom_bq_ds")
            .friendlyName("test")
            .description("This is a test description")
            .location("US")
            .deleteContentsOnDestroy(true)
            .build(), CustomResourceOptions.builder()
                .provider(google_beta)
                .build());

        var bqTable = new Table("bqTable", TableArgs.builder()        
            .deletionProtection(false)
            .datasetId(bqDataset.datasetId())
            .tableId("dicom_bq_tb")
            .build(), CustomResourceOptions.builder()
                .provider(google_beta)
                .build());

        var default_ = new DicomStore("default", DicomStoreArgs.builder()        
            .dataset(dataset.id())
            .notificationConfig(DicomStoreNotificationConfigArgs.builder()
                .pubsubTopic(topic.id())
                .build())
            .labels(Map.of("label1", "labelvalue1"))
            .streamConfigs(DicomStoreStreamConfigArgs.builder()
                .bigqueryDestination(DicomStoreStreamConfigBigqueryDestinationArgs.builder()
                    .tableUri(Output.tuple(bqDataset.project(), bqDataset.datasetId(), bqTable.tableId()).applyValue(values -> {
                        var project = values.t1;
                        var datasetId = values.t2;
                        var tableId = values.t3;
                        return String.format("bq://%s.%s.%s", project,datasetId,tableId);
                    }))
                    .build())
                .build())
            .build(), CustomResourceOptions.builder()
                .provider(google_beta)
                .build());

    }
}
import pulumi
import pulumi_gcp as gcp

topic = gcp.pubsub.Topic("topic", opts=pulumi.ResourceOptions(provider=google_beta))
dataset = gcp.healthcare.Dataset("dataset", location="us-central1",
opts=pulumi.ResourceOptions(provider=google_beta))
bq_dataset = gcp.bigquery.Dataset("bqDataset",
    dataset_id="dicom_bq_ds",
    friendly_name="test",
    description="This is a test description",
    location="US",
    delete_contents_on_destroy=True,
    opts=pulumi.ResourceOptions(provider=google_beta))
bq_table = gcp.bigquery.Table("bqTable",
    deletion_protection=False,
    dataset_id=bq_dataset.dataset_id,
    table_id="dicom_bq_tb",
    opts=pulumi.ResourceOptions(provider=google_beta))
default = gcp.healthcare.DicomStore("default",
    dataset=dataset.id,
    notification_config=gcp.healthcare.DicomStoreNotificationConfigArgs(
        pubsub_topic=topic.id,
    ),
    labels={
        "label1": "labelvalue1",
    },
    stream_configs=[gcp.healthcare.DicomStoreStreamConfigArgs(
        bigquery_destination=gcp.healthcare.DicomStoreStreamConfigBigqueryDestinationArgs(
            table_uri=pulumi.Output.all(bq_dataset.project, bq_dataset.dataset_id, bq_table.table_id).apply(lambda project, dataset_id, table_id: f"bq://{project}.{dataset_id}.{table_id}"),
        ),
    )],
    opts=pulumi.ResourceOptions(provider=google_beta))
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const topic = new gcp.pubsub.Topic("topic", {}, {
    provider: google_beta,
});
const dataset = new gcp.healthcare.Dataset("dataset", {location: "us-central1"}, {
    provider: google_beta,
});
const bqDataset = new gcp.bigquery.Dataset("bqDataset", {
    datasetId: "dicom_bq_ds",
    friendlyName: "test",
    description: "This is a test description",
    location: "US",
    deleteContentsOnDestroy: true,
}, {
    provider: google_beta,
});
const bqTable = new gcp.bigquery.Table("bqTable", {
    deletionProtection: false,
    datasetId: bqDataset.datasetId,
    tableId: "dicom_bq_tb",
}, {
    provider: google_beta,
});
const _default = new gcp.healthcare.DicomStore("default", {
    dataset: dataset.id,
    notificationConfig: {
        pubsubTopic: topic.id,
    },
    labels: {
        label1: "labelvalue1",
    },
    streamConfigs: [{
        bigqueryDestination: {
            tableUri: pulumi.interpolate`bq://${bqDataset.project}.${bqDataset.datasetId}.${bqTable.tableId}`,
        },
    }],
}, {
    provider: google_beta,
});
resources:
  default:
    type: gcp:healthcare:DicomStore
    properties:
      dataset: ${dataset.id}
      notificationConfig:
        pubsubTopic: ${topic.id}
      labels:
        label1: labelvalue1
      streamConfigs:
        - bigqueryDestination:
            tableUri: bq://${bqDataset.project}.${bqDataset.datasetId}.${bqTable.tableId}
    options:
      provider: ${["google-beta"]}
  topic:
    type: gcp:pubsub:Topic
    options:
      provider: ${["google-beta"]}
  dataset:
    type: gcp:healthcare:Dataset
    properties:
      location: us-central1
    options:
      provider: ${["google-beta"]}
  bqDataset:
    type: gcp:bigquery:Dataset
    properties:
      datasetId: dicom_bq_ds
      friendlyName: test
      description: This is a test description
      location: US
      deleteContentsOnDestroy: true
    options:
      provider: ${["google-beta"]}
  bqTable:
    type: gcp:bigquery:Table
    properties:
      deletionProtection: false
      datasetId: ${bqDataset.datasetId}
      tableId: dicom_bq_tb
    options:
      provider: ${["google-beta"]}

Create a DicomStore Resource

new DicomStore(name: string, args: DicomStoreArgs, opts?: CustomResourceOptions);
@overload
def DicomStore(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               dataset: Optional[str] = None,
               labels: Optional[Mapping[str, str]] = None,
               name: Optional[str] = None,
               notification_config: Optional[DicomStoreNotificationConfigArgs] = None,
               stream_configs: Optional[Sequence[DicomStoreStreamConfigArgs]] = None)
@overload
def DicomStore(resource_name: str,
               args: DicomStoreArgs,
               opts: Optional[ResourceOptions] = None)
func NewDicomStore(ctx *Context, name string, args DicomStoreArgs, opts ...ResourceOption) (*DicomStore, error)
public DicomStore(string name, DicomStoreArgs args, CustomResourceOptions? opts = null)
public DicomStore(String name, DicomStoreArgs args)
public DicomStore(String name, DicomStoreArgs args, CustomResourceOptions options)
type: gcp:healthcare:DicomStore
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args DicomStoreArgs
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 DicomStoreArgs
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 DicomStoreArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args DicomStoreArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args DicomStoreArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

DicomStore Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The DicomStore resource accepts the following input properties:

Dataset string

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

Labels Dictionary<string, string>

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Name string

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

NotificationConfig DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

StreamConfigs List<DicomStoreStreamConfigArgs>

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

Dataset string

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

Labels map[string]string

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Name string

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

NotificationConfig DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

StreamConfigs []DicomStoreStreamConfigArgs

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

dataset String

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

labels Map<String,String>

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name String

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

notificationConfig DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

streamConfigs List<DicomStoreStreamConfigArgs>

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

dataset string

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

labels {[key: string]: string}

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name string

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

notificationConfig DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

streamConfigs DicomStoreStreamConfigArgs[]

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

dataset str

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

labels Mapping[str, str]

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name str

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

notification_config DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

stream_configs Sequence[DicomStoreStreamConfigArgs]

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

dataset String

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

labels Map<String>

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name String

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

notificationConfig Property Map

A nested object resource Structure is documented below.

streamConfigs List<Property Map>

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

Outputs

All input properties are implicitly available as output properties. Additionally, the DicomStore resource produces the following output properties:

Id string

The provider-assigned unique ID for this managed resource.

SelfLink string

The fully qualified name of this dataset

Id string

The provider-assigned unique ID for this managed resource.

SelfLink string

The fully qualified name of this dataset

id String

The provider-assigned unique ID for this managed resource.

selfLink String

The fully qualified name of this dataset

id string

The provider-assigned unique ID for this managed resource.

selfLink string

The fully qualified name of this dataset

id str

The provider-assigned unique ID for this managed resource.

self_link str

The fully qualified name of this dataset

id String

The provider-assigned unique ID for this managed resource.

selfLink String

The fully qualified name of this dataset

Look up an Existing DicomStore Resource

Get an existing DicomStore 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?: DicomStoreState, opts?: CustomResourceOptions): DicomStore
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        dataset: Optional[str] = None,
        labels: Optional[Mapping[str, str]] = None,
        name: Optional[str] = None,
        notification_config: Optional[DicomStoreNotificationConfigArgs] = None,
        self_link: Optional[str] = None,
        stream_configs: Optional[Sequence[DicomStoreStreamConfigArgs]] = None) -> DicomStore
func GetDicomStore(ctx *Context, name string, id IDInput, state *DicomStoreState, opts ...ResourceOption) (*DicomStore, error)
public static DicomStore Get(string name, Input<string> id, DicomStoreState? state, CustomResourceOptions? opts = null)
public static DicomStore get(String name, Output<String> id, DicomStoreState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
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.
The following state arguments are supported:
Dataset string

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

Labels Dictionary<string, string>

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Name string

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

NotificationConfig DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

SelfLink string

The fully qualified name of this dataset

StreamConfigs List<DicomStoreStreamConfigArgs>

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

Dataset string

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

Labels map[string]string

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Name string

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

NotificationConfig DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

SelfLink string

The fully qualified name of this dataset

StreamConfigs []DicomStoreStreamConfigArgs

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

dataset String

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

labels Map<String,String>

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name String

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

notificationConfig DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

selfLink String

The fully qualified name of this dataset

streamConfigs List<DicomStoreStreamConfigArgs>

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

dataset string

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

labels {[key: string]: string}

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name string

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

notificationConfig DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

selfLink string

The fully qualified name of this dataset

streamConfigs DicomStoreStreamConfigArgs[]

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

dataset str

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

labels Mapping[str, str]

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name str

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

notification_config DicomStoreNotificationConfigArgs

A nested object resource Structure is documented below.

self_link str

The fully qualified name of this dataset

stream_configs Sequence[DicomStoreStreamConfigArgs]

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

dataset String

Identifies the dataset addressed by this request. Must be in the format 'projects/{project}/locations/{location}/datasets/{dataset}'

labels Map<String>

User-supplied key-value pairs used to organize DICOM stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name String

The resource name for the DicomStore. ** Changing this property may recreate the Dicom store (removing all data) **

notificationConfig Property Map

A nested object resource Structure is documented below.

selfLink String

The fully qualified name of this dataset

streamConfigs List<Property Map>

To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store. streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset. Structure is documented below.

Supporting Types

DicomStoreNotificationConfig

PubsubTopic string

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

PubsubTopic string

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

pubsubTopic String

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

pubsubTopic string

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

pubsub_topic str

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

pubsubTopic String

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

DicomStoreStreamConfig

BigqueryDestination DicomStoreStreamConfigBigqueryDestination

BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed. Structure is documented below.

BigqueryDestination DicomStoreStreamConfigBigqueryDestination

BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed. Structure is documented below.

bigqueryDestination DicomStoreStreamConfigBigqueryDestination

BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed. Structure is documented below.

bigqueryDestination DicomStoreStreamConfigBigqueryDestination

BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed. Structure is documented below.

bigquery_destination DicomStoreStreamConfigBigqueryDestination

BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed. Structure is documented below.

bigqueryDestination Property Map

BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed. Structure is documented below.

DicomStoreStreamConfigBigqueryDestination

TableUri string

a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.

TableUri string

a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.

tableUri String

a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.

tableUri string

a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.

table_uri str

a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.

tableUri String

a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.

Import

DicomStore can be imported using any of these accepted formats

 $ pulumi import gcp:healthcare/dicomStore:DicomStore default {{dataset}}/dicomStores/{{name}}
 $ pulumi import gcp:healthcare/dicomStore:DicomStore default {{dataset}}/{{name}}

Package Details

Repository
https://github.com/pulumi/pulumi-gcp
License
Apache-2.0
Notes

This Pulumi package is based on the google-beta Terraform Provider.