1. Packages
  2. AzureDevOps
  3. API Docs
  4. ServiceEndpointAws
Azure DevOps v3.0.0 published on Friday, Mar 15, 2024 by Pulumi

azuredevops.ServiceEndpointAws

Explore with Pulumi AI

azuredevops logo
Azure DevOps v3.0.0 published on Friday, Mar 15, 2024 by Pulumi

    Manages a AWS service endpoint within Azure DevOps. Using this service endpoint requires you to first install AWS Toolkit for Azure DevOps.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const exampleProject = new azuredevops.Project("exampleProject", {
        visibility: "private",
        versionControl: "Git",
        workItemTemplate: "Agile",
        description: "Managed by Terraform",
    });
    const exampleServiceEndpointAws = new azuredevops.ServiceEndpointAws("exampleServiceEndpointAws", {
        projectId: exampleProject.id,
        serviceEndpointName: "Example AWS",
        accessKeyId: "00000000-0000-0000-0000-000000000000",
        secretAccessKey: "accesskey",
        description: "Managed by AzureDevOps",
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example_project = azuredevops.Project("exampleProject",
        visibility="private",
        version_control="Git",
        work_item_template="Agile",
        description="Managed by Terraform")
    example_service_endpoint_aws = azuredevops.ServiceEndpointAws("exampleServiceEndpointAws",
        project_id=example_project.id,
        service_endpoint_name="Example AWS",
        access_key_id="00000000-0000-0000-0000-000000000000",
        secret_access_key="accesskey",
        description="Managed by AzureDevOps")
    
    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 {
    		exampleProject, err := azuredevops.NewProject(ctx, "exampleProject", &azuredevops.ProjectArgs{
    			Visibility:       pulumi.String("private"),
    			VersionControl:   pulumi.String("Git"),
    			WorkItemTemplate: pulumi.String("Agile"),
    			Description:      pulumi.String("Managed by Terraform"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewServiceEndpointAws(ctx, "exampleServiceEndpointAws", &azuredevops.ServiceEndpointAwsArgs{
    			ProjectId:           exampleProject.ID(),
    			ServiceEndpointName: pulumi.String("Example AWS"),
    			AccessKeyId:         pulumi.String("00000000-0000-0000-0000-000000000000"),
    			SecretAccessKey:     pulumi.String("accesskey"),
    			Description:         pulumi.String("Managed by AzureDevOps"),
    		})
    		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 exampleProject = new AzureDevOps.Project("exampleProject", new()
        {
            Visibility = "private",
            VersionControl = "Git",
            WorkItemTemplate = "Agile",
            Description = "Managed by Terraform",
        });
    
        var exampleServiceEndpointAws = new AzureDevOps.ServiceEndpointAws("exampleServiceEndpointAws", new()
        {
            ProjectId = exampleProject.Id,
            ServiceEndpointName = "Example AWS",
            AccessKeyId = "00000000-0000-0000-0000-000000000000",
            SecretAccessKey = "accesskey",
            Description = "Managed by AzureDevOps",
        });
    
    });
    
    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 com.pulumi.azuredevops.ServiceEndpointAws;
    import com.pulumi.azuredevops.ServiceEndpointAwsArgs;
    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 exampleProject = new Project("exampleProject", ProjectArgs.builder()        
                .visibility("private")
                .versionControl("Git")
                .workItemTemplate("Agile")
                .description("Managed by Terraform")
                .build());
    
            var exampleServiceEndpointAws = new ServiceEndpointAws("exampleServiceEndpointAws", ServiceEndpointAwsArgs.builder()        
                .projectId(exampleProject.id())
                .serviceEndpointName("Example AWS")
                .accessKeyId("00000000-0000-0000-0000-000000000000")
                .secretAccessKey("accesskey")
                .description("Managed by AzureDevOps")
                .build());
    
        }
    }
    
    resources:
      exampleProject:
        type: azuredevops:Project
        properties:
          visibility: private
          versionControl: Git
          workItemTemplate: Agile
          description: Managed by Terraform
      exampleServiceEndpointAws:
        type: azuredevops:ServiceEndpointAws
        properties:
          projectId: ${exampleProject.id}
          serviceEndpointName: Example AWS
          accessKeyId: 00000000-0000-0000-0000-000000000000
          secretAccessKey: accesskey
          description: Managed by AzureDevOps
    

    Create ServiceEndpointAws Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ServiceEndpointAws(name: string, args: ServiceEndpointAwsArgs, opts?: CustomResourceOptions);
    @overload
    def ServiceEndpointAws(resource_name: str,
                           args: ServiceEndpointAwsArgs,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def ServiceEndpointAws(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           access_key_id: Optional[str] = None,
                           project_id: Optional[str] = None,
                           secret_access_key: Optional[str] = None,
                           service_endpoint_name: Optional[str] = None,
                           authorization: Optional[Mapping[str, str]] = None,
                           description: Optional[str] = None,
                           external_id: Optional[str] = None,
                           role_session_name: Optional[str] = None,
                           role_to_assume: Optional[str] = None,
                           session_token: Optional[str] = None)
    func NewServiceEndpointAws(ctx *Context, name string, args ServiceEndpointAwsArgs, opts ...ResourceOption) (*ServiceEndpointAws, error)
    public ServiceEndpointAws(string name, ServiceEndpointAwsArgs args, CustomResourceOptions? opts = null)
    public ServiceEndpointAws(String name, ServiceEndpointAwsArgs args)
    public ServiceEndpointAws(String name, ServiceEndpointAwsArgs args, CustomResourceOptions options)
    
    type: azuredevops:ServiceEndpointAws
    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 ServiceEndpointAwsArgs
    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 ServiceEndpointAwsArgs
    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 ServiceEndpointAwsArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ServiceEndpointAwsArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ServiceEndpointAwsArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var serviceEndpointAwsResource = new AzureDevOps.ServiceEndpointAws("serviceEndpointAwsResource", new()
    {
        AccessKeyId = "string",
        ProjectId = "string",
        SecretAccessKey = "string",
        ServiceEndpointName = "string",
        Authorization = 
        {
            { "string", "string" },
        },
        Description = "string",
        ExternalId = "string",
        RoleSessionName = "string",
        RoleToAssume = "string",
        SessionToken = "string",
    });
    
    example, err := azuredevops.NewServiceEndpointAws(ctx, "serviceEndpointAwsResource", &azuredevops.ServiceEndpointAwsArgs{
    	AccessKeyId:         pulumi.String("string"),
    	ProjectId:           pulumi.String("string"),
    	SecretAccessKey:     pulumi.String("string"),
    	ServiceEndpointName: pulumi.String("string"),
    	Authorization: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Description:     pulumi.String("string"),
    	ExternalId:      pulumi.String("string"),
    	RoleSessionName: pulumi.String("string"),
    	RoleToAssume:    pulumi.String("string"),
    	SessionToken:    pulumi.String("string"),
    })
    
    var serviceEndpointAwsResource = new ServiceEndpointAws("serviceEndpointAwsResource", ServiceEndpointAwsArgs.builder()        
        .accessKeyId("string")
        .projectId("string")
        .secretAccessKey("string")
        .serviceEndpointName("string")
        .authorization(Map.of("string", "string"))
        .description("string")
        .externalId("string")
        .roleSessionName("string")
        .roleToAssume("string")
        .sessionToken("string")
        .build());
    
    service_endpoint_aws_resource = azuredevops.ServiceEndpointAws("serviceEndpointAwsResource",
        access_key_id="string",
        project_id="string",
        secret_access_key="string",
        service_endpoint_name="string",
        authorization={
            "string": "string",
        },
        description="string",
        external_id="string",
        role_session_name="string",
        role_to_assume="string",
        session_token="string")
    
    const serviceEndpointAwsResource = new azuredevops.ServiceEndpointAws("serviceEndpointAwsResource", {
        accessKeyId: "string",
        projectId: "string",
        secretAccessKey: "string",
        serviceEndpointName: "string",
        authorization: {
            string: "string",
        },
        description: "string",
        externalId: "string",
        roleSessionName: "string",
        roleToAssume: "string",
        sessionToken: "string",
    });
    
    type: azuredevops:ServiceEndpointAws
    properties:
        accessKeyId: string
        authorization:
            string: string
        description: string
        externalId: string
        projectId: string
        roleSessionName: string
        roleToAssume: string
        secretAccessKey: string
        serviceEndpointName: string
        sessionToken: string
    

    ServiceEndpointAws 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 ServiceEndpointAws resource accepts the following input properties:

    AccessKeyId string
    The AWS access key ID for signing programmatic requests.
    ProjectId string
    The ID of the project.
    SecretAccessKey string
    The AWS secret access key for signing programmatic requests.
    ServiceEndpointName string
    The Service Endpoint name.
    Authorization Dictionary<string, string>
    Description string
    ExternalId string
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    RoleSessionName string
    Optional identifier for the assumed role session.
    RoleToAssume string
    The Amazon Resource Name (ARN) of the role to assume.
    SessionToken string
    The AWS session token for signing programmatic requests.
    AccessKeyId string
    The AWS access key ID for signing programmatic requests.
    ProjectId string
    The ID of the project.
    SecretAccessKey string
    The AWS secret access key for signing programmatic requests.
    ServiceEndpointName string
    The Service Endpoint name.
    Authorization map[string]string
    Description string
    ExternalId string
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    RoleSessionName string
    Optional identifier for the assumed role session.
    RoleToAssume string
    The Amazon Resource Name (ARN) of the role to assume.
    SessionToken string
    The AWS session token for signing programmatic requests.
    accessKeyId String
    The AWS access key ID for signing programmatic requests.
    projectId String
    The ID of the project.
    secretAccessKey String
    The AWS secret access key for signing programmatic requests.
    serviceEndpointName String
    The Service Endpoint name.
    authorization Map<String,String>
    description String
    externalId String
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    roleSessionName String
    Optional identifier for the assumed role session.
    roleToAssume String
    The Amazon Resource Name (ARN) of the role to assume.
    sessionToken String
    The AWS session token for signing programmatic requests.
    accessKeyId string
    The AWS access key ID for signing programmatic requests.
    projectId string
    The ID of the project.
    secretAccessKey string
    The AWS secret access key for signing programmatic requests.
    serviceEndpointName string
    The Service Endpoint name.
    authorization {[key: string]: string}
    description string
    externalId string
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    roleSessionName string
    Optional identifier for the assumed role session.
    roleToAssume string
    The Amazon Resource Name (ARN) of the role to assume.
    sessionToken string
    The AWS session token for signing programmatic requests.
    access_key_id str
    The AWS access key ID for signing programmatic requests.
    project_id str
    The ID of the project.
    secret_access_key str
    The AWS secret access key for signing programmatic requests.
    service_endpoint_name str
    The Service Endpoint name.
    authorization Mapping[str, str]
    description str
    external_id str
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    role_session_name str
    Optional identifier for the assumed role session.
    role_to_assume str
    The Amazon Resource Name (ARN) of the role to assume.
    session_token str
    The AWS session token for signing programmatic requests.
    accessKeyId String
    The AWS access key ID for signing programmatic requests.
    projectId String
    The ID of the project.
    secretAccessKey String
    The AWS secret access key for signing programmatic requests.
    serviceEndpointName String
    The Service Endpoint name.
    authorization Map<String>
    description String
    externalId String
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    roleSessionName String
    Optional identifier for the assumed role session.
    roleToAssume String
    The Amazon Resource Name (ARN) of the role to assume.
    sessionToken String
    The AWS session token for signing programmatic requests.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ServiceEndpointAws 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 ServiceEndpointAws Resource

    Get an existing ServiceEndpointAws 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?: ServiceEndpointAwsState, opts?: CustomResourceOptions): ServiceEndpointAws
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            access_key_id: Optional[str] = None,
            authorization: Optional[Mapping[str, str]] = None,
            description: Optional[str] = None,
            external_id: Optional[str] = None,
            project_id: Optional[str] = None,
            role_session_name: Optional[str] = None,
            role_to_assume: Optional[str] = None,
            secret_access_key: Optional[str] = None,
            service_endpoint_name: Optional[str] = None,
            session_token: Optional[str] = None) -> ServiceEndpointAws
    func GetServiceEndpointAws(ctx *Context, name string, id IDInput, state *ServiceEndpointAwsState, opts ...ResourceOption) (*ServiceEndpointAws, error)
    public static ServiceEndpointAws Get(string name, Input<string> id, ServiceEndpointAwsState? state, CustomResourceOptions? opts = null)
    public static ServiceEndpointAws get(String name, Output<String> id, ServiceEndpointAwsState 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.
    The following state arguments are supported:
    AccessKeyId string
    The AWS access key ID for signing programmatic requests.
    Authorization Dictionary<string, string>
    Description string
    ExternalId string
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    ProjectId string
    The ID of the project.
    RoleSessionName string
    Optional identifier for the assumed role session.
    RoleToAssume string
    The Amazon Resource Name (ARN) of the role to assume.
    SecretAccessKey string
    The AWS secret access key for signing programmatic requests.
    ServiceEndpointName string
    The Service Endpoint name.
    SessionToken string
    The AWS session token for signing programmatic requests.
    AccessKeyId string
    The AWS access key ID for signing programmatic requests.
    Authorization map[string]string
    Description string
    ExternalId string
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    ProjectId string
    The ID of the project.
    RoleSessionName string
    Optional identifier for the assumed role session.
    RoleToAssume string
    The Amazon Resource Name (ARN) of the role to assume.
    SecretAccessKey string
    The AWS secret access key for signing programmatic requests.
    ServiceEndpointName string
    The Service Endpoint name.
    SessionToken string
    The AWS session token for signing programmatic requests.
    accessKeyId String
    The AWS access key ID for signing programmatic requests.
    authorization Map<String,String>
    description String
    externalId String
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    projectId String
    The ID of the project.
    roleSessionName String
    Optional identifier for the assumed role session.
    roleToAssume String
    The Amazon Resource Name (ARN) of the role to assume.
    secretAccessKey String
    The AWS secret access key for signing programmatic requests.
    serviceEndpointName String
    The Service Endpoint name.
    sessionToken String
    The AWS session token for signing programmatic requests.
    accessKeyId string
    The AWS access key ID for signing programmatic requests.
    authorization {[key: string]: string}
    description string
    externalId string
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    projectId string
    The ID of the project.
    roleSessionName string
    Optional identifier for the assumed role session.
    roleToAssume string
    The Amazon Resource Name (ARN) of the role to assume.
    secretAccessKey string
    The AWS secret access key for signing programmatic requests.
    serviceEndpointName string
    The Service Endpoint name.
    sessionToken string
    The AWS session token for signing programmatic requests.
    access_key_id str
    The AWS access key ID for signing programmatic requests.
    authorization Mapping[str, str]
    description str
    external_id str
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    project_id str
    The ID of the project.
    role_session_name str
    Optional identifier for the assumed role session.
    role_to_assume str
    The Amazon Resource Name (ARN) of the role to assume.
    secret_access_key str
    The AWS secret access key for signing programmatic requests.
    service_endpoint_name str
    The Service Endpoint name.
    session_token str
    The AWS session token for signing programmatic requests.
    accessKeyId String
    The AWS access key ID for signing programmatic requests.
    authorization Map<String>
    description String
    externalId String
    A unique identifier that is used by third parties when assuming roles in their customers' accounts, aka cross-account role access.
    projectId String
    The ID of the project.
    roleSessionName String
    Optional identifier for the assumed role session.
    roleToAssume String
    The Amazon Resource Name (ARN) of the role to assume.
    secretAccessKey String
    The AWS secret access key for signing programmatic requests.
    serviceEndpointName String
    The Service Endpoint name.
    sessionToken String
    The AWS session token for signing programmatic requests.

    Import

    Azure DevOps Service Endpoint AWS can be imported using projectID/serviceEndpointID or projectName/serviceEndpointID

    $ pulumi import azuredevops:index/serviceEndpointAws:ServiceEndpointAws azuredevops_serviceendpoint_aws.example 00000000-0000-0000-0000-000000000000/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.
    azuredevops logo
    Azure DevOps v3.0.0 published on Friday, Mar 15, 2024 by Pulumi