Skip to main content
Version: Next

createGithubRepoCreateAction()

Home > @backstage/plugin-scaffolder-backend-module-github > createGithubRepoCreateAction

Creates a new action that initializes a git repository

Signature:

function createGithubRepoCreateAction(options: {
integrations: ScmIntegrationRegistry;
githubCredentialsProvider?: GithubCredentialsProvider;
}): import("@backstage/plugin-scaffolder-node").TemplateAction<{
repoUrl: string;
description?: string | undefined;
homepage?: string | undefined;
access?: string | undefined;
requireCodeOwnerReviews?: boolean | undefined;
bypassPullRequestAllowances?: {
apps?: string[] | undefined;
teams?: string[] | undefined;
users?: string[] | undefined;
} | undefined;
requiredApprovingReviewCount?: number | undefined;
restrictions?: {
teams: string[];
users: string[];
apps?: string[] | undefined;
} | undefined;
requiredStatusCheckContexts?: string[] | undefined;
requireBranchesToBeUpToDate?: boolean | undefined;
requiredConversationResolution?: boolean | undefined;
repoVisibility?: "internal" | "private" | "public" | undefined;
deleteBranchOnMerge?: boolean | undefined;
allowMergeCommit?: boolean | undefined;
allowSquashMerge?: boolean | undefined;
squashMergeCommitTitle?: "PR_TITLE" | "COMMIT_OR_PR_TITLE" | undefined;
squashMergeCommitMessage?: "PR_BODY" | "COMMIT_MESSAGES" | "BLANK" | undefined;
allowRebaseMerge?: boolean | undefined;
allowAutoMerge?: boolean | undefined;
allowUpdateBranch?: boolean | undefined;
collaborators?: ({
user: string;
access: string;
} | {
team: string;
access: string;
})[] | undefined;
hasProjects?: boolean | undefined;
hasWiki?: boolean | undefined;
hasIssues?: boolean | undefined;
token?: string | undefined;
topics?: string[] | undefined;
repoVariables?: Record<string, string> | undefined;
secrets?: Record<string, string> | undefined;
oidcCustomization?: {
useDefault: boolean;
includeClaimKeys?: string[] | undefined;
} | undefined;
requiredCommitSigning?: boolean | undefined;
requiredLinearHistory?: boolean | undefined;
customProperties?: Record<string, string> | undefined;
subscribe?: boolean | undefined;
}, {
remoteUrl: string;
repoContentsUrl: string;
}, "v2">;

Parameters

Parameter

Type

Description

options

{ integrations: ScmIntegrationRegistry; githubCredentialsProvider?: GithubCredentialsProvider; }

**Returns:**

import("@backstage/plugin-scaffolder-node").TemplateAction<{ repoUrl: string; description?: string | undefined; homepage?: string | undefined; access?: string | undefined; requireCodeOwnerReviews?: boolean | undefined; bypassPullRequestAllowances?: { apps?: string[] | undefined; teams?: string[] | undefined; users?: string[] | undefined; } | undefined; requiredApprovingReviewCount?: number | undefined; restrictions?: { teams: string[]; users: string[]; apps?: string[] | undefined; } | undefined; requiredStatusCheckContexts?: string[] | undefined; requireBranchesToBeUpToDate?: boolean | undefined; requiredConversationResolution?: boolean | undefined; repoVisibility?: "internal" | "private" | "public" | undefined; deleteBranchOnMerge?: boolean | undefined; allowMergeCommit?: boolean | undefined; allowSquashMerge?: boolean | undefined; squashMergeCommitTitle?: "PR_TITLE" | "COMMIT_OR_PR_TITLE" | undefined; squashMergeCommitMessage?: "PR_BODY" | "COMMIT_MESSAGES" | "BLANK" | undefined; allowRebaseMerge?: boolean | undefined; allowAutoMerge?: boolean | undefined; allowUpdateBranch?: boolean | undefined; collaborators?: ({ user: string; access: string; } | { team: string; access: string; })[] | undefined; hasProjects?: boolean | undefined; hasWiki?: boolean | undefined; hasIssues?: boolean | undefined; token?: string | undefined; topics?: string[] | undefined; repoVariables?: Record<string, string> | undefined; secrets?: Record<string, string> | undefined; oidcCustomization?: { useDefault: boolean; includeClaimKeys?: string[] | undefined; } | undefined; requiredCommitSigning?: boolean | undefined; requiredLinearHistory?: boolean | undefined; customProperties?: Record<string, string> | undefined; subscribe?: boolean | undefined; }, { remoteUrl: string; repoContentsUrl: string; }, "v2">