pulumi-digitalocean 4.46.0a1749009476__tar.gz → 4.47.0__tar.gz

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.

Potentially problematic release.


This version of pulumi-digitalocean might be problematic. Click here for more details.

Files changed (120) hide show
  1. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/PKG-INFO +1 -1
  2. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/_inputs.py +60 -0
  3. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/app.py +48 -0
  4. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/outputs.py +79 -1
  5. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/pulumi-plugin.json +1 -1
  6. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean.egg-info/PKG-INFO +1 -1
  7. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pyproject.toml +1 -1
  8. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/README.md +0 -0
  9. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/__init__.py +0 -0
  10. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/_enums.py +0 -0
  11. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/_utilities.py +0 -0
  12. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/cdn.py +0 -0
  13. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/certificate.py +0 -0
  14. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/config/__init__.py +0 -0
  15. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/config/__init__.pyi +0 -0
  16. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/config/vars.py +0 -0
  17. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/container_registry.py +0 -0
  18. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/container_registry_docker_credentials.py +0 -0
  19. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/custom_image.py +0 -0
  20. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_cluster.py +0 -0
  21. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_connection_pool.py +0 -0
  22. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_db.py +0 -0
  23. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_firewall.py +0 -0
  24. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_kafka_config.py +0 -0
  25. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_kafka_topic.py +0 -0
  26. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_mongodb_config.py +0 -0
  27. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_mysql_config.py +0 -0
  28. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_opensearch_config.py +0 -0
  29. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_postgresql_config.py +0 -0
  30. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_redis_config.py +0 -0
  31. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_replica.py +0 -0
  32. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/database_user.py +0 -0
  33. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/dns_record.py +0 -0
  34. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/domain.py +0 -0
  35. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/droplet.py +0 -0
  36. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/droplet_autoscale.py +0 -0
  37. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/droplet_snapshot.py +0 -0
  38. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/firewall.py +0 -0
  39. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/floating_ip.py +0 -0
  40. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/floating_ip_assignment.py +0 -0
  41. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_account.py +0 -0
  42. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_app.py +0 -0
  43. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_certificate.py +0 -0
  44. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_container_registry.py +0 -0
  45. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_database_ca.py +0 -0
  46. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_database_cluster.py +0 -0
  47. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_database_connection_pool.py +0 -0
  48. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_database_replica.py +0 -0
  49. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_database_user.py +0 -0
  50. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_domain.py +0 -0
  51. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_domains.py +0 -0
  52. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_droplet.py +0 -0
  53. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_droplet_autoscale.py +0 -0
  54. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_droplet_snapshot.py +0 -0
  55. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_droplets.py +0 -0
  56. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_firewall.py +0 -0
  57. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_floating_ip.py +0 -0
  58. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_image.py +0 -0
  59. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_images.py +0 -0
  60. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_kubernetes_cluster.py +0 -0
  61. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_kubernetes_versions.py +0 -0
  62. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_load_balancer.py +0 -0
  63. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_partner_attachment.py +0 -0
  64. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_project.py +0 -0
  65. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_projects.py +0 -0
  66. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_record.py +0 -0
  67. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_records.py +0 -0
  68. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_region.py +0 -0
  69. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_regions.py +0 -0
  70. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_reserved_ip.py +0 -0
  71. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_reserved_ipv6.py +0 -0
  72. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_sizes.py +0 -0
  73. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_spaces_bucket.py +0 -0
  74. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_spaces_bucket_object.py +0 -0
  75. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_spaces_bucket_objects.py +0 -0
  76. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_spaces_buckets.py +0 -0
  77. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_spaces_key.py +0 -0
  78. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_ssh_key.py +0 -0
  79. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_ssh_keys.py +0 -0
  80. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_tag.py +0 -0
  81. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_tags.py +0 -0
  82. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_volume.py +0 -0
  83. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_volume_snapshot.py +0 -0
  84. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_vpc.py +0 -0
  85. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_vpc_nat_gateway.py +0 -0
  86. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/get_vpc_peering.py +0 -0
  87. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/kubernetes_cluster.py +0 -0
  88. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/kubernetes_node_pool.py +0 -0
  89. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/load_balancer.py +0 -0
  90. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/monitor_alert.py +0 -0
  91. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/partner_attachment.py +0 -0
  92. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/project.py +0 -0
  93. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/project_resources.py +0 -0
  94. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/provider.py +0 -0
  95. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/py.typed +0 -0
  96. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/reserved_ip.py +0 -0
  97. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/reserved_ip_assignment.py +0 -0
  98. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/reserved_ipv6.py +0 -0
  99. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/reserved_ipv6_assignment.py +0 -0
  100. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/spaces_bucket.py +0 -0
  101. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/spaces_bucket_cors_configuration.py +0 -0
  102. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/spaces_bucket_logging.py +0 -0
  103. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/spaces_bucket_object.py +0 -0
  104. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/spaces_bucket_policy.py +0 -0
  105. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/spaces_key.py +0 -0
  106. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/ssh_key.py +0 -0
  107. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/tag.py +0 -0
  108. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/uptime_alert.py +0 -0
  109. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/uptime_check.py +0 -0
  110. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/volume.py +0 -0
  111. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/volume_attachment.py +0 -0
  112. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/volume_snapshot.py +0 -0
  113. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/vpc.py +0 -0
  114. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/vpc_nat_gateway.py +0 -0
  115. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean/vpc_peering.py +0 -0
  116. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean.egg-info/SOURCES.txt +0 -0
  117. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean.egg-info/dependency_links.txt +0 -0
  118. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean.egg-info/requires.txt +0 -0
  119. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/pulumi_digitalocean.egg-info/top_level.txt +0 -0
  120. {pulumi_digitalocean-4.46.0a1749009476 → pulumi_digitalocean-4.47.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulumi_digitalocean
3
- Version: 4.46.0a1749009476
3
+ Version: 4.47.0
4
4
  Summary: A Pulumi package for creating and managing DigitalOcean cloud resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.io
@@ -448,6 +448,14 @@ if not MYPY:
448
448
  Describes an alert policy for the component.
449
449
  """
450
450
  databases: NotRequired[pulumi.Input[Sequence[pulumi.Input['AppSpecDatabaseArgsDict']]]]
451
+ disable_edge_cache: NotRequired[pulumi.Input[builtins.bool]]
452
+ """
453
+ A boolean indicating whether to disable the edge cache for this app. Default: `false`. Available only for non-static sites. Requires custom domains and applies to all the domains of the app.
454
+ """
455
+ disable_email_obfuscation: NotRequired[pulumi.Input[builtins.bool]]
456
+ """
457
+ A boolean indicating whether to disable email obfuscation for this app. Default: `false`. Requires custom domains and applies to all the domains of the app.
458
+ """
451
459
  domain_names: NotRequired[pulumi.Input[Sequence[pulumi.Input['AppSpecDomainNameArgsDict']]]]
452
460
  """
453
461
  Describes a domain where the application will be made available.
@@ -457,6 +465,10 @@ if not MYPY:
457
465
  """
458
466
  Specification for app egress configurations.
459
467
  """
468
+ enhanced_threat_control_enabled: NotRequired[pulumi.Input[builtins.bool]]
469
+ """
470
+ A boolean, when set to `true`, enables enhanced analyzing of incoming traffic to prevent layer 7 DDoS attacks. Default: `false`. Requires custom domains and applies to all the domains of the app.
471
+ """
460
472
  envs: NotRequired[pulumi.Input[Sequence[pulumi.Input['AppSpecEnvArgsDict']]]]
461
473
  """
462
474
  Describes an environment variable made available to an app competent.
@@ -487,9 +499,12 @@ class AppSpecArgs:
487
499
  name: pulumi.Input[builtins.str],
488
500
  alerts: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecAlertArgs']]]] = None,
489
501
  databases: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecDatabaseArgs']]]] = None,
502
+ disable_edge_cache: Optional[pulumi.Input[builtins.bool]] = None,
503
+ disable_email_obfuscation: Optional[pulumi.Input[builtins.bool]] = None,
490
504
  domain_names: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecDomainNameArgs']]]] = None,
491
505
  domains: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
492
506
  egresses: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecEgressArgs']]]] = None,
507
+ enhanced_threat_control_enabled: Optional[pulumi.Input[builtins.bool]] = None,
493
508
  envs: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecEnvArgs']]]] = None,
494
509
  features: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
495
510
  functions: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecFunctionArgs']]]] = None,
@@ -502,8 +517,11 @@ class AppSpecArgs:
502
517
  """
503
518
  :param pulumi.Input[builtins.str] name: The name of the component.
504
519
  :param pulumi.Input[Sequence[pulumi.Input['AppSpecAlertArgs']]] alerts: Describes an alert policy for the component.
520
+ :param pulumi.Input[builtins.bool] disable_edge_cache: A boolean indicating whether to disable the edge cache for this app. Default: `false`. Available only for non-static sites. Requires custom domains and applies to all the domains of the app.
521
+ :param pulumi.Input[builtins.bool] disable_email_obfuscation: A boolean indicating whether to disable email obfuscation for this app. Default: `false`. Requires custom domains and applies to all the domains of the app.
505
522
  :param pulumi.Input[Sequence[pulumi.Input['AppSpecDomainNameArgs']]] domain_names: Describes a domain where the application will be made available.
506
523
  :param pulumi.Input[Sequence[pulumi.Input['AppSpecEgressArgs']]] egresses: Specification for app egress configurations.
524
+ :param pulumi.Input[builtins.bool] enhanced_threat_control_enabled: A boolean, when set to `true`, enables enhanced analyzing of incoming traffic to prevent layer 7 DDoS attacks. Default: `false`. Requires custom domains and applies to all the domains of the app.
507
525
  :param pulumi.Input[Sequence[pulumi.Input['AppSpecEnvArgs']]] envs: Describes an environment variable made available to an app competent.
508
526
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] features: A list of the features applied to the app. The default buildpack can be overridden here. List of available buildpacks can be found using the [doctl CLI](https://docs.digitalocean.com/reference/doctl/reference/apps/list-buildpacks/)
509
527
  :param pulumi.Input['AppSpecIngressArgs'] ingress: Specification for component routing, rewrites, and redirects.
@@ -514,6 +532,10 @@ class AppSpecArgs:
514
532
  pulumi.set(__self__, "alerts", alerts)
515
533
  if databases is not None:
516
534
  pulumi.set(__self__, "databases", databases)
535
+ if disable_edge_cache is not None:
536
+ pulumi.set(__self__, "disable_edge_cache", disable_edge_cache)
537
+ if disable_email_obfuscation is not None:
538
+ pulumi.set(__self__, "disable_email_obfuscation", disable_email_obfuscation)
517
539
  if domain_names is not None:
518
540
  pulumi.set(__self__, "domain_names", domain_names)
519
541
  if domains is not None:
@@ -523,6 +545,8 @@ class AppSpecArgs:
523
545
  pulumi.set(__self__, "domains", domains)
524
546
  if egresses is not None:
525
547
  pulumi.set(__self__, "egresses", egresses)
548
+ if enhanced_threat_control_enabled is not None:
549
+ pulumi.set(__self__, "enhanced_threat_control_enabled", enhanced_threat_control_enabled)
526
550
  if envs is not None:
527
551
  pulumi.set(__self__, "envs", envs)
528
552
  if features is not None:
@@ -575,6 +599,30 @@ class AppSpecArgs:
575
599
  def databases(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecDatabaseArgs']]]]):
576
600
  pulumi.set(self, "databases", value)
577
601
 
602
+ @property
603
+ @pulumi.getter(name="disableEdgeCache")
604
+ def disable_edge_cache(self) -> Optional[pulumi.Input[builtins.bool]]:
605
+ """
606
+ A boolean indicating whether to disable the edge cache for this app. Default: `false`. Available only for non-static sites. Requires custom domains and applies to all the domains of the app.
607
+ """
608
+ return pulumi.get(self, "disable_edge_cache")
609
+
610
+ @disable_edge_cache.setter
611
+ def disable_edge_cache(self, value: Optional[pulumi.Input[builtins.bool]]):
612
+ pulumi.set(self, "disable_edge_cache", value)
613
+
614
+ @property
615
+ @pulumi.getter(name="disableEmailObfuscation")
616
+ def disable_email_obfuscation(self) -> Optional[pulumi.Input[builtins.bool]]:
617
+ """
618
+ A boolean indicating whether to disable email obfuscation for this app. Default: `false`. Requires custom domains and applies to all the domains of the app.
619
+ """
620
+ return pulumi.get(self, "disable_email_obfuscation")
621
+
622
+ @disable_email_obfuscation.setter
623
+ def disable_email_obfuscation(self, value: Optional[pulumi.Input[builtins.bool]]):
624
+ pulumi.set(self, "disable_email_obfuscation", value)
625
+
578
626
  @property
579
627
  @pulumi.getter(name="domainNames")
580
628
  def domain_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecDomainNameArgs']]]]:
@@ -609,6 +657,18 @@ class AppSpecArgs:
609
657
  def egresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecEgressArgs']]]]):
610
658
  pulumi.set(self, "egresses", value)
611
659
 
660
+ @property
661
+ @pulumi.getter(name="enhancedThreatControlEnabled")
662
+ def enhanced_threat_control_enabled(self) -> Optional[pulumi.Input[builtins.bool]]:
663
+ """
664
+ A boolean, when set to `true`, enables enhanced analyzing of incoming traffic to prevent layer 7 DDoS attacks. Default: `false`. Requires custom domains and applies to all the domains of the app.
665
+ """
666
+ return pulumi.get(self, "enhanced_threat_control_enabled")
667
+
668
+ @enhanced_threat_control_enabled.setter
669
+ def enhanced_threat_control_enabled(self, value: Optional[pulumi.Input[builtins.bool]]):
670
+ pulumi.set(self, "enhanced_threat_control_enabled", value)
671
+
612
672
  @property
613
673
  @pulumi.getter
614
674
  def envs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AppSpecEnvArgs']]]]:
@@ -349,6 +349,30 @@ class App(pulumi.CustomResource):
349
349
  })
