IntegrationMattermost

class IntegrationMattermost : KotlinCustomResource

The gitlab.IntegrationMattermost resource allows to manage the lifecycle of a project integration with Mattermost. 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 mattermost = new gitlab.IntegrationMattermost("mattermost", {
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")
mattermost = gitlab.IntegrationMattermost("mattermost",
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 mattermost = new GitLab.IntegrationMattermost("mattermost", 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.NewIntegrationMattermost(ctx, "mattermost", &gitlab.IntegrationMattermostArgs{
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.IntegrationMattermost;
import com.pulumi.gitlab.IntegrationMattermostArgs;
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 mattermost = new IntegrationMattermost("mattermost", IntegrationMattermostArgs.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
mattermost:
type: gitlab:IntegrationMattermost
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_mattermost. For example: terraform import { to = gitlab_integration_mattermost.example id = "see CLI command below for ID" } Import using the CLI is supported using the following syntax: You can import a gitlab_integration_mattermost.mattermost state using the project ID, e.g.

$ pulumi import gitlab:index/integrationMattermost:IntegrationMattermost mattermost 1

Properties

Link copied to clipboard

Branches to send notifications for. Valid options are "all", "default", "protected", and "defaultandprotected".

Link copied to clipboard

The name of the channel to receive confidential issue events notifications.

Link copied to clipboard

Enable notifications for confidential issues events.

Link copied to clipboard

The name of the channel to receive confidential note events notifications.

Link copied to clipboard

Enable notifications for confidential note events.

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

The name of the channel to receive issue events notifications.

Link copied to clipboard
val issuesEvents: Output<Boolean>

Enable notifications for issues events.

Link copied to clipboard

The name of the channel to receive merge request events notifications.

Link copied to clipboard

Enable notifications for merge requests events.

Link copied to clipboard
val noteChannel: Output<String>?

The name of the channel to receive note events notifications.

Link copied to clipboard
val noteEvents: Output<Boolean>

Enable notifications for note events.

Link copied to clipboard

Send notifications for broken pipelines.

Link copied to clipboard
val pipelineChannel: Output<String>?

The name of the channel to receive pipeline events notifications.

Link copied to clipboard
val pipelineEvents: Output<Boolean>

Enable notifications for pipeline events.

Link copied to clipboard
val project: Output<String>

ID of the project you want to activate integration on.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val pushChannel: Output<String>?

The name of the channel to receive push events notifications.

Link copied to clipboard
val pushEvents: Output<Boolean>

Enable notifications for push events.

Link copied to clipboard
val tagPushChannel: Output<String>?

The name of the channel to receive tag push events notifications.

Link copied to clipboard
val tagPushEvents: Output<Boolean>

Enable notifications for tag push events.

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard
val username: Output<String>?

Username to use.

Link copied to clipboard
val webhook: Output<String>

Webhook URL (Example, https://mattermost.yourdomain.com/hooks/...). This value cannot be imported.

Link copied to clipboard
val wikiPageChannel: Output<String>?

The name of the channel to receive wiki page events notifications.

Link copied to clipboard
val wikiPageEvents: Output<Boolean>

Enable notifications for wiki page events.