github-settings-as-code 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cmd/gh-apply-all.d.mts +3 -0
- package/dist/cmd/gh-apply-all.d.mts.map +1 -0
- package/dist/cmd/gh-apply-all.mjs +10 -0
- package/dist/cmd/gh-apply-all.mjs.map +1 -0
- package/dist/cmd/gh-backup-all.d.mts +3 -0
- package/dist/cmd/gh-backup-all.d.mts.map +1 -0
- package/dist/cmd/gh-backup-all.mjs +9 -0
- package/dist/cmd/gh-backup-all.mjs.map +1 -0
- package/dist/github/constants.d.mts +10 -0
- package/dist/github/constants.d.mts.map +1 -0
- package/dist/github/constants.mjs +12 -0
- package/dist/github/constants.mjs.map +1 -0
- package/dist/github/index.d.mts +5 -0
- package/dist/github/index.d.mts.map +1 -0
- package/dist/github/index.mjs +5 -0
- package/dist/github/index.mjs.map +1 -0
- package/dist/github/octokit.d.mts +3 -0
- package/dist/github/octokit.d.mts.map +1 -0
- package/dist/github/octokit.mjs +5 -0
- package/dist/github/octokit.mjs.map +1 -0
- package/dist/github/repository/api/get-repository.d.mts +4 -0
- package/dist/github/repository/api/get-repository.d.mts.map +1 -0
- package/dist/github/repository/api/get-repository.mjs +21 -0
- package/dist/github/repository/api/get-repository.mjs.map +1 -0
- package/dist/github/repository/api/index.d.mts +3 -0
- package/dist/github/repository/api/index.d.mts.map +1 -0
- package/dist/github/repository/api/index.mjs +3 -0
- package/dist/github/repository/api/index.mjs.map +1 -0
- package/dist/github/repository/api/update-repository.d.mts +5 -0
- package/dist/github/repository/api/update-repository.d.mts.map +1 -0
- package/dist/github/repository/api/update-repository.mjs +36 -0
- package/dist/github/repository/api/update-repository.mjs.map +1 -0
- package/dist/github/repository/apply.d.mts +4 -0
- package/dist/github/repository/apply.d.mts.map +1 -0
- package/dist/github/repository/apply.mjs +65 -0
- package/dist/github/repository/apply.mjs.map +1 -0
- package/dist/github/repository/backup.d.mts +4 -0
- package/dist/github/repository/backup.d.mts.map +1 -0
- package/dist/github/repository/backup.mjs +20 -0
- package/dist/github/repository/backup.mjs.map +1 -0
- package/dist/github/repository/constants.d.mts +7272 -0
- package/dist/github/repository/constants.d.mts.map +1 -0
- package/dist/github/repository/constants.mjs +47 -0
- package/dist/github/repository/constants.mjs.map +1 -0
- package/dist/github/repository/index.d.mts +5 -0
- package/dist/github/repository/index.d.mts.map +1 -0
- package/dist/github/repository/index.mjs +5 -0
- package/dist/github/repository/index.mjs.map +1 -0
- package/dist/github/ruleset/api/create-ruleset.d.mts +5 -0
- package/dist/github/ruleset/api/create-ruleset.d.mts.map +1 -0
- package/dist/github/ruleset/api/create-ruleset.mjs +19 -0
- package/dist/github/ruleset/api/create-ruleset.mjs.map +1 -0
- package/dist/github/ruleset/api/get-all-rulesets.d.mts +4 -0
- package/dist/github/ruleset/api/get-all-rulesets.d.mts.map +1 -0
- package/dist/github/ruleset/api/get-all-rulesets.mjs +23 -0
- package/dist/github/ruleset/api/get-all-rulesets.mjs.map +1 -0
- package/dist/github/ruleset/api/get-ruleset.d.mts +4 -0
- package/dist/github/ruleset/api/get-ruleset.d.mts.map +1 -0
- package/dist/github/ruleset/api/get-ruleset.mjs +22 -0
- package/dist/github/ruleset/api/get-ruleset.mjs.map +1 -0
- package/dist/github/ruleset/api/index.d.mts +5 -0
- package/dist/github/ruleset/api/index.d.mts.map +1 -0
- package/dist/github/ruleset/api/index.mjs +5 -0
- package/dist/github/ruleset/api/index.mjs.map +1 -0
- package/dist/github/ruleset/api/update-ruleset.d.mts +6 -0
- package/dist/github/ruleset/api/update-ruleset.d.mts.map +1 -0
- package/dist/github/ruleset/api/update-ruleset.mjs +20 -0
- package/dist/github/ruleset/api/update-ruleset.mjs.map +1 -0
- package/dist/github/ruleset/apply.d.mts +4 -0
- package/dist/github/ruleset/apply.d.mts.map +1 -0
- package/dist/github/ruleset/apply.mjs +56 -0
- package/dist/github/ruleset/apply.mjs.map +1 -0
- package/dist/github/ruleset/backup.d.mts +4 -0
- package/dist/github/ruleset/backup.d.mts.map +1 -0
- package/dist/github/ruleset/backup.mjs +23 -0
- package/dist/github/ruleset/backup.mjs.map +1 -0
- package/dist/github/ruleset/constants.d.mts +1552 -0
- package/dist/github/ruleset/constants.d.mts.map +1 -0
- package/dist/github/ruleset/constants.mjs +16 -0
- package/dist/github/ruleset/constants.mjs.map +1 -0
- package/dist/github/ruleset/index.d.mts +6 -0
- package/dist/github/ruleset/index.d.mts.map +1 -0
- package/dist/github/ruleset/index.mjs +6 -0
- package/dist/github/ruleset/index.mjs.map +1 -0
- package/dist/github/ruleset/read-rule-set-contents.d.mts +5 -0
- package/dist/github/ruleset/read-rule-set-contents.d.mts.map +1 -0
- package/dist/github/ruleset/read-rule-set-contents.mjs +27 -0
- package/dist/github/ruleset/read-rule-set-contents.mjs.map +1 -0
- package/dist/github/variables/api/create-repo-variable.d.mts +5 -0
- package/dist/github/variables/api/create-repo-variable.d.mts.map +1 -0
- package/dist/github/variables/api/create-repo-variable.mjs +13 -0
- package/dist/github/variables/api/create-repo-variable.mjs.map +1 -0
- package/dist/github/variables/api/index.d.mts +4 -0
- package/dist/github/variables/api/index.d.mts.map +1 -0
- package/dist/github/variables/api/index.mjs +4 -0
- package/dist/github/variables/api/index.mjs.map +1 -0
- package/dist/github/variables/api/list-repo-variables.d.mts +7 -0
- package/dist/github/variables/api/list-repo-variables.d.mts.map +1 -0
- package/dist/github/variables/api/list-repo-variables.mjs +12 -0
- package/dist/github/variables/api/list-repo-variables.mjs.map +1 -0
- package/dist/github/variables/api/update-repo-variable.d.mts +5 -0
- package/dist/github/variables/api/update-repo-variable.d.mts.map +1 -0
- package/dist/github/variables/api/update-repo-variable.mjs +13 -0
- package/dist/github/variables/api/update-repo-variable.mjs.map +1 -0
- package/dist/github/variables/apply.d.mts +5 -0
- package/dist/github/variables/apply.d.mts.map +1 -0
- package/dist/github/variables/apply.mjs +26 -0
- package/dist/github/variables/apply.mjs.map +1 -0
- package/dist/github/variables/index.d.mts +3 -0
- package/dist/github/variables/index.d.mts.map +1 -0
- package/dist/github/variables/index.mjs +3 -0
- package/dist/github/variables/index.mjs.map +1 -0
- package/package.json +8 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gh-apply-all.d.mts","sourceRoot":"","sources":["../../src/cmd/gh-apply-all.mts"],"names":[],"mappings":";AAEA,OAAO,eAAe,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import 'dotenv/config';
|
|
3
|
+
import { applyRepositorySettings, applyRulesets, applyVariables, } from '../github/index.mjs';
|
|
4
|
+
const runApplyAll = async () => {
|
|
5
|
+
await applyVariables();
|
|
6
|
+
await applyRulesets();
|
|
7
|
+
await applyRepositorySettings();
|
|
8
|
+
};
|
|
9
|
+
await runApplyAll();
|
|
10
|
+
//# sourceMappingURL=gh-apply-all.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gh-apply-all.mjs","sourceRoot":"","sources":["../../src/cmd/gh-apply-all.mts"],"names":[],"mappings":";AAEA,OAAO,eAAe,CAAC;AACvB,OAAO,EACL,uBAAuB,EACvB,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,MAAM,WAAW,GAAG,KAAK,IAAmB,EAAE;IAC5C,MAAM,cAAc,EAAE,CAAC;IAEvB,MAAM,aAAa,EAAE,CAAC;IAEtB,MAAM,uBAAuB,EAAE,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,WAAW,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gh-backup-all.d.mts","sourceRoot":"","sources":["../../src/cmd/gh-backup-all.mts"],"names":[],"mappings":";AAEA,OAAO,eAAe,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import 'dotenv/config';
|
|
3
|
+
import { backupRepositorySettings, backupRulesets } from '../github/index.mjs';
|
|
4
|
+
const runBackupAll = async () => {
|
|
5
|
+
await backupRulesets();
|
|
6
|
+
await backupRepositorySettings();
|
|
7
|
+
};
|
|
8
|
+
await runBackupAll();
|
|
9
|
+
//# sourceMappingURL=gh-backup-all.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gh-backup-all.mjs","sourceRoot":"","sources":["../../src/cmd/gh-backup-all.mts"],"names":[],"mappings":";AAEA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE/E,MAAM,YAAY,GAAG,KAAK,IAAmB,EAAE;IAC7C,MAAM,cAAc,EAAE,CAAC;IAEvB,MAAM,wBAAwB,EAAE,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import 'ts-repo-utils';
|
|
2
|
+
export declare const OWNER = "noshiro-pf";
|
|
3
|
+
export declare const REPO: string;
|
|
4
|
+
export declare const repositorySettingsDir: string;
|
|
5
|
+
export declare const repositorySettingsJsonName = "settings.json";
|
|
6
|
+
export declare const rulesetsDir: string;
|
|
7
|
+
export declare const octokitHeaders: {
|
|
8
|
+
readonly 'X-GitHub-Api-Version': "2022-11-28";
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=constants.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.mts","sourceRoot":"","sources":["../../src/github/constants.mts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAGvB,eAAO,MAAM,KAAK,eAAe,CAAC;AAClC,eAAO,MAAM,IAAI,QAAmB,CAAC;AAIrC,eAAO,MAAM,qBAAqB,QAGjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,kBAAkB,CAAC;AAC1D,eAAO,MAAM,WAAW,QAAwC,CAAC;AAEjE,eAAO,MAAM,cAAc;;CAEjB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import 'ts-repo-utils';
|
|
2
|
+
import packageJson from '../../package.json' with { type: 'json' };
|
|
3
|
+
export const OWNER = 'noshiro-pf';
|
|
4
|
+
export const REPO = packageJson.name;
|
|
5
|
+
const githubDir = path.resolve(process.cwd(), './github');
|
|
6
|
+
export const repositorySettingsDir = path.resolve(githubDir, './repository-settings');
|
|
7
|
+
export const repositorySettingsJsonName = 'settings.json';
|
|
8
|
+
export const rulesetsDir = path.resolve(githubDir, './rulesets');
|
|
9
|
+
export const octokitHeaders = {
|
|
10
|
+
'X-GitHub-Api-Version': '2022-11-28',
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=constants.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.mjs","sourceRoot":"","sources":["../../src/github/constants.mts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAEnE,MAAM,CAAC,MAAM,KAAK,GAAG,YAAY,CAAC;AAClC,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;AAErC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAC/C,SAAS,EACT,uBAAuB,CACxB,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,eAAe,CAAC;AAC1D,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAEjE,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,sBAAsB,EAAE,YAAY;CAC5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/github/index.mts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/github/index.mts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"octokit.d.mts","sourceRoot":"","sources":["../../src/github/octokit.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,eAAO,MAAM,OAAO,SAElB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"octokit.mjs","sourceRoot":"","sources":["../../src/github/octokit.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;IACjC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;CAC3C,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-repository.d.mts","sourceRoot":"","sources":["../../../../src/github/repository/api/get-repository.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAqB,MAAM,oBAAoB,CAAC;AAE9E,OAAO,eAAe,CAAC;AAIvB,eAAO,MAAM,qBAAqB,QACtB,OAAO,CAAC,qBAAqB,CAoBtC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { GetRepositoryResponse } from 'octokit-safe-types';
|
|
2
|
+
import { validationErrorsToMessages } from 'ts-fortress';
|
|
3
|
+
import 'ts-repo-utils';
|
|
4
|
+
import { octokitHeaders, OWNER, REPO } from '../../constants.mjs';
|
|
5
|
+
import { octokit } from '../../octokit.mjs';
|
|
6
|
+
export const getRepositorySettings = async () => {
|
|
7
|
+
// https://docs.github.com/ja/rest/repos/repos?apiVersion=2022-11-28#get-a-repository
|
|
8
|
+
const getRepositoryResult = await octokit.request('GET /repos/{owner}/{repo}', {
|
|
9
|
+
owner: OWNER,
|
|
10
|
+
repo: REPO,
|
|
11
|
+
headers: octokitHeaders,
|
|
12
|
+
});
|
|
13
|
+
{
|
|
14
|
+
const res = GetRepositoryResponse.validate(getRepositoryResult.data);
|
|
15
|
+
if (Result.isErr(res)) {
|
|
16
|
+
console.warn(validationErrorsToMessages(res.value));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return GetRepositoryResponse.fill(getRepositoryResult.data);
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=get-repository.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-repository.mjs","sourceRoot":"","sources":["../../../../src/github/repository/api/get-repository.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAqB,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,MAAM,CAAC,MAAM,qBAAqB,GAChC,KAAK,IAAoC,EAAE;IACzC,qFAAqF;IACrF,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,OAAO,CAC/C,2BAAkD,EAClD;QACE,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,cAAc;KACxB,CACF,CAAC;IAEF,CAAC;QACC,MAAM,GAAG,GAAG,qBAAqB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAErE,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,OAAO,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../../src/github/repository/api/index.mts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../src/github/repository/api/index.mts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type UpdateRepositoryRequest } from 'octokit-safe-types';
|
|
2
|
+
export declare const updateRepository: ({ payload: { name, description, homepage, private: private_, visibility, security_and_analysis, has_issues, has_projects, has_wiki, is_template, default_branch, allow_squash_merge, allow_merge_commit, allow_rebase_merge, allow_auto_merge, delete_branch_on_merge, allow_update_branch, use_squash_pr_title_as_default, squash_merge_commit_title, squash_merge_commit_message, merge_commit_title, merge_commit_message, archived, allow_forking, web_commit_signoff_required, }, }: Readonly<{
|
|
3
|
+
payload: UpdateRepositoryRequest;
|
|
4
|
+
}>) => Promise<void>;
|
|
5
|
+
//# sourceMappingURL=update-repository.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-repository.d.mts","sourceRoot":"","sources":["../../../../src/github/repository/api/update-repository.mts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,oBAAoB,CAAC;AAI5B,eAAO,MAAM,gBAAgB,GAAU,0dA4BpC,QAAQ,CAAC;IACV,OAAO,EAAE,uBAAuB,CAAC;CAClC,CAAC,KAAG,OAAO,CAAC,IAAI,CAiChB,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { octokitHeaders, OWNER, REPO } from '../../constants.mjs';
|
|
2
|
+
import { octokit } from '../../octokit.mjs';
|
|
3
|
+
export const updateRepository = async ({ payload: { name, description, homepage, private: private_, visibility, security_and_analysis, has_issues, has_projects, has_wiki, is_template, default_branch, allow_squash_merge, allow_merge_commit, allow_rebase_merge, allow_auto_merge, delete_branch_on_merge, allow_update_branch, use_squash_pr_title_as_default, squash_merge_commit_title, squash_merge_commit_message, merge_commit_title, merge_commit_message, archived, allow_forking, web_commit_signoff_required, }, }) => {
|
|
4
|
+
// https://docs.github.com/ja/rest/repos/repos?apiVersion=2022-11-28#update-a-repository
|
|
5
|
+
await octokit.request('PATCH /repos/{owner}/{repo}', {
|
|
6
|
+
owner: OWNER,
|
|
7
|
+
repo: REPO,
|
|
8
|
+
headers: octokitHeaders,
|
|
9
|
+
name,
|
|
10
|
+
description,
|
|
11
|
+
homepage,
|
|
12
|
+
private: private_,
|
|
13
|
+
visibility,
|
|
14
|
+
security_and_analysis,
|
|
15
|
+
has_issues,
|
|
16
|
+
has_projects,
|
|
17
|
+
has_wiki,
|
|
18
|
+
is_template,
|
|
19
|
+
default_branch,
|
|
20
|
+
allow_squash_merge,
|
|
21
|
+
allow_merge_commit,
|
|
22
|
+
allow_rebase_merge,
|
|
23
|
+
allow_auto_merge,
|
|
24
|
+
delete_branch_on_merge,
|
|
25
|
+
allow_update_branch,
|
|
26
|
+
use_squash_pr_title_as_default,
|
|
27
|
+
squash_merge_commit_title,
|
|
28
|
+
squash_merge_commit_message,
|
|
29
|
+
merge_commit_title,
|
|
30
|
+
merge_commit_message,
|
|
31
|
+
archived,
|
|
32
|
+
allow_forking,
|
|
33
|
+
web_commit_signoff_required,
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=update-repository.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-repository.mjs","sourceRoot":"","sources":["../../../../src/github/repository/api/update-repository.mts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,EACrC,OAAO,EAAE,EACP,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,OAAO,EAAE,QAAQ,EACjB,UAAU,EACV,qBAAqB,EACrB,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,8BAA8B,EAC9B,yBAAyB,EACzB,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,QAAQ,EACR,aAAa,EACb,2BAA2B,GAC5B,GAGD,EAAiB,EAAE;IACnB,wFAAwF;IACxF,MAAM,OAAO,CAAC,OAAO,CAAC,6BAAoD,EAAE;QAC1E,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,cAAc;QAEvB,IAAI;QACJ,WAAW;QACX,QAAQ;QACR,OAAO,EAAE,QAAQ;QACjB,UAAU;QACV,qBAAqB;QACrB,UAAU;QACV,YAAY;QACZ,QAAQ;QACR,WAAW;QACX,cAAc;QACd,kBAAkB;QAClB,kBAAkB;QAClB,kBAAkB;QAClB,gBAAgB;QAChB,sBAAsB;QACtB,mBAAmB;QACnB,8BAA8B;QAC9B,yBAAyB;QACzB,2BAA2B;QAC3B,kBAAkB;QAClB,oBAAoB;QACpB,QAAQ;QACR,aAAa;QACb,2BAA2B;KAC5B,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apply.d.mts","sourceRoot":"","sources":["../../../src/github/repository/apply.mts"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC;AAiBvB,eAAO,MAAM,uBAAuB,QAAa,OAAO,CAAC,IAAI,CA0D5D,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import 'dotenv/config';
|
|
3
|
+
import { Obj } from 'ts-data-forge';
|
|
4
|
+
import { validationErrorsToMessages } from 'ts-fortress';
|
|
5
|
+
import { formatUncommittedFiles } from 'ts-repo-utils';
|
|
6
|
+
import { repositorySettingsDir, repositorySettingsJsonName, } from '../constants.mjs';
|
|
7
|
+
import { getRepositorySettings, updateRepository } from './api/index.mjs';
|
|
8
|
+
import { backupRepositorySettings } from './backup.mjs';
|
|
9
|
+
import { repositoryKeysToPick, RepositoryPicked, } from './constants.mjs';
|
|
10
|
+
export const applyRepositorySettings = async () => {
|
|
11
|
+
await backupRepositorySettings(false);
|
|
12
|
+
const settings = await readSettings();
|
|
13
|
+
await updateRepository({
|
|
14
|
+
payload: {
|
|
15
|
+
// name: settings.name,
|
|
16
|
+
// description: settings.description ?? undefined,
|
|
17
|
+
// homepage: settings.homepage ?? undefined,
|
|
18
|
+
// private: settings.private,
|
|
19
|
+
// visibility: settings.visibility === 'public' ? 'public' : 'private',
|
|
20
|
+
security_and_analysis: settings.security_and_analysis,
|
|
21
|
+
has_issues: settings.has_issues,
|
|
22
|
+
has_projects: settings.has_projects,
|
|
23
|
+
has_wiki: settings.has_wiki,
|
|
24
|
+
// is_template: settings.is_template,
|
|
25
|
+
// default_branch: settings.default_branch,
|
|
26
|
+
allow_squash_merge: settings.allow_squash_merge,
|
|
27
|
+
allow_merge_commit: settings.allow_merge_commit,
|
|
28
|
+
allow_rebase_merge: settings.allow_rebase_merge,
|
|
29
|
+
allow_auto_merge: settings.allow_auto_merge,
|
|
30
|
+
delete_branch_on_merge: settings.delete_branch_on_merge,
|
|
31
|
+
allow_update_branch: settings.allow_update_branch,
|
|
32
|
+
use_squash_pr_title_as_default: settings.use_squash_pr_title_as_default,
|
|
33
|
+
squash_merge_commit_title: settings.squash_merge_commit_title,
|
|
34
|
+
squash_merge_commit_message: settings.squash_merge_commit_message,
|
|
35
|
+
merge_commit_title: settings.merge_commit_title,
|
|
36
|
+
merge_commit_message: settings.merge_commit_message,
|
|
37
|
+
// archived: settings.archived,
|
|
38
|
+
// NOTE: "RequestError [HttpError]: Allow forks can only be changed on org-owned repositories"
|
|
39
|
+
// allow_forking: settings.allow_forking,
|
|
40
|
+
web_commit_signoff_required: settings.web_commit_signoff_required,
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
// update local setting file
|
|
44
|
+
{
|
|
45
|
+
const repositorySettings = await getRepositorySettings();
|
|
46
|
+
const str = JSON.stringify(Obj.pick(repositorySettings, repositoryKeysToPick), undefined, 2);
|
|
47
|
+
await fs.writeFile(path.resolve(repositorySettingsDir, repositorySettingsJsonName), str);
|
|
48
|
+
await fs.writeFile(path.resolve(repositorySettingsDir, 'bk', repositorySettingsJsonName), str);
|
|
49
|
+
await formatUncommittedFiles();
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
const readSettings = async () => {
|
|
53
|
+
const settingsText = await fs.readFile(path.resolve(repositorySettingsDir, repositorySettingsJsonName), {
|
|
54
|
+
encoding: 'utf8',
|
|
55
|
+
});
|
|
56
|
+
const validationResult = RepositoryPicked.validate(JSON.parse(settingsText));
|
|
57
|
+
if (Result.isErr(validationResult)) {
|
|
58
|
+
throw new Error(validationErrorsToMessages(validationResult.value).join('\n'));
|
|
59
|
+
}
|
|
60
|
+
return validationResult.value;
|
|
61
|
+
};
|
|
62
|
+
if (isDirectlyExecuted(import.meta.url)) {
|
|
63
|
+
await applyRepositorySettings();
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=apply.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apply.mjs","sourceRoot":"","sources":["../../../src/github/repository/apply.mts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup.d.mts","sourceRoot":"","sources":["../../../src/github/repository/backup.mts"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC;AAYvB,eAAO,MAAM,wBAAwB,GACnC,MAAK,OAAc,KAClB,OAAO,CAAC,IAAI,CAiBd,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import 'dotenv/config';
|
|
3
|
+
import { Obj } from 'ts-data-forge';
|
|
4
|
+
import { formatUncommittedFiles, makeEmptyDir } from 'ts-repo-utils';
|
|
5
|
+
import { repositorySettingsDir, repositorySettingsJsonName, } from '../constants.mjs';
|
|
6
|
+
import { getRepositorySettings } from './api/index.mjs';
|
|
7
|
+
import { repositoryKeysToPick } from './constants.mjs';
|
|
8
|
+
const backupDir = path.resolve(repositorySettingsDir, './bk');
|
|
9
|
+
export const backupRepositorySettings = async (fmt = true) => {
|
|
10
|
+
await makeEmptyDir(backupDir);
|
|
11
|
+
const repositorySettings = await getRepositorySettings();
|
|
12
|
+
await fs.writeFile(path.resolve(backupDir, repositorySettingsJsonName), JSON.stringify(Obj.pick(repositorySettings, repositoryKeysToPick), undefined, 2));
|
|
13
|
+
if (fmt) {
|
|
14
|
+
await formatUncommittedFiles();
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
if (isDirectlyExecuted(import.meta.url)) {
|
|
18
|
+
await backupRepositorySettings();
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=backup.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup.mjs","sourceRoot":"","sources":["../../../src/github/repository/backup.mts"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEvD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AAE9D,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAC3C,MAAe,IAAI,EACJ,EAAE;IACjB,MAAM,YAAY,CAAC,SAAS,CAAC,CAAC;IAE9B,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAEzD,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,0BAA0B,CAAC,EACnD,IAAI,CAAC,SAAS,CACZ,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,EAClD,SAAS,EACT,CAAC,CACF,CACF,CAAC;IAEF,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,sBAAsB,EAAE,CAAC;IACjC,CAAC;AACH,CAAC,CAAC;AAEF,IAAI,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IACxC,MAAM,wBAAwB,EAAE,CAAC;AACnC,CAAC"}
|