350
350
  ```
351
351
 
352
+ ### Edge Controls Example
353
+
354
+ ```python
355
+ import pulumi
356
+ import pulumi_digitalocean as digitalocean
357
+
358
+ golang_sample = digitalocean.App("golang-sample", spec={
359
+ "name": "golang-sample",
360
+ "region": "ams",
361
+ "disable_edge_cache": True,
362
+ "disable_email_obfuscation": False,
363
+ "enhanced_threat_control_enabled": True,
364
+ "services": [{
365
+ "name": "go-service",
366
+ "instance_count": 1,
367
+ "instance_size_slug": "apps-s-1vcpu-1gb",
368
+ "git": {
369
+ "repo_clone_url": "https://github.com/digitalocean/sample-golang.git",
370
+ "branch": "main",
371
+ },
372
+ }],
373
+ })
374
+ ```
375
+
352
376
  ## Import
353
377
 
354
378
  An app can be imported using its `id`, e.g.
@@ -453,6 +477,30 @@ class App(pulumi.CustomResource):
453
477
  })
454
478
  ```
455
479
 
480
+ ### Edge Controls Example
481
+
482
+ ```python
483
+ import pulumi
484
+ import pulumi_digitalocean as digitalocean
485
+
486
+ golang_sample = digitalocean.App("golang-sample", spec={
487
+ "name": "golang-sample",
488
+ "region": "ams",
489
+ "disable_edge_cache": True,
490
+ "disable_email_obfuscation": False,
491
+ "enhanced_threat_control_enabled": True,
492
+ "services": [{
493
+ "name": "go-service",
494
+ "instance_count": 1,
495
+ "instance_size_slug": "apps-s-1vcpu-1gb",
496
+ "git": {
497
+ "repo_clone_url": "https://github.com/digitalocean/sample-golang.git",
498
+ "branch": "main",
499
+ },
500
+ }],
501
+ })
502
+ ```
503
+
456
504
  ## Import
