mirror of
https://github.com/taiki-e/install-action.git
synced 2026-04-27 01:20:28 +00:00
Switch to composite action
This commit is contained in:
12
action.yml
12
action.yml
@@ -11,6 +11,14 @@ inputs:
|
|||||||
required: false
|
required: false
|
||||||
default: 'true'
|
default: 'true'
|
||||||
|
|
||||||
|
# Note:
|
||||||
|
# - inputs.* should be manually mapped to INPUT_* due to https://github.com/actions/runner/issues/665
|
||||||
|
# - Use GITHUB_*/RUNNER_* instead of github.*/runner.* due to https://github.com/actions/runner/issues/2185
|
||||||
runs:
|
runs:
|
||||||
using: node16
|
using: composite
|
||||||
main: main.js
|
steps:
|
||||||
|
- run: bash --noprofile --norc "${GITHUB_ACTION_PATH:?}/main.sh"
|
||||||
|
shell: bash
|
||||||
|
env:
|
||||||
|
INPUT_TOOL: ${{ inputs.tool }}
|
||||||
|
INPUT_CHECKSUM: ${{ inputs.checksum }}
|
||||||
|
|||||||
28
main.js
28
main.js
@@ -1,28 +0,0 @@
|
|||||||
// This is a script that just calls the bash script that does the main
|
|
||||||
// processing of the action. It works like a composite action that calls
|
|
||||||
// a single bash script.
|
|
||||||
//
|
|
||||||
// This was originally a trick adopted to make bash script-based actions work
|
|
||||||
// without docker before composite actions were supported. However, due to
|
|
||||||
// various problems with composite actions, this trick is still needed:
|
|
||||||
// - https://github.com/actions/runner/issues/665
|
|
||||||
// - https://github.com/actions/runner/issues/2185
|
|
||||||
// Although there are ways to work around these like cache-cargo-install-action does:
|
|
||||||
// https://github.com/taiki-e/cache-cargo-install-action/blob/v1.0.1/action.yml#L9-L11
|
|
||||||
|
|
||||||
const { execFileSync } = require('child_process');
|
|
||||||
|
|
||||||
function main() {
|
|
||||||
try {
|
|
||||||
execFileSync(
|
|
||||||
'bash',
|
|
||||||
['--noprofile', '--norc', `${__dirname}/main.sh`],
|
|
||||||
{ stdio: 'inherit' }
|
|
||||||
);
|
|
||||||
} catch (e) {
|
|
||||||
console.log(`::error::${e.message}`);
|
|
||||||
process.exit(1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
main();
|
|
||||||
Reference in New Issue
Block a user