mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-08-22 16:02:24 +00:00
ba4b368706
* fix: prevent variable push from corrupting is_secret variables Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * test(cli): unit-test looksLikeWorkspaceCiphertext shape detection Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(cli): scope is_secret downgrade to single-file push, not sync push Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(cli): warn when variable push stores a secret value as already-encrypted Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(cli): route workspace-resolution and auth diagnostics to stderr Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * docs(cli): rephrase comments to describe current behavior, not history Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
47 lines
1.3 KiB
TypeScript
47 lines
1.3 KiB
TypeScript
let logLevel: "DEBUG" | "INFO" | "WARN" | "ERROR" = "INFO";
|
|
let silentMode = false;
|
|
|
|
const levels = { DEBUG: 0, INFO: 1, WARN: 2, ERROR: 3 };
|
|
|
|
export function setup(level: "DEBUG" | "INFO" | "WARN" | "ERROR") {
|
|
logLevel = level;
|
|
}
|
|
|
|
export function setSilent(silent: boolean) {
|
|
silentMode = silent;
|
|
}
|
|
|
|
export function debug(msg: unknown) {
|
|
if (levels[logLevel] <= levels.DEBUG)
|
|
console.log(`\x1b[90m${String(msg)}\x1b[39m`);
|
|
}
|
|
|
|
export function info(msg: unknown) {
|
|
if (silentMode) return;
|
|
console.log(`\x1b[34m${String(msg)}\x1b[39m`);
|
|
}
|
|
|
|
// Like `info` but written to stderr, for diagnostics (e.g. the workspace-profile
|
|
// banner printed on every command) that must not pollute stdout when a command's
|
|
// data output is piped or redirected (e.g. `wmill variable get path > file`).
|
|
export function infoStderr(msg: unknown) {
|
|
if (silentMode) return;
|
|
console.error(`\x1b[34m${String(msg)}\x1b[39m`);
|
|
}
|
|
|
|
export function warn(msg: unknown) {
|
|
if (silentMode) return;
|
|
console.log(`\x1b[33m${String(msg)}\x1b[39m`);
|
|
}
|
|
|
|
// Like `warn` but written to stderr; see `infoStderr` for why diagnostics must
|
|
// not land on stdout.
|
|
export function warnStderr(msg: unknown) {
|
|
if (silentMode) return;
|
|
console.error(`\x1b[33m${String(msg)}\x1b[39m`);
|
|
}
|
|
|
|
export function error(msg: unknown) {
|
|
console.error(`\x1b[31m${String(msg)}\x1b[39m`);
|
|
}
|