1. Packages
  2. Azuredevops Provider
  3. API Docs
  4. ServiceEndpointGitHubEnterprise
Azure DevOps v3.3.0 published on Wednesday, Sep 4, 2024 by Pulumi

azuredevops.ServiceEndpointGitHubEnterprise

Explore with Pulumi AI

azuredevops logo
Azure DevOps v3.3.0 published on Wednesday, Sep 4, 2024 by Pulumi

    Manages a GitHub Enterprise Server service endpoint 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",
    });
    const exampleServiceEndpointGitHubEnterprise = new azuredevops.ServiceEndpointGitHubEnterprise("example", {
        projectId: example.id,
        serviceEndpointName: "Example GitHub Enterprise",
        url: "https://github.contoso.com",
        description: "Managed by Terraform",
        authPersonal: {
            personalAccessToken: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        },
    });
    
    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")
    example_service_endpoint_git_hub_enterprise = azuredevops.ServiceEndpointGitHubEnterprise("example",
        project_id=example.id,
        service_endpoint_name="Example GitHub Enterprise",
        url="https://github.contoso.com",
        description="Managed by Terraform",
        auth_personal={
            "personal_access_token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        })
    
    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 {
    		example, 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"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewServiceEndpointGitHubEnterprise(ctx, "example", &azuredevops.ServiceEndpointGitHubEnterpriseArgs{
    			ProjectId:           example.ID(),
    			ServiceEndpointName: pulumi.String("Example GitHub Enterprise"),
    			Url:                 pulumi.String("https://github.contoso.com"),
    			Description:         pulumi.String("Managed by Terraform"),
    			AuthPersonal: &azuredevops.ServiceEndpointGitHubEnterpriseAuthPersonalArgs{
    				PersonalAccessToken: pulumi.String("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"),
    			},
    		})
    		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",
        });
    
        var exampleServiceEndpointGitHubEnterprise = new AzureDevOps.ServiceEndpointGitHubEnterprise("example", new()
        {
            ProjectId = example.Id,
            ServiceEndpointName = "Example GitHub Enterprise",
            Url = "https://github.contoso.com",
            Description = "Managed by Terraform",
            AuthPersonal = new AzureDevOps.Inputs.ServiceEndpointGitHubEnterpriseAuthPersonalArgs
            {
                PersonalAccessToken = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
            },
        });
    
    });
    
    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.ServiceEndpointGitHubEnterprise;
    import com.pulumi.azuredevops.ServiceEndpointGitHubEnterpriseArgs;
    import com.pulumi.azuredevops.inputs.ServiceEndpointGitHubEnterpriseAuthPersonalArgs;
    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")
                .build());
    
            var exampleServiceEndpointGitHubEnterprise = new ServiceEndpointGitHubEnterprise("exampleServiceEndpointGitHubEnterprise", ServiceEndpointGitHubEnterpriseArgs.builder()
                .projectId(example.id())
                .serviceEndpointName("Example GitHub Enterprise")
                .url("https://github.contoso.com")
                .description("Managed by Terraform")
                .authPersonal(ServiceEndpointGitHubEnterpriseAuthPersonalArgs.builder()
                    .personalAccessToken("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:Project
        properties:
          name: Example Project
          visibility: private
          versionControl: Git
          workItemTemplate: Agile
          description: Managed by Terraform
      exampleServiceEndpointGitHubEnterprise:
        type: azuredevops:ServiceEndpointGitHubEnterprise
        name: example
        properties:
          projectId: ${example.id}
          serviceEndpointName: Example GitHub Enterprise
          url: https://github.contoso.com
          description: Managed by Terraform
          authPersonal:
            personalAccessToken: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    

    Create ServiceEndpointGitHubEnterprise Resource

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

    Constructor syntax

    new ServiceEndpointGitHubEnterprise(name: string, args: ServiceEndpointGitHubEnterpriseArgs, opts?: CustomResourceOptions);
    @overload
    def ServiceEndpointGitHubEnterprise(resource_name: str,
                                        args: ServiceEndpointGitHubEnterpriseArgs,
                                        opts: Optional[ResourceOptions] = None)
    
    @overload
    def ServiceEndpointGitHubEnterprise(resource_name: str,
                                        opts: Optional[ResourceOptions] = None,
                                        auth_personal: Optional[ServiceEndpointGitHubEnterpriseAuthPersonalArgs] = None,
                                        project_id: Optional[str] = None,
                                        service_endpoint_name: Optional[str] = None,
                                        url: Optional[str] = None,
                                        authorization: Optional[Mapping[str, str]] = None,
                                        description: Optional[str] = None)
    func NewServiceEndpointGitHubEnterprise(ctx *Context, name string, args ServiceEndpointGitHubEnterpriseArgs, opts ...ResourceOption) (*ServiceEndpointGitHubEnterprise, error)
    public ServiceEndpointGitHubEnterprise(string name, ServiceEndpointGitHubEnterpriseArgs args, CustomResourceOptions? opts = null)
    public ServiceEndpointGitHubEnterprise(String name, ServiceEndpointGitHubEnterpriseArgs args)
    public ServiceEndpointGitHubEnterprise(String name, ServiceEndpointGitHubEnterpriseArgs args, CustomResourceOptions options)
    
    type: azuredevops:ServiceEndpointGitHubEnterprise
    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 ServiceEndpointGitHubEnterpriseArgs
    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 ServiceEndpointGitHubEnterpriseArgs
    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 ServiceEndpointGitHubEnterpriseArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ServiceEndpointGitHubEnterpriseArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ServiceEndpointGitHubEnterpriseArgs
    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 serviceEndpointGitHubEnterpriseResource = new AzureDevOps.ServiceEndpointGitHubEnterprise("serviceEndpointGitHubEnterpriseResource", new()
    {
        AuthPersonal = new AzureDevOps.Inputs.ServiceEndpointGitHubEnterpriseAuthPersonalArgs
        {
            PersonalAccessToken = "string",
        },
        ProjectId = "string",
        ServiceEndpointName = "string",
        Url = "string",
        Authorization = 
        {
            { "string", "string" },
        },
        Description = "string",
    });
    
    example, err := azuredevops.NewServiceEndpointGitHubEnterprise(ctx, "serviceEndpointGitHubEnterpriseResource", &azuredevops.ServiceEndpointGitHubEnterpriseArgs{
    	AuthPersonal: &azuredevops.ServiceEndpointGitHubEnterpriseAuthPersonalArgs{
    		PersonalAccessToken: pulumi.String("string"),
    	},
    	ProjectId:           pulumi.String("string"),
    	ServiceEndpointName: pulumi.String("string"),
    	Url:                 pulumi.String("string"),
    	Authorization: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Description: pulumi.String("string"),
    })
    
    var serviceEndpointGitHubEnterpriseResource = new ServiceEndpointGitHubEnterprise("serviceEndpointGitHubEnterpriseResource", ServiceEndpointGitHubEnterpriseArgs.builder()
        .authPersonal(ServiceEndpointGitHubEnterpriseAuthPersonalArgs.builder()
            .personalAccessToken("string")
            .build())
        .projectId("string")
        .serviceEndpointName("string")
        .url("string")
        .authorization(Map.of("string", "string"))
        .description("string")
        .build());
    
    service_endpoint_git_hub_enterprise_resource = azuredevops.ServiceEndpointGitHubEnterprise("serviceEndpointGitHubEnterpriseResource",
        auth_personal={
            "personalAccessToken": "string",
        },
        project_id="string",
        service_endpoint_name="string",
        url="string",
        authorization={
            "string": "string",
        },
        description="string")
    
    const serviceEndpointGitHubEnterpriseResource = new azuredevops.ServiceEndpointGitHubEnterprise("serviceEndpointGitHubEnterpriseResource", {
        authPersonal: {
            personalAccessToken: "string",
        },
        projectId: "string",
        serviceEndpointName: "string",
        url: "string",
        authorization: {
            string: "string",
        },
        description: "string",
    });
    
    type: azuredevops:ServiceEndpointGitHubEnterprise
    properties:
        authPersonal:
            personalAccessToken: string
        authorization:
            string: string
        description: string
        projectId: string
        serviceEndpointName: string
        url: string
    

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

    AuthPersonal Pulumi.AzureDevOps.Inputs.ServiceEndpointGitHubEnterpriseAuthPersonal
    ProjectId string
    The ID of the project.
    ServiceEndpointName string
    The Service Endpoint name.
    Url string
    GitHub Enterprise Server Url.
    Authorization Dictionary<string, string>
    Description string
    AuthPersonal ServiceEndpointGitHubEnterpriseAuthPersonalArgs
    ProjectId string
    The ID of the project.
    ServiceEndpointName string
    The Service Endpoint name.
    Url string
    GitHub Enterprise Server Url.
    Authorization map[string]string
    Description string
    authPersonal ServiceEndpointGitHubEnterpriseAuthPersonal
    projectId String
    The ID of the project.
    serviceEndpointName String
    The Service Endpoint name.
    url String
    GitHub Enterprise Server Url.
    authorization Map<String,String>
    description String
    authPersonal ServiceEndpointGitHubEnterpriseAuthPersonal
    projectId string
    The ID of the project.
    serviceEndpointName string
    The Service Endpoint name.
    url string
    GitHub Enterprise Server Url.
    authorization {[key: string]: string}
    description string
    auth_personal ServiceEndpointGitHubEnterpriseAuthPersonalArgs
    project_id str
    The ID of the project.
    service_endpoint_name str
    The Service Endpoint name.
    url str
    GitHub Enterprise Server Url.
    authorization Mapping[str, str]
    description str
    authPersonal Property Map
    projectId String
    The ID of the project.
    serviceEndpointName String
    The Service Endpoint name.
    url String
    GitHub Enterprise Server Url.
    authorization Map<String>
    description String

    Outputs

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

    Get an existing ServiceEndpointGitHubEnterprise 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?: ServiceEndpointGitHubEnterpriseState, opts?: CustomResourceOptions): ServiceEndpointGitHubEnterprise
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            auth_personal: Optional[ServiceEndpointGitHubEnterpriseAuthPersonalArgs] = None,
            authorization: Optional[Mapping[str, str]] = None,
            description: Optional[str] = None,
            project_id: Optional[str] = None,
            service_endpoint_name: Optional[str] = None,
            url: Optional[str] = None) -> ServiceEndpointGitHubEnterprise
    func GetServiceEndpointGitHubEnterprise(ctx *Context, name string, id IDInput, state *ServiceEndpointGitHubEnterpriseState, opts ...ResourceOption) (*ServiceEndpointGitHubEnterprise, error)
    public static ServiceEndpointGitHubEnterprise Get(string name, Input<string> id, ServiceEndpointGitHubEnterpriseState? state, CustomResourceOptions? opts = null)
    public static ServiceEndpointGitHubEnterprise get(String name, Output<String> id, ServiceEndpointGitHubEnterpriseState 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:
    AuthPersonal Pulumi.AzureDevOps.Inputs.ServiceEndpointGitHubEnterpriseAuthPersonal
    Authorization Dictionary<string, string>
    Description string
    ProjectId string
    The ID of the project.
    ServiceEndpointName string
    The Service Endpoint name.
    Url string
    GitHub Enterprise Server Url.
    AuthPersonal ServiceEndpointGitHubEnterpriseAuthPersonalArgs
    Authorization map[string]string
    Description string
    ProjectId string
    The ID of the project.
    ServiceEndpointName string
    The Service Endpoint name.
    Url string
    GitHub Enterprise Server Url.
    authPersonal ServiceEndpointGitHubEnterpriseAuthPersonal
    authorization Map<String,String>
    description String
    projectId String
    The ID of the project.
    serviceEndpointName String
    The Service Endpoint name.
    url String
    GitHub Enterprise Server Url.
    authPersonal ServiceEndpointGitHubEnterpriseAuthPersonal
    authorization {[key: string]: string}
    description string
    projectId string
    The ID of the project.
    serviceEndpointName string
    The Service Endpoint name.
    url string
    GitHub Enterprise Server Url.
    auth_personal ServiceEndpointGitHubEnterpriseAuthPersonalArgs
    authorization Mapping[str, str]
    description str
    project_id str
    The ID of the project.
    service_endpoint_name str
    The Service Endpoint name.
    url str
    GitHub Enterprise Server Url.
    authPersonal Property Map
    authorization Map<String>
    description String
    projectId String
    The ID of the project.
    serviceEndpointName String
    The Service Endpoint name.
    url String
    GitHub Enterprise Server Url.

    Supporting Types

    ServiceEndpointGitHubEnterpriseAuthPersonal, ServiceEndpointGitHubEnterpriseAuthPersonalArgs

    PersonalAccessToken string
    The Personal Access Token for GitHub.
    PersonalAccessToken string
    The Personal Access Token for GitHub.
    personalAccessToken String
    The Personal Access Token for GitHub.
    personalAccessToken string
    The Personal Access Token for GitHub.
    personal_access_token str
    The Personal Access Token for GitHub.
    personalAccessToken String
    The Personal Access Token for GitHub.

    Import

    Azure DevOps Service Endpoint GitHub Enterprise Server can be imported using projectID/serviceEndpointID or projectName/serviceEndpointID

    $ pulumi import azuredevops:index/serviceEndpointGitHubEnterprise:ServiceEndpointGitHubEnterprise 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.3.0 published on Wednesday, Sep 4, 2024 by Pulumi