pulumi-gcp 7.7.0a1705990280__py3-none-any.whl → 7.8.0a1706310284__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- pulumi_gcp/__init__.py +56 -0
- pulumi_gcp/alloydb/cluster.py +26 -21
- pulumi_gcp/bigquery/_inputs.py +231 -0
- pulumi_gcp/bigquery/outputs.py +229 -0
- pulumi_gcp/bigquery/routine.py +256 -10
- pulumi_gcp/bigquery/table.py +47 -0
- pulumi_gcp/cloudbuildv2/repository.py +60 -53
- pulumi_gcp/cloudrunv2/_inputs.py +176 -4
- pulumi_gcp/cloudrunv2/outputs.py +256 -3
- pulumi_gcp/cloudrunv2/service.py +148 -0
- pulumi_gcp/composer/_inputs.py +24 -0
- pulumi_gcp/composer/outputs.py +34 -0
- pulumi_gcp/compute/_inputs.py +4 -2
- pulumi_gcp/compute/disk.py +14 -14
- pulumi_gcp/compute/outputs.py +4 -2
- pulumi_gcp/healthcare/fhir_store.py +56 -0
- pulumi_gcp/kms/crypto_key.py +2 -2
- pulumi_gcp/kms/crypto_key_iam_binding.py +2 -2
- pulumi_gcp/kms/crypto_key_iam_member.py +2 -2
- pulumi_gcp/kms/crypto_key_iam_policy.py +2 -2
- pulumi_gcp/kms/crypto_key_version.py +2 -2
- pulumi_gcp/kms/secret_ciphertext.py +2 -2
- pulumi_gcp/netapp/__init__.py +4 -0
- pulumi_gcp/netapp/_inputs.py +643 -0
- pulumi_gcp/netapp/backup_policy.py +829 -0
- pulumi_gcp/netapp/kmsconfig.py +2 -2
- pulumi_gcp/netapp/outputs.py +651 -0
- pulumi_gcp/netapp/volume.py +1467 -0
- pulumi_gcp/networksecurity/__init__.py +5 -0
- pulumi_gcp/networksecurity/_inputs.py +228 -0
- pulumi_gcp/networksecurity/address_group_iam_binding.py +324 -0
- pulumi_gcp/networksecurity/address_group_iam_member.py +324 -0
- pulumi_gcp/networksecurity/address_group_iam_policy.py +492 -0
- pulumi_gcp/networksecurity/get_address_group_iam_policy.py +144 -0
- pulumi_gcp/networksecurity/outputs.py +212 -0
- pulumi_gcp/networksecurity/security_profile.py +800 -0
- pulumi_gcp/networkservices/gateway.py +1 -1
- pulumi_gcp/organizations/get_folders.py +1 -1
- pulumi_gcp/orgpolicy/_inputs.py +12 -12
- pulumi_gcp/orgpolicy/outputs.py +12 -12
- pulumi_gcp/securesourcemanager/instance.py +4 -2
- pulumi_gcp/storage/insights_report_config.py +12 -10
- pulumi_gcp/vertex/__init__.py +1 -0
- pulumi_gcp/vertex/ai_feature_group_feature.py +767 -0
- pulumi_gcp/workstations/workstation_config.py +47 -0
- {pulumi_gcp-7.7.0a1705990280.dist-info → pulumi_gcp-7.8.0a1706310284.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.7.0a1705990280.dist-info → pulumi_gcp-7.8.0a1706310284.dist-info}/RECORD +49 -39
- {pulumi_gcp-7.7.0a1705990280.dist-info → pulumi_gcp-7.8.0a1706310284.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.7.0a1705990280.dist-info → pulumi_gcp-7.8.0a1706310284.dist-info}/top_level.txt +0 -0
pulumi_gcp/bigquery/routine.py
CHANGED
@@ -27,7 +27,8 @@ class RoutineArgs:
|
|
27
27
|
language: Optional[pulumi.Input[str]] = None,
|
28
28
|
project: Optional[pulumi.Input[str]] = None,
|
29
29
|
return_table_type: Optional[pulumi.Input[str]] = None,
|
30
|
-
return_type: Optional[pulumi.Input[str]] = None
|
30
|
+
return_type: Optional[pulumi.Input[str]] = None,
|
31
|
+
spark_options: Optional[pulumi.Input['RoutineSparkOptionsArgs']] = None):
|
31
32
|
"""
|
32
33
|
The set of arguments for constructing a Routine resource.
|
33
34
|
:param pulumi.Input[str] dataset_id: The ID of the dataset containing this routine
|
@@ -47,7 +48,7 @@ class RoutineArgs:
|
|
47
48
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] imported_libraries: Optional. If language = "JAVASCRIPT", this field stores the path of the
|
48
49
|
imported JAVASCRIPT libraries.
|
49
50
|
:param pulumi.Input[str] language: The language of the routine.
|
50
|
-
Possible values are: `SQL`, `JAVASCRIPT`.
|
51
|
+
Possible values are: `SQL`, `JAVASCRIPT`, `PYTHON`, `JAVA`, `SCALA`.
|
51
52
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
52
53
|
If it is not provided, the provider project is used.
|
53
54
|
:param pulumi.Input[str] return_table_type: Optional. Can be set only if routineType = "TABLE_VALUED_FUNCTION".
|
@@ -63,6 +64,8 @@ class RoutineArgs:
|
|
63
64
|
d the order of values or replaced STRUCT field type with RECORD field type, we currently
|
64
65
|
cannot suppress the recurring diff this causes. As a workaround, we recommend using
|
65
66
|
the schema as returned by the API.
|
67
|
+
:param pulumi.Input['RoutineSparkOptionsArgs'] spark_options: Optional. If language is one of "PYTHON", "JAVA", "SCALA", this field stores the options for spark stored procedure.
|
68
|
+
Structure is documented below.
|
66
69
|
"""
|
67
70
|
pulumi.set(__self__, "dataset_id", dataset_id)
|
68
71
|
pulumi.set(__self__, "definition_body", definition_body)
|
@@ -84,6 +87,8 @@ class RoutineArgs:
|
|
84
87
|
pulumi.set(__self__, "return_table_type", return_table_type)
|
85
88
|
if return_type is not None:
|
86
89
|
pulumi.set(__self__, "return_type", return_type)
|
90
|
+
if spark_options is not None:
|
91
|
+
pulumi.set(__self__, "spark_options", spark_options)
|
87
92
|
|
88
93
|
@property
|
89
94
|
@pulumi.getter(name="datasetId")
|
@@ -194,7 +199,7 @@ class RoutineArgs:
|
|
194
199
|
def language(self) -> Optional[pulumi.Input[str]]:
|
195
200
|
"""
|
196
201
|
The language of the routine.
|
197
|
-
Possible values are: `SQL`, `JAVASCRIPT`.
|
202
|
+
Possible values are: `SQL`, `JAVASCRIPT`, `PYTHON`, `JAVA`, `SCALA`.
|
198
203
|
"""
|
199
204
|
return pulumi.get(self, "language")
|
200
205
|
|
@@ -250,6 +255,19 @@ class RoutineArgs:
|
|
250
255
|
def return_type(self, value: Optional[pulumi.Input[str]]):
|
251
256
|
pulumi.set(self, "return_type", value)
|
252
257
|
|
258
|
+
@property
|
259
|
+
@pulumi.getter(name="sparkOptions")
|
260
|
+
def spark_options(self) -> Optional[pulumi.Input['RoutineSparkOptionsArgs']]:
|
261
|
+
"""
|
262
|
+
Optional. If language is one of "PYTHON", "JAVA", "SCALA", this field stores the options for spark stored procedure.
|
263
|
+
Structure is documented below.
|
264
|
+
"""
|
265
|
+
return pulumi.get(self, "spark_options")
|
266
|
+
|
267
|
+
@spark_options.setter
|
268
|
+
def spark_options(self, value: Optional[pulumi.Input['RoutineSparkOptionsArgs']]):
|
269
|
+
pulumi.set(self, "spark_options", value)
|
270
|
+
|
253
271
|
|
254
272
|
@pulumi.input_type
|
255
273
|
class _RoutineState:
|
@@ -267,7 +285,8 @@ class _RoutineState:
|
|
267
285
|
return_table_type: Optional[pulumi.Input[str]] = None,
|
268
286
|
return_type: Optional[pulumi.Input[str]] = None,
|
269
287
|
routine_id: Optional[pulumi.Input[str]] = None,
|
270
|
-
routine_type: Optional[pulumi.Input[str]] = None
|
288
|
+
routine_type: Optional[pulumi.Input[str]] = None,
|
289
|
+
spark_options: Optional[pulumi.Input['RoutineSparkOptionsArgs']] = None):
|
271
290
|
"""
|
272
291
|
Input properties used for looking up and filtering Routine resources.
|
273
292
|
:param pulumi.Input[Sequence[pulumi.Input['RoutineArgumentArgs']]] arguments: Input/output argument of a function or a stored procedure.
|
@@ -286,7 +305,7 @@ class _RoutineState:
|
|
286
305
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] imported_libraries: Optional. If language = "JAVASCRIPT", this field stores the path of the
|
287
306
|
imported JAVASCRIPT libraries.
|
288
307
|
:param pulumi.Input[str] language: The language of the routine.
|
289
|
-
Possible values are: `SQL`, `JAVASCRIPT`.
|
308
|
+
Possible values are: `SQL`, `JAVASCRIPT`, `PYTHON`, `JAVA`, `SCALA`.
|
290
309
|
:param pulumi.Input[int] last_modified_time: The time when this routine was modified, in milliseconds since the
|
291
310
|
epoch.
|
292
311
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
@@ -307,6 +326,8 @@ class _RoutineState:
|
|
307
326
|
:param pulumi.Input[str] routine_id: The ID of the the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters.
|
308
327
|
:param pulumi.Input[str] routine_type: The type of routine.
|
309
328
|
Possible values are: `SCALAR_FUNCTION`, `PROCEDURE`, `TABLE_VALUED_FUNCTION`.
|
329
|
+
:param pulumi.Input['RoutineSparkOptionsArgs'] spark_options: Optional. If language is one of "PYTHON", "JAVA", "SCALA", this field stores the options for spark stored procedure.
|
330
|
+
Structure is documented below.
|
310
331
|
"""
|
311
332
|
if arguments is not None:
|
312
333
|
pulumi.set(__self__, "arguments", arguments)
|
@@ -336,6 +357,8 @@ class _RoutineState:
|
|
336
357
|
pulumi.set(__self__, "routine_id", routine_id)
|
337
358
|
if routine_type is not None:
|
338
359
|
pulumi.set(__self__, "routine_type", routine_type)
|
360
|
+
if spark_options is not None:
|
361
|
+
pulumi.set(__self__, "spark_options", spark_options)
|
339
362
|
|
340
363
|
@property
|
341
364
|
@pulumi.getter
|
@@ -434,7 +457,7 @@ class _RoutineState:
|
|
434
457
|
def language(self) -> Optional[pulumi.Input[str]]:
|
435
458
|
"""
|
436
459
|
The language of the routine.
|
437
|
-
Possible values are: `SQL`, `JAVASCRIPT`.
|
460
|
+
Possible values are: `SQL`, `JAVASCRIPT`, `PYTHON`, `JAVA`, `SCALA`.
|
438
461
|
"""
|
439
462
|
return pulumi.get(self, "language")
|
440
463
|
|
@@ -528,6 +551,19 @@ class _RoutineState:
|
|
528
551
|
def routine_type(self, value: Optional[pulumi.Input[str]]):
|
529
552
|
pulumi.set(self, "routine_type", value)
|
530
553
|
|
554
|
+
@property
|
555
|
+
@pulumi.getter(name="sparkOptions")
|
556
|
+
def spark_options(self) -> Optional[pulumi.Input['RoutineSparkOptionsArgs']]:
|
557
|
+
"""
|
558
|
+
Optional. If language is one of "PYTHON", "JAVA", "SCALA", this field stores the options for spark stored procedure.
|
559
|
+
Structure is documented below.
|
560
|
+
"""
|
561
|
+
return pulumi.get(self, "spark_options")
|
562
|
+
|
563
|
+
@spark_options.setter
|
564
|
+
def spark_options(self, value: Optional[pulumi.Input['RoutineSparkOptionsArgs']]):
|
565
|
+
pulumi.set(self, "spark_options", value)
|
566
|
+
|
531
567
|
|
532
568
|
class Routine(pulumi.CustomResource):
|
533
569
|
@overload
|
@@ -546,6 +582,7 @@ class Routine(pulumi.CustomResource):
|
|
546
582
|
return_type: Optional[pulumi.Input[str]] = None,
|
547
583
|
routine_id: Optional[pulumi.Input[str]] = None,
|
548
584
|
routine_type: Optional[pulumi.Input[str]] = None,
|
585
|
+
spark_options: Optional[pulumi.Input[pulumi.InputType['RoutineSparkOptionsArgs']]] = None,
|
549
586
|
__props__=None):
|
550
587
|
"""
|
551
588
|
A user-defined function or a stored procedure that belongs to a Dataset
|
@@ -626,6 +663,102 @@ class Routine(pulumi.CustomResource):
|
|
626
663
|
}],
|
627
664
|
}))
|
628
665
|
```
|
666
|
+
### Big Query Routine Pyspark
|
667
|
+
|
668
|
+
```python
|
669
|
+
import pulumi
|
670
|
+
import pulumi_gcp as gcp
|
671
|
+
|
672
|
+
test_dataset = gcp.bigquery.Dataset("testDataset", dataset_id="dataset_id")
|
673
|
+
test_connection = gcp.bigquery.Connection("testConnection",
|
674
|
+
connection_id="connection_id",
|
675
|
+
location="US",
|
676
|
+
spark=gcp.bigquery.ConnectionSparkArgs())
|
677
|
+
pyspark = gcp.bigquery.Routine("pyspark",
|
678
|
+
dataset_id=test_dataset.dataset_id,
|
679
|
+
routine_id="routine_id",
|
680
|
+
routine_type="PROCEDURE",
|
681
|
+
language="PYTHON",
|
682
|
+
definition_body=\"\"\"from pyspark.sql import SparkSession
|
683
|
+
|
684
|
+
spark = SparkSession.builder.appName("spark-bigquery-demo").getOrCreate()
|
685
|
+
|
686
|
+
# Load data from BigQuery.
|
687
|
+
words = spark.read.format("bigquery") \\
|
688
|
+
.option("table", "bigquery-public-data:samples.shakespeare") \\
|
689
|
+
.load()
|
690
|
+
words.createOrReplaceTempView("words")
|
691
|
+
|
692
|
+
# Perform word count.
|
693
|
+
word_count = words.select('word', 'word_count').groupBy('word').sum('word_count').withColumnRenamed("sum(word_count)", "sum_word_count")
|
694
|
+
word_count.show()
|
695
|
+
word_count.printSchema()
|
696
|
+
|
697
|
+
# Saving the data to BigQuery
|
698
|
+
word_count.write.format("bigquery") \\
|
699
|
+
.option("writeMethod", "direct") \\
|
700
|
+
.save("wordcount_dataset.wordcount_output")
|
701
|
+
\"\"\",
|
702
|
+
spark_options=gcp.bigquery.RoutineSparkOptionsArgs(
|
703
|
+
connection=test_connection.name,
|
704
|
+
runtime_version="2.1",
|
705
|
+
))
|
706
|
+
```
|
707
|
+
### Big Query Routine Pyspark Mainfile
|
708
|
+
|
709
|
+
```python
|
710
|
+
import pulumi
|
711
|
+
import pulumi_gcp as gcp
|
712
|
+
|
713
|
+
test_dataset = gcp.bigquery.Dataset("testDataset", dataset_id="dataset_id")
|
714
|
+
test_connection = gcp.bigquery.Connection("testConnection",
|
715
|
+
connection_id="connection_id",
|
716
|
+
location="US",
|
717
|
+
spark=gcp.bigquery.ConnectionSparkArgs())
|
718
|
+
pyspark_mainfile = gcp.bigquery.Routine("pysparkMainfile",
|
719
|
+
dataset_id=test_dataset.dataset_id,
|
720
|
+
routine_id="routine_id",
|
721
|
+
routine_type="PROCEDURE",
|
722
|
+
language="PYTHON",
|
723
|
+
definition_body="",
|
724
|
+
spark_options=gcp.bigquery.RoutineSparkOptionsArgs(
|
725
|
+
connection=test_connection.name,
|
726
|
+
runtime_version="2.1",
|
727
|
+
main_file_uri="gs://test-bucket/main.py",
|
728
|
+
py_file_uris=["gs://test-bucket/lib.py"],
|
729
|
+
file_uris=["gs://test-bucket/distribute_in_executor.json"],
|
730
|
+
archive_uris=["gs://test-bucket/distribute_in_executor.tar.gz"],
|
731
|
+
))
|
732
|
+
```
|
733
|
+
### Big Query Routine Spark Jar
|
734
|
+
|
735
|
+
```python
|
736
|
+
import pulumi
|
737
|
+
import pulumi_gcp as gcp
|
738
|
+
|
739
|
+
test_dataset = gcp.bigquery.Dataset("testDataset", dataset_id="dataset_id")
|
740
|
+
test_connection = gcp.bigquery.Connection("testConnection",
|
741
|
+
connection_id="connection_id",
|
742
|
+
location="US",
|
743
|
+
spark=gcp.bigquery.ConnectionSparkArgs())
|
744
|
+
spark_jar = gcp.bigquery.Routine("sparkJar",
|
745
|
+
dataset_id=test_dataset.dataset_id,
|
746
|
+
routine_id="routine_id",
|
747
|
+
routine_type="PROCEDURE",
|
748
|
+
language="SCALA",
|
749
|
+
definition_body="",
|
750
|
+
spark_options=gcp.bigquery.RoutineSparkOptionsArgs(
|
751
|
+
connection=test_connection.name,
|
752
|
+
runtime_version="2.1",
|
753
|
+
container_image="gcr.io/my-project-id/my-spark-image:latest",
|
754
|
+
main_class="com.google.test.jar.MainClass",
|
755
|
+
jar_uris=["gs://test-bucket/uberjar_spark_spark3.jar"],
|
756
|
+
properties={
|
757
|
+
"spark.dataproc.scaling.version": "2",
|
758
|
+
"spark.reducer.fetchMigratedShuffle.enabled": "true",
|
759
|
+
},
|
760
|
+
))
|
761
|
+
```
|
629
762
|
|
630
763
|
## Import
|
631
764
|
|
@@ -667,7 +800,7 @@ class Routine(pulumi.CustomResource):
|
|
667
800
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] imported_libraries: Optional. If language = "JAVASCRIPT", this field stores the path of the
|
668
801
|
imported JAVASCRIPT libraries.
|
669
802
|
:param pulumi.Input[str] language: The language of the routine.
|
670
|
-
Possible values are: `SQL`, `JAVASCRIPT`.
|
803
|
+
Possible values are: `SQL`, `JAVASCRIPT`, `PYTHON`, `JAVA`, `SCALA`.
|
671
804
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
672
805
|
If it is not provided, the provider project is used.
|
673
806
|
:param pulumi.Input[str] return_table_type: Optional. Can be set only if routineType = "TABLE_VALUED_FUNCTION".
|
@@ -686,6 +819,8 @@ class Routine(pulumi.CustomResource):
|
|
686
819
|
:param pulumi.Input[str] routine_id: The ID of the the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters.
|
687
820
|
:param pulumi.Input[str] routine_type: The type of routine.
|
688
821
|
Possible values are: `SCALAR_FUNCTION`, `PROCEDURE`, `TABLE_VALUED_FUNCTION`.
|
822
|
+
:param pulumi.Input[pulumi.InputType['RoutineSparkOptionsArgs']] spark_options: Optional. If language is one of "PYTHON", "JAVA", "SCALA", this field stores the options for spark stored procedure.
|
823
|
+
Structure is documented below.
|
689
824
|
"""
|
690
825
|
...
|
691
826
|
@overload
|
@@ -772,6 +907,102 @@ class Routine(pulumi.CustomResource):
|
|
772
907
|
}],
|
773
908
|
}))
|
774
909
|
```
|
910
|
+
### Big Query Routine Pyspark
|
911
|
+
|
912
|
+
```python
|
913
|
+
import pulumi
|
914
|
+
import pulumi_gcp as gcp
|
915
|
+
|
916
|
+
test_dataset = gcp.bigquery.Dataset("testDataset", dataset_id="dataset_id")
|
917
|
+
test_connection = gcp.bigquery.Connection("testConnection",
|
918
|
+
connection_id="connection_id",
|
919
|
+
location="US",
|
920
|
+
spark=gcp.bigquery.ConnectionSparkArgs())
|
921
|
+
pyspark = gcp.bigquery.Routine("pyspark",
|
922
|
+
dataset_id=test_dataset.dataset_id,
|
923
|
+
routine_id="routine_id",
|
924
|
+
routine_type="PROCEDURE",
|
925
|
+
language="PYTHON",
|
926
|
+
definition_body=\"\"\"from pyspark.sql import SparkSession
|
927
|
+
|
928
|
+
spark = SparkSession.builder.appName("spark-bigquery-demo").getOrCreate()
|
929
|
+
|
930
|
+
# Load data from BigQuery.
|
931
|
+
words = spark.read.format("bigquery") \\
|
932
|
+
.option("table", "bigquery-public-data:samples.shakespeare") \\
|
933
|
+
.load()
|
934
|
+
words.createOrReplaceTempView("words")
|
935
|
+
|
936
|
+
# Perform word count.
|
937
|
+
word_count = words.select('word', 'word_count').groupBy('word').sum('word_count').withColumnRenamed("sum(word_count)", "sum_word_count")
|
938
|
+
word_count.show()
|
939
|
+
word_count.printSchema()
|
940
|
+
|
941
|
+
# Saving the data to BigQuery
|
942
|
+
word_count.write.format("bigquery") \\
|
943
|
+
.option("writeMethod", "direct") \\
|
944
|
+
.save("wordcount_dataset.wordcount_output")
|
945
|
+
\"\"\",
|
946
|
+
spark_options=gcp.bigquery.RoutineSparkOptionsArgs(
|
947
|
+
connection=test_connection.name,
|
948
|
+
runtime_version="2.1",
|
949
|
+
))
|
950
|
+
```
|
951
|
+
### Big Query Routine Pyspark Mainfile
|
952
|
+
|
953
|
+
```python
|
954
|
+
import pulumi
|
955
|
+
import pulumi_gcp as gcp
|
956
|
+
|
957
|
+
test_dataset = gcp.bigquery.Dataset("testDataset", dataset_id="dataset_id")
|
958
|
+
test_connection = gcp.bigquery.Connection("testConnection",
|
959
|
+
connection_id="connection_id",
|
960
|
+
location="US",
|
961
|
+
spark=gcp.bigquery.ConnectionSparkArgs())
|
962
|
+
pyspark_mainfile = gcp.bigquery.Routine("pysparkMainfile",
|
963
|
+
dataset_id=test_dataset.dataset_id,
|
964
|
+
routine_id="routine_id",
|
965
|
+
routine_type="PROCEDURE",
|
966
|
+
language="PYTHON",
|
967
|
+
definition_body="",
|
968
|
+
spark_options=gcp.bigquery.RoutineSparkOptionsArgs(
|
969
|
+
connection=test_connection.name,
|
970
|
+
runtime_version="2.1",
|
971
|
+
main_file_uri="gs://test-bucket/main.py",
|
972
|
+
py_file_uris=["gs://test-bucket/lib.py"],
|
973
|
+
file_uris=["gs://test-bucket/distribute_in_executor.json"],
|
974
|
+
archive_uris=["gs://test-bucket/distribute_in_executor.tar.gz"],
|
975
|
+
))
|
976
|
+
```
|
977
|
+
### Big Query Routine Spark Jar
|
978
|
+
|
979
|
+
```python
|
980
|
+
import pulumi
|
981
|
+
import pulumi_gcp as gcp
|
982
|
+
|
983
|
+
test_dataset = gcp.bigquery.Dataset("testDataset", dataset_id="dataset_id")
|
984
|
+
test_connection = gcp.bigquery.Connection("testConnection",
|
985
|
+
connection_id="connection_id",
|
986
|
+
location="US",
|
987
|
+
spark=gcp.bigquery.ConnectionSparkArgs())
|
988
|
+
spark_jar = gcp.bigquery.Routine("sparkJar",
|
989
|
+
dataset_id=test_dataset.dataset_id,
|
990
|
+
routine_id="routine_id",
|
991
|
+
routine_type="PROCEDURE",
|
992
|
+
language="SCALA",
|
993
|
+
definition_body="",
|
994
|
+
spark_options=gcp.bigquery.RoutineSparkOptionsArgs(
|
995
|
+
connection=test_connection.name,
|
996
|
+
runtime_version="2.1",
|
997
|
+
container_image="gcr.io/my-project-id/my-spark-image:latest",
|
998
|
+
main_class="com.google.test.jar.MainClass",
|
999
|
+
jar_uris=["gs://test-bucket/uberjar_spark_spark3.jar"],
|
1000
|
+
properties={
|
1001
|
+
"spark.dataproc.scaling.version": "2",
|
1002
|
+
"spark.reducer.fetchMigratedShuffle.enabled": "true",
|
1003
|
+
},
|
1004
|
+
))
|
1005
|
+
```
|
775
1006
|
|
776
1007
|
## Import
|
777
1008
|
|
@@ -824,6 +1055,7 @@ class Routine(pulumi.CustomResource):
|
|
824
1055
|
return_type: Optional[pulumi.Input[str]] = None,
|
825
1056
|
routine_id: Optional[pulumi.Input[str]] = None,
|
826
1057
|
routine_type: Optional[pulumi.Input[str]] = None,
|
1058
|
+
spark_options: Optional[pulumi.Input[pulumi.InputType['RoutineSparkOptionsArgs']]] = None,
|
827
1059
|
__props__=None):
|
828
1060
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
829
1061
|
if not isinstance(opts, pulumi.ResourceOptions):
|
@@ -853,6 +1085,7 @@ class Routine(pulumi.CustomResource):
|
|
853
1085
|
if routine_type is None and not opts.urn:
|
854
1086
|
raise TypeError("Missing required property 'routine_type'")
|
855
1087
|
__props__.__dict__["routine_type"] = routine_type
|
1088
|
+
__props__.__dict__["spark_options"] = spark_options
|
856
1089
|
__props__.__dict__["creation_time"] = None
|
857
1090
|
__props__.__dict__["last_modified_time"] = None
|
858
1091
|
super(Routine, __self__).__init__(
|
@@ -878,7 +1111,8 @@ class Routine(pulumi.CustomResource):
|
|
878
1111
|
return_table_type: Optional[pulumi.Input[str]] = None,
|
879
1112
|
return_type: Optional[pulumi.Input[str]] = None,
|
880
1113
|
routine_id: Optional[pulumi.Input[str]] = None,
|
881
|
-
routine_type: Optional[pulumi.Input[str]] = None
|
1114
|
+
routine_type: Optional[pulumi.Input[str]] = None,
|
1115
|
+
spark_options: Optional[pulumi.Input[pulumi.InputType['RoutineSparkOptionsArgs']]] = None) -> 'Routine':
|
882
1116
|
"""
|
883
1117
|
Get an existing Routine resource's state with the given name, id, and optional extra
|
884
1118
|
properties used to qualify the lookup.
|
@@ -902,7 +1136,7 @@ class Routine(pulumi.CustomResource):
|
|
902
1136
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] imported_libraries: Optional. If language = "JAVASCRIPT", this field stores the path of the
|
903
1137
|
imported JAVASCRIPT libraries.
|
904
1138
|
:param pulumi.Input[str] language: The language of the routine.
|
905
|
-
Possible values are: `SQL`, `JAVASCRIPT`.
|
1139
|
+
Possible values are: `SQL`, `JAVASCRIPT`, `PYTHON`, `JAVA`, `SCALA`.
|
906
1140
|
:param pulumi.Input[int] last_modified_time: The time when this routine was modified, in milliseconds since the
|
907
1141
|
epoch.
|
908
1142
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
@@ -923,6 +1157,8 @@ class Routine(pulumi.CustomResource):
|
|
923
1157
|
:param pulumi.Input[str] routine_id: The ID of the the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters.
|
924
1158
|
:param pulumi.Input[str] routine_type: The type of routine.
|
925
1159
|
Possible values are: `SCALAR_FUNCTION`, `PROCEDURE`, `TABLE_VALUED_FUNCTION`.
|
1160
|
+
:param pulumi.Input[pulumi.InputType['RoutineSparkOptionsArgs']] spark_options: Optional. If language is one of "PYTHON", "JAVA", "SCALA", this field stores the options for spark stored procedure.
|
1161
|
+
Structure is documented below.
|
926
1162
|
"""
|
927
1163
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
928
1164
|
|
@@ -942,6 +1178,7 @@ class Routine(pulumi.CustomResource):
|
|
942
1178
|
__props__.__dict__["return_type"] = return_type
|
943
1179
|
__props__.__dict__["routine_id"] = routine_id
|
944
1180
|
__props__.__dict__["routine_type"] = routine_type
|
1181
|
+
__props__.__dict__["spark_options"] = spark_options
|
945
1182
|
return Routine(resource_name, opts=opts, __props__=__props__)
|
946
1183
|
|
947
1184
|
@property
|
@@ -1013,7 +1250,7 @@ class Routine(pulumi.CustomResource):
|
|
1013
1250
|
def language(self) -> pulumi.Output[Optional[str]]:
|
1014
1251
|
"""
|
1015
1252
|
The language of the routine.
|
1016
|
-
Possible values are: `SQL`, `JAVASCRIPT`.
|
1253
|
+
Possible values are: `SQL`, `JAVASCRIPT`, `PYTHON`, `JAVA`, `SCALA`.
|
1017
1254
|
"""
|
1018
1255
|
return pulumi.get(self, "language")
|
1019
1256
|
|
@@ -1079,3 +1316,12 @@ class Routine(pulumi.CustomResource):
|
|
1079
1316
|
"""
|
1080
1317
|
return pulumi.get(self, "routine_type")
|
1081
1318
|
|
1319
|
+
@property
|
1320
|
+
@pulumi.getter(name="sparkOptions")
|
1321
|
+
def spark_options(self) -> pulumi.Output[Optional['outputs.RoutineSparkOptions']]:
|
1322
|
+
"""
|
1323
|
+
Optional. If language is one of "PYTHON", "JAVA", "SCALA", this field stores the options for spark stored procedure.
|
1324
|
+
Structure is documented below.
|
1325
|
+
"""
|
1326
|
+
return pulumi.get(self, "spark_options")
|
1327
|
+
|
pulumi_gcp/bigquery/table.py
CHANGED
@@ -33,6 +33,7 @@ class TableArgs:
|
|
33
33
|
require_partition_filter: Optional[pulumi.Input[bool]] = None,
|
34
34
|
schema: Optional[pulumi.Input[str]] = None,
|
35
35
|
table_constraints: Optional[pulumi.Input['TableTableConstraintsArgs']] = None,
|
36
|
+
table_replication_info: Optional[pulumi.Input['TableTableReplicationInfoArgs']] = None,
|
36
37
|
time_partitioning: Optional[pulumi.Input['TableTimePartitioningArgs']] = None,
|
37
38
|
view: Optional[pulumi.Input['TableViewArgs']] = None):
|
38
39
|
"""
|
@@ -93,6 +94,7 @@ class TableArgs:
|
|
93
94
|
documented above.
|
94
95
|
:param pulumi.Input['TableTableConstraintsArgs'] table_constraints: Defines the primary key and foreign keys.
|
95
96
|
Structure is documented below.
|
97
|
+
:param pulumi.Input['TableTableReplicationInfoArgs'] table_replication_info: Replication info of a table created using "AS REPLICA" DDL like: "CREATE MATERIALIZED VIEW mv1 AS REPLICA OF src_mv".
|
96
98
|
:param pulumi.Input['TableTimePartitioningArgs'] time_partitioning: If specified, configures time-based
|
97
99
|
partitioning for this table. Structure is documented below.
|
98
100
|
:param pulumi.Input['TableViewArgs'] view: If specified, configures this table as a view.
|
@@ -130,6 +132,8 @@ class TableArgs:
|
|
130
132
|
pulumi.set(__self__, "schema", schema)
|
131
133
|
if table_constraints is not None:
|
132
134
|
pulumi.set(__self__, "table_constraints", table_constraints)
|
135
|
+
if table_replication_info is not None:
|
136
|
+
pulumi.set(__self__, "table_replication_info", table_replication_info)
|
133
137
|
if time_partitioning is not None:
|
134
138
|
pulumi.set(__self__, "time_partitioning", time_partitioning)
|
135
139
|
if view is not None:
|
@@ -378,6 +382,18 @@ class TableArgs:
|
|
378
382
|
def table_constraints(self, value: Optional[pulumi.Input['TableTableConstraintsArgs']]):
|
379
383
|
pulumi.set(self, "table_constraints", value)
|
380
384
|
|
385
|
+
@property
|
386
|
+
@pulumi.getter(name="tableReplicationInfo")
|
387
|
+
def table_replication_info(self) -> Optional[pulumi.Input['TableTableReplicationInfoArgs']]:
|
388
|
+
"""
|
389
|
+
Replication info of a table created using "AS REPLICA" DDL like: "CREATE MATERIALIZED VIEW mv1 AS REPLICA OF src_mv".
|
390
|
+
"""
|
391
|
+
return pulumi.get(self, "table_replication_info")
|
392
|
+
|
393
|
+
@table_replication_info.setter
|
394
|
+
def table_replication_info(self, value: Optional[pulumi.Input['TableTableReplicationInfoArgs']]):
|
395
|
+
pulumi.set(self, "table_replication_info", value)
|
396
|
+
|
381
397
|
@property
|
382
398
|
@pulumi.getter(name="timePartitioning")
|
383
399
|
def time_partitioning(self) -> Optional[pulumi.Input['TableTimePartitioningArgs']]:
|
@@ -435,6 +451,7 @@ class _TableState:
|
|
435
451
|
self_link: Optional[pulumi.Input[str]] = None,
|
436
452
|
table_constraints: Optional[pulumi.Input['TableTableConstraintsArgs']] = None,
|
437
453
|
table_id: Optional[pulumi.Input[str]] = None,
|
454
|
+
table_replication_info: Optional[pulumi.Input['TableTableReplicationInfoArgs']] = None,
|
438
455
|
time_partitioning: Optional[pulumi.Input['TableTimePartitioningArgs']] = None,
|
439
456
|
type: Optional[pulumi.Input[str]] = None,
|
440
457
|
view: Optional[pulumi.Input['TableViewArgs']] = None):
|
@@ -521,6 +538,7 @@ class _TableState:
|
|
521
538
|
Structure is documented below.
|
522
539
|
:param pulumi.Input[str] table_id: A unique ID for the resource.
|
523
540
|
Changing this forces a new resource to be created.
|
541
|
+
:param pulumi.Input['TableTableReplicationInfoArgs'] table_replication_info: Replication info of a table created using "AS REPLICA" DDL like: "CREATE MATERIALIZED VIEW mv1 AS REPLICA OF src_mv".
|
524
542
|
:param pulumi.Input['TableTimePartitioningArgs'] time_partitioning: If specified, configures time-based
|
525
543
|
partitioning for this table. Structure is documented below.
|
526
544
|
:param pulumi.Input[str] type: The supported types are DAY, HOUR, MONTH, and YEAR,
|
@@ -582,6 +600,8 @@ class _TableState:
|
|
582
600
|
pulumi.set(__self__, "table_constraints", table_constraints)
|
583
601
|
if table_id is not None:
|
584
602
|
pulumi.set(__self__, "table_id", table_id)
|
603
|
+
if table_replication_info is not None:
|
604
|
+
pulumi.set(__self__, "table_replication_info", table_replication_info)
|
585
605
|
if time_partitioning is not None:
|
586
606
|
pulumi.set(__self__, "time_partitioning", time_partitioning)
|
587
607
|
if type is not None:
|
@@ -967,6 +987,18 @@ class _TableState:
|
|
967
987
|
def table_id(self, value: Optional[pulumi.Input[str]]):
|
968
988
|
pulumi.set(self, "table_id", value)
|
969
989
|
|
990
|
+
@property
|
991
|
+
@pulumi.getter(name="tableReplicationInfo")
|
992
|
+
def table_replication_info(self) -> Optional[pulumi.Input['TableTableReplicationInfoArgs']]:
|
993
|
+
"""
|
994
|
+
Replication info of a table created using "AS REPLICA" DDL like: "CREATE MATERIALIZED VIEW mv1 AS REPLICA OF src_mv".
|
995
|
+
"""
|
996
|
+
return pulumi.get(self, "table_replication_info")
|
997
|
+
|
998
|
+
@table_replication_info.setter
|
999
|
+
def table_replication_info(self, value: Optional[pulumi.Input['TableTableReplicationInfoArgs']]):
|
1000
|
+
pulumi.set(self, "table_replication_info", value)
|
1001
|
+
|
970
1002
|
@property
|
971
1003
|
@pulumi.getter(name="timePartitioning")
|
972
1004
|
def time_partitioning(self) -> Optional[pulumi.Input['TableTimePartitioningArgs']]:
|
@@ -1029,6 +1061,7 @@ class Table(pulumi.CustomResource):
|
|
1029
1061
|
schema: Optional[pulumi.Input[str]] = None,
|
1030
1062
|
table_constraints: Optional[pulumi.Input[pulumi.InputType['TableTableConstraintsArgs']]] = None,
|
1031
1063
|
table_id: Optional[pulumi.Input[str]] = None,
|
1064
|
+
table_replication_info: Optional[pulumi.Input[pulumi.InputType['TableTableReplicationInfoArgs']]] = None,
|
1032
1065
|
time_partitioning: Optional[pulumi.Input[pulumi.InputType['TableTimePartitioningArgs']]] = None,
|
1033
1066
|
view: Optional[pulumi.Input[pulumi.InputType['TableViewArgs']]] = None,
|
1034
1067
|
__props__=None):
|
@@ -1175,6 +1208,7 @@ class Table(pulumi.CustomResource):
|
|
1175
1208
|
Structure is documented below.
|
1176
1209
|
:param pulumi.Input[str] table_id: A unique ID for the resource.
|
1177
1210
|
Changing this forces a new resource to be created.
|
1211
|
+
:param pulumi.Input[pulumi.InputType['TableTableReplicationInfoArgs']] table_replication_info: Replication info of a table created using "AS REPLICA" DDL like: "CREATE MATERIALIZED VIEW mv1 AS REPLICA OF src_mv".
|
1178
1212
|
:param pulumi.Input[pulumi.InputType['TableTimePartitioningArgs']] time_partitioning: If specified, configures time-based
|
1179
1213
|
partitioning for this table. Structure is documented below.
|
1180
1214
|
:param pulumi.Input[pulumi.InputType['TableViewArgs']] view: If specified, configures this table as a view.
|
@@ -1303,6 +1337,7 @@ class Table(pulumi.CustomResource):
|
|
1303
1337
|
schema: Optional[pulumi.Input[str]] = None,
|
1304
1338
|
table_constraints: Optional[pulumi.Input[pulumi.InputType['TableTableConstraintsArgs']]] = None,
|
1305
1339
|
table_id: Optional[pulumi.Input[str]] = None,
|
1340
|
+
table_replication_info: Optional[pulumi.Input[pulumi.InputType['TableTableReplicationInfoArgs']]] = None,
|
1306
1341
|
time_partitioning: Optional[pulumi.Input[pulumi.InputType['TableTimePartitioningArgs']]] = None,
|
1307
1342
|
view: Optional[pulumi.Input[pulumi.InputType['TableViewArgs']]] = None,
|
1308
1343
|
__props__=None):
|
@@ -1335,6 +1370,7 @@ class Table(pulumi.CustomResource):
|
|
1335
1370
|
if table_id is None and not opts.urn:
|
1336
1371
|
raise TypeError("Missing required property 'table_id'")
|
1337
1372
|
__props__.__dict__["table_id"] = table_id
|
1373
|
+
__props__.__dict__["table_replication_info"] = table_replication_info
|
1338
1374
|
__props__.__dict__["time_partitioning"] = time_partitioning
|
1339
1375
|
__props__.__dict__["view"] = view
|
1340
1376
|
__props__.__dict__["creation_time"] = None
|
@@ -1387,6 +1423,7 @@ class Table(pulumi.CustomResource):
|
|
1387
1423
|
self_link: Optional[pulumi.Input[str]] = None,
|
1388
1424
|
table_constraints: Optional[pulumi.Input[pulumi.InputType['TableTableConstraintsArgs']]] = None,
|
1389
1425
|
table_id: Optional[pulumi.Input[str]] = None,
|
1426
|
+
table_replication_info: Optional[pulumi.Input[pulumi.InputType['TableTableReplicationInfoArgs']]] = None,
|
1390
1427
|
time_partitioning: Optional[pulumi.Input[pulumi.InputType['TableTimePartitioningArgs']]] = None,
|
1391
1428
|
type: Optional[pulumi.Input[str]] = None,
|
1392
1429
|
view: Optional[pulumi.Input[pulumi.InputType['TableViewArgs']]] = None) -> 'Table':
|
@@ -1478,6 +1515,7 @@ class Table(pulumi.CustomResource):
|
|
1478
1515
|
Structure is documented below.
|
1479
1516
|
:param pulumi.Input[str] table_id: A unique ID for the resource.
|
1480
1517
|
Changing this forces a new resource to be created.
|
1518
|
+
:param pulumi.Input[pulumi.InputType['TableTableReplicationInfoArgs']] table_replication_info: Replication info of a table created using "AS REPLICA" DDL like: "CREATE MATERIALIZED VIEW mv1 AS REPLICA OF src_mv".
|
1481
1519
|
:param pulumi.Input[pulumi.InputType['TableTimePartitioningArgs']] time_partitioning: If specified, configures time-based
|
1482
1520
|
partitioning for this table. Structure is documented below.
|
1483
1521
|
:param pulumi.Input[str] type: The supported types are DAY, HOUR, MONTH, and YEAR,
|
@@ -1516,6 +1554,7 @@ class Table(pulumi.CustomResource):
|
|
1516
1554
|
__props__.__dict__["self_link"] = self_link
|
1517
1555
|
__props__.__dict__["table_constraints"] = table_constraints
|
1518
1556
|
__props__.__dict__["table_id"] = table_id
|
1557
|
+
__props__.__dict__["table_replication_info"] = table_replication_info
|
1519
1558
|
__props__.__dict__["time_partitioning"] = time_partitioning
|
1520
1559
|
__props__.__dict__["type"] = type
|
1521
1560
|
__props__.__dict__["view"] = view
|
@@ -1791,6 +1830,14 @@ class Table(pulumi.CustomResource):
|
|
1791
1830
|
"""
|
1792
1831
|
return pulumi.get(self, "table_id")
|
1793
1832
|
|
1833
|
+
@property
|
1834
|
+
@pulumi.getter(name="tableReplicationInfo")
|
1835
|
+
def table_replication_info(self) -> pulumi.Output[Optional['outputs.TableTableReplicationInfo']]:
|
1836
|
+
"""
|
1837
|
+
Replication info of a table created using "AS REPLICA" DDL like: "CREATE MATERIALIZED VIEW mv1 AS REPLICA OF src_mv".
|
1838
|
+
"""
|
1839
|
+
return pulumi.get(self, "table_replication_info")
|
1840
|
+
|
1794
1841
|
@property
|
1795
1842
|
@pulumi.getter(name="timePartitioning")
|
1796
1843
|
def time_partitioning(self) -> pulumi.Output[Optional['outputs.TableTimePartitioning']]:
|