457
505
 
458
506
  An app can be imported using its `id`, e.g.
@@ -372,8 +372,14 @@ class AppSpec(dict):
372
372
  @staticmethod
373
373
  def __key_warning(key: str):
374
374
  suggest = None
375
- if key == "domainNames":
375
+ if key == "disableEdgeCache":
376
+ suggest = "disable_edge_cache"
377
+ elif key == "disableEmailObfuscation":
378
+ suggest = "disable_email_obfuscation"
379
+ elif key == "domainNames":
376
380
  suggest = "domain_names"
381
+ elif key == "enhancedThreatControlEnabled":
382
+ suggest = "enhanced_threat_control_enabled"
377
383
  elif key == "staticSites":
378
384
  suggest = "static_sites"
379
385
 
@@ -392,9 +398,12 @@ class AppSpec(dict):
392
398
  name: builtins.str,
393
399
  alerts: Optional[Sequence['outputs.AppSpecAlert']] = None,
394
400
  databases: Optional[Sequence['outputs.AppSpecDatabase']] = None,
401
+ disable_edge_cache: Optional[builtins.bool] = None,
402
+ disable_email_obfuscation: Optional[builtins.bool] = None,
395
403
  domain_names: Optional[Sequence['outputs.AppSpecDomainName']] = None,
