github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/batch/jobQueue.go (about)

     1  // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
     2  // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
     3  
     4  package batch
     5  
     6  import (
     7  	"context"
     8  	"reflect"
     9  
    10  	"errors"
    11  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    12  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    13  )
    14  
    15  // Provides a Batch Job Queue resource.
    16  //
    17  // ## Example Usage
    18  //
    19  // ### Basic Job Queue
    20  //
    21  // <!--Start PulumiCodeChooser -->
    22  // ```go
    23  // package main
    24  //
    25  // import (
    26  //
    27  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/batch"
    28  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    29  //
    30  // )
    31  //
    32  //	func main() {
    33  //		pulumi.Run(func(ctx *pulumi.Context) error {
    34  //			_, err := batch.NewJobQueue(ctx, "test_queue", &batch.JobQueueArgs{
    35  //				Name:     pulumi.String("tf-test-batch-job-queue"),
    36  //				State:    pulumi.String("ENABLED"),
    37  //				Priority: pulumi.Int(1),
    38  //				ComputeEnvironmentOrders: batch.JobQueueComputeEnvironmentOrderArray{
    39  //					&batch.JobQueueComputeEnvironmentOrderArgs{
    40  //						Order:              pulumi.Int(1),
    41  //						ComputeEnvironment: pulumi.Any(testEnvironment1.Arn),
    42  //					},
    43  //					&batch.JobQueueComputeEnvironmentOrderArgs{
    44  //						Order:              pulumi.Int(2),
    45  //						ComputeEnvironment: pulumi.Any(testEnvironment2.Arn),
    46  //					},
    47  //				},
    48  //			})
    49  //			if err != nil {
    50  //				return err
    51  //			}
    52  //			return nil
    53  //		})
    54  //	}
    55  //
    56  // ```
    57  // <!--End PulumiCodeChooser -->
    58  //
    59  // ### Job Queue with a fair share scheduling policy
    60  //
    61  // <!--Start PulumiCodeChooser -->
    62  // ```go
    63  // package main
    64  //
    65  // import (
    66  //
    67  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/batch"
    68  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    69  //
    70  // )
    71  //
    72  //	func main() {
    73  //		pulumi.Run(func(ctx *pulumi.Context) error {
    74  //			example, err := batch.NewSchedulingPolicy(ctx, "example", &batch.SchedulingPolicyArgs{
    75  //				Name: pulumi.String("example"),
    76  //				FairSharePolicy: &batch.SchedulingPolicyFairSharePolicyArgs{
    77  //					ComputeReservation: pulumi.Int(1),
    78  //					ShareDecaySeconds:  pulumi.Int(3600),
    79  //					ShareDistributions: batch.SchedulingPolicyFairSharePolicyShareDistributionArray{
    80  //						&batch.SchedulingPolicyFairSharePolicyShareDistributionArgs{
    81  //							ShareIdentifier: pulumi.String("A1*"),
    82  //							WeightFactor:    pulumi.Float64(0.1),
    83  //						},
    84  //					},
    85  //				},
    86  //			})
    87  //			if err != nil {
    88  //				return err
    89  //			}
    90  //			_, err = batch.NewJobQueue(ctx, "example", &batch.JobQueueArgs{
    91  //				Name:                pulumi.String("tf-test-batch-job-queue"),
    92  //				SchedulingPolicyArn: example.Arn,
    93  //				State:               pulumi.String("ENABLED"),
    94  //				Priority:            pulumi.Int(1),
    95  //				ComputeEnvironmentOrders: batch.JobQueueComputeEnvironmentOrderArray{
    96  //					&batch.JobQueueComputeEnvironmentOrderArgs{
    97  //						Order:              pulumi.Int(1),
    98  //						ComputeEnvironment: pulumi.Any(testEnvironment1.Arn),
    99  //					},
   100  //					&batch.JobQueueComputeEnvironmentOrderArgs{
   101  //						Order:              pulumi.Int(2),
   102  //						ComputeEnvironment: pulumi.Any(testEnvironment2.Arn),
   103  //					},
   104  //				},
   105  //			})
   106  //			if err != nil {
   107  //				return err
   108  //			}
   109  //			return nil
   110  //		})
   111  //	}
   112  //
   113  // ```
   114  // <!--End PulumiCodeChooser -->
   115  //
   116  // ## Import
   117  //
   118  // Using `pulumi import`, import Batch Job Queue using the `arn`. For example:
   119  //
   120  // ```sh
   121  // $ pulumi import aws:batch/jobQueue:JobQueue test_queue arn:aws:batch:us-east-1:123456789012:job-queue/sample
   122  // ```
   123  type JobQueue struct {
   124  	pulumi.CustomResourceState
   125  
   126  	// The Amazon Resource Name of the job queue.
   127  	Arn pulumi.StringOutput `pulumi:"arn"`
   128  	// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.
   129  	ComputeEnvironmentOrders JobQueueComputeEnvironmentOrderArrayOutput `pulumi:"computeEnvironmentOrders"`
   130  	// (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly.
   131  	//
   132  	// Deprecated: This parameter will be replaced by `computeEnvironmentsOrder`.
   133  	ComputeEnvironments pulumi.StringArrayOutput `pulumi:"computeEnvironments"`
   134  	// Specifies the name of the job queue.
   135  	Name pulumi.StringOutput `pulumi:"name"`
   136  	// The priority of the job queue. Job queues with a higher priority
   137  	// are evaluated first when associated with the same compute environment.
   138  	Priority pulumi.IntOutput `pulumi:"priority"`
   139  	// The ARN of the fair share scheduling policy. If this parameter is specified, the job queue uses a fair share scheduling policy. If this parameter isn't specified, the job queue uses a first in, first out (FIFO) scheduling policy. After a job queue is created, you can replace but can't remove the fair share scheduling policy.
   140  	SchedulingPolicyArn pulumi.StringPtrOutput `pulumi:"schedulingPolicyArn"`
   141  	// The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
   142  	State pulumi.StringOutput `pulumi:"state"`
   143  	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   144  	Tags pulumi.StringMapOutput `pulumi:"tags"`
   145  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   146  	//
   147  	// Deprecated: Please use `tags` instead.
   148  	TagsAll  pulumi.StringMapOutput    `pulumi:"tagsAll"`
   149  	Timeouts JobQueueTimeoutsPtrOutput `pulumi:"timeouts"`
   150  }
   151  
   152  // NewJobQueue registers a new resource with the given unique name, arguments, and options.
   153  func NewJobQueue(ctx *pulumi.Context,
   154  	name string, args *JobQueueArgs, opts ...pulumi.ResourceOption) (*JobQueue, error) {
   155  	if args == nil {
   156  		return nil, errors.New("missing one or more required arguments")
   157  	}
   158  
   159  	if args.Priority == nil {
   160  		return nil, errors.New("invalid value for required argument 'Priority'")
   161  	}
   162  	if args.State == nil {
   163  		return nil, errors.New("invalid value for required argument 'State'")
   164  	}
   165  	opts = internal.PkgResourceDefaultOpts(opts)
   166  	var resource JobQueue
   167  	err := ctx.RegisterResource("aws:batch/jobQueue:JobQueue", name, args, &resource, opts...)
   168  	if err != nil {
   169  		return nil, err
   170  	}
   171  	return &resource, nil
   172  }
   173  
   174  // GetJobQueue gets an existing JobQueue resource's state with the given name, ID, and optional
   175  // state properties that are used to uniquely qualify the lookup (nil if not required).
   176  func GetJobQueue(ctx *pulumi.Context,
   177  	name string, id pulumi.IDInput, state *JobQueueState, opts ...pulumi.ResourceOption) (*JobQueue, error) {
   178  	var resource JobQueue
   179  	err := ctx.ReadResource("aws:batch/jobQueue:JobQueue", name, id, state, &resource, opts...)
   180  	if err != nil {
   181  		return nil, err
   182  	}
   183  	return &resource, nil
   184  }
   185  
   186  // Input properties used for looking up and filtering JobQueue resources.
   187  type jobQueueState struct {
   188  	// The Amazon Resource Name of the job queue.
   189  	Arn *string `pulumi:"arn"`
   190  	// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.
   191  	ComputeEnvironmentOrders []JobQueueComputeEnvironmentOrder `pulumi:"computeEnvironmentOrders"`
   192  	// (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly.
   193  	//
   194  	// Deprecated: This parameter will be replaced by `computeEnvironmentsOrder`.
   195  	ComputeEnvironments []string `pulumi:"computeEnvironments"`
   196  	// Specifies the name of the job queue.
   197  	Name *string `pulumi:"name"`
   198  	// The priority of the job queue. Job queues with a higher priority
   199  	// are evaluated first when associated with the same compute environment.
   200  	Priority *int `pulumi:"priority"`
   201  	// The ARN of the fair share scheduling policy. If this parameter is specified, the job queue uses a fair share scheduling policy. If this parameter isn't specified, the job queue uses a first in, first out (FIFO) scheduling policy. After a job queue is created, you can replace but can't remove the fair share scheduling policy.
   202  	SchedulingPolicyArn *string `pulumi:"schedulingPolicyArn"`
   203  	// The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
   204  	State *string `pulumi:"state"`
   205  	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   206  	Tags map[string]string `pulumi:"tags"`
   207  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   208  	//
   209  	// Deprecated: Please use `tags` instead.
   210  	TagsAll  map[string]string `pulumi:"tagsAll"`
   211  	Timeouts *JobQueueTimeouts `pulumi:"timeouts"`
   212  }
   213  
   214  type JobQueueState struct {
   215  	// The Amazon Resource Name of the job queue.
   216  	Arn pulumi.StringPtrInput
   217  	// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.
   218  	ComputeEnvironmentOrders JobQueueComputeEnvironmentOrderArrayInput
   219  	// (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly.
   220  	//
   221  	// Deprecated: This parameter will be replaced by `computeEnvironmentsOrder`.
   222  	ComputeEnvironments pulumi.StringArrayInput
   223  	// Specifies the name of the job queue.
   224  	Name pulumi.StringPtrInput
   225  	// The priority of the job queue. Job queues with a higher priority
   226  	// are evaluated first when associated with the same compute environment.
   227  	Priority pulumi.IntPtrInput
   228  	// The ARN of the fair share scheduling policy. If this parameter is specified, the job queue uses a fair share scheduling policy. If this parameter isn't specified, the job queue uses a first in, first out (FIFO) scheduling policy. After a job queue is created, you can replace but can't remove the fair share scheduling policy.
   229  	SchedulingPolicyArn pulumi.StringPtrInput
   230  	// The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
   231  	State pulumi.StringPtrInput
   232  	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   233  	Tags pulumi.StringMapInput
   234  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   235  	//
   236  	// Deprecated: Please use `tags` instead.
   237  	TagsAll  pulumi.StringMapInput
   238  	Timeouts JobQueueTimeoutsPtrInput
   239  }
   240  
   241  func (JobQueueState) ElementType() reflect.Type {
   242  	return reflect.TypeOf((*jobQueueState)(nil)).Elem()
   243  }
   244  
   245  type jobQueueArgs struct {
   246  	// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.
   247  	ComputeEnvironmentOrders []JobQueueComputeEnvironmentOrder `pulumi:"computeEnvironmentOrders"`
   248  	// (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly.
   249  	//
   250  	// Deprecated: This parameter will be replaced by `computeEnvironmentsOrder`.
   251  	ComputeEnvironments []string `pulumi:"computeEnvironments"`
   252  	// Specifies the name of the job queue.
   253  	Name *string `pulumi:"name"`
   254  	// The priority of the job queue. Job queues with a higher priority
   255  	// are evaluated first when associated with the same compute environment.
   256  	Priority int `pulumi:"priority"`
   257  	// The ARN of the fair share scheduling policy. If this parameter is specified, the job queue uses a fair share scheduling policy. If this parameter isn't specified, the job queue uses a first in, first out (FIFO) scheduling policy. After a job queue is created, you can replace but can't remove the fair share scheduling policy.
   258  	SchedulingPolicyArn *string `pulumi:"schedulingPolicyArn"`
   259  	// The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
   260  	State string `pulumi:"state"`
   261  	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   262  	Tags     map[string]string `pulumi:"tags"`
   263  	Timeouts *JobQueueTimeouts `pulumi:"timeouts"`
   264  }
   265  
   266  // The set of arguments for constructing a JobQueue resource.
   267  type JobQueueArgs struct {
   268  	// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.
   269  	ComputeEnvironmentOrders JobQueueComputeEnvironmentOrderArrayInput
   270  	// (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly.
   271  	//
   272  	// Deprecated: This parameter will be replaced by `computeEnvironmentsOrder`.
   273  	ComputeEnvironments pulumi.StringArrayInput
   274  	// Specifies the name of the job queue.
   275  	Name pulumi.StringPtrInput
   276  	// The priority of the job queue. Job queues with a higher priority
   277  	// are evaluated first when associated with the same compute environment.
   278  	Priority pulumi.IntInput
   279  	// The ARN of the fair share scheduling policy. If this parameter is specified, the job queue uses a fair share scheduling policy. If this parameter isn't specified, the job queue uses a first in, first out (FIFO) scheduling policy. After a job queue is created, you can replace but can't remove the fair share scheduling policy.
   280  	SchedulingPolicyArn pulumi.StringPtrInput
   281  	// The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
   282  	State pulumi.StringInput
   283  	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   284  	Tags     pulumi.StringMapInput
   285  	Timeouts JobQueueTimeoutsPtrInput
   286  }
   287  
   288  func (JobQueueArgs) ElementType() reflect.Type {
   289  	return reflect.TypeOf((*jobQueueArgs)(nil)).Elem()
   290  }
   291  
   292  type JobQueueInput interface {
   293  	pulumi.Input
   294  
   295  	ToJobQueueOutput() JobQueueOutput
   296  	ToJobQueueOutputWithContext(ctx context.Context) JobQueueOutput
   297  }
   298  
   299  func (*JobQueue) ElementType() reflect.Type {
   300  	return reflect.TypeOf((**JobQueue)(nil)).Elem()
   301  }
   302  
   303  func (i *JobQueue) ToJobQueueOutput() JobQueueOutput {
   304  	return i.ToJobQueueOutputWithContext(context.Background())
   305  }
   306  
   307  func (i *JobQueue) ToJobQueueOutputWithContext(ctx context.Context) JobQueueOutput {
   308  	return pulumi.ToOutputWithContext(ctx, i).(JobQueueOutput)
   309  }
   310  
   311  // JobQueueArrayInput is an input type that accepts JobQueueArray and JobQueueArrayOutput values.
   312  // You can construct a concrete instance of `JobQueueArrayInput` via:
   313  //
   314  //	JobQueueArray{ JobQueueArgs{...} }
   315  type JobQueueArrayInput interface {
   316  	pulumi.Input
   317  
   318  	ToJobQueueArrayOutput() JobQueueArrayOutput
   319  	ToJobQueueArrayOutputWithContext(context.Context) JobQueueArrayOutput
   320  }
   321  
   322  type JobQueueArray []JobQueueInput
   323  
   324  func (JobQueueArray) ElementType() reflect.Type {
   325  	return reflect.TypeOf((*[]*JobQueue)(nil)).Elem()
   326  }
   327  
   328  func (i JobQueueArray) ToJobQueueArrayOutput() JobQueueArrayOutput {
   329  	return i.ToJobQueueArrayOutputWithContext(context.Background())
   330  }
   331  
   332  func (i JobQueueArray) ToJobQueueArrayOutputWithContext(ctx context.Context) JobQueueArrayOutput {
   333  	return pulumi.ToOutputWithContext(ctx, i).(JobQueueArrayOutput)
   334  }
   335  
   336  // JobQueueMapInput is an input type that accepts JobQueueMap and JobQueueMapOutput values.
   337  // You can construct a concrete instance of `JobQueueMapInput` via:
   338  //
   339  //	JobQueueMap{ "key": JobQueueArgs{...} }
   340  type JobQueueMapInput interface {
   341  	pulumi.Input
   342  
   343  	ToJobQueueMapOutput() JobQueueMapOutput
   344  	ToJobQueueMapOutputWithContext(context.Context) JobQueueMapOutput
   345  }
   346  
   347  type JobQueueMap map[string]JobQueueInput
   348  
   349  func (JobQueueMap) ElementType() reflect.Type {
   350  	return reflect.TypeOf((*map[string]*JobQueue)(nil)).Elem()
   351  }
   352  
   353  func (i JobQueueMap) ToJobQueueMapOutput() JobQueueMapOutput {
   354  	return i.ToJobQueueMapOutputWithContext(context.Background())
   355  }
   356  
   357  func (i JobQueueMap) ToJobQueueMapOutputWithContext(ctx context.Context) JobQueueMapOutput {
   358  	return pulumi.ToOutputWithContext(ctx, i).(JobQueueMapOutput)
   359  }
   360  
   361  type JobQueueOutput struct{ *pulumi.OutputState }
   362  
   363  func (JobQueueOutput) ElementType() reflect.Type {
   364  	return reflect.TypeOf((**JobQueue)(nil)).Elem()
   365  }
   366  
   367  func (o JobQueueOutput) ToJobQueueOutput() JobQueueOutput {
   368  	return o
   369  }
   370  
   371  func (o JobQueueOutput) ToJobQueueOutputWithContext(ctx context.Context) JobQueueOutput {
   372  	return o
   373  }
   374  
   375  // The Amazon Resource Name of the job queue.
   376  func (o JobQueueOutput) Arn() pulumi.StringOutput {
   377  	return o.ApplyT(func(v *JobQueue) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput)
   378  }
   379  
   380  // The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.
   381  func (o JobQueueOutput) ComputeEnvironmentOrders() JobQueueComputeEnvironmentOrderArrayOutput {
   382  	return o.ApplyT(func(v *JobQueue) JobQueueComputeEnvironmentOrderArrayOutput { return v.ComputeEnvironmentOrders }).(JobQueueComputeEnvironmentOrderArrayOutput)
   383  }
   384  
   385  // (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly.
   386  //
   387  // Deprecated: This parameter will be replaced by `computeEnvironmentsOrder`.
   388  func (o JobQueueOutput) ComputeEnvironments() pulumi.StringArrayOutput {
   389  	return o.ApplyT(func(v *JobQueue) pulumi.StringArrayOutput { return v.ComputeEnvironments }).(pulumi.StringArrayOutput)
   390  }
   391  
   392  // Specifies the name of the job queue.
   393  func (o JobQueueOutput) Name() pulumi.StringOutput {
   394  	return o.ApplyT(func(v *JobQueue) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
   395  }
   396  
   397  // The priority of the job queue. Job queues with a higher priority
   398  // are evaluated first when associated with the same compute environment.
   399  func (o JobQueueOutput) Priority() pulumi.IntOutput {
   400  	return o.ApplyT(func(v *JobQueue) pulumi.IntOutput { return v.Priority }).(pulumi.IntOutput)
   401  }
   402  
   403  // The ARN of the fair share scheduling policy. If this parameter is specified, the job queue uses a fair share scheduling policy. If this parameter isn't specified, the job queue uses a first in, first out (FIFO) scheduling policy. After a job queue is created, you can replace but can't remove the fair share scheduling policy.
   404  func (o JobQueueOutput) SchedulingPolicyArn() pulumi.StringPtrOutput {
   405  	return o.ApplyT(func(v *JobQueue) pulumi.StringPtrOutput { return v.SchedulingPolicyArn }).(pulumi.StringPtrOutput)
   406  }
   407  
   408  // The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
   409  func (o JobQueueOutput) State() pulumi.StringOutput {
   410  	return o.ApplyT(func(v *JobQueue) pulumi.StringOutput { return v.State }).(pulumi.StringOutput)
   411  }
   412  
   413  // Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   414  func (o JobQueueOutput) Tags() pulumi.StringMapOutput {
   415  	return o.ApplyT(func(v *JobQueue) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput)
   416  }
   417  
   418  // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   419  //
   420  // Deprecated: Please use `tags` instead.
   421  func (o JobQueueOutput) TagsAll() pulumi.StringMapOutput {
   422  	return o.ApplyT(func(v *JobQueue) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput)
   423  }
   424  
   425  func (o JobQueueOutput) Timeouts() JobQueueTimeoutsPtrOutput {
   426  	return o.ApplyT(func(v *JobQueue) JobQueueTimeoutsPtrOutput { return v.Timeouts }).(JobQueueTimeoutsPtrOutput)
   427  }
   428  
   429  type JobQueueArrayOutput struct{ *pulumi.OutputState }
   430  
   431  func (JobQueueArrayOutput) ElementType() reflect.Type {
   432  	return reflect.TypeOf((*[]*JobQueue)(nil)).Elem()
   433  }
   434  
   435  func (o JobQueueArrayOutput) ToJobQueueArrayOutput() JobQueueArrayOutput {
   436  	return o
   437  }
   438  
   439  func (o JobQueueArrayOutput) ToJobQueueArrayOutputWithContext(ctx context.Context) JobQueueArrayOutput {
   440  	return o
   441  }
   442  
   443  func (o JobQueueArrayOutput) Index(i pulumi.IntInput) JobQueueOutput {
   444  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *JobQueue {
   445  		return vs[0].([]*JobQueue)[vs[1].(int)]
   446  	}).(JobQueueOutput)
   447  }
   448  
   449  type JobQueueMapOutput struct{ *pulumi.OutputState }
   450  
   451  func (JobQueueMapOutput) ElementType() reflect.Type {
   452  	return reflect.TypeOf((*map[string]*JobQueue)(nil)).Elem()
   453  }
   454  
   455  func (o JobQueueMapOutput) ToJobQueueMapOutput() JobQueueMapOutput {
   456  	return o
   457  }
   458  
   459  func (o JobQueueMapOutput) ToJobQueueMapOutputWithContext(ctx context.Context) JobQueueMapOutput {
   460  	return o
   461  }
   462  
   463  func (o JobQueueMapOutput) MapIndex(k pulumi.StringInput) JobQueueOutput {
   464  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *JobQueue {
   465  		return vs[0].(map[string]*JobQueue)[vs[1].(string)]
   466  	}).(JobQueueOutput)
   467  }
   468  
   469  func init() {
   470  	pulumi.RegisterInputType(reflect.TypeOf((*JobQueueInput)(nil)).Elem(), &JobQueue{})
   471  	pulumi.RegisterInputType(reflect.TypeOf((*JobQueueArrayInput)(nil)).Elem(), JobQueueArray{})
   472  	pulumi.RegisterInputType(reflect.TypeOf((*JobQueueMapInput)(nil)).Elem(), JobQueueMap{})
   473  	pulumi.RegisterOutputType(JobQueueOutput{})
   474  	pulumi.RegisterOutputType(JobQueueArrayOutput{})
   475  	pulumi.RegisterOutputType(JobQueueMapOutput{})
   476  }