* license: update headers to IBM Corp.
* `make proto`
* update offset because source file changed
Signed-off-by: Ryan Cragun <me@ryan.ec>
Co-authored-by: Ryan Cragun <me@ryan.ec>
* add parallel command
* declare vault-keys module for test helpers
* use mirage to make dropdown check more reliably
* wait for inputs
* attempt to stabilize dashboard tests in parallel
* revert wait for inputs
* move problem acceptance tests to integration tests
* move more tests to integration
* remove assert.expect() because there are no callback assertions
* delete redundant acceptance tests
* cleanup login state in afterEach hook
* use mirage for login settings test
* update other test based on mirage handler changes
* throw some waitFor in there
* revert waitFor
* use mirage in shared-identity-test
* remove storage cleanup from this pr
* remove parallel..again
* remove unnecessary auth login changes
* add version to dashboard/overview test "it shows the learn more card on enterprise"
* convert "version 2 with no update to config endpoint still allows mount of secret engine" to integration test
* restart tests
* Apply suggestion from @hellobontempo
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
* adds error handling for control groups to api service as post request middleware
* updates kv list route to use api service
* updates kv config route to use api service
* updates kv secrets overview route to use api service
* updates kv secret details route to use api service
* adds kv form
* updates kv metadata details route to use api service
* updates kv paths and version history routes to use api service
* refactors kv-data-fields component to form component
* updates kv secret create route to use api service
* updates kv secret edit route to use api service
* updates kv metadata edit route to use api service
* adds waitFor to async middleware in api service to attempt to fix race conditions in tests
* adds kvMetadata path to capabilities path map
* fixes kv list item delete test selector
* fixes kv v2 workflow create tests
* fixes issue returning metadata for secret when latest version is deleted
* decodes uri in path returned by api service parseError method
* fixes kv v2 edge cases tests
* fixes issue deleteing control group token in api service
* decodes url for control group token lookup in api service
* fixes version history linked block link
* defaults cas to 0 when creating new secret
* removes log
* adds ember-template-lint to kv engine
* more test fixes
* updates kv helpers from classic format
* updates kv helpers imports
* reverts to use secret.version in details edit route
* fixes isDeleted import in kv version history test
* adds waitFor to api service parseError method
* reverts removing async from addQueryParams api method
Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
* support wide width splash page
* add enable_self_enrollment param to mfa-method config
* build and implement mfa setup-card display only component
* fix transition bug navigating away from mfa method
* rename mfa card
* WIP implement self-enrollment workflow
* wip integration tests
* convert mfa-form to typescript
* remove unused import
* show alert whenver there is a QR code
* organze mfa steps into Mfa::VerifyForm and Mfa::SelfEnroll
* WIP stretch goals of mfa redesign
* add copyright headers
* update test
* add support for multiple constraints with self-enrollment
* remove comment
* fix multi-method UX
* fix state for failed validation
* remove changing button for error states
* add error handling and validation messages
* minor cleanup for params
* first round of cleanup and reorganization
* final round of logic cleanup and organization
* touch ups after testing with live backend
* fix comment
* final test cleanup!
* Apply suggestions from code review
* improve mirage error handling to more accurately mimic real failures
* add test coverage
* make qr rendering logic easier
* address PR feedback
* submit enroll form on enter, remove code digit number from copy, reset enroll state
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
* delete activity component, convert date-formatters to ts
* add "month" filter to overview tab
* add test coverage for date range dropdown
* add month filtering to client-list
* remove old comment
* wire up clients to route filters for client-list
* adds changelog
* only link to client-list for enterprise versions
* add refresh page link
* render all tabs, add custom empty state for secret sycn clients
* cleanup unused service imports
* revert billing periods as first of the month
* first round of test updates
* update client count utils test
* fix comment typo
* organize tests
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
* build mirage handler for snapshot recovery endpoints
* WIP add namespace and mount fields to read/recover form
* change option to engine object
* update badge color according to status and make loaded snapshot reqs within root ns
* wip read reqs and view
* add recovery banner and form validation
* move read view into modal
* tidying
* organize
* tests
* style fixes
* error handling
* tests
* WIP load form and update header
* styling
* update requests with snapshot params
* style fix
* yarn lock update for latest spec updates
* hide dr seconday + flesh out load reqs
* tests
* add polling for snapshot status
* disable button when not in ready state
* reset errors
* don't poll during tests
* remove todo
* test updates
* fix ns select + test
* remove todo
* Revert "Merge branch 'copy/main/VAULT-38374/build-snapshot-manage-form' into ui/VAULT-38373/build-snapshot-load-form"
This reverts commit f7cce759cda286bc7b76e84186b5497589706095, reversing
changes made to 6cba99557ce6d8478f4c875579b71be4c531522e.
* add breadcrumbs for load form
* hide shared paths on performance secondaries
* styling, tidy, mount options, engine types
* lots of tidying, add manual mount input, slower polling
* make read + recover requests in selected namespace
* link to child ns if recovering there
* test updates
* remove todos
* centralize recovery data values
* type, state and error improvements
* update FileToArrayBuffer to use HDS FileInput
* error handling
* allow manual input
* tests
* remove unneeded services
* api call update
* update radio fields to allow a badge for 404 message
* update tests
---------
Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com>
Co-authored-by: claire bontempo <cbontempo@hashicorp.com>
* build mirage handler for snapshot recovery endpoints
* WIP add namespace and mount fields to read/recover form
* change option to engine object
* update badge color according to status and make loaded snapshot reqs within root ns
* wip read reqs and view
* add recovery banner and form validation
* move read view into modal
* tidying
* organize
* tests
* style fixes
* error handling
* tests
* update requests with snapshot params
* style fix
* yarn lock update for latest spec updates
* tests
* add polling for snapshot status
* disable button when not in ready state
* reset errors
* don't poll during tests
* remove todo
* test updates
* fix ns select + test
* remove todo
* styling, tidy, mount options, engine types
* lots of tidying, add manual mount input, slower polling
* make read + recover requests in selected namespace
* link to child ns if recovering there
* test updates
* centralize recovery data values
* type, state and error improvements
---------
Co-authored-by: claire bontempo <cbontempo@hashicorp.com>
Co-authored-by: Lane Wetmore <lane.wetmore@hashicorp.com>
* render export activity in table by client type
* refactor filter toolbar to apply filters when selected
* finish filter toolbar refactor
* finish building client-list page
* remaing test updates from the filter-toolbar refactor
* WIP tests
* finish tests for export tab!
* add test for bar chart colors
* reveal client list tab
* add changelog
* filter root namespace on empty string or "root"
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
* rename query params to match keys from api response
* move type guard check to util
* update color scheme
* remove passing selected namespace to export activity data request
* remove namespace and mount filter toolbar
* update response, sort by client count number
* remove default page size for testing
* implement table and filters in overview tab
* remove old query params
* cleanup unused args
* revert page header changes
* update mirage, remove month from utils
* update client count utils
* one more color!
* reset table to page 1;
* workaround to force Hds::Pagination::Numbered to update when currentPage changes
* add empty state test for no attribution
* delete unused methods
* add test for new utils
* add changelog
* rename changelog
---------
Co-authored-by: claire bontempo <cbontempo@hashicorp.com>
* change entity_id to camel casing, remove "backends" key from stored auth data
* fix tokenExpirationEpoch returning NaN, use authSuccess in auth service tests
* camel case mfa_requirement references
* refactor auth service
* implement api service for token method
* implement api service in standard auth methods
* add lookupSelf request to persistAuthData method in auht service instead of calling in components
* implement api service in oidc-jwt component
* implement api service in okta component
* implement api service in saml component
* use api service for wrapped_token query param
* remaining test updates, enterprise tests and stabilize auth helpers
* upate renew() to use new persistAuthData method, add a test
* revert as this will be addressed upstream
* rename supported-login-methods to auth-form-helpers and delete old supported-auth-backends helper, update tests
* cleanup normalize after testing mfa validation for each auth method
* update type declarations, set displayName in each method component
* stabilize redirect tests by waiting for login before asserting url
* stabilize tests
* modernize typescript syntax, move error const to util
* use mirage instead of vault server to resolve test race conditions
* fix file import
* add request for custom login settings to auth route
* add tests to page integration before updating logic
* make tab component tests
* move form state logic to parent page component
* test updates for sanitizing query param in auth route
* add custom login feature
* add test for fetching login settings on ent only
* add changelog
* reword changelog
* rename variable from showOtherMethods to showAlternateView
* cleanup store
* cleanup comments per PR feedback
* abc
* VAULT-34672 render line breaks in description
* update endpoints after testing with live api
* add test coverage
* word
* remove backup types from test-ns for testing
* change to manually log in
* add error handling for no login settings
* add inheritance badge and make list item linkable
* CE date picker and header changes
* update test
* add changelog and update empty component css
* update modal values from args
* update modal copy
* header changes to add docs and move edit button
* move + update test
* Update ui/app/components/clients/date-range.ts
Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>
* Update ui/app/components/clients/date-range.ts
Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>
* refactor modal state and update docs
* update tests
* update modal copy
* Update changelog/30488.txt
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
* update date parsing, docs link copy and tidy
* update var name for clarity
* add date range test to check for disallowing current month selection
* update tests to reflect disallowal of current month (or beyond) date selection
* move ce header into page header comp and update tests
---------
Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
* more updates to api-client for sync
* updates sync destination-header component to use api service
* updates to sync types
* updates sync destination route to use api service
* updates sync destination mirage factory and handler
* refactors sync setup-models test helper and removes store
* refactors sync destination details route to function with api service data
* refactors sync destination secrets route to function with api service data
* adds sync destination edit route
* updates swagger-ui to display camelized operation ids in development
* attempt to fix test timing issue
* fixes issue stubbing environment in swagger-ui test
* adds test for operation ids in production for swagger-ui component
* update mfa methods to use namespace_path instead of namespace_id
* add test for empty namespace path and add namespace path to factories
* add changelog entry
* fix name
* hide namespace label when path is empty and test updates
* wip control group fix?
* dont rely on models for capabilities;
* Revert "wip control group fix?"
This reverts commit cf3e896ba05d2fdfe1f6287bba5c862df4e5d553.
* make explicit request for data
* remove dangerous triple curlies
* cleanup template logic and reuse each-in
* remove capability checks from model
* update tests to reflect new behavior
* add test coverage
* fix mirage factory, update details tests
* test control groups VAULT-29471
* finish patch test
* alphabetize!
* does await help?
* fix factory
* add conditionals for control group error
* UI: Implement overview page for KV v2 (#28162)
* build json editor patch form
* finish patch component and tests
* add tab to each route
* and path route
* add overview tab to tests
* update overview to use updated_time instead of created_time
* redirect relevant secret.details to secret.index
* compute secretState in component instead of pass as arg
* add capabilities service
* add error handling to fetchSubkeys adapter request
* add overview tabs to test
* add subtext to overview card
* remaining redirects in secret edit
* remove create new version from popup menu
* fix breadcrumbs for overview
* separate adding capabilities service
* add service to kv engine
* Revert "separate adding capabilities service"
This reverts commit bb70b12ab7dbcde0fbd2d4d81768e5c8b1c420cc.
* Revert "add service to kv engine"
This reverts commit bfa880535ef7d529d7610936b2c1aae55673d23f.
* update navigation test
* consistently navigate to secret.index route to be explicit
* finish overview navigation tests
* add copyright header
* update delete tests
* fix nav testrs
* cleanup secret edit redirects
* remove redundant async/awaits
* fix create test
* edge case tests
* secret acceptance tests
* final component tests
* rename kvSecretDetails external route to kvSecretOverview
* add comment
* UI: Add patch route and implement Page::Secret::Patch page component (sidebranch) (#28192)
* add tab to each route
* and path route
* add overview tab to tests
* update overview to use updated_time instead of created_time
* redirect relevant secret.details to secret.index
* compute secretState in component instead of pass as arg
* add capabilities service
* add error handling to fetchSubkeys adapter request
* add patch route and put in page component
* add patch secret action to subkeys card
* fix component name
* add patch capability
* alphabetize computed capabilities
* update links, cleanup selectors
* fix more merge conflict stuff
* add capabilities test
* add models to patch link
* add test for patch route
* rename external route
* add error templates
* make notes about enterprise tests, filter one
* remove errors, transition (redirect) instead
* redirect patch routes
* UI: Move fetching secret data to child route (#28198)
* remove @secret from metadata details
* use metadata model instead of secret in paths page
* put delete back into kv/data adapter
* grant access in control group test
* update metadata route and permissions
* remove secret from parent route, only fetch in details route
* change more permissions to route perms, add tests
* revert overview redirect from list view
* wrap model in conditional for perms
* remove redundant canReadCustomMetadata check
* rename adapter method
* handle overview 404
* remove comment
* add customMetadata as an arg
* update grantAccess in test
* make version param easier to follow
* VAULT-30494 handle 404 jira
* refactor capabilities to return an object
* update create tests
* add test for default truthy capabilities
* remove destroy-all-versions from kv/data adapter
* UI: Add enterprise checks (#28215)
* add enterprise check for subkey card
* add max height and scroll to subkey card
* only fetch subkeys if enterprise
* remove check in overview
* add test
* Update ui/tests/integration/components/kv/page/kv-page-overview-test.js
* fix test failures (#28222)
* add assertion
* add optional chaining
* create/delete versioned secret in each module
* wait for transition
* add another waitUntil
* UI: Add patch latest version to toolbar (#28223)
* add patch latest version action to toolbar
* make isPatchAllowed arg all encompassing
* no longer need model check
* use hash so both promises fire at the same time
* add subkeys to policy
* Update ui/lib/kv/addon/routes/secret.js
* add changelog
* small cleanup items! (#28229)
* add conditional for enterprise checking tabs
* cleanup fetchMultiplePaths method
* add test
* remove todo comment, ticket created and design wants to hold off
* keep transition, update comments
* cleanup tests, add index to breadcrumbs
* add some test coverage
* toggle so value is readable
* remove destructureClientCounts
* Update type and mirage generator
* remove deprecated keys from hardcoded response samples
* Add back destructureClientCounts with updated description
* intial changes, haven't tested client counts or done test coverage
* client count rename getter to clairfy
* fix has-permission api-paths
* wip
* wip
* fix: explicitly refresh vault.cluster model to re-fetch activatedFeatures after actication
* tests: fix # of assertions for verifying that activation was called
* tests: tidy overview-test
* add additional api permission path and move fetch back to application
* add test coverage for the service
* cleanup
* remove test that checked for upsell without license or on community
* small comment change
* welp missed component getter
* flaky test fix
* flaky test
* small nit changes from pr reviews
* add defaults to sync mirage handler
* Gate sync overview route for users without access (#27320)
* routes: add redirect if user does not have access to sync
* tests: verify redirect on sync overview page happens
* tests: organize tests modules to ensure enterprise is explicitly set up
* add type enterprise required now because we do a check for this first
* fix oss test
---------
Co-authored-by: Noelle Daley <noelledaley@users.noreply.github.com>
* only include upgrades with previous versions
* update tests
* fix prettier linting
* update counts test
* why are you failing??
* match key order of expected object to actual
* timezones -_-
* attempt to fix flaky openapi test again
* consistent timestamp format
* wrap client count card in permissions
* add test
* add changelog
* move tests into module, add more!
* final test cleanup, stub permissions manually without helper
* use current_billing_period for dashboard, add tests
* update mirage to handle new client param
* Update ui/app/components/dashboard/client-count-card.js
* Add mirage response for internal/counters/config to set a static billingStartTimestamp before STATIC_NOW
* Export config response from mirage handler
* only generate 2 mounts per client type
* add acme_clients to attribution chart
* add acme clients to running total
* cleanup selectors
* add stat box to single historical month running total, update tests
* update filter subtext
* add mountpath to usage stat description, change tags from h to p
* cleanup extra divs
* remove extra clients text from cluttered stats
* update attribution test
* fix some a11y tests and update attribution counts
* fix a11y violations
* move to beforeEach?
* use model returned by route model hook for ts declaration
* remove hasActivity helper
* refactor mirage so namespace totals are summed from monthly data
* add charts to acme tab
* add controller, update counts test
* add test for acme page
* selector cleanup
* update empty state handling for cc charts
* cleanup conditional logic
* add acme acceptance tests for filtering
* wrap up util updates
* finish acceptance tests
* update usage stats
* wrap up number updates from latest stubbed response
* cleanup namespaceArrayToObject method
* WIP typescript conversion
* WIP typescripted destructured block
* slowly making progress....
* WIP move all types to util type file, separate returns in formatByMonths
* namespaceArrayToObject is working?!?
* fix mirage handler not generating months when queries are after upgrade
* wow, the types are actually working omg
* add comments and update client-count-utils test
* delete old js file
* remove types from activity model
* remove comment
* reuse totalclients type to minimize places we add types
* commit file with type changes for git diff
* delete util file again
* address PR feedback and move type declarations to util file
* remove unused types
* update tests, use client helper in dashboard clients test
* remove typo
* make modifications with updated combined activity response from the backend
* remove yarn script that no longer works in yarn 3
* delete other deprecated yarn script
* add acme_clients to mirage handler and utils
* consolidate client names
* revert changes to homogenizeClientNaming, wait until confirmation from backend
* remove flattenDataset helper
* revert deleting flattendataset method (done in separate PR)
* move response to helper file
* cleanup utils based on test changes
* add acme_clients to tests
* rename variables and add comments!
* refactor homogenizeClientNaming and rename
* move by_namespace to test helper as well
* add comments and finally delete flattenDataset
* add more comments and update response to match no mounts shape
* update test selector
* finish updates for removing clients: null from serialized response
* final comments!
* remove arrayOfCounts helper
* Update ui/tests/integration/components/clients/page/sync-test.js
Co-authored-by: Chelsea Shaw <82459713+hashishaw@users.noreply.github.com>
---------
Co-authored-by: Chelsea Shaw <82459713+hashishaw@users.noreply.github.com>
* Update add-to-array and remove-from-array helpers
* remove search-select-has-many, moved logic directly into mfa-login-enforcement-form (see #16470)
* Replace add/remove object in MFA files - All MFA tests pass
* Replace in PKI components (pki tests all passing)
* Replace in core addon where applicable
* glimmerize console service -- console tests pass
* more replacements
* update string-list, add comment to vertical-bar-chart
* Refactor CSP Event service
- only used one place (auth-form) so simplified that usage
- glimmerize and refactor so that the tests work
* small updates
* more cleanup
* Fix tests
* Remove objectAt from console-helpers
* Address PR comments
* move commandIndex clearing back
* Remove extra model set
* add secrets sync feature to version service
* fix syntax for feature in version service
* UI [Sidebranch]: correctly call activation flags endpoints (#26068)
* Show empty state on client count sync page if feature isn't activated (#26024)
* page/sync: show empty state if sync is not activated
* tests: add sync page integration tests
* tests: add secrets sync acceptance tests
* cleanup: remove redundant empty state selector
* chore: rename to isSecretsSyncActivated
* Only make POST request to activation-flags in root namespace (#26081)
* Clean up around opt-in banner on non-secrets-sync views (#26039)
* only show and make request to activated-features if enterprise with secrets sync feature
* waiting for final badge title but hiding banner and network request based on if user has secrets-sync feature.
* final copy for badge
* handle dismiss erorr message, custom messaging in errors, different badge names and upsell if not on license.
* add secrets sync feature to version service
* nope, add to main sidebranch not in this PR
* use version service directly to check for secrets sync feature
* update badges to use version service directly
* do not unnecessarily pass hasSecretsSyncFeature, access from version directly
* last spot to update using the feature getter
* cleanup landing cta logic
* UI [Sidebranch]: correctly call activation flags endpoints (#26068)
* small cleanups after merge
* remove unused type imports
* update tests
* update nav link test
* add test waiter for race condition on test
* add waiter to fetch activation-flags
* remove customer waiters and go for waitFors in test
* worth a try? mirage issues?
* closer?
* fix issue with inconsistent asserts
* adding back in in case this is the issue
* revert cluster.hbs change
* skip test
* delete test
---------
Co-authored-by: clairebontempo@gmail.com <clairebontempo@gmail.com>
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
Co-authored-by: Chelsea Shaw <82459713+hashishaw@users.noreply.github.com>
* Hide sync for managed vault (#26084)
* [secrets sync] hide sync content from client overview (#26078)
* clients/overview: hide secrets sync content if not in license
* clients: remove sync tab if not in license
* routes: fetch isSecretsSyncActivated at clients/counts route level
* wip - hide secrets sync from overview page
* tests: fix usage-stats test
* more wip hiding from overview page
* hide secrets sync on attribution component/modal
* hide secrets sync content on running total component
* fix RunningTotal class name
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
* controllers: fix type
* tests: usage tests
* tests: running totals tests
* add s to secrets-sync
* tests: running-total test cleanup
---------
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
Co-authored-by: clairebontempo@gmail.com <clairebontempo@gmail.com>
* cleanup unused version service
* return extra line
* wip - sync tests
* wip -- clients overview acceptance tests
* test coverage for sync in license, activated
* tests: add more robust sync-related overview tests
* hide sync client charts if feature not in license
---------
Co-authored-by: clairebontempo@gmail.com <clairebontempo@gmail.com>
Co-authored-by: Chelsea Shaw <82459713+hashishaw@users.noreply.github.com>
Co-authored-by: Noelle Daley <noelledaley@users.noreply.github.com>
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
Co-authored-by: Chelsea Shaw <cshaw@hashicorp.com>
* VAULT-24469 use sys/seal-status instead of internal version endpoint
* Update tests and mirage handlers
* Revert "VAULT-20669: Add New Authenticated Endpoint for Version (#23740)"
This reverts commit 550c99ae3b6553f12e4a862c915155b8d0a53516.
* Readded version_test.go
* Reverted any old changes on versionlgo
---------
Co-authored-by: divyaac <divyaac@berkeley.edu>
* replace all instances of toArray() with slice()
* remove unnecessary array check
* remove superfluous that used to be toArray
* remove other superfluous slices
* Revert "remove other superfluous slices"
This reverts commit 51df83f44ebf0445a18c5cf17283ca7cde23fd53.