396
404
  domains: Optional[Sequence[builtins.str]] = None,
397
405
  egresses: Optional[Sequence['outputs.AppSpecEgress']] = None,
406
+ enhanced_threat_control_enabled: Optional[builtins.bool] = None,
398
407
  envs: Optional[Sequence['outputs.AppSpecEnv']] = None,
399
408
  features: Optional[Sequence[builtins.str]] = None,
400
409
  functions: Optional[Sequence['outputs.AppSpecFunction']] = None,
@@ -407,8 +416,11 @@ class AppSpec(dict):
407
416
  """
408
417
  :param builtins.str name: The name of the component.
409
418
  :param Sequence['AppSpecAlertArgs'] alerts: Describes an alert policy for the component.
419
+ :param builtins.bool disable_edge_cache: A boolean indicating whether to disable the edge cache for this app. Default: `false`. Available only for non-static sites. Requires custom domains and applies to all the domains of the app.
420
+ :param builtins.bool disable_email_obfuscation: A boolean indicating whether to disable email obfuscation for this app. Default: `false`. Requires custom domains and applies to all the domains of the app.
410
421
  :param Sequence['AppSpecDomainNameArgs'] domain_names: Describes a domain where the application will be made available.
411
422
  :param Sequence['AppSpecEgressArgs'] egresses: Specification for app egress configurations.
423
+ :param builtins.bool enhanced_threat_control_enabled: A boolean, when set to `true`, enables enhanced analyzing of incoming traffic to prevent layer 7 DDoS attacks. Default: `false`. Requires custom domains and applies to all the domains of the app.
412
424
  :param Sequence['AppSpecEnvArgs'] envs: Describes an environment variable made available to an app competent.
413
425
  :param Sequence[builtins.str] features: A list of the features applied to the app. The default buildpack can be overridden here. List of available buildpacks can be found using the [doctl CLI](https://docs.digitalocean.com/reference/doctl/reference/apps/list-buildpacks/)
414
426
  :param 'AppSpecIngressArgs' ingress: Specification for component routing, rewrites, and redirects.
@@ -419,12 +431,18 @@ class AppSpec(dict):
419
431
  pulumi.set(__self__, "alerts", alerts)
420
432
  if databases is not None:
421
433
  pulumi.set(__self__, "databases", databases)
434
+ if disable_edge_cache is not None:
435
+ pulumi.set(__self__, "disable_edge_cache", disable_edge_cache)
436
+ if disable_email_obfuscation is not None:
437
+ pulumi.set(__self__, "disable_email_obfuscation", disable_email_obfuscation)
422
438
  if domain_names is not None:
423
439
  pulumi.set(__self__, "domain_names", domain_names)
424
440
  if domains is not None:
425
441
  pulumi.set(__self__, "domains", domains)
426
442
  if egresses is not None:
427
443
  pulumi.set(__self__, "egresses", egresses)
444
+ if enhanced_threat_control_enabled is not None:
445
+ pulumi.set(__self__, "enhanced_threat_control_enabled", enhanced_threat_control_enabled)
428
446
  if envs is not None:
429
447
  pulumi.set(__self__, "envs", envs)
430
448
  if features is not None:
@@ -465,6 +483,22 @@ class AppSpec(dict):
465
483
  def databases(self) -> Optional[Sequence['outputs.AppSpecDatabase']]:
466
484
  return pulumi.get(self, "databases")
467
485
 
486
+ @property
487
+ @pulumi.getter(name="disableEdgeCache")
488
+ def disable_edge_cache(self) -> Optional[builtins.bool]:
489
+ """
490
+ A boolean indicating whether to disable the edge cache for this app. Default: `false`. Available only for non-static sites. Requires custom domains and applies to all the domains of the app.
491
+ """
492
+ return pulumi.get(self, "disable_edge_cache")
493
+
494
+ @property
495
+ @pulumi.getter(name="disableEmailObfuscation")
496
+ def disable_email_obfuscation(self) -> Optional[builtins.bool]:
497
+ """
498
+ A boolean indicating whether to disable email obfuscation for this app. Default: `false`. Requires custom domains and applies to all the domains of the app.
499
+ """
500
+ return pulumi.get(self, "disable_email_obfuscation")
501
+
468
502
  @property
469
503
  @pulumi.getter(name="domainNames")
470
504
  def domain_names(self) -> Optional[Sequence['outputs.AppSpecDomainName']]:
@@ -487,6 +521,14 @@ class AppSpec(dict):
487
521
  """
