SourceControlArgs

data class SourceControlArgs(val contentTypes: Output<List<Either<String, ContentType>>>? = null, val description: Output<String>? = null, val displayName: Output<String>? = null, val id: Output<String>? = null, val lastDeploymentInfo: Output<DeploymentInfoArgs>? = null, val repoType: Output<Either<String, RepoType>>? = null, val repository: Output<RepositoryArgs>? = null, val repositoryResourceInfo: Output<RepositoryResourceInfoArgs>? = null, val resourceGroupName: Output<String>? = null, val sourceControlId: Output<String>? = null, val version: Output<Either<String, Version>>? = null, val workspaceName: Output<String>? = null) : ConvertibleToJava<SourceControlArgs>

Represents a SourceControl in Azure Security Insights. Uses Azure REST API version 2023-05-01-preview. In version 2.x of the Azure Native provider, it used API version 2023-05-01-preview. Other available API versions: 2023-03-01-preview, 2023-04-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native securityinsights [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Creates a source control.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sourceControl = new AzureNative.SecurityInsights.SourceControl("sourceControl", new()
{
ContentTypes = new[]
{
"AnalyticRules",
AzureNative.SecurityInsights.ContentType.Workbook,
},
Description = "This is a source control",
DisplayName = "My Source Control",
RepoType = AzureNative.SecurityInsights.RepoType.Github,
Repository = new AzureNative.SecurityInsights.Inputs.RepositoryArgs
{
Branch = "master",
DisplayUrl = "https://github.com/user/repo",
PathMapping = new[]
{
new AzureNative.SecurityInsights.Inputs.ContentPathMapArgs
{
ContentType = "AnalyticRules",
Path = "path/to/rules",
},
new AzureNative.SecurityInsights.Inputs.ContentPathMapArgs
{
ContentType = AzureNative.SecurityInsights.ContentType.Workbook,
Path = "path/to/workbooks",
},
},
Url = "https://github.com/user/repo",
},
ResourceGroupName = "myRg",
SourceControlId = "789e0c1f-4a3d-43ad-809c-e713b677b04a",
WorkspaceName = "myWorkspace",
});
});
package main
import (
securityinsights "github.com/pulumi/pulumi-azure-native-sdk/securityinsights/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := securityinsights.NewSourceControl(ctx, "sourceControl", &securityinsights.SourceControlArgs{
ContentTypes: pulumi.StringArray{
pulumi.String("AnalyticRules"),
pulumi.String(securityinsights.ContentTypeWorkbook),
},
Description: pulumi.String("This is a source control"),
DisplayName: pulumi.String("My Source Control"),
RepoType: pulumi.String(securityinsights.RepoTypeGithub),
Repository: &securityinsights.RepositoryArgs{
Branch: pulumi.String("master"),
DisplayUrl: pulumi.String("https://github.com/user/repo"),
PathMapping: securityinsights.ContentPathMapArray{
&securityinsights.ContentPathMapArgs{
ContentType: pulumi.String("AnalyticRules"),
Path: pulumi.String("path/to/rules"),
},
&securityinsights.ContentPathMapArgs{
ContentType: pulumi.String(securityinsights.ContentTypeWorkbook),
Path: pulumi.String("path/to/workbooks"),
},
},
Url: pulumi.String("https://github.com/user/repo"),
},
ResourceGroupName: pulumi.String("myRg"),
SourceControlId: pulumi.String("789e0c1f-4a3d-43ad-809c-e713b677b04a"),
WorkspaceName: pulumi.String("myWorkspace"),
})
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.securityinsights.SourceControl;
import com.pulumi.azurenative.securityinsights.SourceControlArgs;
import com.pulumi.azurenative.securityinsights.inputs.RepositoryArgs;
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 sourceControl = new SourceControl("sourceControl", SourceControlArgs.builder()
.contentTypes(
"AnalyticRules",
"Workbook")
.description("This is a source control")
.displayName("My Source Control")
.repoType("Github")
.repository(RepositoryArgs.builder()
.branch("master")
.displayUrl("https://github.com/user/repo")
.pathMapping(
ContentPathMapArgs.builder()
.contentType("AnalyticRules")
.path("path/to/rules")
.build(),
ContentPathMapArgs.builder()
.contentType("Workbook")
.path("path/to/workbooks")
.build())
.url("https://github.com/user/repo")
.build())
.resourceGroupName("myRg")
.sourceControlId("789e0c1f-4a3d-43ad-809c-e713b677b04a")
.workspaceName("myWorkspace")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:securityinsights:SourceControl 789e0c1f-4a3d-43ad-809c-e713b677b04a /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/sourcecontrols/{sourceControlId}

Constructors

Link copied to clipboard
constructor(contentTypes: Output<List<Either<String, ContentType>>>? = null, description: Output<String>? = null, displayName: Output<String>? = null, id: Output<String>? = null, lastDeploymentInfo: Output<DeploymentInfoArgs>? = null, repoType: Output<Either<String, RepoType>>? = null, repository: Output<RepositoryArgs>? = null, repositoryResourceInfo: Output<RepositoryResourceInfoArgs>? = null, resourceGroupName: Output<String>? = null, sourceControlId: Output<String>? = null, version: Output<Either<String, Version>>? = null, workspaceName: Output<String>? = null)

Properties

Link copied to clipboard
val contentTypes: Output<List<Either<String, ContentType>>>? = null

Array of source control content types.

Link copied to clipboard
val description: Output<String>? = null

A description of the source control

Link copied to clipboard
val displayName: Output<String>? = null

The display name of the source control

Link copied to clipboard
val id: Output<String>? = null

The id (a Guid) of the source control

Link copied to clipboard

Information regarding the latest deployment for the source control.

Link copied to clipboard
val repository: Output<RepositoryArgs>? = null

Repository metadata.

Link copied to clipboard

Information regarding the resources created in user's repository.

Link copied to clipboard
val repoType: Output<Either<String, RepoType>>? = null

The repository type of the source control

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group. The name is case insensitive.

Link copied to clipboard
val sourceControlId: Output<String>? = null

Source control Id

Link copied to clipboard
val version: Output<Either<String, Version>>? = null

The version number associated with the source control

Link copied to clipboard
val workspaceName: Output<String>? = null

The name of the workspace.

Functions

Link copied to clipboard
open override fun toJava(): SourceControlArgs