pulumiverse-scaleway 1.34.0a1756885226__py3-none-any.whl → 1.34.0a1757664666__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 (52) hide show
  1. pulumiverse_scaleway/__init__.py +8 -0
  2. pulumiverse_scaleway/_inputs.py +235 -34
  3. pulumiverse_scaleway/cockpit.py +14 -0
  4. pulumiverse_scaleway/container_namespace.py +16 -7
  5. pulumiverse_scaleway/containers/namespace.py +16 -7
  6. pulumiverse_scaleway/database_user.py +83 -11
  7. pulumiverse_scaleway/databases/user.py +83 -11
  8. pulumiverse_scaleway/elasticmetal/outputs.py +4 -0
  9. pulumiverse_scaleway/function_namespace.py +16 -7
  10. pulumiverse_scaleway/functions/namespace.py +16 -7
  11. pulumiverse_scaleway/get_mongo_db_instance.py +34 -1
  12. pulumiverse_scaleway/hosting/_inputs.py +42 -0
  13. pulumiverse_scaleway/hosting/outputs.py +84 -0
  14. pulumiverse_scaleway/instance/_inputs.py +107 -13
  15. pulumiverse_scaleway/instance/outputs.py +187 -10
  16. pulumiverse_scaleway/instance/security_group_rules.py +16 -16
  17. pulumiverse_scaleway/instance/snapshot.py +26 -27
  18. pulumiverse_scaleway/instance_security_group_rules.py +16 -16
  19. pulumiverse_scaleway/instance_snapshot.py +26 -27
  20. pulumiverse_scaleway/loadbalancer_backend.py +39 -0
  21. pulumiverse_scaleway/loadbalancers/backend.py +39 -0
  22. pulumiverse_scaleway/loadbalancers/outputs.py +16 -0
  23. pulumiverse_scaleway/mnq/_inputs.py +52 -0
  24. pulumiverse_scaleway/mnq/outputs.py +47 -0
  25. pulumiverse_scaleway/mnq/sqs_queue.py +159 -0
  26. pulumiverse_scaleway/mnq_sqs_queue.py +159 -0
  27. pulumiverse_scaleway/mongo_db_instance.py +171 -23
  28. pulumiverse_scaleway/mongo_db_snapshot.py +2 -2
  29. pulumiverse_scaleway/mongodb/__init__.py +1 -0
  30. pulumiverse_scaleway/mongodb/_inputs.py +73 -0
  31. pulumiverse_scaleway/mongodb/get_instance.py +34 -1
  32. pulumiverse_scaleway/mongodb/instance.py +171 -23
  33. pulumiverse_scaleway/mongodb/outputs.py +62 -0
  34. pulumiverse_scaleway/mongodb/snapshot.py +2 -2
  35. pulumiverse_scaleway/mongodb/user.py +508 -0
  36. pulumiverse_scaleway/network/outputs.py +4 -0
  37. pulumiverse_scaleway/object/_inputs.py +14 -0
  38. pulumiverse_scaleway/object/bucket.py +13 -0
  39. pulumiverse_scaleway/object/outputs.py +30 -0
  40. pulumiverse_scaleway/object_bucket.py +13 -0
  41. pulumiverse_scaleway/observability/__init__.py +1 -0
  42. pulumiverse_scaleway/observability/cockpit.py +14 -0
  43. pulumiverse_scaleway/observability/get_sources.py +376 -0
  44. pulumiverse_scaleway/observability/outputs.py +140 -0
  45. pulumiverse_scaleway/outputs.py +387 -26
  46. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  47. pulumiverse_scaleway/secret.py +8 -0
  48. pulumiverse_scaleway/secrets/secret.py +8 -0
  49. {pulumiverse_scaleway-1.34.0a1756885226.dist-info → pulumiverse_scaleway-1.34.0a1757664666.dist-info}/METADATA +1 -1
  50. {pulumiverse_scaleway-1.34.0a1756885226.dist-info → pulumiverse_scaleway-1.34.0a1757664666.dist-info}/RECORD +52 -50
  51. {pulumiverse_scaleway-1.34.0a1756885226.dist-info → pulumiverse_scaleway-1.34.0a1757664666.dist-info}/WHEEL +0 -0
  52. {pulumiverse_scaleway-1.34.0a1756885226.dist-info → pulumiverse_scaleway-1.34.0a1757664666.dist-info}/top_level.txt +0 -0
@@ -37,6 +37,7 @@ class BucketArgs:
37
37
  :param pulumi.Input[builtins.str] acl: (Deprecated) The canned ACL you want to apply to the bucket.
38
38
 
