Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | 3x 3x 3x | import type { PublishContext, GlobalConfig, VerifyConditionsContext } from 'semantic-release';
import { Forgejo } from './services/forgejo';
import { defined } from './utils/guards';
export type PluginConfig = Pick<GlobalConfig, 'branches' | 'repositoryUrl' | 'tagFormat' | 'dryRun'> & {
forgejoUrl?: string;
forgejoToken?: string;
assets?: (string | Forgejo.ReleaseAsset)[];
draftRelease?: boolean;
};
export type Config = {
forgejoUrl: string;
forgejoToken: string;
assets: (string | Forgejo.ReleaseAsset)[];
slug?: string;
owner?: string;
repositoryName?: string;
draftRelease: boolean;
};
export default function resolveConfig(
{ forgejoUrl, forgejoToken, assets, draftRelease }: PluginConfig,
{ env }: PublishContext | VerifyConditionsContext
): Config {
const slug = env.FORGEJO_REPOSITORY;
const [owner, repositoryName] = slug?.split('/') ?? [];
return {
forgejoUrl: forgejoUrl ?? env.FORGEJO_URL,
forgejoToken: forgejoToken ?? env.FORGEJO_TOKEN,
assets: assets ?? [],
slug,
owner,
repositoryName,
draftRelease: defined(draftRelease) ? draftRelease : false,
};
}
|