exoscale.IamRole
Explore with Pulumi AI
Manage Exoscale IAM Role.
Create IamRole Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new IamRole(name: string, args?: IamRoleArgs, opts?: CustomResourceOptions);
@overload
def IamRole(resource_name: str,
args: Optional[IamRoleArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def IamRole(resource_name: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
editable: Optional[bool] = None,
labels: Optional[Mapping[str, str]] = None,
name: Optional[str] = None,
permissions: Optional[Sequence[str]] = None,
policy: Optional[IamRolePolicyArgs] = None,
timeouts: Optional[IamRoleTimeoutsArgs] = None)
func NewIamRole(ctx *Context, name string, args *IamRoleArgs, opts ...ResourceOption) (*IamRole, error)
public IamRole(string name, IamRoleArgs? args = null, CustomResourceOptions? opts = null)
public IamRole(String name, IamRoleArgs args)
public IamRole(String name, IamRoleArgs args, CustomResourceOptions options)
type: exoscale:IamRole
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args IamRoleArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args IamRoleArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args IamRoleArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args IamRoleArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args IamRoleArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var iamRoleResource = new Exoscale.IamRole("iamRoleResource", new()
{
Description = "string",
Editable = false,
Labels =
{
{ "string", "string" },
},
Name = "string",
Permissions = new[]
{
"string",
},
Policy = new Exoscale.Inputs.IamRolePolicyArgs
{
DefaultServiceStrategy = "string",
Services =
{
{ "string", new Exoscale.Inputs.IamRolePolicyServicesArgs
{
Rules = new[]
{
new Exoscale.Inputs.IamRolePolicyServicesRuleArgs
{
Action = "string",
Expression = "string",
},
},
Type = "string",
} },
},
},
Timeouts = new Exoscale.Inputs.IamRoleTimeoutsArgs
{
Read = "string",
},
});
example, err := exoscale.NewIamRole(ctx, "iamRoleResource", &exoscale.IamRoleArgs{
Description: pulumi.String("string"),
Editable: pulumi.Bool(false),
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
Name: pulumi.String("string"),
Permissions: pulumi.StringArray{
pulumi.String("string"),
},
Policy: &exoscale.IamRolePolicyArgs{
DefaultServiceStrategy: pulumi.String("string"),
Services: exoscale.IamRolePolicyServicesMap{
"string": &exoscale.IamRolePolicyServicesArgs{
Rules: exoscale.IamRolePolicyServicesRuleArray{
&exoscale.IamRolePolicyServicesRuleArgs{
Action: pulumi.String("string"),
Expression: pulumi.String("string"),
},
},
Type: pulumi.String("string"),
},
},
},
Timeouts: &exoscale.IamRoleTimeoutsArgs{
Read: pulumi.String("string"),
},
})
var iamRoleResource = new IamRole("iamRoleResource", IamRoleArgs.builder()
.description("string")
.editable(false)
.labels(Map.of("string", "string"))
.name("string")
.permissions("string")
.policy(IamRolePolicyArgs.builder()
.defaultServiceStrategy("string")
.services(Map.of("string", Map.ofEntries(
Map.entry("rules", Map.ofEntries(
Map.entry("action", "string"),
Map.entry("expression", "string")
)),
Map.entry("type", "string")
)))
.build())
.timeouts(IamRoleTimeoutsArgs.builder()
.read("string")
.build())
.build());
iam_role_resource = exoscale.IamRole("iamRoleResource",
description="string",
editable=False,
labels={
"string": "string",
},
name="string",
permissions=["string"],
policy={
"default_service_strategy": "string",
"services": {
"string": {
"rules": [{
"action": "string",
"expression": "string",
}],
"type": "string",
},
},
},
timeouts={
"read": "string",
})
const iamRoleResource = new exoscale.IamRole("iamRoleResource", {
description: "string",
editable: false,
labels: {
string: "string",
},
name: "string",
permissions: ["string"],
policy: {
defaultServiceStrategy: "string",
services: {
string: {
rules: [{
action: "string",
expression: "string",
}],
type: "string",
},
},
},
timeouts: {
read: "string",
},
});
type: exoscale:IamRole
properties:
description: string
editable: false
labels:
string: string
name: string
permissions:
- string
policy:
defaultServiceStrategy: string
services:
string:
rules:
- action: string
expression: string
type: string
timeouts:
read: string
IamRole Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The IamRole resource accepts the following input properties:
- Description string
- A free-form text describing the IAM Role
- Editable bool
- Defines if IAM Role Policy is editable or not.
- Labels Dictionary<string, string>
- IAM Role labels.
- Name string
- ❗Name of IAM Role.
- Permissions List<string>
- IAM Role permissions.
- Policy
Pulumiverse.
Exoscale. Inputs. Iam Role Policy - IAM Policy.
- Timeouts
Pulumiverse.
Exoscale. Inputs. Iam Role Timeouts
- Description string
- A free-form text describing the IAM Role
- Editable bool
- Defines if IAM Role Policy is editable or not.
- Labels map[string]string
- IAM Role labels.
- Name string
- ❗Name of IAM Role.
- Permissions []string
- IAM Role permissions.
- Policy
Iam
Role Policy Args - IAM Policy.
- Timeouts
Iam
Role Timeouts Args
- description String
- A free-form text describing the IAM Role
- editable Boolean
- Defines if IAM Role Policy is editable or not.
- labels Map<String,String>
- IAM Role labels.
- name String
- ❗Name of IAM Role.
- permissions List<String>
- IAM Role permissions.
- policy
Iam
Role Policy - IAM Policy.
- timeouts
Iam
Role Timeouts
- description string
- A free-form text describing the IAM Role
- editable boolean
- Defines if IAM Role Policy is editable or not.
- labels {[key: string]: string}
- IAM Role labels.
- name string
- ❗Name of IAM Role.
- permissions string[]
- IAM Role permissions.
- policy
Iam
Role Policy - IAM Policy.
- timeouts
Iam
Role Timeouts
- description str
- A free-form text describing the IAM Role
- editable bool
- Defines if IAM Role Policy is editable or not.
- labels Mapping[str, str]
- IAM Role labels.
- name str
- ❗Name of IAM Role.
- permissions Sequence[str]
- IAM Role permissions.
- policy
Iam
Role Policy Args - IAM Policy.
- timeouts
Iam
Role Timeouts Args
- description String
- A free-form text describing the IAM Role
- editable Boolean
- Defines if IAM Role Policy is editable or not.
- labels Map<String>
- IAM Role labels.
- name String
- ❗Name of IAM Role.
- permissions List<String>
- IAM Role permissions.
- policy Property Map
- IAM Policy.
- timeouts Property Map
Outputs
All input properties are implicitly available as output properties. Additionally, the IamRole resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing IamRole Resource
Get an existing IamRole resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: IamRoleState, opts?: CustomResourceOptions): IamRole
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
editable: Optional[bool] = None,
labels: Optional[Mapping[str, str]] = None,
name: Optional[str] = None,
permissions: Optional[Sequence[str]] = None,
policy: Optional[IamRolePolicyArgs] = None,
timeouts: Optional[IamRoleTimeoutsArgs] = None) -> IamRole
func GetIamRole(ctx *Context, name string, id IDInput, state *IamRoleState, opts ...ResourceOption) (*IamRole, error)
public static IamRole Get(string name, Input<string> id, IamRoleState? state, CustomResourceOptions? opts = null)
public static IamRole get(String name, Output<String> id, IamRoleState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Description string
- A free-form text describing the IAM Role
- Editable bool
- Defines if IAM Role Policy is editable or not.
- Labels Dictionary<string, string>
- IAM Role labels.
- Name string
- ❗Name of IAM Role.
- Permissions List<string>
- IAM Role permissions.
- Policy
Pulumiverse.
Exoscale. Inputs. Iam Role Policy - IAM Policy.
- Timeouts
Pulumiverse.
Exoscale. Inputs. Iam Role Timeouts
- Description string
- A free-form text describing the IAM Role
- Editable bool
- Defines if IAM Role Policy is editable or not.
- Labels map[string]string
- IAM Role labels.
- Name string
- ❗Name of IAM Role.
- Permissions []string
- IAM Role permissions.
- Policy
Iam
Role Policy Args - IAM Policy.
- Timeouts
Iam
Role Timeouts Args
- description String
- A free-form text describing the IAM Role
- editable Boolean
- Defines if IAM Role Policy is editable or not.
- labels Map<String,String>
- IAM Role labels.
- name String
- ❗Name of IAM Role.
- permissions List<String>
- IAM Role permissions.
- policy
Iam
Role Policy - IAM Policy.
- timeouts
Iam
Role Timeouts
- description string
- A free-form text describing the IAM Role
- editable boolean
- Defines if IAM Role Policy is editable or not.
- labels {[key: string]: string}
- IAM Role labels.
- name string
- ❗Name of IAM Role.
- permissions string[]
- IAM Role permissions.
- policy
Iam
Role Policy - IAM Policy.
- timeouts
Iam
Role Timeouts
- description str
- A free-form text describing the IAM Role
- editable bool
- Defines if IAM Role Policy is editable or not.
- labels Mapping[str, str]
- IAM Role labels.
- name str
- ❗Name of IAM Role.
- permissions Sequence[str]
- IAM Role permissions.
- policy
Iam
Role Policy Args - IAM Policy.
- timeouts
Iam
Role Timeouts Args
- description String
- A free-form text describing the IAM Role
- editable Boolean
- Defines if IAM Role Policy is editable or not.
- labels Map<String>
- IAM Role labels.
- name String
- ❗Name of IAM Role.
- permissions List<String>
- IAM Role permissions.
- policy Property Map
- IAM Policy.
- timeouts Property Map
Supporting Types
IamRolePolicy, IamRolePolicyArgs
- Default
Service stringStrategy - Default service strategy (
allow
ordeny
). - Services
Dictionary<string, Pulumiverse.
Exoscale. Inputs. Iam Role Policy Services> - IAM policy services.
- Default
Service stringStrategy - Default service strategy (
allow
ordeny
). - Services
map[string]Iam
Role Policy Services - IAM policy services.
- default
Service StringStrategy - Default service strategy (
allow
ordeny
). - services
Map<String,Iam
Role Policy Services> - IAM policy services.
- default
Service stringStrategy - Default service strategy (
allow
ordeny
). - services
{[key: string]: Iam
Role Policy Services} - IAM policy services.
- default_
service_ strstrategy - Default service strategy (
allow
ordeny
). - services
Mapping[str, Iam
Role Policy Services] - IAM policy services.
- default
Service StringStrategy - Default service strategy (
allow
ordeny
). - services Map<Property Map>
- IAM policy services.
IamRolePolicyServices, IamRolePolicyServicesArgs
- Rules
List<Pulumiverse.
Exoscale. Inputs. Iam Role Policy Services Rule> - List of IAM service rules (if type is
rules
). - Type string
- Service type (
rules
,allow
, ordeny
).
- Rules
[]Iam
Role Policy Services Rule - List of IAM service rules (if type is
rules
). - Type string
- Service type (
rules
,allow
, ordeny
).
- rules
List<Iam
Role Policy Services Rule> - List of IAM service rules (if type is
rules
). - type String
- Service type (
rules
,allow
, ordeny
).
- rules
Iam
Role Policy Services Rule[] - List of IAM service rules (if type is
rules
). - type string
- Service type (
rules
,allow
, ordeny
).
- rules
Sequence[Iam
Role Policy Services Rule] - List of IAM service rules (if type is
rules
). - type str
- Service type (
rules
,allow
, ordeny
).
- rules List<Property Map>
- List of IAM service rules (if type is
rules
). - type String
- Service type (
rules
,allow
, ordeny
).
IamRolePolicyServicesRule, IamRolePolicyServicesRuleArgs
- Action string
- IAM policy rule action (
allow
ordeny
). - Expression string
- IAM policy rule expression.
- Resources List<string>
- Action string
- IAM policy rule action (
allow
ordeny
). - Expression string
- IAM policy rule expression.
- Resources []string
- action String
- IAM policy rule action (
allow
ordeny
). - expression String
- IAM policy rule expression.
- resources List<String>
- action string
- IAM policy rule action (
allow
ordeny
). - expression string
- IAM policy rule expression.
- resources string[]
- action str
- IAM policy rule action (
allow
ordeny
). - expression str
- IAM policy rule expression.
- resources Sequence[str]
- action String
- IAM policy rule action (
allow
ordeny
). - expression String
- IAM policy rule expression.
- resources List<String>
IamRoleTimeouts, IamRoleTimeoutsArgs
- Read string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- Read string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- read String
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- read string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- read str
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- read String
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
Package Details
- Repository
- exoscale pulumiverse/pulumi-exoscale
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
exoscale
Terraform Provider.