* refactor: 💡 credential type radio field to be select field
* refactor: 💡 radio component to be select component
* test: 💍 fix e2e test page
* test: 💍 add correct selector to e2e test
* test: 💍 fix
* fix: 🐛 properly show username for oidc auth method in user menu
* test: 💍 fix admin ui tests
* test: 💍 fix desktop ui tests
* refactor: 💡 admin to not store username in authenticated object
* refactor: 💡 use getter in app controller
* test: 💍 POC for how we could update our tests to use auth account
* refactor: 💡 remove unused service
* test: 💍 fix all tests in ui/admin
* test: 💍 revert one change
* refactor: 💡 update ui/desktop w/ feedback + fix tests
* refactor: 💡 add in error handling
* refactor: 💡 cleanup unused service
* test: 💍 fix e2e test selector
✅ Closes: https://hashicorp.atlassian.net/browse/ICU-17231
When running this test against an AWS cluster, this operation was resulting in 504s. This was potentially hitting some AWS rate limits when making these requests concurrently.
* fix: 🐛 fix bug with the e2e test fixture hanging
* test: 💍 update cred store label locators with exact match
* test: 💍 update createTargetWithAddressAndAlias with target type
* fix(e2e): Address flakiness during screen navigation
* fix(e2e): Fix function call
* fix(e2e): Address flakiness in connection
* fix(e2e): Make locator explicit to avoid conflict when an ID has `ok`
* fix(e2e): Fix URL now that project page defaults to showing targets
* chore: 🤖 add @openapitools/openapi-generator-cli
* chore: 🤖 Add @nestjs/core and @openapitools/openapi-generator-cli to ignoredBuiltDependencies
These packages use postinstall for a opencollective notice
* chore: 🤖 add package.json scripts for open-api client gen
* chore: 🤖 add openapi generated files
* chore: 🤖 add boundary api client fixture
* chore: 🤖 incorporate api client fixture with base fixture
* chore: 🤖 migrate existing test to use boundary api fixture
* refactor: 💡 remove org cleanup from test
* refactor: 💡 update sorting e2e test to use api client
* refactor: 💡 clean up api client resource clean up logging
* docs: ✏️ update jsdoc links for domain clients
* chore: 🤖 avoid adding copywright headers to generated api
* Add missing copyright headers
* chore: 🤖 remove fetch argument from api client class
The hope was to use request.fetch but playwright's fetch is a
non-standard fetch which causes the generated api client to fail when
using .clone() on the response
* chore: 🤖 add optional OPENAPI_SWAGGER_URL_OR_FILE for openapi-client
generation
The OPENAPI_SWAGGER_URL_OR_FILE env var can be used to specify the
-i flag the generate:api-client script with either:
* a relative path
* an absolute path
* a url like: https://raw.githubusercontent.com/hashicorp/boundary/refs/heads/main/internal/gen/controller.swagger.json
* refactor: 💡 clean up and refactor boundary-api-client fixture
* chore: 🤖 add extra doc links and delete methods
* test: 💍 add test to ensure that api-client fixture works
* test: 💍 update existing e2e test examples with api-client
* docs: ✏️ add comment for api-client e2e test
* docs: ✏️ add additional links to service docs for api clients
* refactor: 💡 cleanup api-client and corresponding test
* docs: ✏️ add api client fixture docs to e2e README
* fix: 🐛 fix regex
* remove unnecessary capture group
* add "-" to regex to allow for url segments like "storage-buckets" in
"/v1/storage-buckets"
* docs: ✏️ comment potential edge case in e2e api client cleanup
* docs: ✏️ fix comment typo
Co-authored-by: Zhihe Li <zhihe.li@hashicorp.com>
* docs: ✏️ remove auth flag for generating e2e client
* docs: ✏️ add mention that java is required for generate:api
* chore: 🤖 implement pr feedback
* chore: 🤖 Clean up api client and add more extensive test
* chore: 🤖 fix casing in api-client test
Co-authored-by: Zhihe Li <zhihe.li@hashicorp.com>
---------
Co-authored-by: Zhihe Li <zhihe.li@hashicorp.com>
* chore: 🤖 remove packageManager field from package.json
* chore: 🤖 migrate yarn resolutions to pnpm overrides
* chore: 🤖 generate pnpm-lock.yml by using: pnpm import yarn.lock
* chore: 🤖 remove yarn.lock file
* chore: 🤖 migrate workspace configuration
* chore: 🤖 remove .yarn and .yarnrc.yml config
* chore: 🤖 update .copyright.hcl to ignore root pnpm files
* chore: 🤖 migrate husky pre-commit hook from yarn to pnpm
* chore: 🤖 migrate package.json scripts from yarn to pnpm
* chore: 🤖 update rose package.json & build to use explicit deps
* chore: 🤖 remove unused cp metadata.json command in pjson script
The cp metadata.json to dist was added in:
d19a251
The addons/rose/metadata.json no longer exists so it can't be copied
* chore: 🤖 migrate electron-app package.json scripts to pnpm
* chore: 🤖 create pnpm workspace for electron-app w/ hoisted deps
* chore: 🤖 migrate electron-app yarn lockfile to pnpm lockfile
Used "pnpm import yarn.lock"
* chore: 🤖 migrate electron-app overrides
node-gyp isn't needed since the fork is used via @electron/node-gyp
see: https://github.com/electron/node-gyp?tab=readme-ov-file#node-gyp---nodejs-native-addon-build-tool
* chore: 🤖 add trusted deps to be built to onlyBuiltDependencies
This is a pnpm feature that increases security. By defining these
dependencies they are being trusted to allow install hooks,
including postinstall. See:
https://pnpm.io/settings#onlybuiltdependencies
* chore: 🤖 add electron-app pnpm files to copyright header ignore
* chore: 🤖 remove yarn references from .*ignore files
* chore: 🤖 migrate --yarn to --pnpm for ember-cli-update.json
This isn't clearly documented but something that is supported
and can be found in other ember apps:
https://github.com/search?q=--pnpm+ember-cli-update.json&type=code
* chore: 🤖 migrate ci and related scripts to use pnpm
The cache is migrated to use the cache supported by
actions/setup-node@v4, an action we are already using. This is the
recommended way by pnpm:
https://pnpm.io/continuous-integration#github-actions
This commit also ensures that all github actions are using
consistent versions of actions/setup-node and pnpm/action-setup
* docs: ✏️ update documentation to use pnpm instead of yarn
* chore: 🤖 use explicit asciinema-player dependency
Because we override styles on asciinema-player we depend on their
styles. What might be a minor non-breaking change in their version could
(and did) break our style expectations in our overrides.
* chore: 🤖 run pnpm install and commit lockfile changes
* chore: 🤖 Remove ember-inflector from being overidden
https://github.com/hashicorp/boundary-ui/pull/2828#discussion_r2110380711
* chore: 🤖 remove highlight.js from pnpm overrides
https://github.com/hashicorp/boundary-ui/pull/2828#discussion_r2109847938
* chore: 🤖 remove additional unnecessary files from ignore files
* docs: ✏️ fix pnpm doc links
* chore: 🤖 use corepack to specify packageManager in package.json
* chore: 🤖 let pnpm action in ci use packageManager for version
https://github.com/pnpm/action-setup?tab=readme-ov-file#version
* docs: ✏️ fix broken pnpm website links
* feat: 🎸 scope picker component (#2646)
* feat: 🎸 scope picker component
---------
Co-authored-by: lisbet-alvarez <lisbet-alvarez@users.noreply.github.com>
Co-authored-by: Zhihe Li <zhihe.li@hashicorp.com>
* refactor: 💡 use hds side nav w/ hds frame instead of rose (#2688)
* refactor: 💡 use hds side nav w/ hds frame instead of rose
* test: 💍 clean up selectors
* fix: 🐛 specificity of style override
* refactor: 💡 use hds side nav list instead of target and portal
* refactor: 💡 revert to using portal component & update scss
* docs: ✏️ update comment
* refactor: 💡 use custom class names for containers
* refactor: 💡 pr feedback (use @hasSidebar arg)
* refactor: 💡 fix onboarding page & fix settings title
* refactor: 💡 remove unneeded template file (pr feedback)
* test: 💍 fix tests due to merge conflicts
* test: 💍 add missing test selector due to merge conflict
* test: 💍 fix more broken tests due to merge conflicts
* chore: 🤖 update yarn.lock & update hds version to 4.18.1
* chore: 🤖 fix e2e test cases due to side nav refactor (#2751)
* chore: 🤖 fix e2e test cases due to side nav refactor
* test: 💍 fix e2e test for desktop
---------
Co-authored-by: lisbet-alvarez <lisbet-alvarez@users.noreply.github.com>
Co-authored-by: Zhihe Li <zhihe.li@hashicorp.com>
* test(e2e): decouple url used for browser vs cli
* test(e2e): Add instructions for using the UI of a local branch
* CR
* Fix typo in e2e-tests/README.md
Co-authored-by: Dharini Jeeva <dharini@hashicorp.com>
---------
Co-authored-by: Dharini Jeeva <dharini@hashicorp.com>
This test attempted to delete a session recording when the policy did not allow it. However, there was a UI change to remove that option entirely, so we are removing the check.
* chore: 🤖 add .eslintignore for e2e-tests directory
* chore: 🤖 add auto-fixable eslint changes
* chore: 🤖 make js tasks more explicit to avoid race conditions
avoid having js files be in two separate concurrent branches where tasks
could result in race-condition writes
* chore: 🤖 expand .eslintignore to include more generated dirs
* chore: 🤖 fix additional lint-staged tasks
Fix additional lint-staged tasks that could result in race conditions
* docs: ✏️ update e2e docs with supported enos scenarios
* Update grammatical typo in e2e-tests/README.md
Co-authored-by: Michael Li <michael.li@hashicorp.com>
---------
Co-authored-by: Michael Li <michael.li@hashicorp.com>
* test(e2e): Update "Inactive" locators
* test(e2e): Update worker filter locators
* test(e2e): Address flake
Ensure that the test has reached the org page before trying to click the Auth Methods link (there is an auth method link on both the global page and the org page).
* test(e2e): add e2e test for scope chooser with filtered targets
Closes: https://hashicorp.atlassian.net/browse/ICU-16121
* Add missing copyright headers
* chore(e2e): use prettier on scope.spec.js
* refactor(e2e): use explicit checks for scope in summary
* refactor(e2e): move test hooks and associated variables to top-level
Move beforeEach and afterEach and the associated variables setup in
hooks to top-level within scope.spec.js. This matches the patterns
used in other tests.
* refactor(e2e): use simpler scoped locator for summary element within header-nav
---------
Co-authored-by: hashicc <hashicc@users.noreply.github.com>