488
522
  return pulumi.get(self, "egresses")
489
523
 
524
+ @property
525
+ @pulumi.getter(name="enhancedThreatControlEnabled")
526
+ def enhanced_threat_control_enabled(self) -> Optional[builtins.bool]:
527
+ """
528
+ A boolean, when set to `true`, enables enhanced analyzing of incoming traffic to prevent layer 7 DDoS attacks. Default: `false`. Requires custom domains and applies to all the domains of the app.
529
+ """
530
+ return pulumi.get(self, "enhanced_threat_control_enabled")
531
+
490
532
  @property
491
533
  @pulumi.getter
492
534
  def envs(self) -> Optional[Sequence['outputs.AppSpecEnv']]:
@@ -10111,7 +10153,10 @@ class GetAppSpecResult(dict):
10111
10153
  name: builtins.str,
10112
10154
  alerts: Optional[Sequence['outputs.GetAppSpecAlertResult']] = None,
10113
10155
  databases: Optional[Sequence['outputs.GetAppSpecDatabaseResult']] = None,
10156
+ disable_edge_cache: Optional[builtins.bool] = None,
10157
+ disable_email_obfuscation: Optional[builtins.bool] = None,
10114
10158
  egresses: Optional[Sequence['outputs.GetAppSpecEgressResult']] = None,
