Integration Slack Args
The gitlab.IntegrationSlack
resource allows to manage the lifecycle of a project integration with Slack. Upstream API: GitLab REST API docs
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as gitlab from "@pulumi/gitlab";
const awesomeProject = new gitlab.Project("awesome_project", {
name: "awesome_project",
description: "My awesome project.",
visibilityLevel: "public",
});
const slack = new gitlab.IntegrationSlack("slack", {
project: awesomeProject.id,
webhook: "https://webhook.com",
username: "myuser",
pushEvents: true,
pushChannel: "push_chan",
});
import pulumi
import pulumi_gitlab as gitlab
awesome_project = gitlab.Project("awesome_project",
name="awesome_project",
description="My awesome project.",
visibility_level="public")
slack = gitlab.IntegrationSlack("slack",
project=awesome_project.id,
webhook="https://webhook.com",
username="myuser",
push_events=True,
push_channel="push_chan")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using GitLab = Pulumi.GitLab;
return await Deployment.RunAsync(() =>
{
var awesomeProject = new GitLab.Project("awesome_project", new()
{
Name = "awesome_project",
Description = "My awesome project.",
VisibilityLevel = "public",
});
var slack = new GitLab.IntegrationSlack("slack", new()
{
Project = awesomeProject.Id,
Webhook = "https://webhook.com",
Username = "myuser",
PushEvents = true,
PushChannel = "push_chan",
});
});
package main
import (
"github.com/pulumi/pulumi-gitlab/sdk/v8/go/gitlab"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
awesomeProject, err := gitlab.NewProject(ctx, "awesome_project", &gitlab.ProjectArgs{
Name: pulumi.String("awesome_project"),
Description: pulumi.String("My awesome project."),
VisibilityLevel: pulumi.String("public"),
})
if err != nil {
return err
}
_, err = gitlab.NewIntegrationSlack(ctx, "slack", &gitlab.IntegrationSlackArgs{
Project: awesomeProject.ID(),
Webhook: pulumi.String("https://webhook.com"),
Username: pulumi.String("myuser"),
PushEvents: pulumi.Bool(true),
PushChannel: pulumi.String("push_chan"),
})
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.gitlab.Project;
import com.pulumi.gitlab.ProjectArgs;
import com.pulumi.gitlab.IntegrationSlack;
import com.pulumi.gitlab.IntegrationSlackArgs;
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 awesomeProject = new Project("awesomeProject", ProjectArgs.builder()
.name("awesome_project")
.description("My awesome project.")
.visibilityLevel("public")
.build());
var slack = new IntegrationSlack("slack", IntegrationSlackArgs.builder()
.project(awesomeProject.id())
.webhook("https://webhook.com")
.username("myuser")
.pushEvents(true)
.pushChannel("push_chan")
.build());
}
}
resources:
awesomeProject:
type: gitlab:Project
name: awesome_project
properties:
name: awesome_project
description: My awesome project.
visibilityLevel: public
slack:
type: gitlab:IntegrationSlack
properties:
project: ${awesomeProject.id}
webhook: https://webhook.com
username: myuser
pushEvents: true
pushChannel: push_chan
Import
Starting in Terraform v1.5.0 you can use an import block to import gitlab_integration_slack
. For example: terraform import { to = gitlab_integration_slack.example id = "see CLI command below for ID" } Import using the CLI is supported using the following syntax: You can import a gitlab_integration_slack.slack state using the project ID, e.g.
$ pulumi import gitlab:index/integrationSlack:IntegrationSlack slack 1
Constructors
Properties
Branches to send notifications for. Valid options are "all", "default", "protected", and "defaultandprotected".
The name of the channel to receive confidential issue events notifications.
Enable notifications for confidential issues events.
The name of the channel to receive confidential note events notifications.
Enable notifications for confidential note events.
The name of the channel to receive issue events notifications.
Enable notifications for issues events.
The name of the channel to receive merge request events notifications.
Enable notifications for merge requests events.
The name of the channel to receive note events notifications.
Enable notifications for note events.
Send notifications for broken pipelines.
This parameter has been replaced with branches_to_be_notified
.
The name of the channel to receive pipeline events notifications.
Enable notifications for pipeline events.
The name of the channel to receive push events notifications.
Enable notifications for push events.
The name of the channel to receive tag push events notifications.
Enable notifications for tag push events.
The name of the channel to receive wiki page events notifications.
Enable notifications for wiki page events.