@padua/cli 1.6.1 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -114,7 +114,7 @@ Total: 3/3 services authenticated
114
114
 
115
115
  ## Configuration
116
116
 
117
- Create a `padua.config.json` file in your project root or `~/.padua/`:
117
+ Configuration is stored in `~/.padua/padua.config.json` (created by `padua init`):
118
118
 
119
119
  ```json
120
120
  {
@@ -132,13 +132,15 @@ Create a `padua.config.json` file in your project root or `~/.padua/`:
132
132
  }
133
133
  ```
134
134
 
135
- ### Config Priority
135
+ ### Profile Resolution Priority
136
136
 
137
137
  1. CLI flags (`--profile`)
138
- 2. Environment variables (`PADUA_PROFILE`)
139
- 3. `padua.config.json` in current directory
140
- 4. `~/.padua/padua.config.json`
141
- 5. Default values
138
+ 2. `PADUA_PROFILE` environment variable
139
+ 3. `AWS_PROFILE` environment variable
140
+ 4. `defaultProfile` in config file
141
+ 5. `'default'`
142
+
143
+ This means `padua status` automatically uses the profile set by `paws` or `export AWS_PROFILE=...`.
142
144
 
143
145
  ## Status Command
144
146
 
@@ -194,12 +196,44 @@ ECR (Docker)
194
196
 
195
197
  Interactive AWS profile selection with shell integration.
196
198
 
199
+ ### Basic Usage
200
+
197
201
  ```bash
198
202
  padua profile # Interactive selection
199
203
  padua profile --setup # Output shell function for paws command
200
204
  padua profile --list-only # List profiles (for scripts)
205
+ padua profile --select-only # Select and output name only
201
206
  ```
202
207
 
208
+ ### Options
209
+
210
+ | Flag | Description |
211
+ |------|-------------|
212
+ | `--setup` | Output shell function for your shell profile |
213
+ | `--list-only` | Output profile names only (one per line) |
214
+ | `--select-only` | Interactive select, output only the name |
215
+ | `--no-color` | Disable colored output |
216
+
217
+ ### Shell Integration (paws)
218
+
219
+ Add the `paws` function to your shell for quick profile switching:
220
+
221
+ ```bash
222
+ # Bash
223
+ padua profile --setup >> ~/.bashrc && source ~/.bashrc
224
+
225
+ # Zsh
226
+ padua profile --setup >> ~/.zshrc && source ~/.zshrc
227
+ ```
228
+
229
+ Then use:
230
+ ```bash
231
+ paws # Interactive profile selection
232
+ paws paduafg-development # Switch to specific profile
233
+ ```
234
+
235
+ The `paws` function sets `AWS_PROFILE`, which is automatically picked up by `padua status`, `padua login`, and other commands.
236
+
203
237
  ## Tunnel Command
204
238
 
205
239
  Create secure tunnels to RDS databases via SSM Session Manager.
@@ -95,7 +95,7 @@ export declare function isValidRepositoryName(value: string): boolean;
95
95
  export declare function hasCodeArtifactConfig(config: PaduaConfig): boolean;
96
96
  /** Check if configuration has ECR configured */
97
97
  export declare function hasEcrConfig(config: PaduaConfig): boolean;
98
- /** Get the effective profile to use (preference order: options, config, default) */
98
+ /** Get the effective profile to use (preference order: CLI flag, env vars, config, default) */
99
99
  export declare function getEffectiveProfile(options: LoginOptions, config?: PaduaConfig): string;
100
100
  /** Get the effective region to use (preference order: config, default) */
101
101
  export declare function getEffectiveRegion(config?: PaduaConfig): string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/login/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,mEAAmE;IACnE,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC,2DAA2D;IAC3D,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IAEf,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IAEpB,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAElB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;IAEjB,uDAAuD;IACvD,OAAO,EAAE,OAAO,CAAC;IAEjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,oCAAoC;IACpC,GAAG,EAAE,aAAa,CAAC;IAEnB,wDAAwD;IACxD,YAAY,EAAE,aAAa,CAAC;IAE5B,gDAAgD;IAChD,GAAG,EAAE,aAAa,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,yCAAyC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAID,mEAAmE;AACnE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,kDAAkD;AAClD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAapD;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,sEAAsE;AACtE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,oFAAoF;AACpF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,yDAAyD;AACzD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAElE;AAED,gDAAgD;AAChD,wBAAgB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAEzD;AAED,oFAAoF;AACpF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAEvF;AAED,0EAA0E;AAC1E,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAE/D"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/login/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,mEAAmE;IACnE,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC,2DAA2D;IAC3D,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IAEf,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IAEpB,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAElB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;IAEjB,uDAAuD;IACvD,OAAO,EAAE,OAAO,CAAC;IAEjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,oCAAoC;IACpC,GAAG,EAAE,aAAa,CAAC;IAEnB,wDAAwD;IACxD,YAAY,EAAE,aAAa,CAAC;IAE5B,gDAAgD;IAChD,GAAG,EAAE,aAAa,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,yCAAyC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAID,mEAAmE;AACnE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,kDAAkD;AAClD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAapD;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,sEAAsE;AACtE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,oFAAoF;AACpF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,yDAAyD;AACzD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAElE;AAED,gDAAgD;AAChD,wBAAgB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAEzD;AAED,+FAA+F;AAC/F,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAQvF;AAED,0EAA0E;AAC1E,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAE/D"}
