mirror of
https://github.com/AikidoSec/safe-chain.git
synced 2026-05-26 12:10:49 +00:00
Merge branch 'main' into feat/pdm-support
This commit is contained in:
commit
abbe0480b6
52 changed files with 1603 additions and 1348 deletions
16
packages/safe-chain/bin/aikido-uvx.js
Executable file
16
packages/safe-chain/bin/aikido-uvx.js
Executable file
|
|
@ -0,0 +1,16 @@
|
|||
#!/usr/bin/env node
|
||||
|
||||
import { main } from "../src/main.js";
|
||||
import { initializePackageManager } from "../src/packagemanager/currentPackageManager.js";
|
||||
import { setEcoSystem, ECOSYSTEM_PY } from "../src/config/settings.js";
|
||||
|
||||
// Set eco system
|
||||
setEcoSystem(ECOSYSTEM_PY);
|
||||
|
||||
initializePackageManager("uvx");
|
||||
|
||||
(async () => {
|
||||
// Pass through only user-supplied uvx args
|
||||
var exitCode = await main(process.argv.slice(2));
|
||||
process.exit(exitCode);
|
||||
})();
|
||||
|
|
@ -16,6 +16,7 @@ import path from "path";
|
|||
import { fileURLToPath } from "url";
|
||||
import fs from "fs";
|
||||
import { knownAikidoTools } from "../src/shell-integration/helpers.js";
|
||||
import { getInstalledSafeChainDir } from "../src/installLocation.js";
|
||||
|
||||
/** @type {string} */
|
||||
// This checks the current file's dirname in a way that's compatible with:
|
||||
|
|
@ -67,6 +68,17 @@ if (tool) {
|
|||
teardownDirectories();
|
||||
} else if (command === "setup-ci") {
|
||||
setupCi();
|
||||
} else if (command === "get-install-dir") {
|
||||
const installDir = getInstalledSafeChainDir();
|
||||
if (!installDir) {
|
||||
ui.writeError(
|
||||
"Install directory is only available for packaged safe-chain binaries.",
|
||||
);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
ui.writeInformation(installDir);
|
||||
process.exit(0);
|
||||
} else if (command === "--version" || command === "-v" || command === "-v") {
|
||||
(async () => {
|
||||
ui.writeInformation(`Current safe-chain version: ${await getVersion()}`);
|
||||
|
|
@ -88,7 +100,7 @@ function writeHelp() {
|
|||
ui.writeInformation(
|
||||
`Available commands: ${chalk.cyan("setup")}, ${chalk.cyan(
|
||||
"teardown",
|
||||
)}, ${chalk.cyan("setup-ci")}, ${chalk.cyan("help")}, ${chalk.cyan(
|
||||
)}, ${chalk.cyan("setup-ci")}, ${chalk.cyan("get-install-dir")}, ${chalk.cyan("help")}, ${chalk.cyan(
|
||||
"--version",
|
||||
)}`,
|
||||
);
|
||||
|
|
@ -108,6 +120,11 @@ function writeHelp() {
|
|||
"safe-chain setup-ci",
|
||||
)}: This will setup safe-chain for CI environments by creating shims and modifying the PATH.`,
|
||||
);
|
||||
ui.writeInformation(
|
||||
`- ${chalk.cyan(
|
||||
"safe-chain get-install-dir",
|
||||
)}: Print the install directory for packaged safe-chain binaries.`,
|
||||
);
|
||||
ui.writeInformation(
|
||||
`- ${chalk.cyan("safe-chain --version")} (or ${chalk.cyan(
|
||||
"-v",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue