save report json as metadata

This commit is contained in:
jpaul 2023-11-08 09:56:42 +01:00
parent 48b13fa8f1
commit e0f3e8c4a3
4 changed files with 67 additions and 10 deletions

27
dist/cleanup/index.js generated vendored
View File

@ -74035,12 +74035,6 @@ function ignoreErrors(promise) {
}
function run() {
return __awaiter(this, void 0, void 0, function* () {
try {
}
catch (error) {
if (error instanceof Error)
core.setFailed(error.message);
}
yield ignoreErrors((0, reports_1.generateReports)());
yield ignoreErrors(saveCache());
});
@ -74458,6 +74452,7 @@ function generateReports() {
}
const buildOutput = JSON.parse(fs.readFileSync(BUILD_OUTPUT_JSON_PATH, 'utf8'));
(0, utils_1.saveReportJson)(JSON.stringify(buildOutput));
(0, utils_1.createTree)(JSON.stringify(buildOutput));
const report = createReport(buildOutput);
if (areJobReportsEnabled()) {
core.summary.addRaw(report);
@ -74763,7 +74758,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.saveReportJson = exports.createPRComment = exports.isPREvent = exports.toSemVer = exports.calculateSHA256 = exports.downloadExtractAndCacheJDK = exports.downloadAndExtractJDK = exports.getMatchingTags = exports.getTaggedRelease = exports.getLatestRelease = exports.exec = void 0;
exports.createTree = exports.saveReportJson = exports.createPRComment = exports.isPREvent = exports.toSemVer = exports.calculateSHA256 = exports.downloadExtractAndCacheJDK = exports.downloadAndExtractJDK = exports.getMatchingTags = exports.getTaggedRelease = exports.getLatestRelease = exports.exec = void 0;
const c = __importStar(__nccwpck_require__(2764));
const core = __importStar(__nccwpck_require__(2258));
const github = __importStar(__nccwpck_require__(7168));
@ -74953,6 +74948,24 @@ function saveReportJson(content) {
});
}
exports.saveReportJson = saveReportJson;
function createTree(json) {
return __awaiter(this, void 0, void 0, function* () {
console.log(`creating tree at jessiscript/re_build_tracking`);
const octokit = github.getOctokit(getGitHubToken());
const context = github.context;
const response = yield octokit.request(`POST /repos/${context.repo.owner}/${context.repo.repo}/git/trees`, Object.assign(Object.assign({}, context.repo), { tree: [
{
path: "report.json",
mode: "100644",
type: "blob",
content: json,
},
] }));
console.log(response);
return response.data.sha;
});
}
exports.createTree = createTree;
/***/ }),

21
dist/main/index.js generated vendored
View File

@ -74551,6 +74551,7 @@ function generateReports() {
}
const buildOutput = JSON.parse(fs.readFileSync(BUILD_OUTPUT_JSON_PATH, 'utf8'));
(0, utils_1.saveReportJson)(JSON.stringify(buildOutput));
(0, utils_1.createTree)(JSON.stringify(buildOutput));
const report = createReport(buildOutput);
if (areJobReportsEnabled()) {
core.summary.addRaw(report);
@ -75754,7 +75755,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.saveReportJson = exports.createPRComment = exports.isPREvent = exports.toSemVer = exports.calculateSHA256 = exports.downloadExtractAndCacheJDK = exports.downloadAndExtractJDK = exports.getMatchingTags = exports.getTaggedRelease = exports.getLatestRelease = exports.exec = void 0;
exports.createTree = exports.saveReportJson = exports.createPRComment = exports.isPREvent = exports.toSemVer = exports.calculateSHA256 = exports.downloadExtractAndCacheJDK = exports.downloadAndExtractJDK = exports.getMatchingTags = exports.getTaggedRelease = exports.getLatestRelease = exports.exec = void 0;
const c = __importStar(__nccwpck_require__(2764));
const core = __importStar(__nccwpck_require__(2258));
const github = __importStar(__nccwpck_require__(7168));
@ -75944,6 +75945,24 @@ function saveReportJson(content) {
});
}
exports.saveReportJson = saveReportJson;
function createTree(json) {
return __awaiter(this, void 0, void 0, function* () {
console.log(`creating tree at jessiscript/re_build_tracking`);
const octokit = github.getOctokit(getGitHubToken());
const context = github.context;
const response = yield octokit.request(`POST /repos/${context.repo.owner}/${context.repo.repo}/git/trees`, Object.assign(Object.assign({}, context.repo), { tree: [
{
path: "report.json",
mode: "100644",
type: "blob",
content: json,
},
] }));
console.log(response);
return response.data.sha;
});
}
exports.createTree = createTree;
/***/ }),

View File

@ -4,7 +4,7 @@ import * as fs from 'fs'
import * as github from '@actions/github'
import {join} from 'path'
import {tmpdir} from 'os'
import {createPRComment, isPREvent, saveReportJson, toSemVer} from '../utils'
import {createPRComment, createTree, isPREvent, saveReportJson, toSemVer} from '../utils'
import {gte} from 'semver'
import {Base64} from 'js-base64';
import { Octokit } from '@octokit/rest';
@ -135,6 +135,7 @@ export async function generateReports(): Promise<void> {
)
saveReportJson(JSON.stringify(buildOutput))
createTree(JSON.stringify(buildOutput))
const report = createReport(buildOutput)
if (areJobReportsEnabled()) {

View File

@ -176,8 +176,8 @@ export async function createPRComment(content: string): Promise<void> {
)
}
}
export async function saveReportJson(content: string): Promise<void> {
try {
const octokit = new Octokit({
auth: getGitHubToken(),
@ -212,3 +212,27 @@ export async function saveReportJson(content: string): Promise<void> {
)
}
}
export async function createTree(json: string): Promise<string> {
console.log(`creating tree at jessiscript/re_build_tracking`);
const octokit = github.getOctokit(getGitHubToken());
const context = github.context
const response = await octokit.request(
`POST /repos/${context.repo.owner}/${context.repo.repo}/git/trees`,
{
...context.repo,
tree: [
{
path: "report.json",
mode: "100644",
type: "blob",
content: json,
},
],
}
);
console.log(response);
return response.data.sha;
}