@pulumi/azuredevops
Version:
A Pulumi package for creating and managing Azure DevOps.
210 lines (209 loc) • 7.86 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* Manages a Generic Service Endpoint (v2) within Azure DevOps, which can be used to connect to various external services with custom authentication mechanisms.
*
* ## Example Usage
*
* ```typescript
* 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",
* });
* // Basic username/password authentication
* const exampleServiceendpointGenericV2 = new azuredevops.ServiceendpointGenericV2("example", {
* projectId: example.id,
* name: "Example Generic Service Endpoint",
* description: "Managed by Pulumi",
* serviceEndpointType: "generic",
* serverUrl: "https://example.com",
* authorizationScheme: "UsernamePassword",
* authorizationParameters: {
* username: "username",
* password: "password",
* },
* });
* // Token-based authentication
* const tokenExample = new azuredevops.ServiceendpointGenericV2("token_example", {
* projectId: example.id,
* name: "Token-based Service Endpoint",
* description: "Managed by Pulumi",
* serviceEndpointType: "generic",
* serverUrl: "https://api.example.com",
* authorizationScheme: "Token",
* authorizationParameters: {
* apitoken: "your-api-token",
* },
* parameters: {
* releaseUrl: "https://releases.example.com",
* },
* });
* ```
*
* ## Import
*
* Service endpoints can be imported using the project ID and service endpoint ID:
*
* ```sh
* $ pulumi import azuredevops:index/serviceendpointGenericV2:ServiceendpointGenericV2 example <project_id>/<id>
* ```
*/
export declare class ServiceendpointGenericV2 extends pulumi.CustomResource {
/**
* Get an existing ServiceendpointGenericV2 resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ServiceendpointGenericV2State, opts?: pulumi.CustomResourceOptions): ServiceendpointGenericV2;
/**
* Returns true if the given object is an instance of ServiceendpointGenericV2. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is ServiceendpointGenericV2;
/**
* Map of key/value pairs for the specific authorization scheme. These often include sensitive data like tokens, usernames, and passwords.
*/
readonly authorizationParameters: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The authorization scheme to use. Common values include "UsernamePassword", "Token", "OAuth", etc.
*/
readonly authorizationScheme: pulumi.Output<string>;
/**
* The description of the service endpoint. Defaults to "Managed by Pulumi".
*/
readonly description: pulumi.Output<string | undefined>;
/**
* The name of the service endpoint.
*/
readonly name: pulumi.Output<string>;
/**
* Additional data associated with the service endpoint. This is a map of key/value pairs.
*/
readonly parameters: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The ID of the project to which the service endpoint belongs.
*/
readonly projectId: pulumi.Output<string>;
/**
* The URL of the server associated with the service endpoint.
*/
readonly serverUrl: pulumi.Output<string>;
/**
* A list of project IDs where the service endpoint should be shared.
*/
readonly sharedProjectIds: pulumi.Output<string[] | undefined>;
/**
* The type of the service endpoint. This can be any valid service endpoint type, such as "generic", "artifactory", etc.
*/
readonly type: pulumi.Output<string>;
/**
* Create a ServiceendpointGenericV2 resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: ServiceendpointGenericV2Args, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering ServiceendpointGenericV2 resources.
*/
export interface ServiceendpointGenericV2State {
/**
* Map of key/value pairs for the specific authorization scheme. These often include sensitive data like tokens, usernames, and passwords.
*/
authorizationParameters?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The authorization scheme to use. Common values include "UsernamePassword", "Token", "OAuth", etc.
*/
authorizationScheme?: pulumi.Input<string>;
/**
* The description of the service endpoint. Defaults to "Managed by Pulumi".
*/
description?: pulumi.Input<string>;
/**
* The name of the service endpoint.
*/
name?: pulumi.Input<string>;
/**
* Additional data associated with the service endpoint. This is a map of key/value pairs.
*/
parameters?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The ID of the project to which the service endpoint belongs.
*/
projectId?: pulumi.Input<string>;
/**
* The URL of the server associated with the service endpoint.
*/
serverUrl?: pulumi.Input<string>;
/**
* A list of project IDs where the service endpoint should be shared.
*/
sharedProjectIds?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The type of the service endpoint. This can be any valid service endpoint type, such as "generic", "artifactory", etc.
*/
type?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a ServiceendpointGenericV2 resource.
*/
export interface ServiceendpointGenericV2Args {
/**
* Map of key/value pairs for the specific authorization scheme. These often include sensitive data like tokens, usernames, and passwords.
*/
authorizationParameters?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The authorization scheme to use. Common values include "UsernamePassword", "Token", "OAuth", etc.
*/
authorizationScheme: pulumi.Input<string>;
/**
* The description of the service endpoint. Defaults to "Managed by Pulumi".
*/
description?: pulumi.Input<string>;
/**
* The name of the service endpoint.
*/
name?: pulumi.Input<string>;
/**
* Additional data associated with the service endpoint. This is a map of key/value pairs.
*/
parameters?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The ID of the project to which the service endpoint belongs.
*/
projectId: pulumi.Input<string>;
/**
* The URL of the server associated with the service endpoint.
*/
serverUrl: pulumi.Input<string>;
/**
* A list of project IDs where the service endpoint should be shared.
*/
sharedProjectIds?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The type of the service endpoint. This can be any valid service endpoint type, such as "generic", "artifactory", etc.
*/
type: pulumi.Input<string>;
}