QuoteSpecificationArgs

data class QuoteSpecificationArgs(val description: Output<String>? = null, val limits: Output<List<QuoteSpecificationLimitArgs>>? = null, val name: Output<String>? = null) : ConvertibleToJava<QuoteSpecificationArgs>

Manages a quota specification in a Nomad cluster.

Example Usage

Registering a quota specification:

import * as pulumi from "@pulumi/pulumi";
import * as nomad from "@pulumi/nomad";
const prodApi = new nomad.QuoteSpecification("prod_api", {
name: "prod-api",
description: "Production instances of backend API servers",
limits: [{
region: "global",
regionLimit: {
cpu: 2400,
memoryMb: 1200,
},
}],
});
import pulumi
import pulumi_nomad as nomad
prod_api = nomad.QuoteSpecification("prod_api",
name="prod-api",
description="Production instances of backend API servers",
limits=[{
"region": "global",
"region_limit": {
"cpu": 2400,
"memory_mb": 1200,
},
}])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nomad = Pulumi.Nomad;
return await Deployment.RunAsync(() =>
{
var prodApi = new Nomad.QuoteSpecification("prod_api", new()
{
Name = "prod-api",
Description = "Production instances of backend API servers",
Limits = new[]
{
new Nomad.Inputs.QuoteSpecificationLimitArgs
{
Region = "global",
RegionLimit = new Nomad.Inputs.QuoteSpecificationLimitRegionLimitArgs
{
Cpu = 2400,
MemoryMb = 1200,
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-nomad/sdk/v2/go/nomad"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := nomad.NewQuoteSpecification(ctx, "prod_api", &nomad.QuoteSpecificationArgs{
Name: pulumi.String("prod-api"),
Description: pulumi.String("Production instances of backend API servers"),
Limits: nomad.QuoteSpecificationLimitArray{
&nomad.QuoteSpecificationLimitArgs{
Region: pulumi.String("global"),
RegionLimit: &nomad.QuoteSpecificationLimitRegionLimitArgs{
Cpu: pulumi.Int(2400),
MemoryMb: pulumi.Int(1200),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.nomad.QuoteSpecification;
import com.pulumi.nomad.QuoteSpecificationArgs;
import com.pulumi.nomad.inputs.QuoteSpecificationLimitArgs;
import com.pulumi.nomad.inputs.QuoteSpecificationLimitRegionLimitArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var prodApi = new QuoteSpecification("prodApi", QuoteSpecificationArgs.builder()
.name("prod-api")
.description("Production instances of backend API servers")
.limits(QuoteSpecificationLimitArgs.builder()
.region("global")
.regionLimit(QuoteSpecificationLimitRegionLimitArgs.builder()
.cpu(2400)
.memoryMb(1200)
.build())
.build())
.build());
}
}
resources:
prodApi:
type: nomad:QuoteSpecification
name: prod_api
properties:
name: prod-api
description: Production instances of backend API servers
limits:
- region: global
regionLimit:
cpu: 2400
memoryMb: 1200

Constructors

Link copied to clipboard
constructor(description: Output<String>? = null, limits: Output<List<QuoteSpecificationLimitArgs>>? = null, name: Output<String>? = null)

Properties

Link copied to clipboard
val description: Output<String>? = null

(string: "") - A description of the quota specification.

Link copied to clipboard

(block: <required>) - A block of quota limits to enforce. Can be repeated. See below for the structure of this block.

Link copied to clipboard
val name: Output<String>? = null

(string: <required>) - A unique name for the quota specification.

Functions

Link copied to clipboard
open override fun toJava(): QuoteSpecificationArgs