39
39
  > **Note:** The `acl` attribute is deprecated. See object.BucketAcl resource documentation. Refer to the [official canned ACL documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl_overview.html#canned-acl) for more information on the different roles.
40
+ :param pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleArgs']]] cors_rules: List of CORS rules
40
41
  :param pulumi.Input[builtins.bool] force_destroy: Boolean that, when set to true, allows the deletion of all objects (including locked objects) when the bucket is destroyed. This operation is irreversible, and the objects cannot be recovered. The default is false.
41
42
  :param pulumi.Input[Sequence[pulumi.Input['BucketLifecycleRuleArgs']]] lifecycle_rules: Lifecycle configuration is a set of rules that define actions that Scaleway Object Storage applies to a group of objects
42
43
  :param pulumi.Input[builtins.str] name: The name of the bucket.
@@ -91,6 +92,9 @@ class BucketArgs:
91
92
  @property
92
93
  @pulumi.getter(name="corsRules")
93
94
  def cors_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleArgs']]]]:
95
+ """
96
+ List of CORS rules
97
+ """
94
98
  return pulumi.get(self, "cors_rules")
95
99
 
96
100
  @cors_rules.setter
@@ -218,6 +222,7 @@ class _BucketState:
218
222
 
219
223
  > **Note:** The `acl` attribute is deprecated. See object.BucketAcl resource documentation. Refer to the [official canned ACL documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl_overview.html#canned-acl) for more information on the different roles.
220
224
  :param pulumi.Input[builtins.str] api_endpoint: API URL of the bucket
225
+ :param pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleArgs']]] cors_rules: List of CORS rules
221
226
  :param pulumi.Input[builtins.str] endpoint: The endpoint URL of the bucket.
222
227
  :param pulumi.Input[builtins.bool] force_destroy: Boolean that, when set to true, allows the deletion of all objects (including locked objects) when the bucket is destroyed. This operation is irreversible, and the objects cannot be recovered. The default is false.
223
228
  :param pulumi.Input[Sequence[pulumi.Input['BucketLifecycleRuleArgs']]] lifecycle_rules: Lifecycle configuration is a set of rules that define actions that Scaleway Object Storage applies to a group of objects
@@ -289,6 +294,9 @@ class _BucketState:
289
294
  @property
290
295
  @pulumi.getter(name="corsRules")
291
296
  def cors_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleArgs']]]]:
297
+ """
298
+ List of CORS rules
299
+ """
292
300
  return pulumi.get(self, "cors_rules")
293
301
 
294
302
  @cors_rules.setter
@@ -538,6 +546,7 @@ class Bucket(pulumi.CustomResource):
538
546
  :param pulumi.Input[builtins.str] acl: (Deprecated) The canned ACL you want to apply to the bucket.
539
547
 
540
548
  > **Note:** The `acl` attribute is deprecated. See object.BucketAcl resource documentation. Refer to the [official canned ACL documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl_overview.html#canned-acl) for more information on the different roles.
549
+ :param pulumi.Input[Sequence[pulumi.Input[Union['BucketCorsRuleArgs', 'BucketCorsRuleArgsDict']]]] cors_rules: List of CORS rules
541
550
  :param pulumi.Input[builtins.bool] force_destroy: Boolean that, when set to true, allows the deletion of all objects (including locked objects) when the bucket is destroyed. This operation is irreversible, and the objects cannot be recovered. The default is false.
542
551
  :param pulumi.Input[Sequence[pulumi.Input[Union['BucketLifecycleRuleArgs', 'BucketLifecycleRuleArgsDict']]]] lifecycle_rules: Lifecycle configuration is a set of rules that define actions that Scaleway Object Storage applies to a group of objects
543
552
  :param pulumi.Input[builtins.str] name: The name of the bucket.
@@ -746,6 +755,7 @@ class Bucket(pulumi.CustomResource):
746
755
 
747
756
  > **Note:** The `acl` attribute is deprecated. See object.BucketAcl resource documentation. Refer to the [official canned ACL documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl_overview.html#canned-acl) for more information on the different roles.
748
757
  :param pulumi.Input[builtins.str] api_endpoint: API URL of the bucket
758
+ :param pulumi.Input[Sequence[pulumi.Input[Union['BucketCorsRuleArgs', 'BucketCorsRuleArgsDict']]]] cors_rules: List of CORS rules
749
759
  :param pulumi.Input[builtins.str] endpoint: The endpoint URL of the bucket.
750
760
  :param pulumi.Input[builtins.bool] force_destroy: Boolean that, when set to true, allows the deletion of all objects (including locked objects) when the bucket is destroyed. This operation is irreversible, and the objects cannot be recovered. The default is false.
751
761
  :param pulumi.Input[Sequence[pulumi.Input[Union['BucketLifecycleRuleArgs', 'BucketLifecycleRuleArgsDict']]]] lifecycle_rules: Lifecycle configuration is a set of rules that define actions that Scaleway Object Storage applies to a group of objects
@@ -799,6 +809,9 @@ class Bucket(pulumi.CustomResource):
799
809
  @property
800
810
  @pulumi.getter(name="corsRules")
801
811
  def cors_rules(self) -> pulumi.Output[Sequence['outputs.BucketCorsRule']]:
812
+ """
813
+ List of CORS rules
814
+ """
802
815
  return pulumi.get(self, "cors_rules")
803
816
 
804
817
  @property
@@ -44,6 +44,7 @@ class BucketAclAccessControlPolicy(dict):
44
44
  grants: Optional[Sequence['outputs.BucketAclAccessControlPolicyGrant']] = None):
45
45
  """
46
46
  :param 'BucketAclAccessControlPolicyOwnerArgs' owner: Configuration block of the bucket project owner's display organization ID.
47
+ :param Sequence['BucketAclAccessControlPolicyGrantArgs'] grants: Grant
47
48
  """
48
49
  pulumi.set(__self__, "owner", owner)
49
50
  if grants is not None:
@@ -60,6 +61,9 @@ class BucketAclAccessControlPolicy(dict):
60
61
  @property
61
62
  @pulumi.getter
62
63
  def grants(self) -> Optional[Sequence['outputs.BucketAclAccessControlPolicyGrant']]:
64
+ """
65
+ Grant
66
+ """
63
67
  return pulumi.get(self, "grants")
64
68
 
65
69
 
@@ -118,6 +122,7 @@ class BucketAclAccessControlPolicyGrantGrantee(dict):
118
122
  type: Optional[builtins.str] = None,
119
123
  uri: Optional[builtins.str] = None):
120
124
  """
125
+ :param builtins.str display_name: Display name of the grantee to grant access to.
121
126
  :param builtins.str id: The `region`, `bucket` and `acl` separated by (`/`).
122
127
  :param builtins.str type: Type of grantee. Valid values: `CanonicalUser`, `Group`
123
128
  :param builtins.str uri: The uri of the grantee if you are granting permissions to a predefined group.
@@ -134,6 +139,9 @@ class BucketAclAccessControlPolicyGrantGrantee(dict):
134
139
  @property
135
140
  @pulumi.getter(name="displayName")
136
141
  def display_name(self) -> Optional[builtins.str]:
142
+ """
143
+ Display name of the grantee to grant access to.
144
+ """
137
145
  return pulumi.get(self, "display_name")
138
146
 
139
147
  @property
@@ -634,6 +642,13 @@ class GetBucketCorsRuleResult(dict):
634
642
  allowed_origins: Sequence[builtins.str],
635
643
  expose_headers: Sequence[builtins.str],
636
644
  max_age_seconds: builtins.int):
645
+ """
646
+ :param Sequence[builtins.str] allowed_headers: Allowed headers in the CORS rule
647
+ :param Sequence[builtins.str] allowed_methods: Allowed HTTP methods allowed in the CORS rule
648
+ :param Sequence[builtins.str] allowed_origins: Allowed origins allowed in the CORS rule
649
+ :param Sequence[builtins.str] expose_headers: Exposed headers in the CORS rule
650
+ :param builtins.int max_age_seconds: Max age of the CORS rule
651
+ """
637
652
  pulumi.set(__self__, "allowed_headers", allowed_headers)
638
653
  pulumi.set(__self__, "allowed_methods", allowed_methods)
639
654
  pulumi.set(__self__, "allowed_origins", allowed_origins)
@@ -643,26 +658,41 @@ class GetBucketCorsRuleResult(dict):
643
658
  @property
644
659
  @pulumi.getter(name="allowedHeaders")
645
660
  def allowed_headers(self) -> Sequence[builtins.str]:
661
+ """
662
+ Allowed headers in the CORS rule
663
+ """
646
664
  return pulumi.get(self, "allowed_headers")
647
665
 
648
666
  @property
649
667
  @pulumi.getter(name="allowedMethods")
650
668
  def allowed_methods(self) -> Sequence[builtins.str]:
669
+ """
670
+ Allowed HTTP methods allowed in the CORS rule
671
+ """
651
672
  return pulumi.get(self, "allowed_methods")
652
673
 
653
674
  @property
654
675
  @pulumi.getter(name="allowedOrigins")
655
676
  def allowed_origins(self) -> Sequence[builtins.str]:
677
+ """
678
+ Allowed origins allowed in the CORS rule
679
+ """
656
680
  return pulumi.get(self, "allowed_origins")
657
681
 
658
682
  @property
659
683
  @pulumi.getter(name="exposeHeaders")
660
684
  def expose_headers(self) -> Sequence[builtins.str]:
685
+ """
686
+ Exposed headers in the CORS rule
687
+ """
661
688
  return pulumi.get(self, "expose_headers")
662
689
 
663
690
  @property
664
691
  @pulumi.getter(name="maxAgeSeconds")
665
692
  def max_age_seconds(self) -> builtins.int:
693
+ """
694
+ Max age of the CORS rule
695
+ """
666
696
  return pulumi.get(self, "max_age_seconds")
667
697
 
668
698
 
@@ -37,6 +37,7 @@ class ObjectBucketArgs:
37
37
  :param pulumi.Input[builtins.str] acl: (Deprecated) The canned ACL you want to apply to the bucket.
38
38
 
39
39
  > **Note:** The `acl` attribute is deprecated. See object.BucketAcl resource documentation. Refer to the [official canned ACL documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl_overview.html#canned-acl) for more information on the different roles.
40
+ :param pulumi.Input[Sequence[pulumi.Input['ObjectBucketCorsRuleArgs']]] cors_rules: List of CORS rules
40
41
  :param pulumi.Input[builtins.bool] force_destroy: Boolean that, when set to true, allows the deletion of all objects (including locked objects) when the bucket is destroyed. This operation is irreversible, and the objects cannot be recovered. The default is false.
41
42
  :param pulumi.Input[Sequence[pulumi.Input['ObjectBucketLifecycleRuleArgs']]] lifecycle_rules: Lifecycle configuration is a set of rules that define actions that Scaleway Object Storage applies to a group of objects
42
43
  :param pulumi.Input[builtins.str] name: The name of the bucket.
@@ -91,6 +92,9 @@ class ObjectBucketArgs:
91
92
  @property
92
93
  @pulumi.getter(name="corsRules")
93
94
  def cors_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ObjectBucketCorsRuleArgs']]]]:
95
+ """
96
+ List of CORS rules
97
+ """
94
98
  return pulumi.get(self, "cors_rules")
95
99
 
96
100
  @cors_rules.setter
@@ -218,6 +222,7 @@ class _ObjectBucketState:
218
222
 
219
223
  > **Note:** The `acl` attribute is deprecated. See object.BucketAcl resource documentation. Refer to the [official canned ACL documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl_overview.html#canned-acl) for more information on the different roles.
220
224
  :param pulumi.Input[builtins.str] api_endpoint: API URL of the bucket
225
+ :param pulumi.Input[Sequence[pulumi.Input['ObjectBucketCorsRuleArgs']]] cors_rules: List of CORS rules
221
226
  :param pulumi.Input[builtins.str] endpoint: The endpoint URL of the bucket.
222
227
  :param pulumi.Input[builtins.bool] force_destroy: Boolean that, when set to true, allows the deletion of all objects (including locked objects) when the bucket is destroyed. This operation is irreversible, and the objects cannot be recovered. The default is false.
223
228
  :param pulumi.Input[Sequence[pulumi.Input['ObjectBucketLifecycleRuleArgs']]] lifecycle_rules: Lifecycle configuration is a set of rules that define actions that Scaleway Object Storage applies to a group of objects
@@ -289,6 +294,9 @@ class _ObjectBucketState:
289
294
  @property
290
295
  @pulumi.getter(name="corsRules")
291
296
  def cors_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ObjectBucketCorsRuleArgs']]]]:
297
+ """
298
+ List of CORS rules
299
+ """
292
300
  return pulumi.get(self, "cors_rules")
293
301
 
294
302
  @cors_rules.setter
@@ -543,6 +551,7 @@ class ObjectBucket(pulumi.CustomResource):
543
551
  :param pulumi.Input[builtins.str] acl: (Deprecated) The canned ACL you want to apply to the bucket.
544
552
 
545
553
  > **Note:** The `acl` attribute is deprecated. See object.BucketAcl resource documentation. Refer to the [official canned ACL documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl_overview.html#canned-acl) for more information on the different roles.
554
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ObjectBucketCorsRuleArgs', 'ObjectBucketCorsRuleArgsDict']]]] cors_rules: List of CORS rules
546
555
  :param pulumi.Input[builtins.bool] force_destroy: Boolean that, when set to true, allows the deletion of all objects (including locked objects) when the bucket is destroyed. This operation is irreversible, and the objects cannot be recovered. The default is false.
547
556
  :param pulumi.Input[Sequence[pulumi.Input[Union['ObjectBucketLifecycleRuleArgs', 'ObjectBucketLifecycleRuleArgsDict']]]] lifecycle_rules: Lifecycle configuration is a set of rules that define actions that Scaleway Object Storage applies to a group of objects
548
557
  :param pulumi.Input[builtins.str] name: The name of the bucket.
@@ -750,6 +759,7 @@ class ObjectBucket(pulumi.CustomResource):
750
759
 
751
760
  > **Note:** The `acl` attribute is deprecated. See object.BucketAcl resource documentation. Refer to the [official canned ACL documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl_overview.html#canned-acl) for more information on the different roles.
752
761
  :param pulumi.Input[builtins.str] api_endpoint: API URL of the bucket
762
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ObjectBucketCorsRuleArgs', 'ObjectBucketCorsRuleArgsDict']]]] cors_rules: List of CORS rules
753
763
  :param pulumi.Input[builtins.str] endpoint: The endpoint URL of the bucket.
754
764
  :param pulumi.Input[builtins.bool] force_destroy: Boolean that, when set to true, allows the deletion of all objects (including locked objects) when the bucket is destroyed. This operation is irreversible, and the objects cannot be recovered. The default is false.
755
765
  :param pulumi.Input[Sequence[pulumi.Input[Union['ObjectBucketLifecycleRuleArgs', 'ObjectBucketLifecycleRuleArgsDict']]]] lifecycle_rules: Lifecycle configuration is a set of rules that define actions that Scaleway Object Storage applies to a group of objects
@@ -803,6 +813,9 @@ class ObjectBucket(pulumi.CustomResource):
803
813
  @property
804
814
  @pulumi.getter(name="corsRules")
805
815
  def cors_rules(self) -> pulumi.Output[Sequence['outputs.ObjectBucketCorsRule']]:
816
+ """
817
+ List of CORS rules
818
+ """
806
819
  return pulumi.get(self, "cors_rules")
807
820
 
808
821
  @property
@@ -10,6 +10,7 @@ from .alert_manager import *
10
10
  from .cockpit import *
11
11
  from .get_instance import *
12
12
  from .get_source import *
13
+ from .get_sources import *
13
14
  from .grafana_user import *
14
15
  from .source import *
15
16
  from .token import *
@@ -28,6 +28,8 @@ class CockpitArgs:
28
28
  The set of arguments for constructing a Cockpit resource.
29
29
  :param pulumi.Input[builtins.str] plan: Name of the plan to use. Available plans are: free, premium, and custom.
30
30
  > **Important:** The plan field is deprecated. Any modification or selection will have no effect.
31
+
32
+ > **Warning:** This entire resource is deprecated and will be removed after January 1st, 2025. Please migrate to the new specialized resources as described in the Cockpit Migration Guide.
31
33
  :param pulumi.Input[builtins.str] project_id: ) The ID of the Project the Cockpit is associated with.
32
34
  """
33
35
  if plan is not None:
@@ -45,6 +47,8 @@ class CockpitArgs:
45
47
  """
46
48
  Name of the plan to use. Available plans are: free, premium, and custom.
47
49
  > **Important:** The plan field is deprecated. Any modification or selection will have no effect.
50
+
51
+ > **Warning:** This entire resource is deprecated and will be removed after January 1st, 2025. Please migrate to the new specialized resources as described in the Cockpit Migration Guide.
48
52
  """
49
53
  return pulumi.get(self, "plan")
50
54
 
@@ -78,6 +82,8 @@ class _CockpitState:
78
82
  :param pulumi.Input[Sequence[pulumi.Input['CockpitEndpointArgs']]] endpoints: (Deprecated) A list of [endpoints](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#endpoints) related to Cockpit, each with specific URLs:
79
83
  :param pulumi.Input[builtins.str] plan: Name of the plan to use. Available plans are: free, premium, and custom.
80
84
  > **Important:** The plan field is deprecated. Any modification or selection will have no effect.
85
+
86
+ > **Warning:** This entire resource is deprecated and will be removed after January 1st, 2025. Please migrate to the new specialized resources as described in the Cockpit Migration Guide.
81
87
  :param pulumi.Input[builtins.str] plan_id: (Deprecated) The ID of the current pricing plan.
82
88
  :param pulumi.Input[builtins.str] project_id: ) The ID of the Project the Cockpit is associated with.
83
89
  :param pulumi.Input[Sequence[pulumi.Input['CockpitPushUrlArgs']]] push_urls: [DEPRECATED] Push_url
@@ -125,6 +131,8 @@ class _CockpitState:
125
131
  """
126
132
  Name of the plan to use. Available plans are: free, premium, and custom.
127
133
  > **Important:** The plan field is deprecated. Any modification or selection will have no effect.
134
+
135
+ > **Warning:** This entire resource is deprecated and will be removed after January 1st, 2025. Please migrate to the new specialized resources as described in the Cockpit Migration Guide.
128
136
  """
129
137
  return pulumi.get(self, "plan")
130
138
 
@@ -195,6 +203,8 @@ class Cockpit(pulumi.CustomResource):
195
203
  :param pulumi.ResourceOptions opts: Options for the resource.
196
204
  :param pulumi.Input[builtins.str] plan: Name of the plan to use. Available plans are: free, premium, and custom.
197
205
  > **Important:** The plan field is deprecated. Any modification or selection will have no effect.
206
+
207
+ > **Warning:** This entire resource is deprecated and will be removed after January 1st, 2025. Please migrate to the new specialized resources as described in the Cockpit Migration Guide.
198
208
  :param pulumi.Input[builtins.str] project_id: ) The ID of the Project the Cockpit is associated with.
199
209
  """
200
210
  ...
@@ -272,6 +282,8 @@ class Cockpit(pulumi.CustomResource):
272
282
  :param pulumi.Input[Sequence[pulumi.Input[Union['CockpitEndpointArgs', 'CockpitEndpointArgsDict']]]] endpoints: (Deprecated) A list of [endpoints](https://www.scaleway.com/en/docs/observability/cockpit/concepts/#endpoints) related to Cockpit, each with specific URLs:
273
283
  :param pulumi.Input[builtins.str] plan: Name of the plan to use. Available plans are: free, premium, and custom.
274
284
  > **Important:** The plan field is deprecated. Any modification or selection will have no effect.
285
+
286
+ > **Warning:** This entire resource is deprecated and will be removed after January 1st, 2025. Please migrate to the new specialized resources as described in the Cockpit Migration Guide.
275
287
  :param pulumi.Input[builtins.str] plan_id: (Deprecated) The ID of the current pricing plan.
276
288
  :param pulumi.Input[builtins.str] project_id: ) The ID of the Project the Cockpit is associated with.
277
289
  :param pulumi.Input[Sequence[pulumi.Input[Union['CockpitPushUrlArgs', 'CockpitPushUrlArgsDict']]]] push_urls: [DEPRECATED] Push_url
@@ -303,6 +315,8 @@ class Cockpit(pulumi.CustomResource):
303
315
  """
304
316
  Name of the plan to use. Available plans are: free, premium, and custom.
305
317
  > **Important:** The plan field is deprecated. Any modification or selection will have no effect.
318
+
319
+ > **Warning:** This entire resource is deprecated and will be removed after January 1st, 2025. Please migrate to the new specialized resources as described in the Cockpit Migration Guide.
306
320
  """
307
321
  return pulumi.get(self, "plan")
308
322
 
@@ -0,0 +1,376 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from .. import _utilities
17
+ from . import outputs
18
+
19
+ __all__ = [
20
+ 'GetSourcesResult',
21
+ 'AwaitableGetSourcesResult',
22
+ 'get_sources',
23
+ 'get_sources_output',
24
+ ]
25
+
26
+ @pulumi.output_type
27
+ class GetSourcesResult:
28
+ """
29
+ A collection of values returned by getSources.
30
+ """
31
+ def __init__(__self__, created_at=None, id=None, name=None, origin=None, project_id=None, push_url=None, region=None, retention_days=None, sources=None, synchronized_with_grafana=None, type=None, updated_at=None, url=None):
32
+ if created_at and not isinstance(created_at, str):
33
+ raise TypeError("Expected argument 'created_at' to be a str")
34
+ pulumi.set(__self__, "created_at", created_at)
35
+ if id and not isinstance(id, str):
36
+ raise TypeError("Expected argument 'id' to be a str")
37
+ pulumi.set(__self__, "id", id)
38
+ if name and not isinstance(name, str):
39
+ raise TypeError("Expected argument 'name' to be a str")
40
+ pulumi.set(__self__, "name", name)
41
+ if origin and not isinstance(origin, str):
42
+ raise TypeError("Expected argument 'origin' to be a str")
43
+ pulumi.set(__self__, "origin", origin)
44
+ if project_id and not isinstance(project_id, str):
45
+ raise TypeError("Expected argument 'project_id' to be a str")
46
+ pulumi.set(__self__, "project_id", project_id)
47
+ if push_url and not isinstance(push_url, str):
48
+ raise TypeError("Expected argument 'push_url' to be a str")
49
+ pulumi.set(__self__, "push_url", push_url)
50
+ if region and not isinstance(region, str):
51
+ raise TypeError("Expected argument 'region' to be a str")
52
+ pulumi.set(__self__, "region", region)
53
+ if retention_days and not isinstance(retention_days, int):
54
+ raise TypeError("Expected argument 'retention_days' to be a int")
55
+ pulumi.set(__self__, "retention_days", retention_days)
56
+ if sources and not isinstance(sources, list):
57
+ raise TypeError("Expected argument 'sources' to be a list")
58
+ pulumi.set(__self__, "sources", sources)
59
+ if synchronized_with_grafana and not isinstance(synchronized_with_grafana, bool):
60
+ raise TypeError("Expected argument 'synchronized_with_grafana' to be a bool")
61
+ pulumi.set(__self__, "synchronized_with_grafana", synchronized_with_grafana)
62
+ if type and not isinstance(type, str):
63
+ raise TypeError("Expected argument 'type' to be a str")
64
+ pulumi.set(__self__, "type", type)
65
+ if updated_at and not isinstance(updated_at, str):
66
+ raise TypeError("Expected argument 'updated_at' to be a str")
67
+ pulumi.set(__self__, "updated_at", updated_at)
68
+ if url and not isinstance(url, str):
69
+ raise TypeError("Expected argument 'url' to be a str")
70
+ pulumi.set(__self__, "url", url)
71
+
72
+ @property
73
+ @pulumi.getter(name="createdAt")
74
+ def created_at(self) -> builtins.str:
75
+ """
76
+ The date and time of the creation of the cockpit datasource.
77
+ """
78
+ return pulumi.get(self, "created_at")
79
+
80
+ @property
81
+ @pulumi.getter
82
+ def id(self) -> builtins.str:
83
+ """
84
+ The provider-assigned unique ID for this managed resource.
85
+ """
86
+ return pulumi.get(self, "id")
87
+
88
+ @property
89
+ @pulumi.getter
90
+ def name(self) -> Optional[builtins.str]:
91
+ """
92
+ Name of the datasource.
93
+ """
94
+ return pulumi.get(self, "name")
95
+
96
+ @property
97
+ @pulumi.getter
98
+ def origin(self) -> Optional[builtins.str]:
99
+ """
100
+ The origin of the datasource.
101
+ """
102
+ return pulumi.get(self, "origin")
103
+
104
+ @property
105
+ @pulumi.getter(name="projectId")
106
+ def project_id(self) -> Optional[builtins.str]:
107
+ """
108
+ The project ID of the data source.
109
+ """
110
+ return pulumi.get(self, "project_id")
111
+
112
+ @property
113
+ @pulumi.getter(name="pushUrl")
114
+ def push_url(self) -> builtins.str:
115
+ """
116
+ The URL endpoint used for pushing data to the cockpit data source.
117
+ """
118
+ return pulumi.get(self, "push_url")
119
+
120
+ @property
121
+ @pulumi.getter
122
+ def region(self) -> Optional[builtins.str]:
123
+ """
124
+ The region of the data source.
125
+ """
126
+ return pulumi.get(self, "region")
127
+
128
+ @property
129
+ @pulumi.getter(name="retentionDays")
130
+ def retention_days(self) -> builtins.int:
131
+ """
132
+ The number of days to retain data.
133
+ """
134
+ return pulumi.get(self, "retention_days")
135
+
136
+ @property
137
+ @pulumi.getter
138
+ def sources(self) -> Sequence['outputs.GetSourcesSourceResult']:
139
+ """
140
+ List of cockpit sources.
141
+ """
142
+ return pulumi.get(self, "sources")
143
+
144
+ @property
145
+ @pulumi.getter(name="synchronizedWithGrafana")
146
+ def synchronized_with_grafana(self) -> builtins.bool:
147
+ """
148
+ Indicates whether the data source is synchronized with Grafana.
149
+ """
150
+ return pulumi.get(self, "synchronized_with_grafana")
151
+
152
+ @property
153
+ @pulumi.getter
154
+ def type(self) -> Optional[builtins.str]:
155
+ """
156
+ The type of the datasource.
157
+ """
158
+ return pulumi.get(self, "type")
159
+
160
+ @property
161
+ @pulumi.getter(name="updatedAt")
162
+ def updated_at(self) -> builtins.str:
163
+ """
164
+ The date and time of the last update of the cockpit datasource.
165
+ """
166
+ return pulumi.get(self, "updated_at")
167
+
168
+ @property
169
+ @pulumi.getter
170
+ def url(self) -> builtins.str:
171
+ """
172
+ The URL of the datasource.
173
+ """
174
+ return pulumi.get(self, "url")
175
+
176
+
177
+ class AwaitableGetSourcesResult(GetSourcesResult):
178
+ # pylint: disable=using-constant-test
179
+ def __await__(self):
180
+ if False:
181
+ yield self
182
+ return GetSourcesResult(
183
+ created_at=self.created_at,
184
+ id=self.id,
185
+ name=self.name,
186
+ origin=self.origin,
187
+ project_id=self.project_id,
188
+ push_url=self.push_url,
189
+ region=self.region,
190
+ retention_days=self.retention_days,
191
+ sources=self.sources,
192
+ synchronized_with_grafana=self.synchronized_with_grafana,
193
+ type=self.type,
194
+ updated_at=self.updated_at,
195
+ url=self.url)
196
+
197
+
198
+ def get_sources(name: Optional[builtins.str] = None,
199
+ origin: Optional[builtins.str] = None,
200
+ project_id: Optional[builtins.str] = None,
201
+ region: Optional[builtins.str] = None,
202
+ type: Optional[builtins.str] = None,
203
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSourcesResult:
204
+ """
205
+ Gets information about multiple Cockpit data sources.
206
+
207
+ ## Example Usage
208
+
209
+ ### List all sources in a project
210
+
211
+ ```python
212
+ import pulumi
213
+ import pulumi_scaleway as scaleway
214
+
215
+ all = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111")
216
+ ```
217
+
218
+ ### Filter sources by type
219
+
220
+ ```python
221
+ import pulumi
222
+ import pulumi_scaleway as scaleway
223
+
224
+ metrics = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111",
225
+ type="metrics")
226
+ ```
227
+
228
+ ### Filter sources by name
229
+
230
+ ```python
231
+ import pulumi
232
+ import pulumi_scaleway as scaleway
233
+
234
+ my_sources = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111",
235
+ name="my-data-source")
236
+ ```
237
+
238
+ ### Filter sources by origin
239
+
240
+ ```python
241
+ import pulumi
242
+ import pulumi_scaleway as scaleway
243
+
244
+ external = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111",
245
+ origin="external")
246
+ ```
247
+
248
+ ### List default Scaleway sources
249
+
250
+ ```python
251
+ import pulumi
252
+ import pulumi_scaleway as scaleway
253
+
254
+ default = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111",
255
+ origin="scaleway")
256
+ ```
257
+
258
+
259
+ :param builtins.str name: Filter sources by name.
260
+ :param builtins.str origin: Filter sources by origin. Possible values are: `scaleway`, `external`, `custom`.
261
+ :param builtins.str project_id: The project ID the cockpit sources are associated with.
262
+ :param builtins.str region: The region in which the cockpit sources are located.
263
+ :param builtins.str type: Filter sources by type. Possible values are: `metrics`, `logs`, `traces`.
264
+ """
265
+ __args__ = dict()
266
+ __args__['name'] = name
267
+ __args__['origin'] = origin
268
+ __args__['projectId'] = project_id
269
+ __args__['region'] = region
270
+ __args__['type'] = type
271
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
272
+ __ret__ = pulumi.runtime.invoke('scaleway:observability/getSources:getSources', __args__, opts=opts, typ=GetSourcesResult).value
273
+
274
+ return AwaitableGetSourcesResult(
275
+ created_at=pulumi.get(__ret__, 'created_at'),
276
+ id=pulumi.get(__ret__, 'id'),
277
+ name=pulumi.get(__ret__, 'name'),
278
+ origin=pulumi.get(__ret__, 'origin'),
279
+ project_id=pulumi.get(__ret__, 'project_id'),
280
+ push_url=pulumi.get(__ret__, 'push_url'),
281
+ region=pulumi.get(__ret__, 'region'),
282
+ retention_days=pulumi.get(__ret__, 'retention_days'),
283
+ sources=pulumi.get(__ret__, 'sources'),
284
+ synchronized_with_grafana=pulumi.get(__ret__, 'synchronized_with_grafana'),
285
+ type=pulumi.get(__ret__, 'type'),
286
+ updated_at=pulumi.get(__ret__, 'updated_at'),
287
+ url=pulumi.get(__ret__, 'url'))
288
+ def get_sources_output(name: Optional[pulumi.Input[Optional[builtins.str]]] = None,
289
+ origin: Optional[pulumi.Input[Optional[builtins.str]]] = None,
290
+ project_id: Optional[pulumi.Input[Optional[builtins.str]]] = None,
291
+ region: Optional[pulumi.Input[Optional[builtins.str]]] = None,
292
+ type: Optional[pulumi.Input[Optional[builtins.str]]] = None,
293
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSourcesResult]:
294
+ """
295
+ Gets information about multiple Cockpit data sources.
296
+
297
+ ## Example Usage
298
+
299
+ ### List all sources in a project
300
+
301
+ ```python
302
+ import pulumi
303
+ import pulumi_scaleway as scaleway
304
+
305
+ all = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111")
306
+ ```
307
+
308
+ ### Filter sources by type
309
+
310
+ ```python
311
+ import pulumi
312
+ import pulumi_scaleway as scaleway
313
+
314
+ metrics = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111",
315
+ type="metrics")
316
+ ```
317
+
318
+ ### Filter sources by name
319
+
320
+ ```python
321
+ import pulumi
322
+ import pulumi_scaleway as scaleway
323
+
324
+ my_sources = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111",
325
+ name="my-data-source")
326
+ ```
327
+
328
+ ### Filter sources by origin
329
+
330
+ ```python
331
+ import pulumi
332
+ import pulumi_scaleway as scaleway
333
+
334
+ external = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111",
335
+ origin="external")
336
+ ```
337
+
338
+ ### List default Scaleway sources
339
+
340
+ ```python
341
+ import pulumi
342
+ import pulumi_scaleway as scaleway
343
+
344
+ default = scaleway.observability.get_sources(project_id="11111111-1111-1111-1111-111111111111",
345
+ origin="scaleway")
346
+ ```
347
+
348
+
349
+ :param builtins.str name: Filter sources by name.
350
+ :param builtins.str origin: Filter sources by origin. Possible values are: `scaleway`, `external`, `custom`.
351
+ :param builtins.str project_id: The project ID the cockpit sources are associated with.
352
+ :param builtins.str region: The region in which the cockpit sources are located.
353
+ :param builtins.str type: Filter sources by type. Possible values are: `metrics`, `logs`, `traces`.
354
+ """
355
+ __args__ = dict()
356
+ __args__['name'] = name
357
+ __args__['origin'] = origin
358
+ __args__['projectId'] = project_id
359
+ __args__['region'] = region
360
+ __args__['type'] = type
361
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
362
+ __ret__ = pulumi.runtime.invoke_output('scaleway:observability/getSources:getSources', __args__, opts=opts, typ=GetSourcesResult)
363
+ return __ret__.apply(lambda __response__: GetSourcesResult(
364
+ created_at=pulumi.get(__response__, 'created_at'),
365
+ id=pulumi.get(__response__, 'id'),
366
+ name=pulumi.get(__response__, 'name'),
367
+ origin=pulumi.get(__response__, 'origin'),
368
+ project_id=pulumi.get(__response__, 'project_id'),
369
+ push_url=pulumi.get(__response__, 'push_url'),
370
+ region=pulumi.get(__response__, 'region'),
371
+ retention_days=pulumi.get(__response__, 'retention_days'),
372
+ sources=pulumi.get(__response__, 'sources'),
373
+ synchronized_with_grafana=pulumi.get(__response__, 'synchronized_with_grafana'),
374
+ type=pulumi.get(__response__, 'type'),
375
+ updated_at=pulumi.get(__response__, 'updated_at'),
376
+ url=pulumi.get(__response__, 'url')))