azp-cli 0.0.1 → 0.0.3

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.
@@ -0,0 +1,51 @@
1
+ # Copilot instructions for azp-cli
2
+
3
+ ## Big picture
4
+
5
+ - This is a Node.js/TypeScript terminal CLI for Azure PIM role activation/deactivation.
6
+ - Entry point: [src/index.ts](src/index.ts) (Commander commands; default is `activate`).
7
+ - Interactive flows: [src/cli.ts](src/cli.ts) (Inquirer menus + loops; calls Azure operations).
8
+ - Auth: [src/auth.ts](src/auth.ts) (Azure CLI credential + Microsoft Graph `/me` lookup).
9
+ - Azure PIM operations: [src/azure-pim.ts](src/azure-pim.ts) (ARM AuthorizationManagementClient schedule APIs).
10
+ - Terminal UX helpers: [src/ui.ts](src/ui.ts) (chalk formatting + single global ora spinner).
11
+
12
+ ## Key data flow
13
+
14
+ - `authenticate()` (AzureCliCredential) → Graph `/me` → returns `AuthContext` with `credential`, `userId`, `userPrincipalName`.
15
+ - `showMainMenu(authContext)` → activation/deactivation flows.
16
+ - Subscriptions fetched via `SubscriptionClient` (`fetchSubscriptions`).
17
+ - Eligible roles via `roleEligibilitySchedules.listForScope("/subscriptions/{id}", { filter: "asTarget()" })`.
18
+ - Activate via `roleAssignmentScheduleRequests.create(..., { requestType: "SelfActivate", linkedRoleEligibilityScheduleId, scheduleInfo, justification })`.
19
+ - Deactivate via `requestType: "SelfDeactivate"` using `linkedRoleEligibilityScheduleId` from active schedules.
20
+
21
+ ## Developer workflows
22
+
23
+ - Install deps: `pnpm install` (repo pins pnpm in `package.json`).
24
+ - Dev run (ts-node): `pnpm dev` (runs `src/index.ts` with `tsconfig-paths/register`).
25
+ - Build: `pnpm build` (plain `tsc` → `dist/`).
26
+ - Run built CLI: `node dist/index.js` or `pnpm start`.
27
+ - Lint: `pnpm lint`.
28
+
29
+ ## Project conventions to follow
30
+
31
+ - Prefer UI helpers over raw `console.log` in flows:
32
+ - Use `startSpinner/succeedSpinner/failSpinner` and `logInfo/logSuccess/logWarning/logError` from [src/ui.ts](src/ui.ts).
33
+ - `ui.ts` maintains a single global spinner; stop/replace it instead of starting multiple spinners.
34
+ - Keep Azure calls in [src/azure-pim.ts](src/azure-pim.ts); keep prompt/control-flow in [src/cli.ts](src/cli.ts).
35
+ - Inquirer patterns used here:
36
+ - `type: "select"` for single-choice menus, `type: "checkbox"` for multi-select, `type: "confirm"` for final confirmation.
37
+ - Back navigation uses sentinel values like `"__BACK__"`.
38
+ - Errors:
39
+ - `src/index.ts` has top-level error handling and special-cases auth/Azure CLI errors (e.g., messages containing `AADSTS` or `AzureCliCredential`).
40
+ - In `azure-pim.ts`, 403/`AuthorizationFailed` returns an empty list (warn) instead of failing the whole flow.
41
+
42
+ ## Integration points / prerequisites
43
+
44
+ - Requires Azure CLI login (`az login`) because authentication uses `AzureCliCredential`.
45
+ - Microsoft Graph is used only to resolve the current user via `/me` (scopes: `https://graph.microsoft.com/.default`).
46
+ - ARM management calls use scope `https://management.azure.com/.default` and `@azure/arm-authorization` APIs.
47
+
48
+ ## TypeScript/build notes
49
+
50
+ - `tsconfig.json` uses `module`/`moduleResolution`: `NodeNext`, strict settings, and path alias `@/*` → `src/*`.
51
+ - Keep ESM/CJS interop consistent with current imports (don’t rewrite module style unless required).
@@ -21,5 +21,6 @@
21
21
  "**/node_modules": true,
22
22
  "**/dist": true,
23
23
  "**/pnpm-lock.yaml": true
24
- }
24
+ },
25
+ "cSpell.words": ["AADSTS"]
25
26
  }
