* Create dependabot.yml * Bump actions/checkout from 2 to 3 Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v3) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Update to node16 * Bump @types/node from 12.12.24 to 18.11.9 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 12.12.24 to 18.11.9. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump glob and @types/glob Bumps [glob](https://github.com/isaacs/node-glob) and [@types/glob](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/glob). These dependencies needed to be updated together. Updates `glob` from 7.1.6 to 8.0.3 - [Release notes](https://github.com/isaacs/node-glob/releases) - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v7.1.6...v8.0.3) Updates `@types/glob` from 7.1.1 to 8.0.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/glob) --- updated-dependencies: - dependency-name: glob dependency-type: direct:production update-type: version-update:semver-major - dependency-name: "@types/glob" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump @actions/github from 5.0.0 to 5.1.1 Bumps [@actions/github](https://github.com/actions/toolkit/tree/HEAD/packages/github) from 5.0.0 to 5.1.1. - [Release notes](https://github.com/actions/toolkit/releases) - [Changelog](https://github.com/actions/toolkit/blob/main/packages/github/RELEASES.md) - [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/github) --- updated-dependencies: - dependency-name: "@actions/github" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ts-jest from 24.2.0 to 24.3.0 Bumps [ts-jest](https://github.com/kulshekhar/ts-jest) from 24.2.0 to 24.3.0. - [Release notes](https://github.com/kulshekhar/ts-jest/releases) - [Changelog](https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md) - [Commits](https://github.com/kulshekhar/ts-jest/compare/v24.2.0...v24.3.0) --- updated-dependencies: - dependency-name: ts-jest dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump prettier from 1.19.1 to 2.7.1 Bumps [prettier](https://github.com/prettier/prettier) from 1.19.1 to 2.7.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/1.19.1...2.7.1) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump @octokit/plugin-retry from 3.0.9 to 4.0.3 Bumps [@octokit/plugin-retry](https://github.com/octokit/plugin-retry.js) from 3.0.9 to 4.0.3. - [Release notes](https://github.com/octokit/plugin-retry.js/releases) - [Commits](https://github.com/octokit/plugin-retry.js/compare/v3.0.9...v4.0.3) --- updated-dependencies: - dependency-name: "@octokit/plugin-retry" dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Resolve conflicts * Resolve conflicts * Resolve conflicts * Bump mime and @types/mime Bumps [mime](https://github.com/broofa/mime) and [@types/mime](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mime). These dependencies needed to be updated together. Updates `mime` from 2.4.4 to 3.0.0 - [Release notes](https://github.com/broofa/mime/releases) - [Changelog](https://github.com/broofa/mime/blob/main/CHANGELOG.md) - [Commits](https://github.com/broofa/mime/compare/v2.4.4...v3.0.0) Updates `@types/mime` from 2.0.1 to 3.0.1 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mime) --- updated-dependencies: - dependency-name: mime dependency-type: direct:production update-type: version-update:semver-major - dependency-name: "@types/mime" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump @octokit/plugin-throttling from 3.7.0 to 4.3.2 Bumps [@octokit/plugin-throttling](https://github.com/octokit/plugin-throttling.js) from 3.7.0 to 4.3.2. - [Release notes](https://github.com/octokit/plugin-throttling.js/releases) - [Commits](https://github.com/octokit/plugin-throttling.js/compare/v3.7.0...v4.3.2) --- updated-dependencies: - dependency-name: "@octokit/plugin-throttling" dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump @zeit/ncc from 0.21.1 to 0.22.3 Bumps [@zeit/ncc](https://github.com/zeit/ncc) from 0.21.1 to 0.22.3. - [Release notes](https://github.com/zeit/ncc/releases) - [Commits](https://github.com/zeit/ncc/compare/0.21.1...0.22.3) --- updated-dependencies: - dependency-name: "@zeit/ncc" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Update dependabot.yml * Update dependabot.yml * Regenerate package-lock.json and dist folder * Update * Bump typescript from 3.9.10 to 4.8.4 Bumps [typescript](https://github.com/Microsoft/TypeScript) from 3.9.10 to 4.8.4. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v3.9.10...v4.8.4) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Resolve conflicts * Bump jest-circus from 24.9.0 to 29.2.2 Bumps [jest-circus](https://github.com/facebook/jest/tree/HEAD/packages/jest-circus) from 24.9.0 to 29.2.2. - [Release notes](https://github.com/facebook/jest/releases) - [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/jest/commits/v29.2.2/packages/jest-circus) --- updated-dependencies: - dependency-name: jest-circus dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Resolve conflicts * Resolve conflicts * Resolve conflicts * Resolve conflicts * Bump @types/jest from 24.9.1 to 29.2.2 Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 24.9.1 to 29.2.2. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest) --- updated-dependencies: - dependency-name: "@types/jest" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Update main.yml * Bump jest-circus from 29.3.0 to 29.3.1 Bumps [jest-circus](https://github.com/facebook/jest/tree/HEAD/packages/jest-circus) from 29.3.0 to 29.3.1. - [Release notes](https://github.com/facebook/jest/releases) - [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/jest/commits/v29.3.1/packages/jest-circus) --- updated-dependencies: - dependency-name: jest-circus dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> * Bump jest from 29.3.0 to 29.3.1 Bumps [jest](https://github.com/facebook/jest/tree/HEAD/packages/jest) from 29.3.0 to 29.3.1. - [Release notes](https://github.com/facebook/jest/releases) - [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/jest/commits/v29.3.1/packages/jest) --- updated-dependencies: - dependency-name: jest dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
97 lines
2.9 KiB
TypeScript
97 lines
2.9 KiB
TypeScript
import * as glob from "glob";
|
|
import { statSync, readFileSync } from "fs";
|
|
|
|
export interface Config {
|
|
github_token: string;
|
|
github_ref: string;
|
|
github_repository: string;
|
|
// user provided
|
|
input_name?: string;
|
|
input_tag_name?: string;
|
|
input_repository?: string;
|
|
input_body?: string;
|
|
input_body_path?: string;
|
|
input_files?: string[];
|
|
input_draft?: boolean;
|
|
input_prerelease?: boolean;
|
|
input_fail_on_unmatched_files?: boolean;
|
|
input_target_commitish?: string;
|
|
input_discussion_category_name?: string;
|
|
input_generate_release_notes?: boolean;
|
|
input_append_body?: boolean;
|
|
}
|
|
|
|
export const uploadUrl = (url: string): string => {
|
|
const templateMarkerPos = url.indexOf("{");
|
|
if (templateMarkerPos > -1) {
|
|
return url.substring(0, templateMarkerPos);
|
|
}
|
|
return url;
|
|
};
|
|
|
|
export const releaseBody = (config: Config): string | undefined => {
|
|
return (
|
|
(config.input_body_path &&
|
|
readFileSync(config.input_body_path).toString("utf8")) ||
|
|
config.input_body
|
|
);
|
|
};
|
|
|
|
type Env = { [key: string]: string | undefined };
|
|
|
|
export const parseInputFiles = (files: string): string[] => {
|
|
return files.split(/\r?\n/).reduce<string[]>(
|
|
(acc, line) =>
|
|
acc
|
|
.concat(line.split(","))
|
|
.filter((pat) => pat)
|
|
.map((pat) => pat.trim()),
|
|
[]
|
|
);
|
|
};
|
|
|
|
export const parseConfig = (env: Env): Config => {
|
|
return {
|
|
github_token: env.GITHUB_TOKEN || env.INPUT_TOKEN || "",
|
|
github_ref: env.GITHUB_REF || "",
|
|
github_repository: env.INPUT_REPOSITORY || env.GITHUB_REPOSITORY || "",
|
|
input_name: env.INPUT_NAME,
|
|
input_tag_name: env.INPUT_TAG_NAME?.trim(),
|
|
input_body: env.INPUT_BODY,
|
|
input_body_path: env.INPUT_BODY_PATH,
|
|
input_files: parseInputFiles(env.INPUT_FILES || ""),
|
|
input_draft: env.INPUT_DRAFT ? env.INPUT_DRAFT === "true" : undefined,
|
|
input_prerelease: env.INPUT_PRERELEASE
|
|
? env.INPUT_PRERELEASE == "true"
|
|
: undefined,
|
|
input_fail_on_unmatched_files: env.INPUT_FAIL_ON_UNMATCHED_FILES == "true",
|
|
input_target_commitish: env.INPUT_TARGET_COMMITISH || undefined,
|
|
input_discussion_category_name:
|
|
env.INPUT_DISCUSSION_CATEGORY_NAME || undefined,
|
|
input_generate_release_notes: env.INPUT_GENERATE_RELEASE_NOTES == "true",
|
|
input_append_body: env.INPUT_APPEND_BODY == "true",
|
|
};
|
|
};
|
|
|
|
export const paths = (patterns: string[]): string[] => {
|
|
return patterns.reduce((acc: string[], pattern: string): string[] => {
|
|
return acc.concat(
|
|
glob.sync(pattern).filter((path) => statSync(path).isFile())
|
|
);
|
|
}, []);
|
|
};
|
|
|
|
export const unmatchedPatterns = (patterns: string[]): string[] => {
|
|
return patterns.reduce((acc: string[], pattern: string): string[] => {
|
|
return acc.concat(
|
|
glob.sync(pattern).filter((path) => statSync(path).isFile()).length == 0
|
|
? [pattern]
|
|
: []
|
|
);
|
|
}, []);
|
|
};
|
|
|
|
export const isTag = (ref: string): boolean => {
|
|
return ref.startsWith("refs/tags/");
|
|
};
|