10159
+ enhanced_threat_control_enabled: Optional[builtins.bool] = None,
10115
10160
  envs: Optional[Sequence['outputs.GetAppSpecEnvResult']] = None,
10116
10161
  functions: Optional[Sequence['outputs.GetAppSpecFunctionResult']] = None,
10117
10162
  jobs: Optional[Sequence['outputs.GetAppSpecJobResult']] = None,
@@ -10123,6 +10168,9 @@ class GetAppSpecResult(dict):
10123
10168
  :param Sequence[builtins.str] features: List of features which is applied to the app
10124
10169
  :param builtins.str name: The name of the component.
10125
10170
  :param Sequence['GetAppSpecAlertArgs'] alerts: Describes an alert policy for the component.
10171
+ :param builtins.bool disable_edge_cache: Whether to disable the edge cache for the app. Default is false, which enables the edge cache.
10172
+ :param builtins.bool disable_email_obfuscation: Email obfuscation configuration for the app. Default is false, which keeps the email obfuscated.
10173
+ :param builtins.bool enhanced_threat_control_enabled: Whether to enable enhanced threat control for the app. Default is false. Set to true to enable enhanced threat control, putting additional security measures for Layer 7 DDoS attacks.
10126
10174
  :param Sequence['GetAppSpecEnvArgs'] envs: Describes an environment variable made available to an app competent.
