chore: base
This commit is contained in:
22
dist/utils/install.js
vendored
Normal file
22
dist/utils/install.js
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
import { cacheDir, downloadTool, extractZip, find } from '@actions/tool-cache';
|
||||
import { addPath, info } from '@actions/core';
|
||||
import getAsset from './getAsset.js';
|
||||
import getHomeDir from './getHomeDir.js';
|
||||
import { join } from 'path';
|
||||
export default async (release) => {
|
||||
const cache = find('bun', release.tag_name);
|
||||
if (cache) {
|
||||
info(`Using cached Bun installation from ${cache}.`);
|
||||
addPath(cache);
|
||||
return;
|
||||
}
|
||||
const asset = getAsset(release.assets);
|
||||
info(`Downloading Bun from ${asset.browser_download_url}.`);
|
||||
const zipPath = await downloadTool(asset.browser_download_url);
|
||||
const extracted = await extractZip(zipPath);
|
||||
const newCache = await cacheDir(extracted, 'bun', release.tag_name);
|
||||
info(`Cached Bun to ${newCache}.`);
|
||||
addPath(newCache);
|
||||
const bunPath = join(getHomeDir(), ".bun", "bin");
|
||||
addPath(bunPath);
|
||||
};
|
||||
Reference in New Issue
Block a user