Project
Represents a project resource. Uses Azure REST API version 2024-02-01. In version 2.x of the Azure Native provider, it used API version 2023-04-01. Other available API versions: 2023-04-01, 2023-08-01-preview, 2023-10-01-preview, 2024-05-01-preview, 2024-06-01-preview, 2024-07-01-preview, 2024-08-01-preview, 2024-10-01-preview, 2025-02-01. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native devcenter [ApiVersion]
. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.
Example Usage
Projects_CreateOrUpdate
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var project = new AzureNative.DevCenter.Project("project", new()
{
Description = "This is my first project.",
DevCenterId = "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso",
DisplayName = "Dev",
Location = "centralus",
ProjectName = "DevProject",
ResourceGroupName = "rg1",
Tags =
{
{ "CostCenter", "R&D" },
},
});
});
package main
import (
devcenter "github.com/pulumi/pulumi-azure-native-sdk/devcenter/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := devcenter.NewProject(ctx, "project", &devcenter.ProjectArgs{
Description: pulumi.String("This is my first project."),
DevCenterId: pulumi.String("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
DisplayName: pulumi.String("Dev"),
Location: pulumi.String("centralus"),
ProjectName: pulumi.String("DevProject"),
ResourceGroupName: pulumi.String("rg1"),
Tags: pulumi.StringMap{
"CostCenter": pulumi.String("R&D"),
},
})
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.azurenative.devcenter.Project;
import com.pulumi.azurenative.devcenter.ProjectArgs;
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 project = new Project("project", ProjectArgs.builder()
.description("This is my first project.")
.devCenterId("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso")
.displayName("Dev")
.location("centralus")
.projectName("DevProject")
.resourceGroupName("rg1")
.tags(Map.of("CostCenter", "R&D"))
.build());
}
}
Projects_CreateOrUpdateWithLimitsPerDev
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var project = new AzureNative.DevCenter.Project("project", new()
{
Description = "This is my first project.",
DevCenterId = "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso",
Location = "centralus",
MaxDevBoxesPerUser = 3,
ProjectName = "DevProject",
ResourceGroupName = "rg1",
Tags =
{
{ "CostCenter", "R&D" },
},
});
});
package main
import (
devcenter "github.com/pulumi/pulumi-azure-native-sdk/devcenter/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := devcenter.NewProject(ctx, "project", &devcenter.ProjectArgs{
Description: pulumi.String("This is my first project."),
DevCenterId: pulumi.String("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
Location: pulumi.String("centralus"),
MaxDevBoxesPerUser: pulumi.Int(3),
ProjectName: pulumi.String("DevProject"),
ResourceGroupName: pulumi.String("rg1"),
Tags: pulumi.StringMap{
"CostCenter": pulumi.String("R&D"),
},
})
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.azurenative.devcenter.Project;
import com.pulumi.azurenative.devcenter.ProjectArgs;
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 project = new Project("project", ProjectArgs.builder()
.description("This is my first project.")
.devCenterId("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso")
.location("centralus")
.maxDevBoxesPerUser(3)
.projectName("DevProject")
.resourceGroupName("rg1")
.tags(Map.of("CostCenter", "R&D"))
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:devcenter:Project DevProject /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}
Properties
The Azure API version of the resource.
Settings to be used when associating a project with a catalog.
Description of the project.
Resource Id of an associated DevCenter
The URI of the Dev Center resource this project is associated with.
The display name of the project.
Managed identity properties
When specified, limits the maximum number of Dev Boxes a single user can create across all pools in the project. This will have no effect on existing Dev Boxes when reduced.
The provisioning state of the resource.
Azure Resource Manager metadata containing createdBy and modifiedBy information.