10127
10175
  :param builtins.str region: The slug for the DigitalOcean data center region hosting the app
10128
10176
  """
@@ -10135,8 +10183,14 @@ class GetAppSpecResult(dict):
10135
10183
  pulumi.set(__self__, "alerts", alerts)
10136
10184
  if databases is not None:
10137
10185
  pulumi.set(__self__, "databases", databases)
10186
+ if disable_edge_cache is not None:
10187
+ pulumi.set(__self__, "disable_edge_cache", disable_edge_cache)
10188
+ if disable_email_obfuscation is not None:
10189
+ pulumi.set(__self__, "disable_email_obfuscation", disable_email_obfuscation)
10138
10190
  if egresses is not None:
10139
10191
  pulumi.set(__self__, "egresses", egresses)
10192
+ if enhanced_threat_control_enabled is not None:
10193
+ pulumi.set(__self__, "enhanced_threat_control_enabled", enhanced_threat_control_enabled)
10140
10194
  if envs is not None:
10141
10195
  pulumi.set(__self__, "envs", envs)
10142
10196
  if functions is not None:
@@ -10197,11 +10251,35 @@ class GetAppSpecResult(dict):
10197
10251
  def databases(self) -> Optional[Sequence['outputs.GetAppSpecDatabaseResult']]:
10198
10252
  return pulumi.get(self, "databases")
10199
10253
 
10254
+ @property
10255
+ @pulumi.getter(name="disableEdgeCache")
10256
+ def disable_edge_cache(self) -> Optional[builtins.bool]:
10257
+ """
10258
+ Whether to disable the edge cache for the app. Default is false, which enables the edge cache.
10259
+ """
10260
+ return pulumi.get(self, "disable_edge_cache")
10261
+
10262
+ @property
10263
+ @pulumi.getter(name="disableEmailObfuscation")
10264
+ def disable_email_obfuscation(self) -> Optional[builtins.bool]:
10265
+ """
10266
+ Email obfuscation configuration for the app. Default is false, which keeps the email obfuscated.
10267
+ """
10268
+ return pulumi.get(self, "disable_email_obfuscation")
10269
+
10200
10270
  @property
10201
10271
  @pulumi.getter
10202
10272
  def egresses(self) -> Optional[Sequence['outputs.GetAppSpecEgressResult']]:
10203
10273
  return pulumi.get(self, "egresses")
10204
10274
 
10275
+ @property
10276
+ @pulumi.getter(name="enhancedThreatControlEnabled")
10277
+ def enhanced_threat_control_enabled(self) -> Optional[builtins.bool]:
10278
+ """
10279
+ Whether to enable enhanced threat control for the app. Default is false. Set to true to enable enhanced threat control, putting additional security measures for Layer 7 DDoS attacks.
10280
+ """
10281
+ return pulumi.get(self, "enhanced_threat_control_enabled")
10282
+
10205
10283
  @property
10206
10284
  @pulumi.getter
10207
10285
  def envs(self) -> Optional[Sequence['outputs.GetAppSpecEnvResult']]:
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "digitalocean",
4
- "version": "4.46.0-alpha.1749009476"
4
+ "version": "4.47.0"
5
5
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulumi_digitalocean
3
- Version: 4.46.0a1749009476
3
+ Version: 4.47.0
4
4
  Summary: A Pulumi package for creating and managing DigitalOcean cloud resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.io
@@ -5,7 +5,7 @@
5
5
  keywords = ["pulumi", "digitalocean"]
6
6
  readme = "README.md"
7
7
  requires-python = ">=3.9"
8
- version = "4.46.0a1749009476"
8
+ version = "4.47.0"
9
9
  [project.license]
10
10
  text = "Apache-2.0"
11
11
  [project.urls]