UNPKG

@halospv3/hce.shared-config

Version:

Automate commit message quality, changelogs, and CI/CD releases. Exports a semantic-release shareable configuration deserialized from this package's '.releaserc.yml'. Shared resources for .NET projects are also distributed with this package.

145 lines (139 loc) 6.16 kB
declare module "@semantic-release/github" { /** * @see https://github.com/semantic-release/github#configuration */ export interface Env extends NodeJS.ProcessEnv { /** * __Required__. The token used to authenticate with GitHub. */ GITHUB_TOKEN?: string, /** * {@inheritDoc GitHubEnv.GITHUB_TOKEN} */ GH_TOKEN?: string, /** * The GitHub server endpoint. */ GITHUB_URL?: string, /** * {@inheritDoc GitHubEnv.GITHUB_URL} */ GH_URL?: string, /** * The GitHub API prefix, relative to {@link Env.GITHUB_URL GITHUB_URL}. */ GITHUB_PREFIX?: string, /** {@inheritDoc GitHubEnv.GITHUB_PREFIX} */ GH_PREFIX?: string, /** * The GitHub API endpoint. Note that this overwrites {@link Env.GITHUB_PREFIX GITHUB_PREFIX}. */ GITHUB_API_URL?: string } /** https://github.com/isaacs/node-glob#glob-primer */ type Glob = string; /** @see https://github.com/semantic-release/github#assets */ interface Asset { /** __Required__. A {@link https://github.com/isaacs/node-glob#glob-primer glob} to identify the files to upload. */ path: Glob, /** * The name of the downloadable file on the GitHub release. * @defaultValue File name extracted from the {@link Asset.path path}. */ name?: string, /** Short description of the file displayed on the GitHub release. */ label?: string } /** @see https://github.com/semantic-release/github#configuration */ export interface Options { /** * The GitHub server endpoint. * @defaultValue {@link Env.GH_URL GH_URL} or {@link Env.GITHUB_URL GITHUB_URL} environment variables. */ githubUrl?: string, /** * The GitHub API prefix, relative to `githubUrl`. * @defaultValue {@link Env.GH_PREFIX GH_PREFIX} or {@link Env.GITHUB_PREFIX GITHUB_PREFIX} environment variables */ githubApiPathPrefix?: string, /** * The GitHub API endpoint. * Note that this overwrites {@link Options.githubApiPathPrefix githubApiPathPrefix}. */ githubApiUrl?: string, /** * The proxy to use to access the GitHub API. * Set to `false` to disable usage of proxy. * See {@link https://github.com/semantic-release/github#proxy proxy}. */ proxy?: string | false, /** * An array of files to upload to the release. * See {@link https://github.com/semantic-release/github#assets assets}. */ assets?: Glob | (Asset | Glob)[], /** * The comment to add to each issue and pull request resolved by the release. * Set to `false` to disable commenting on issues and pull requests. * See {@link https://github.com/semantic-release/github?tab=readme-ov-file#successcomment successComment}. * @defaultValue `:tada: This issue has been resolved in version ${nextRelease.version} :tada:\n\nThe release is available on [GitHub release](<github_release_url>)` */ successComment?: string | false, /** * The content of the issue created when a release fails. * Set to `false` to disable opening an issue when a release fails. * See {@link https://github.com/semantic-release/github?tab=readme-ov-file#failcomment failComment}. * @defaultValue Friendly message with links to semantic-release documentation and support, with the list of errors that caused the release to fail. */ failComment?: string | false, /** * The title of the issue created when a release fails. * Set to `false` to disable opening an issue when a release fails. * @defaultValue `The automated release is failing 🚨` */ failTitle?: string | false, /** * The {@link https://help.github.com/articles/about-labels labels} to add to the issue created when a release fails. * Set to `false` to not add any label. * @default ['semantic-release'] */ labels?: string[] | false, /** * The {@link https://help.github.com/articles/assigning-issues-and-pull-requests-to-other-github-users assignees} to add to the issue created when a release fails. */ assignees?: unknown, /** * The {@link https://help.github.com/articles/about-labels labels} to add to each issue and pull request resolved by the release. * Set to `false` to not add any label. * See {@link https://github.com/semantic-release/github#releasedlabels releasedLabels}. * @default [ 'released<%= nextRelease.channel ? \` on @\${nextRelease.channel}\` : "" %>' ] */ releasedLabels?: string[], /** * Will add release links to the GitHub Release. Can be `false`, `"bottom"` or `"top"`. See {@link https://github.com/semantic-release/github#addReleases addReleases}. * @default false */ addReleases?: false | "bottom" | "top", /** * A boolean indicating if a GitHub Draft Release should be created instead of publishing an actual GitHub Release. * @default false */ draftRelease?: boolean, /** * A {@link https://lodash.com/docs#template Lodash template} to customize the github release's name * @default '<%= nextverison.name %>' */ releaseNameTemplate?: string, /** * A {@link https://lodash.com/docs#template Lodash template} to customize the github release's body * @default '<%= nextverison.notes %>' */ releaseBodyTemplate?: string, /** * The category name in which to create a linked discussion to the release. * Set to `false` to disable creating discussion for a release. * @default false */ discussionCategoryName?: string | false } }