package/CHANGELOG.md ADDED
@@ -0,0 +1,25 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
+
5
+ ### 0.0.3 (2026-01-13)
6
+
7
+
8
+ ### Features
9
+
10
+ * add Azure PIM CLI for role activation and deactivation ([2d10b87](https://github.com/tapanmeena/azp-cli/commit/2d10b87eab7d51a6427f4a70f200521e66e45b98))
11
+ * add copilot instructions for azp-cli ([4c9ab89](https://github.com/tapanmeena/azp-cli/commit/4c9ab894110595f2c88ef8b12073ea51b2c468ef))
12
+ * enhance CLI with non-interactive activation and deactivation options ([3e6fa12](https://github.com/tapanmeena/azp-cli/commit/3e6fa1253e7f1fa1e29c9a75cb90fa6a3d5484bc))
13
+
14
+
15
+ ### Bug Fixes
16
+
17
+ * revert version number to 0.0.1 in package.json ([0e814da](https://github.com/tapanmeena/azp-cli/commit/0e814da76560c3416602c46bdc9ae7c2b312e6ea))
18
+ * update @types/node dependency to version 25.0.6 ([21a03a1](https://github.com/tapanmeena/azp-cli/commit/21a03a12eff9ee372ff2f398dfdab40ae83891b1))
19
+ * update import paths to use relative references ([2a287af](https://github.com/tapanmeena/azp-cli/commit/2a287af68d1e0071a8c48af38d46546ccbe184e1))
20
+
21
+ ## [0.0.2] - 2026-01-13
22
+
23
+ ### Added
24
+
25
+ - Initial public release.
package/README.md CHANGED
@@ -72,11 +72,44 @@ node dist/index.js
72
72
 
73
73
  ### Commands
74
74
 
75
- | Command | Alias | Description |
76
- |---------|-------|-------------|
77
- | `activate` | `a` | Activate a role in Azure PIM (default) |
78
- | `deactivate` | `d` | Deactivate a role in Azure PIM |
79
- | `help` | - | Display help information |
75
+ | Command | Alias | Description |
76
+ | ------------ | ----- | -------------------------------------- |
77
+ | `activate` | `a` | Activate a role in Azure PIM (default) |
78
+ | `deactivate` | `d` | Deactivate a role in Azure PIM |
79
+ | `help` | - | Display help information |
80
+
81
+ ### One-command (non-interactive) activation
82
+
83
+ Use flags to activate PIM roles directly without going through the main menu.
84
+
85
+ ```bash
86
+ # Activate a single role by name (non-interactive)
87
+ azp activate --no-interactive --yes \
88
+ --subscription-id <SUBSCRIPTION_GUID> \
89
+ --role-name "Owner" \
90
+ --duration-hours 2 \
91
+ --justification "Break-glass for incident" \
92
+ --output json
93
+
94
+ # Activate multiple roles (repeat --role-name)
95
+ azp activate --no-interactive --yes \
96
+ --subscription-id <SUBSCRIPTION_GUID> \
97
+ --role-name "Contributor" \
98
+ --role-name "User Access Administrator"
99
+
100
+ # If a role name matches multiple eligible roles (different scopes),
101
+ # --no-interactive will error unless you explicitly allow activating all matches
102
+ azp activate --no-interactive --yes \
103
+ --subscription-id <SUBSCRIPTION_GUID> \
104
+ --role-name "Contributor" \
105
+ --allow-multiple
106
+
107
+ # Preview what would happen without submitting requests
108
+ azp activate --no-interactive --dry-run \
109
+ --subscription-id <SUBSCRIPTION_GUID> \
110
+ --role-name "Contributor" \
111
+ --output json
112
+ ```
80
113
 
81
114
  ### Example Session
82
115
 
@@ -132,6 +165,50 @@ pnpm start
132
165
  pnpm lint
133
166
  ```
134
167
 
168
+ ## Changelog & releases
169
+
170
+ This repo uses [Keep a Changelog](https://keepachangelog.com/) format in [CHANGELOG.md](CHANGELOG.md).
171
+
172
+ ### Recommended commit messages
173
+
174
+ For best results, use [Conventional Commits](https://www.conventionalcommits.org/):
175
+
176
+ - `feat: ...` (new feature) → minor bump
177
+ - `fix: ...` (bug fix) → patch bump
178
+ - `chore: ...`, `docs: ...`, `refactor: ...` (no bump unless breaking)
179
+
180
+ ### Cutting a release
181
+
182
+ 1. Make sure `CHANGELOG.md` has up-to-date entries under **Unreleased**.
183
+
184
+ 2. Run one of the following:
185
+
186
+ ```bash
187
+ # Automatically determines next version from commits, updates CHANGELOG.md,
188
+ # bumps package.json, and creates a git tag.
189
+ pnpm release
190
+
191
+ # Preview what would change
192
+ pnpm release:dry
193
+
194
+ # Force a specific bump if needed
195
+ pnpm release -- --release-as patch
196
+ pnpm release -- --release-as minor
197
+ pnpm release -- --release-as major
198
+ ```
199
+
200
+ 3. Push commits + tags:
201
+
202
+ ```bash
203
+ git push --follow-tags
204
+ ```
205
+
206
+ 4. Publish to npm (if desired):
207
+
208
+ ```bash
209
+ pnpm publish
210
+ ```
211
+
135
212
  ### Project Structure
136
213
 
137
214
  ```
@@ -161,6 +238,7 @@ azp-cli/
161
238
  ### "Azure CLI not found" Error
162
239
 
163
240
  Ensure Azure CLI is installed and accessible in your PATH:
241
+
164
242
  ```bash
165
243
  az --version
166
244
  ```
@@ -168,11 +246,13 @@ az --version
168
246
  ### Authentication Errors
169
247
 
170
248
  1. Make sure you're logged in to Azure CLI:
249
+
171
250
  ```bash
172
251
  az login
173
252
  ```
174
253
 
175
254
  2. Verify your account has PIM-eligible roles:
255
+
176
256
  ```bash
177
257
  az account show
178
258
  ```
@@ -39,6 +39,8 @@ export interface AzureActivationRequest {
39
39
  export declare const fetchSubscriptions: (credential: AzureCliCredential) => Promise<AzureSubscription[]>;
40
40
  export declare const fetchEligibleRolesForSubscription: (credential: AzureCliCredential, subscriptionId: string, subscriptionName: string, principalId: string) => Promise<EligibleAzureRole[]>;
41
41
  export declare const listActiveAzureRoles: (credential: AzureCliCredential, subscriptionId: string, subscriptionName: string, principalId: string) => Promise<ActiveAzureRole[]>;
42
- export declare const activateAzureRole: (credential: AzureCliCredential, request: AzureActivationRequest, subscriptionId: string) => Promise<void>;
42
+ export declare const activateAzureRole: (credential: AzureCliCredential, request: AzureActivationRequest, subscriptionId: string) => Promise<{
43
+ status?: string;
44
+ }>;
43
45
  export declare const deactivateAzureRole: (credential: AzureCliCredential, scope: string, roleEligibilityScheduleId: string, subscriptionId: string, principalId: string, roleDefinitionId: string, roleName?: string) => Promise<void>;
44
46
  //# sourceMappingURL=azure-pim.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"azure-pim.d.ts","sourceRoot":"","sources":["../src/azure-pim.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIrD,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,+BAA+B,EAAE,MAAM,CAAC;IACxC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,kBAAkB,GAAU,YAAY,kBAAkB,KAAG,OAAO,CAAC,iBAAiB,EAAE,CAgBpG,CAAC;AAEF,eAAO,MAAM,iCAAiC,GAC5C,YAAY,kBAAkB,EAC9B,gBAAgB,MAAM,EACtB,kBAAkB,MAAM,EACxB,aAAa,MAAM,KAClB,OAAO,CAAC,iBAAiB,EAAE,CAqC7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,YAAY,kBAAkB,EAC9B,gBAAgB,MAAM,EACtB,kBAAkB,MAAM,EACxB,aAAa,MAAM,KAClB,OAAO,CAAC,eAAe,EAAE,CAwC3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAU,YAAY,kBAAkB,EAAE,SAAS,sBAAsB,EAAE,gBAAgB,MAAM,KAAG,OAAO,CAAC,IAAI,CAgD7I,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,YAAY,kBAAkB,EAC9B,OAAO,MAAM,EACb,2BAA2B,MAAM,EACjC,gBAAgB,MAAM,EACtB,aAAa,MAAM,EACnB,kBAAkB,MAAM,EACxB,WAAW,MAAM,KAChB,OAAO,CAAC,IAAI,CAoBd,CAAC"}
1
+ {"version":3,"file":"azure-pim.d.ts","sourceRoot":"","sources":["../src/azure-pim.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIrD,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,+BAA+B,EAAE,MAAM,CAAC;IACxC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,kBAAkB,GAAU,YAAY,kBAAkB,KAAG,OAAO,CAAC,iBAAiB,EAAE,CAgBpG,CAAC;AAEF,eAAO,MAAM,iCAAiC,GAC5C,YAAY,kBAAkB,EAC9B,gBAAgB,MAAM,EACtB,kBAAkB,MAAM,EACxB,aAAa,MAAM,KAClB,OAAO,CAAC,iBAAiB,EAAE,CAqC7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,YAAY,kBAAkB,EAC9B,gBAAgB,MAAM,EACtB,kBAAkB,MAAM,EACxB,aAAa,MAAM,KAClB,OAAO,CAAC,eAAe,EAAE,CAwC3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,YAAY,kBAAkB,EAC9B,SAAS,sBAAsB,EAC/B,gBAAgB,MAAM,KACrB,OAAO,CAAC;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAkD7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,YAAY,kBAAkB,EAC9B,OAAO,MAAM,EACb,2BAA2B,MAAM,EACjC,gBAAgB,MAAM,EACtB,aAAa,MAAM,EACnB,kBAAkB,MAAM,EACxB,WAAW,MAAM,KAChB,OAAO,CAAC,IAAI,CAoBd,CAAC"}
package/dist/azure-pim.js CHANGED
@@ -123,7 +123,7 @@ const activateAzureRole = async (credential, request, subscriptionId) => {
123
123
  (0, ui_1.succeedSpinner)(`Activation request submitted for "${request.roleName}"`);
124
124
  (0, ui_1.logBlank)();
125
125
  if (response.status) {
126
- console.log(` Status: ${(0, ui_1.formatStatus)(response.status)}`);
126
+ (0, ui_1.logDim)(` Status: ${(0, ui_1.formatStatus)(response.status)}`);
127
127
  }
128
128
  if (response.status === "Approved" || response.status === "Provisioned") {
129
129
  (0, ui_1.logSuccess)(`Role "${request.roleName}" has been activated successfully`);
@@ -134,6 +134,7 @@ const activateAzureRole = async (credential, request, subscriptionId) => {
134
134
  else if (response.status === "PendingApproval") {
135
135
  (0, ui_1.logWarning)(`Role activation for "${request.roleName}" is pending approval`);
136
136
  }
137
+ return { status: response.status };
137
138
  }
138
139
  catch (error) {
139
140
  (0, ui_1.failSpinner)(`Failed to activate role "${request.roleName}"`);
@@ -1 +1 @@
1
- {"version":3,"file":"azure-pim.js","sourceRoot":"","sources":["../src/azure-pim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"azure-pim.js","sourceRoot":"","sources":["../src/azure-pim.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -1,4 +1,69 @@
1
1
  import { AuthContext } from "./auth";
2
+ export type ActivateOnceOptions = {
3
+ subscriptionId: string;
4
+ roleNames: string[];
5
+ durationHours?: number;
6
+ justification?: string;
7
+ dryRun?: boolean;
8
+ noInteractive?: boolean;
9
+ yes?: boolean;
10
+ allowMultiple?: boolean;
11
+ };
12
+ export type ActivateOnceResult = {
13
+ subscriptionId: string;
14
+ subscriptionName: string;
15
+ requestedRoleNames: string[];
16
+ resolvedTargets: Array<{
17
+ eligibilityId: string;
18
+ roleName: string;
19
+ scope: string;
20
+ scopeDisplayName: string;
21
+ roleDefinitionId: string;
22
+ }>;
23
+ durationHours: number;
24
+ justification: string;
25
+ dryRun: boolean;
26
+ results?: Array<{
27
+ eligibilityId: string;
28
+ roleName: string;
29
+ scopeDisplayName: string;
30
+ status?: string;
31
+ success: boolean;
32
+ error?: string;
33
+ }>;
34
+ };
35
+ export type DeactivateOnceOptions = {
36
+ subscriptionId?: string;
37
+ roleNames: string[];
38
+ justification?: string;
39
+ dryRun?: boolean;
40
+ noInteractive?: boolean;
41
+ yes?: boolean;
42
+ allowMultiple?: boolean;
43
+ };
44
+ export type DeactivateOnceResult = {
45
+ requestedRoleNames: string[];
46
+ resolvedTargets: Array<{
47
+ assignmentId: string;
48
+ roleName: string;
49
+ scope: string;
50
+ scopeDisplayName: string;
51
+ subscriptionId: string;
52
+ subscriptionName: string;
53
+ }>;
54
+ justification: string;
55
+ dryRun: boolean;
56
+ results?: Array<{
57
+ assignmentId: string;
58
+ roleName: string;
59
+ scopeDisplayName: string;
60
+ subscriptionName: string;
61
+ success: boolean;
62
+ error?: string;
63
+ }>;
64
+ };
65
+ export declare const activateOnce: (authContext: AuthContext, options: ActivateOnceOptions) => Promise<ActivateOnceResult>;
66
+ export declare const deactivateOnce: (authContext: AuthContext, options: DeactivateOnceOptions) => Promise<DeactivateOnceResult>;
2
67
  export declare const showMainMenu: (authContext: AuthContext) => Promise<void>;
3
68
  export declare const handleActivation: (authContext: AuthContext) => Promise<void>;
4
69
  export declare const handleDeactivation: (authContext: AuthContext) => Promise<void>;
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AA6CrC,eAAO,MAAM,YAAY,GAAU,aAAa,WAAW,KAAG,OAAO,CAAC,IAAI,CAgCzE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAU,aAAa,WAAW,KAAG,OAAO,CAAC,IAAI,CAwL7E,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAU,aAAa,WAAW,KAAG,OAAO,CAAC,IAAI,CAqI/E,CAAC"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}