azuredevops.Project
Explore with Pulumi AI
Manages a project within Azure DevOps.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azuredevops from "@pulumi/azuredevops";
const example = new azuredevops.Project("example", {
name: "Example Project",
visibility: "private",
versionControl: "Git",
workItemTemplate: "Agile",
description: "Managed by Terraform",
features: {
testplans: "disabled",
artifacts: "disabled",
},
});
import pulumi
import pulumi_azuredevops as azuredevops
example = azuredevops.Project("example",
name="Example Project",
visibility="private",
version_control="Git",
work_item_template="Agile",
description="Managed by Terraform",
features={
"testplans": "disabled",
"artifacts": "disabled",
})
package main
import (
"github.com/pulumi/pulumi-azuredevops/sdk/v3/go/azuredevops"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := azuredevops.NewProject(ctx, "example", &azuredevops.ProjectArgs{
Name: pulumi.String("Example Project"),
Visibility: pulumi.String("private"),
VersionControl: pulumi.String("Git"),
WorkItemTemplate: pulumi.String("Agile"),
Description: pulumi.String("Managed by Terraform"),
Features: pulumi.StringMap{
"testplans": pulumi.String("disabled"),
"artifacts": pulumi.String("disabled"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureDevOps = Pulumi.AzureDevOps;
return await Deployment.RunAsync(() =>
{
var example = new AzureDevOps.Project("example", new()
{
Name = "Example Project",
Visibility = "private",
VersionControl = "Git",
WorkItemTemplate = "Agile",
Description = "Managed by Terraform",
Features =
{
{ "testplans", "disabled" },
{ "artifacts", "disabled" },
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azuredevops.Project;
import com.pulumi.azuredevops.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 example = new Project("example", ProjectArgs.builder()
.name("Example Project")
.visibility("private")
.versionControl("Git")
.workItemTemplate("Agile")
.description("Managed by Terraform")
.features(Map.ofEntries(
Map.entry("testplans", "disabled"),
Map.entry("artifacts", "disabled")
))
.build());
}
}
resources:
example:
type: azuredevops:Project
properties:
name: Example Project
visibility: private
versionControl: Git
workItemTemplate: Agile
description: Managed by Terraform
features:
testplans: disabled
artifacts: disabled
Relevant Links
PAT Permissions Required
- Project & Team: Read, Write, & Manage
Create Project Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Project(name: string, args?: ProjectArgs, opts?: CustomResourceOptions);
@overload
def Project(resource_name: str,
args: Optional[ProjectArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def Project(resource_name: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
features: Optional[Mapping[str, str]] = None,
name: Optional[str] = None,
version_control: Optional[str] = None,
visibility: Optional[str] = None,
work_item_template: Optional[str] = None)
func NewProject(ctx *Context, name string, args *ProjectArgs, opts ...ResourceOption) (*Project, error)
public Project(string name, ProjectArgs? args = null, CustomResourceOptions? opts = null)
public Project(String name, ProjectArgs args)
public Project(String name, ProjectArgs args, CustomResourceOptions options)
type: azuredevops:Project
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 ProjectArgs
- 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 ProjectArgs
- 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 ProjectArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ProjectArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ProjectArgs
- 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 projectResource = new AzureDevOps.Project("projectResource", new()
{
Description = "string",
Features =
{
{ "string", "string" },
},
Name = "string",
VersionControl = "string",
Visibility = "string",
WorkItemTemplate = "string",
});
example, err := azuredevops.NewProject(ctx, "projectResource", &azuredevops.ProjectArgs{
Description: pulumi.String("string"),
Features: pulumi.StringMap{
"string": pulumi.String("string"),
},
Name: pulumi.String("string"),
VersionControl: pulumi.String("string"),
Visibility: pulumi.String("string"),
WorkItemTemplate: pulumi.String("string"),
})
var projectResource = new Project("projectResource", ProjectArgs.builder()
.description("string")
.features(Map.of("string", "string"))
.name("string")
.versionControl("string")
.visibility("string")
.workItemTemplate("string")
.build());
project_resource = azuredevops.Project("projectResource",
description="string",
features={
"string": "string",
},
name="string",
version_control="string",
visibility="string",
work_item_template="string")
const projectResource = new azuredevops.Project("projectResource", {
description: "string",
features: {
string: "string",
},
name: "string",
versionControl: "string",
visibility: "string",
workItemTemplate: "string",
});
type: azuredevops:Project
properties:
description: string
features:
string: string
name: string
versionControl: string
visibility: string
workItemTemplate: string
Project Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The Project resource accepts the following input properties:
- Description string
- The Description of the Project.
- Features Dictionary<string, string>
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- Name string
- The Project Name.
- Version
Control string - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - Visibility string
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - Work
Item stringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- Description string
- The Description of the Project.
- Features map[string]string
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- Name string
- The Project Name.
- Version
Control string - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - Visibility string
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - Work
Item stringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- description String
- The Description of the Project.
- features Map<String,String>
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- name String
- The Project Name.
- version
Control String - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - visibility String
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - work
Item StringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- description string
- The Description of the Project.
- features {[key: string]: string}
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- name string
- The Project Name.
- version
Control string - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - visibility string
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - work
Item stringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- description str
- The Description of the Project.
- features Mapping[str, str]
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- name str
- The Project Name.
- version_
control str - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - visibility str
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - work_
item_ strtemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- description String
- The Description of the Project.
- features Map<String>
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- name String
- The Project Name.
- version
Control String - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - visibility String
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - work
Item StringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
Outputs
All input properties are implicitly available as output properties. Additionally, the Project resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Process
Template stringId - The Process Template ID used by the Project.
- Id string
- The provider-assigned unique ID for this managed resource.
- Process
Template stringId - The Process Template ID used by the Project.
- id String
- The provider-assigned unique ID for this managed resource.
- process
Template StringId - The Process Template ID used by the Project.
- id string
- The provider-assigned unique ID for this managed resource.
- process
Template stringId - The Process Template ID used by the Project.
- id str
- The provider-assigned unique ID for this managed resource.
- process_
template_ strid - The Process Template ID used by the Project.
- id String
- The provider-assigned unique ID for this managed resource.
- process
Template StringId - The Process Template ID used by the Project.
Look up Existing Project Resource
Get an existing Project 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?: ProjectState, opts?: CustomResourceOptions): Project
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
features: Optional[Mapping[str, str]] = None,
name: Optional[str] = None,
process_template_id: Optional[str] = None,
version_control: Optional[str] = None,
visibility: Optional[str] = None,
work_item_template: Optional[str] = None) -> Project
func GetProject(ctx *Context, name string, id IDInput, state *ProjectState, opts ...ResourceOption) (*Project, error)
public static Project Get(string name, Input<string> id, ProjectState? state, CustomResourceOptions? opts = null)
public static Project get(String name, Output<String> id, ProjectState 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
- The Description of the Project.
- Features Dictionary<string, string>
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- Name string
- The Project Name.
- Process
Template stringId - The Process Template ID used by the Project.
- Version
Control string - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - Visibility string
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - Work
Item stringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- Description string
- The Description of the Project.
- Features map[string]string
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- Name string
- The Project Name.
- Process
Template stringId - The Process Template ID used by the Project.
- Version
Control string - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - Visibility string
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - Work
Item stringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- description String
- The Description of the Project.
- features Map<String,String>
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- name String
- The Project Name.
- process
Template StringId - The Process Template ID used by the Project.
- version
Control String - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - visibility String
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - work
Item StringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- description string
- The Description of the Project.
- features {[key: string]: string}
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- name string
- The Project Name.
- process
Template stringId - The Process Template ID used by the Project.
- version
Control string - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - visibility string
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - work
Item stringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- description str
- The Description of the Project.
- features Mapping[str, str]
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- name str
- The Project Name.
- process_
template_ strid - The Process Template ID used by the Project.
- version_
control str - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - visibility str
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - work_
item_ strtemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
- description String
- The Description of the Project.
- features Map<String>
Defines the status (
enabled
,disabled
) of the project features. Valid features areboards
,repositories
,pipelines
,testplans
,artifacts
NOTE: It's possible to define project features both within the
azuredevops.ProjectFeatures
resource and via thefeatures
block by using theazuredevops.Project
resource. However it's not possible to use both methods to manage features, since there'll be conflicts.- name String
- The Project Name.
- process
Template StringId - The Process Template ID used by the Project.
- version
Control String - Specifies the version control system. Valid values:
Git
orTfvc
. Defaults toGit
. - visibility String
- Specifies the visibility of the Project. Valid values:
private
orpublic
. Defaults toprivate
. - work
Item StringTemplate - Specifies the work item template. Valid values:
Agile
,Basic
,CMMI
,Scrum
or a custom, pre-existing one. Defaults toAgile
. An empty string will use the parent organization default.
Import
Azure DevOps Projects can be imported using the project name or by the project Guid, e.g.
$ pulumi import azuredevops:index/project:Project example "Example Project"
or
$ pulumi import azuredevops:index/project:Project example 00000000-0000-0000-0000-000000000000
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure DevOps pulumi/pulumi-azuredevops
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
azuredevops
Terraform Provider.