@@ -58,9 +58,13 @@ function hasCodeArtifactConfig(config) {
58
58
  function hasEcrConfig(config) {
59
59
  return !!(config.ecr?.accountId && config.ecr?.region);
60
60
  }
61
- /** Get the effective profile to use (preference order: options, config, default) */
61
+ /** Get the effective profile to use (preference order: CLI flag, env vars, config, default) */
62
62
  function getEffectiveProfile(options, config) {
63
- return options.profile || config?.defaultProfile || 'default';
63
+ return (options.profile ||
64
+ process.env.PADUA_PROFILE ||
65
+ process.env.AWS_PROFILE ||
66
+ config?.defaultProfile ||
67
+ 'default');
64
68
  }
65
69
  /** Get the effective region to use (preference order: config, default) */
66
70
  function getEffectiveRegion(config) {
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/login/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;AAqGH,4CAEC;AAGD,sCAaC;AAGD,gDAEC;AAGD,8CAEC;AAGD,sDAEC;AAGD,sDAEC;AAGD,oCAEC;AAGD,kDAEC;AAGD,gDAEC;AAxDD,cAAc;AAEd,mEAAmE;AACnE,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,kDAAkD;AAClD,SAAgB,aAAa,CAAC,KAAa;IACzC,MAAM,YAAY,GAAG;QACnB,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW;QAClD,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY;QACnE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB;QACpD,gBAAgB,EAAE,gBAAgB;QAClC,YAAY;QACZ,cAAc;QACd,WAAW;QACX,YAAY;QACZ,YAAY;KACb,CAAC;IACF,OAAO,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED,oFAAoF;AACpF,SAAgB,kBAAkB,CAAC,KAAa;IAC9C,OAAO,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED,sEAAsE;AACtE,SAAgB,iBAAiB,CAAC,KAAa;IAC7C,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC5F,CAAC;AAED,oFAAoF;AACpF,SAAgB,qBAAqB,CAAC,KAAa;IACjD,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC5F,CAAC;AAED,yDAAyD;AACzD,SAAgB,qBAAqB,CAAC,MAAmB;IACvD,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,IAAI,MAAM,CAAC,YAAY,EAAE,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AAChH,CAAC;AAED,gDAAgD;AAChD,SAAgB,YAAY,CAAC,MAAmB;IAC9C,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,oFAAoF;AACpF,SAAgB,mBAAmB,CAAC,OAAqB,EAAE,MAAoB;IAC7E,OAAO,OAAO,CAAC,OAAO,IAAI,MAAM,EAAE,cAAc,IAAI,SAAS,CAAC;AAChE,CAAC;AAED,0EAA0E;AAC1E,SAAgB,kBAAkB,CAAC,MAAoB;IACrD,OAAO,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/login/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;AAqGH,4CAEC;AAGD,sCAaC;AAGD,gDAEC;AAGD,8CAEC;AAGD,sDAEC;AAGD,sDAEC;AAGD,oCAEC;AAGD,kDAQC;AAGD,gDAEC;AA9DD,cAAc;AAEd,mEAAmE;AACnE,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,kDAAkD;AAClD,SAAgB,aAAa,CAAC,KAAa;IACzC,MAAM,YAAY,GAAG;QACnB,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW;QAClD,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY;QACnE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB;QACpD,gBAAgB,EAAE,gBAAgB;QAClC,YAAY;QACZ,cAAc;QACd,WAAW;QACX,YAAY;QACZ,YAAY;KACb,CAAC;IACF,OAAO,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED,oFAAoF;AACpF,SAAgB,kBAAkB,CAAC,KAAa;IAC9C,OAAO,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED,sEAAsE;AACtE,SAAgB,iBAAiB,CAAC,KAAa;IAC7C,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC5F,CAAC;AAED,oFAAoF;AACpF,SAAgB,qBAAqB,CAAC,KAAa;IACjD,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC5F,CAAC;AAED,yDAAyD;AACzD,SAAgB,qBAAqB,CAAC,MAAmB;IACvD,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,IAAI,MAAM,CAAC,YAAY,EAAE,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AAChH,CAAC;AAED,gDAAgD;AAChD,SAAgB,YAAY,CAAC,MAAmB;IAC9C,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,+FAA+F;AAC/F,SAAgB,mBAAmB,CAAC,OAAqB,EAAE,MAAoB;IAC7E,OAAO,CACL,OAAO,CAAC,OAAO;QACf,OAAO,CAAC,GAAG,CAAC,aAAa;QACzB,OAAO,CAAC,GAAG,CAAC,WAAW;QACvB,MAAM,EAAE,cAAc;QACtB,SAAS,CACV,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,SAAgB,kBAAkB,CAAC,MAAoB;IACrD,OAAO,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC;AACvC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@padua/cli",
3
- "version": "1.6.1",
3
+ "version": "1.7.0",
4
4
  "description": "Unified AWS infrastructure management CLI",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",