pulumi-gcp 7.14.1__py3-none-any.whl → 7.15.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. pulumi_gcp/__init__.py +94 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +74 -58
  3. pulumi_gcp/accesscontextmanager/outputs.py +74 -58
  4. pulumi_gcp/accesscontextmanager/service_perimeter.py +0 -2
  5. pulumi_gcp/apphub/__init__.py +15 -0
  6. pulumi_gcp/apphub/_inputs.py +1016 -0
  7. pulumi_gcp/apphub/application.py +775 -0
  8. pulumi_gcp/apphub/get_discovered_service.py +180 -0
  9. pulumi_gcp/apphub/get_discovered_workload.py +180 -0
  10. pulumi_gcp/apphub/outputs.py +1206 -0
  11. pulumi_gcp/apphub/service.py +1121 -0
  12. pulumi_gcp/apphub/service_project_attachment.py +516 -0
  13. pulumi_gcp/apphub/workload.py +1197 -0
  14. pulumi_gcp/cloudquota/__init__.py +9 -0
  15. pulumi_gcp/cloudquota/get_s_quota_info.py +322 -0
  16. pulumi_gcp/cloudquota/outputs.py +105 -0
  17. pulumi_gcp/cloudrunv2/_inputs.py +26 -2
  18. pulumi_gcp/cloudrunv2/get_service.py +11 -1
  19. pulumi_gcp/cloudrunv2/outputs.py +58 -2
  20. pulumi_gcp/cloudrunv2/service.py +54 -0
  21. pulumi_gcp/compute/_inputs.py +4 -4
  22. pulumi_gcp/compute/outputs.py +4 -4
  23. pulumi_gcp/compute/region_network_endpoint_group.py +30 -0
  24. pulumi_gcp/config/__init__.pyi +4 -0
  25. pulumi_gcp/config/vars.py +8 -0
  26. pulumi_gcp/firebase/__init__.py +1 -0
  27. pulumi_gcp/firebase/app_check_device_check_config.py +572 -0
  28. pulumi_gcp/firestore/_inputs.py +69 -0
  29. pulumi_gcp/firestore/database.py +206 -0
  30. pulumi_gcp/firestore/outputs.py +80 -0
  31. pulumi_gcp/gkeonprem/_inputs.py +1 -3
  32. pulumi_gcp/gkeonprem/outputs.py +1 -3
  33. pulumi_gcp/gkeonprem/v_mware_cluster.py +2 -0
  34. pulumi_gcp/iap/__init__.py +5 -0
  35. pulumi_gcp/iap/_inputs.py +100 -0
  36. pulumi_gcp/iap/get_tunnel_dest_group_iam_policy.py +172 -0
  37. pulumi_gcp/iap/outputs.py +76 -0
  38. pulumi_gcp/iap/tunnel_dest_group.py +524 -0
  39. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +858 -0
  40. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +858 -0
  41. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +760 -0
  42. pulumi_gcp/kms/__init__.py +1 -0
  43. pulumi_gcp/kms/_inputs.py +246 -0
  44. pulumi_gcp/kms/ekm_connection.py +610 -0
  45. pulumi_gcp/kms/outputs.py +242 -0
  46. pulumi_gcp/networksecurity/__init__.py +1 -0
  47. pulumi_gcp/networksecurity/firewall_endpoint_association.py +753 -0
  48. pulumi_gcp/notebooks/instance.py +8 -0
  49. pulumi_gcp/orgpolicy/policy.py +2 -2
  50. pulumi_gcp/provider.py +40 -0
  51. pulumi_gcp/pubsub/subscription.py +4 -4
  52. pulumi_gcp/securityposture/posture.py +2 -2
  53. pulumi_gcp/securityposture/posture_deployment.py +2 -2
  54. pulumi_gcp/storage/_inputs.py +32 -15
  55. pulumi_gcp/storage/outputs.py +29 -14
  56. pulumi_gcp/workstations/_inputs.py +134 -4
  57. pulumi_gcp/workstations/outputs.py +152 -4
  58. pulumi_gcp/workstations/workstation_config.py +54 -0
  59. {pulumi_gcp-7.14.1.dist-info → pulumi_gcp-7.15.0.dist-info}/METADATA +1 -1
  60. {pulumi_gcp-7.14.1.dist-info → pulumi_gcp-7.15.0.dist-info}/RECORD +62 -42
  61. {pulumi_gcp-7.14.1.dist-info → pulumi_gcp-7.15.0.dist-info}/WHEEL +0 -0
  62. {pulumi_gcp-7.14.1.dist-info → pulumi_gcp-7.15.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/kms/outputs.py CHANGED
@@ -18,6 +18,8 @@ __all__ = [
18
18
  'CryptoKeyVersionAttestationCertChains',
19
19
  'CryptoKeyVersionAttestationExternalProtectionLevelOptions',
20
20
  'CryptoKeyVersionTemplate',
21
+ 'EkmConnectionServiceResolver',
22
+ 'EkmConnectionServiceResolverServerCertificate',
21
23
  'KeyRingIAMBindingCondition',
22
24
  'KeyRingIAMMemberCondition',
23
25
  'KeyRingImportJobAttestation',
@@ -403,6 +405,246 @@ class CryptoKeyVersionTemplate(dict):
403
405
  return pulumi.get(self, "protection_level")
404
406
 
405
407
 
408
+ @pulumi.output_type
409
+ class EkmConnectionServiceResolver(dict):
410
+ @staticmethod
411
+ def __key_warning(key: str):
412
+ suggest = None
413
+ if key == "serverCertificates":
414
+ suggest = "server_certificates"
415
+ elif key == "serviceDirectoryService":
416
+ suggest = "service_directory_service"
417
+ elif key == "endpointFilter":
418
+ suggest = "endpoint_filter"
419
+
420
+ if suggest:
421
+ pulumi.log.warn(f"Key '{key}' not found in EkmConnectionServiceResolver. Access the value via the '{suggest}' property getter instead.")
422
+
423
+ def __getitem__(self, key: str) -> Any:
424
+ EkmConnectionServiceResolver.__key_warning(key)
425
+ return super().__getitem__(key)
426
+
427
+ def get(self, key: str, default = None) -> Any:
428
+ EkmConnectionServiceResolver.__key_warning(key)
429
+ return super().get(key, default)
430
+
431
+ def __init__(__self__, *,
432
+ hostname: str,
433
+ server_certificates: Sequence['outputs.EkmConnectionServiceResolverServerCertificate'],
434
+ service_directory_service: str,
435
+ endpoint_filter: Optional[str] = None):
436
+ """
437
+ :param str hostname: Required. The hostname of the EKM replica used at TLS and HTTP layers.
438
+ :param Sequence['EkmConnectionServiceResolverServerCertificateArgs'] server_certificates: Required. A list of leaf server certificates used to authenticate HTTPS connections to the EKM replica. Currently, a maximum of 10 Certificate is supported.
439
+ Structure is documented below.
440
+ :param str service_directory_service: Required. The resource name of the Service Directory service pointing to an EKM replica, in the format projects/*/locations/*/namespaces/*/services/*
441
+ :param str endpoint_filter: Optional. The filter applied to the endpoints of the resolved service. If no filter is specified, all endpoints will be considered. An endpoint will be chosen arbitrarily from the filtered list for each request. For endpoint filter syntax and examples, see https://cloud.google.com/service-directory/docs/reference/rpc/google.cloud.servicedirectory.v1#resolveservicerequest.
442
+ """
443
+ pulumi.set(__self__, "hostname", hostname)
444
+ pulumi.set(__self__, "server_certificates", server_certificates)
445
+ pulumi.set(__self__, "service_directory_service", service_directory_service)
446
+ if endpoint_filter is not None:
447
+ pulumi.set(__self__, "endpoint_filter", endpoint_filter)
448
+
449
+ @property
450
+ @pulumi.getter
451
+ def hostname(self) -> str:
452
+ """
453
+ Required. The hostname of the EKM replica used at TLS and HTTP layers.
454
+ """
455
+ return pulumi.get(self, "hostname")
456
+
457
+ @property
458
+ @pulumi.getter(name="serverCertificates")
459
+ def server_certificates(self) -> Sequence['outputs.EkmConnectionServiceResolverServerCertificate']:
460
+ """
461
+ Required. A list of leaf server certificates used to authenticate HTTPS connections to the EKM replica. Currently, a maximum of 10 Certificate is supported.
462
+ Structure is documented below.
463
+ """
464
+ return pulumi.get(self, "server_certificates")
465
+
466
+ @property
467
+ @pulumi.getter(name="serviceDirectoryService")
468
+ def service_directory_service(self) -> str:
469
+ """
470
+ Required. The resource name of the Service Directory service pointing to an EKM replica, in the format projects/*/locations/*/namespaces/*/services/*
471
+ """
472
+ return pulumi.get(self, "service_directory_service")
473
+
474
+ @property
475
+ @pulumi.getter(name="endpointFilter")
476
+ def endpoint_filter(self) -> Optional[str]:
477
+ """
478
+ Optional. The filter applied to the endpoints of the resolved service. If no filter is specified, all endpoints will be considered. An endpoint will be chosen arbitrarily from the filtered list for each request. For endpoint filter syntax and examples, see https://cloud.google.com/service-directory/docs/reference/rpc/google.cloud.servicedirectory.v1#resolveservicerequest.
479
+ """
480
+ return pulumi.get(self, "endpoint_filter")
481
+
482
+
483
+ @pulumi.output_type
484
+ class EkmConnectionServiceResolverServerCertificate(dict):
485
+ @staticmethod
486
+ def __key_warning(key: str):
487
+ suggest = None
488
+ if key == "rawDer":
489
+ suggest = "raw_der"
490
+ elif key == "notAfterTime":
491
+ suggest = "not_after_time"
492
+ elif key == "notBeforeTime":
493
+ suggest = "not_before_time"
494
+ elif key == "serialNumber":
495
+ suggest = "serial_number"
496
+ elif key == "sha256Fingerprint":
497
+ suggest = "sha256_fingerprint"
498
+ elif key == "subjectAlternativeDnsNames":
499
+ suggest = "subject_alternative_dns_names"
500
+
501
+ if suggest:
502
+ pulumi.log.warn(f"Key '{key}' not found in EkmConnectionServiceResolverServerCertificate. Access the value via the '{suggest}' property getter instead.")
503
+
504
+ def __getitem__(self, key: str) -> Any:
505
+ EkmConnectionServiceResolverServerCertificate.__key_warning(key)
506
+ return super().__getitem__(key)
507
+
508
+ def get(self, key: str, default = None) -> Any:
509
+ EkmConnectionServiceResolverServerCertificate.__key_warning(key)
510
+ return super().get(key, default)
511
+
512
+ def __init__(__self__, *,
513
+ raw_der: str,
514
+ issuer: Optional[str] = None,
515
+ not_after_time: Optional[str] = None,
516
+ not_before_time: Optional[str] = None,
517
+ parsed: Optional[bool] = None,
518
+ serial_number: Optional[str] = None,
519
+ sha256_fingerprint: Optional[str] = None,
520
+ subject: Optional[str] = None,
521
+ subject_alternative_dns_names: Optional[Sequence[str]] = None):
522
+ """
523
+ :param str raw_der: Required. The raw certificate bytes in DER format. A base64-encoded string.
524
+ :param str issuer: (Output)
525
+ Output only. The issuer distinguished name in RFC 2253 format. Only present if parsed is true.
526
+ :param str not_after_time: (Output)
527
+ Output only. The certificate is not valid after this time. Only present if parsed is true.
528
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
529
+ :param str not_before_time: (Output)
530
+ Output only. The certificate is not valid before this time. Only present if parsed is true.
531
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
532
+ :param bool parsed: (Output)
533
+ Output only. True if the certificate was parsed successfully.
534
+ :param str serial_number: (Output)
535
+ Output only. The certificate serial number as a hex string. Only present if parsed is true.
536
+ :param str sha256_fingerprint: (Output)
537
+ Output only. The SHA-256 certificate fingerprint as a hex string. Only present if parsed is true.
538
+ :param str subject: (Output)
539
+ Output only. The subject distinguished name in RFC 2253 format. Only present if parsed is true.
540
+ :param Sequence[str] subject_alternative_dns_names: (Output)
541
+ Output only. The subject Alternative DNS names. Only present if parsed is true.
542
+
543
+ - - -
544
+ """
545
+ pulumi.set(__self__, "raw_der", raw_der)
546
+ if issuer is not None:
547
+ pulumi.set(__self__, "issuer", issuer)
548
+ if not_after_time is not None:
549
+ pulumi.set(__self__, "not_after_time", not_after_time)
550
+ if not_before_time is not None:
551
+ pulumi.set(__self__, "not_before_time", not_before_time)
552
+ if parsed is not None:
553
+ pulumi.set(__self__, "parsed", parsed)
554
+ if serial_number is not None:
555
+ pulumi.set(__self__, "serial_number", serial_number)
556
+ if sha256_fingerprint is not None:
557
+ pulumi.set(__self__, "sha256_fingerprint", sha256_fingerprint)
558
+ if subject is not None:
559
+ pulumi.set(__self__, "subject", subject)
560
+ if subject_alternative_dns_names is not None:
561
+ pulumi.set(__self__, "subject_alternative_dns_names", subject_alternative_dns_names)
562
+
563
+ @property
564
+ @pulumi.getter(name="rawDer")
565
+ def raw_der(self) -> str:
566
+ """
567
+ Required. The raw certificate bytes in DER format. A base64-encoded string.
568
+ """
569
+ return pulumi.get(self, "raw_der")
570
+
571
+ @property
572
+ @pulumi.getter
573
+ def issuer(self) -> Optional[str]:
574
+ """
575
+ (Output)
576
+ Output only. The issuer distinguished name in RFC 2253 format. Only present if parsed is true.
577
+ """
578
+ return pulumi.get(self, "issuer")
579
+
580
+ @property
581
+ @pulumi.getter(name="notAfterTime")
582
+ def not_after_time(self) -> Optional[str]:
583
+ """
584
+ (Output)
585
+ Output only. The certificate is not valid after this time. Only present if parsed is true.
586
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
587
+ """
588
+ return pulumi.get(self, "not_after_time")
589
+
590
+ @property
591
+ @pulumi.getter(name="notBeforeTime")
592
+ def not_before_time(self) -> Optional[str]:
593
+ """
594
+ (Output)
595
+ Output only. The certificate is not valid before this time. Only present if parsed is true.
596
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
597
+ """
598
+ return pulumi.get(self, "not_before_time")
599
+
600
+ @property
601
+ @pulumi.getter
602
+ def parsed(self) -> Optional[bool]:
603
+ """
604
+ (Output)
605
+ Output only. True if the certificate was parsed successfully.
606
+ """
607
+ return pulumi.get(self, "parsed")
608
+
609
+ @property
610
+ @pulumi.getter(name="serialNumber")
611
+ def serial_number(self) -> Optional[str]:
612
+ """
613
+ (Output)
614
+ Output only. The certificate serial number as a hex string. Only present if parsed is true.
615
+ """
616
+ return pulumi.get(self, "serial_number")
617
+
618
+ @property
619
+ @pulumi.getter(name="sha256Fingerprint")
620
+ def sha256_fingerprint(self) -> Optional[str]:
621
+ """
622
+ (Output)
623
+ Output only. The SHA-256 certificate fingerprint as a hex string. Only present if parsed is true.
624
+ """
625
+ return pulumi.get(self, "sha256_fingerprint")
626
+
627
+ @property
628
+ @pulumi.getter
629
+ def subject(self) -> Optional[str]:
630
+ """
631
+ (Output)
632
+ Output only. The subject distinguished name in RFC 2253 format. Only present if parsed is true.
633
+ """
634
+ return pulumi.get(self, "subject")
635
+
636
+ @property
637
+ @pulumi.getter(name="subjectAlternativeDnsNames")
638
+ def subject_alternative_dns_names(self) -> Optional[Sequence[str]]:
639
+ """
640
+ (Output)
641
+ Output only. The subject Alternative DNS names. Only present if parsed is true.
642
+
643
+ - - -
644
+ """
645
+ return pulumi.get(self, "subject_alternative_dns_names")
646
+
647
+
406
648
  @pulumi.output_type
407
649
  class KeyRingIAMBindingCondition(dict):
408
650
  def __init__(__self__, *,
@@ -12,6 +12,7 @@ from .address_group_iam_policy import *
12
12
  from .authorization_policy import *
13
13
  from .client_tls_policy import *
14
14
  from .firewall_endpoint import *
15
+ from .firewall_endpoint_association import *
15
16
  from .gateway_security_policy import *
16
17
  from .gateway_security_policy_rule import *
17
18
  from .get_address_group_iam_policy import *