Releases: Cox-Automotive/alks-cli
v3.24.6
Summary
- Displays a yellow bordered warning banner every time a command runs using basic auth (password), directing users to migrate to OAuth2
- Adds the same deprecation warning at the start of
alks developer login - Updates the password choice label in
alks developer configureto reflect the May 3rd retirement date - Adds a "did you mean?" tip when a user has configured
https://alks.coxautoinc.comwithout the required/restpath
Test plan
Basic auth deprecation warning
- Run any
alkscommand (e.g.sessions open) configured with basic auth — confirm the yellow deprecation warning banner appears in the terminal - Run
alks developer login— confirm warning appears before credential prompts - Run
alks developer configure— confirm password choice shows "(DEPRECATED - retiring May 3rd, not recommended)" - Run any command configured with OAuth2 (refresh token) — confirm no warning appears
"Did you mean?" server URL hint
- Set
ALKS_SERVER=https://alks.coxautoinc.comand runalks sessions open— confirm the yellow tip appears: "Did you mean https://alks.coxautoinc.com/rest?" - Set
ALKS_SERVER=https://alks.coxautoinc.com/(trailing slash) and runalks sessions open— confirm tip still appears - Set
ALKS_SERVER=https://alks.coxautoinc.com/restand runalks sessions open— confirm no tip appears - Set a completely different server URL — confirm no tip appears
Rally
US1879500: Create warning for ALKS CLI basic auth deprecation
v3.24.5
Replace the static inquirer list with inquirer-autocomplete-prompt so users can type to filter accounts in real-time using fuzzy matching rather than scrolling through the full list.
Change Log Items
- A short note to be used in a change log
Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Rally:
v3.24.3
Summary
Fixes three path resolution errors that prevented the metadata server from starting properly.
Changes
- Metadata server path: Changed from
'../lib/metadata-server.js'to'../metadata-server.js' - Forever daemon root: Fixed from
'../'to'../../../../'to properly resolve to project root - Service files path: Updated from
'../service'to'../../../../service'
These paths must resolve correctly from the dist/src/lib/handlers/ directory context after TypeScript compilation.
Additional changes by Dave:
- Added .npmrc to .gitignore and removed it from the repo.
- Fixed the flaky metadata server. It needed exception handling.
- Fixed the mac os operational setup for starting the server.
- Fixed src/lib/getMetadata.ts return type to Promise<Metadata | undefined>
- Created tear down and re-test from scratch testing scripts in a new scripts directory at project root. The testing scripts are focused around the metadata server.
- I commented out the e2e tests since they were failing on pulling with jfrog from artifactory. I don't have time to deal with that so I will make a separate story to address that.
- Updated the README.md calling out that users should be pulling alks-cli from artifactory and notes how to setup their ~/.npmrc on how to do so.
- I also removed the contents of the dist/ directory from the repo and added the directory to .gitignore. Those contents should be dynamically generated every time. Build consistency is ensured by npm-shrinkwrap.json.
Testing Instructions
- Build the project:
npm run build - Start the metadata server:
node dist/src/bin/alks.js server start - Verify server is running:
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/- Should return:
alks
- Should return:
- Test full credentials endpoint:
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/alks- Should return JSON with AWS credentials
Note: Testing must use 169.254.169.254 (not 127.0.0.1:45000) as the pf rules redirect traffic.
Related
- Resolves Rally Defect: DE565327
- Functionally equivalent to PR #291 but with no merge conflicts
v3.24.2
v3.24.1
v3.24.0
Change Log Items
Original work was done by @samsolaimani . I am picking up the QA and will deploy beta package.
Description
Code presents new command line switches that supports session open and session console commands to participate in ChangeMinder.
Rally:
US1626026: Update CLI to use new ALKS JS and new params
v3.22.1
v3.22.0
This just restructures the code a bit from #284 to match some of our code patterns like each function getting its own file and generalizing the code for parsing the account Id, alias, and role out of ALKS account strings to make it available for future work. I also swapped out the test data values with fake data to provide a little more security by obscurity
Big thanks to @KennyS-Cox for contributing the bulk of this work and also just for having the idea to do it in the first place. it really makes a difference in the readability of the output
closes #284
v3.21.2
v3.21.1
Change Log Items
- Remove alks-node dependency.
- Remove node-fetch/request in favor for axios
Description
Because prior to node 18, node did not provide an http fetch api so we had to use a 3rd party library for that functionality (request/node-fetch). These 3rd party packages rely on punycode which is being deprecated in node >= v21. This PR will switch over to axios since that will relieve us of the punycode deprecation warnings.
Rally:
US1504256: [Continued] [Continued] alks-cli: Clean deprecation warnings