Add post hook support

Signed-off-by: Xuanwo <github@xuanwo.io>
This commit is contained in:
Xuanwo
2023-01-11 11:05:43 +08:00
parent a3137a0ec8
commit 0b2476c151
7 changed files with 44 additions and 6843 deletions

View File

@@ -8,7 +8,8 @@ inputs:
required: true
runs:
using: "node16"
main: "dist/index.js"
main: "dist/setup/index.js"
post: "dist/show_stats/index.js"
branding:
icon: "star"
color: "orange"

6838
dist/index.js vendored

File diff suppressed because it is too large Load Diff

1
dist/setup/index.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/show_stats/index.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@@ -2,11 +2,10 @@
"name": "sccache-action",
"version": "0.0.1",
"description": "Github Action for Sccache",
"main": "dist/index.js",
"main": "dist/setup/index.js",
"scripts": {
"tsc": "tsc",
"ncc": "ncc build lib/sccache.js",
"build": "prettier --write **/*.ts && tsc && ncc build lib/sccache.js",
"build-dist": "ncc build lib/setup.js -m -o dist/setup/ && ncc build lib/setup.js -m -o dist/show_stats",
"build": "prettier --write **/*.ts && tsc && npm run build-dist",
"format": "prettier --write **/*.ts",
"format-check": "prettier --check **/*.ts",
"lint": "eslint **/*.ts --cache",

37
src/show_stats.ts Normal file
View File

@@ -0,0 +1,37 @@
// Copyright 2023 Mozilla Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
import * as core from '@actions/core';
import {exec} from 'child_process';
async function show_stats() {
// Start hdfs daemon.
exec(
`${process.env.SCCACHE_PATH} --show-stats`,
(err: any, stdout: any, stderr: any) => {
core.info(stdout);
core.warning(stderr);
if (err) {
core.error('failed to show sccache stats');
throw new Error(err);
}
}
);
}
show_stats().catch(err => {
core.error(err);
core.setFailed(err.message);
});