Skip to main content

createPublishGitlabAction()

Home > @backstage/plugin-scaffolder-backend-module-gitlab > createPublishGitlabAction

Creates a new action that initializes a git repository of the content in the workspace and publishes it to GitLab.

Signature:

function createPublishGitlabAction(options: {
integrations: ScmIntegrationRegistry;
config: Config;
}): import("@backstage/plugin-scaffolder-node").TemplateAction<{
repoUrl: string;
defaultBranch?: string | undefined;
repoVisibility?: "internal" | "private" | "public" | undefined;
sourcePath?: string | undefined;
token?: string | undefined;
gitCommitMessage?: string | undefined;
gitAuthorName?: string | undefined;
gitAuthorEmail?: string | undefined;
setUserAsOwner?: boolean | undefined;
topics?: string[] | undefined;
settings?: {
path?: string | undefined;
auto_devops_enabled?: boolean | undefined;
ci_config_path?: string | undefined;
description?: string | undefined;
merge_method?: "merge" | "ff" | "rebase_merge" | undefined;
squash_option?: "always" | "never" | "default_off" | "default_on" | undefined;
topics?: string[] | undefined;
visibility?: "internal" | "private" | "public" | undefined;
only_allow_merge_if_all_discussions_are_resolved?: boolean | undefined;
only_allow_merge_if_pipeline_succeeds?: boolean | undefined;
allow_merge_on_skipped_pipeline?: boolean | undefined;
} | undefined;
branches?: {
name: string;
protect?: boolean | undefined;
create?: boolean | undefined;
ref?: string | undefined;
}[] | undefined;
projectVariables?: {
key: string;
value: string;
description?: string | undefined;
variable_type?: string | undefined;
protected?: boolean | undefined;
masked?: boolean | undefined;
raw?: boolean | undefined;
environment_scope?: string | undefined;
}[] | undefined;
}, import("@backstage/types").JsonObject>;

Parameters

Parameter

Type

Description

options

{ integrations: ScmIntegrationRegistry; config: Config; }

**Returns:**

import("@backstage/plugin-scaffolder-node").TemplateAction<{ repoUrl: string; defaultBranch?: string | undefined; repoVisibility?: "internal" | "private" | "public" | undefined; sourcePath?: string | undefined; token?: string | undefined; gitCommitMessage?: string | undefined; gitAuthorName?: string | undefined; gitAuthorEmail?: string | undefined; setUserAsOwner?: boolean | undefined; topics?: string[] | undefined; settings?: { path?: string | undefined; auto_devops_enabled?: boolean | undefined; ci_config_path?: string | undefined; description?: string | undefined; merge_method?: "merge" | "ff" | "rebase_merge" | undefined; squash_option?: "always" | "never" | "default_off" | "default_on" | undefined; topics?: string[] | undefined; visibility?: "internal" | "private" | "public" | undefined; only_allow_merge_if_all_discussions_are_resolved?: boolean | undefined; only_allow_merge_if_pipeline_succeeds?: boolean | undefined; allow_merge_on_skipped_pipeline?: boolean | undefined; } | undefined; branches?: { name: string; protect?: boolean | undefined; create?: boolean | undefined; ref?: string | undefined; }[] | undefined; projectVariables?: { key: string; value: string; description?: string | undefined; variable_type?: string | undefined; protected?: boolean | undefined; masked?: boolean | undefined; raw?: boolean | undefined; environment_scope?: string | undefined; }[] | undefined; }, import("@backstage/types").JsonObject>