diff --git a/README.md b/README.md index 8d5a8a7..24d2c1e 100644 --- a/README.md +++ b/README.md @@ -102,13 +102,13 @@ homelab-deploy deploy deploy.prod.role.dns \ #### Deploy Flags -| Flag | Required | Description | -|------|----------|-------------| -| `--nats-url` | Yes | NATS server URL | -| `--nkey-file` | Yes | Path to NKey seed file | -| `--branch` | No | Git branch or commit (default: `master`) | -| `--action` | No | nixos-rebuild action (default: `switch`) | -| `--timeout` | No | Response timeout in seconds (default: 900) | +| Flag | Required | Env Var | Description | +|------|----------|---------|-------------| +| `--nats-url` | Yes | `HOMELAB_DEPLOY_NATS_URL` | NATS server URL | +| `--nkey-file` | Yes | `HOMELAB_DEPLOY_NKEY_FILE` | Path to NKey seed file | +| `--branch` | No | `HOMELAB_DEPLOY_BRANCH` | Git branch or commit (default: `master`) | +| `--action` | No | `HOMELAB_DEPLOY_ACTION` | nixos-rebuild action (default: `switch`) | +| `--timeout` | No | `HOMELAB_DEPLOY_TIMEOUT` | Response timeout in seconds (default: 900) | #### Subject Aliases diff --git a/cmd/homelab-deploy/main.go b/cmd/homelab-deploy/main.go index 5f019ff..ffcd472 100644 --- a/cmd/homelab-deploy/main.go +++ b/cmd/homelab-deploy/main.go @@ -16,7 +16,7 @@ import ( "github.com/urfave/cli/v3" ) -const version = "0.1.1" +const version = "0.1.2" func main() { app := &cli.Command{ @@ -189,27 +189,32 @@ func deployCommand() *cli.Command { &cli.StringFlag{ Name: "nats-url", Usage: "NATS server URL", + Sources: cli.EnvVars("HOMELAB_DEPLOY_NATS_URL"), Required: true, }, &cli.StringFlag{ Name: "nkey-file", Usage: "Path to NKey seed file for NATS authentication", + Sources: cli.EnvVars("HOMELAB_DEPLOY_NKEY_FILE"), Required: true, }, &cli.StringFlag{ - Name: "branch", - Usage: "Git branch or commit to deploy", - Value: "master", + Name: "branch", + Usage: "Git branch or commit to deploy", + Sources: cli.EnvVars("HOMELAB_DEPLOY_BRANCH"), + Value: "master", }, &cli.StringFlag{ - Name: "action", - Usage: "nixos-rebuild action (switch, boot, test, dry-activate)", - Value: "switch", + Name: "action", + Usage: "nixos-rebuild action (switch, boot, test, dry-activate)", + Sources: cli.EnvVars("HOMELAB_DEPLOY_ACTION"), + Value: "switch", }, &cli.IntFlag{ - Name: "timeout", - Usage: "Timeout in seconds for collecting responses", - Value: 900, + Name: "timeout", + Usage: "Timeout in seconds for collecting responses", + Sources: cli.EnvVars("HOMELAB_DEPLOY_TIMEOUT"), + Value: 900, }, }, Action: func(ctx context.Context, c *cli.Command) error {