Commit graph

247 commits

Author SHA1 Message Date
claire bontempo b05ffa88d5
Improve Secret Empty States (#12084)
* adds conditional to render 'minus plain' icon when key doesn't exist

* shows a hyphen when KV secret doesn't have a key and/or value

* fixes tests
2021-07-21 12:47:52 -07:00
claire bontempo 30f9bbd9f5
UI/Clarifies error message for exit test process (#12094)
* adds console log to elaborate on error message

* fixes browserstack failure
2021-07-15 12:54:42 -07:00
Angel Garbarino 84da2424a7
Fix KV Version History queryParams on the component LinkedBlock (#12079)
* fix the issue

* add test coverage

* add documentation to link-block

* add changelog

* modify for browserstack
2021-07-14 15:38:55 -06:00
Arnav Palnitkar d1cc297cd9
Handle form validation for open api form (#11963)
* Handle form validation for open api form

- Added required validator for all the default fields

* Fixed field group error and adedd comments

* Fixed acceptance tests

* Added changelog

* Fix validation in edit mode

- Handle read only inputs during edit mode

* Minor improvements

* Restrict validation only for userpass
2021-07-13 15:50:27 -07:00
Angel Garbarino fc8914db16
Remove Key validation on KV2 (#12045)
* remove check on key

* clean up

* amend test

* remove leftover
2021-07-13 11:47:50 -06:00
claire bontempo 72e3d29abc
Truncate Secret Engine Description Text (#11995)
Co-authored-by: hashishaw <cshaw@hashicorp.com>
2021-07-08 08:21:10 -07:00
Angel Garbarino 5fe59a685b
Reverting fix on KV 2 for duplicate paths (#12008)
* revert changes

* changelog

* add test coverage for max versions
2021-07-07 11:50:00 -06:00
Angel Garbarino 94e11af37a
UI/cp validations kv duplicate path (#11878)
* setup check when secret-v2 record is populated

* return network request of full paths

* modify/amend test

* remove console log

* fix test

* add changelog

* attempt to fix browserstack test issue

* remove find

* add trim

* another attempt
2021-06-22 10:34:00 -06:00
claire bontempo 3ec17429e8
Updates license state copy and link (#11900)
* changes license state copy and updates read more link (also updates test)
2021-06-21 12:44:28 -07:00
Chelsea Shaw 565871f63c
UI/fix safari oidc login (#11884)
* use window.postMessage instead of localStorage on oidc callback
2021-06-17 15:56:04 -05:00
Angel Garbarino d99742c6c5
Implement ember-cp-validations on KV secret engine (#11785)
* initial setup

* initial validation setup for empty path object.

* removal console logs

* validation on keyup for kv

* in progress

* making some progress

* more progress

* closer

* done with create page now to fix edit page that I broke

* fix secret edit display on create

* test and final touches

* cleanup mountbackendform

* cleanup

* add changelog

* address pr comments

* address styling pr comment
2021-06-15 09:21:54 -06:00
claire bontempo 58a5f17288
Displays Auth Method description on Vault UI login page (#11795)
* Displays Auth Method description on login page

* working on auth login form

* Keeps path name as LinkTo label adds description to paths

* removes commented and unused code

* removes trailing white space

* removes prettier package

* adds test for description

* removes extra white spaces

* adds changelog file
2021-06-14 13:03:49 -07:00
Chelsea Shaw 6d4b3bde17
UI/fix license banner (#11824)
* Fix key for expiry time on sys/health license attr

* Update license warning language if license not autoloaded
2021-06-10 17:49:49 -05:00
Angel Garbarino 3e9bb12dc2
replace last two partials (#11765)
* replace last two partials

* cleanup

* modify test to cover new component

* only on ca role run new function

* help with inconsistent failure on enterprise test

* small changes to help with flaky test locally

* add js docs
2021-06-07 12:11:46 -06:00
Chelsea Shaw 468331fa61
UI/license page with autoload (#11778) 2021-06-07 12:44:39 -05:00
Chelsea Shaw f9ccd941ad
UI/license banners (#11759) 2021-06-03 15:30:26 -05:00
Angel Garbarino 98c2ba2e6c
secret-list/item partial removed (#11710)
* secret-list/item partial removed

* remove all partials and I'm sure break many things.

* changing props types and breaking more things

* cleanup

* fix options for backend

* fix transform list item test
2021-06-02 08:59:31 -06:00
Chelsea Shaw cef14f0236
UI: allow reset on database json fields (#11708) 2021-05-27 16:25:58 -05:00
Angel Garbarino 8f5d62139c
KV 2 Toolbar delete redesign (#11530)
* initial setup, modify toolbar header

* footer buttons setup

* setup first delete version delete method

* clean up

* handle destory all versions

* handle undelete

* conditional for modal and undelete

* remove delete from version area

* modelForData in permissions

* setup for soft delete and modify adpater to allow DELETE in additon to POST

* dropdown for soft delete

* stuck

* handle all soft deletes

* conditional for destroy all versions

* remove old functionality from secret-version-menu

* glimmerize secret-version-menu

* Updated secret version menu and version history

* Updated icons and columns in version history

* create new component

* clean up

* glimmerize secret delete menu

* fix undelete

* Fixed radio labels in version delete menu

* handle v1 delete

* refining

* handle errors with flash messages

* add changelog

* fix test

* add to test

* amend test

* address PR comments

* whoopies

* add urlEncoding

Co-authored-by: Arnav Palnitkar <arnav@hashicorp.com>
2021-05-19 10:43:55 -06:00
Chelsea Shaw 19c5f27434
UI/fix identity model (#11641) 2021-05-17 16:41:39 -05:00
Angel Garbarino 98f239498a
skip flaky control group test (#11595) 2021-05-12 11:20:47 -06:00
Chelsea Shaw d65947134d
UI: Regex validation on transform templates (#11586)
* Add regex validator component with tests, add to form-field, use in transform template

* Update tests with data-test selectors

* Add changelog
2021-05-12 10:12:33 -05:00
Angel Garbarino 7012aab272
UI/okta duo push notification (#11442)
* initial setup

* add delay and modify message

* test

* changing to different style because unable to interrupt the yield of authentication

* cleanup

* more consitency in messssage placement

* fix test

* clean up test notification

* clean up

* remove click

* changelog

* Update 11442.txt

* revert changes so a message is delayed by not calling yield

* amend test

* remove padding-bottom as no longer needed with reposition of message location
2021-05-06 12:29:39 -06:00
Chelsea Shaw 977b6e3bbb
UI/database mysql (#11532)
* Add MySQL DB Support

* Add other versions of MySQL to database options

* Save incoming root_credentials_rotate_statements as root_rotation_statements for display

* Handle errors correctly on database connection form for edit

* Add tests for mysql database

* Add UI feature changelog
2021-05-06 13:22:40 -05:00
Arnav Palnitkar 1d26f056bc
Updated code mirror component for consistency (#11500)
* Updated code mirror component for consistency

- Hide gutters, line number and selection while read only
- Show toolbar with copy functionality for all instances

* Moved toolbar and actions to json editor component

* Updated form-field-from-model template

* Added test for toolbar
2021-05-06 09:59:15 -07:00
Chelsea Shaw 1810edf428
UI/update UI deps (#11447) 2021-04-26 11:23:57 -05:00
Angel Garbarino 2e35e9578c
UI/obscure secret on input (#11284)
* new font and add as font-family to be used in masked-input

* clean up logic

* refactor for displayOnly

* start cert masking

* work on certificates

* upload cert work

* fix global styling

* fix styling for class no longer used

* make mask by default and remove option

* glimmerize start and certificate on LDAP a file field

* glimmerize actions

* first part of glimmerizing text-file still need to do some clean up

* not doing awesome over here

* getting ready to un-glimmer

* unglimmerize

* remove placeholder based on conversations with design

* clean up text-file

* cleanup

* fix class bindings

* handle class binding

* set up for test

* fix elementId

* track down index

* update masked-input test

* add more to the masked-input test

* test-file test

* fix broken test

* clear old style

* clean up

* remove pgp key masked font, this really needs to be refactored to text-file component

* changelog

* cover other certificate view

* add allowCopy

* address some pr styling comments

* improve test coverage

* fix some issues

* add attr.options.masked
2021-04-22 08:58:37 -06:00
Chelsea Shaw a3c396991c
UI/database mssql (#11231)
Add MSSQL plugin support in database secrets engine
2021-04-14 16:07:07 -05:00
Chelsea Shaw f9ade25674
UI/fix kvv2 version (#11258)
* Update default form values for kv

* Group kv version option in 'Method Options' group

* Fix tests, explicitly set if select input does not have default

* Handle array of objects from adapterError.errors in MessageError component

* Add changelog
2021-04-02 15:17:42 -05:00
Arnav Palnitkar a21ad2ffe2
Hide fields that are empty in secrets configuration (#11230)
Updated the existing helper to check for empty object, string,
null or undefined
2021-03-31 15:34:20 -07:00
Chelsea Shaw 410e34326d
Skip flaky PKI test (#11243) 2021-03-31 10:40:53 -05:00
Chelsea Shaw 509c31604d
UI/fix backend db connection (#11127)
* Update adapter so any named database backend will work

* Add test for deleting database connection
2021-03-17 15:48:40 -05:00
Chelsea Shaw a17edd9d0f
UI: Connection "Add Role" automatically populates database in form (#11119)
* Database role create form sets url param itemKey as database on init

* add test for new functionality

* Add changelog
2021-03-17 11:32:27 -05:00
Angel Garbarino d89ef3c369
Remove Skip from flaky test left over from Ember Upgrade (#11065)
* remove skip

* remove skip from create test

* some changes

* small changes to address local failures

* replace page object with dom click to help with flaky control group test

* small fix that seems to help control group failures

* some skipping to bring back my sanity

* focusing on the section-cert-test for pki

* another try at the secret cert test

* skipping to focus on secret-certs

* fingers crossed for pki role test

* hopefully some help with control group

* more on control groups

* trying for one less skip here

* create test remove skips

* remove skip

* remove comment

* back to skip this test

* shouldn't make sense but it does, changed the name to hit it first in acceptance test and that works

* redirect testing

* remove catch because that was not the issue, it never got triggered

* cleanup

* clean up

* remove comments and add catch
2021-03-16 12:23:48 -06:00
Chelsea Shaw 7e35bd56b0
Add test for db role setting form component (#11018)
* Add test for db role setting form component

* fix test, add changelog
2021-03-01 12:52:46 -06:00
Angel Garbarino 016ed8dd5e
PKI flaky test (#11017)
* undo skip

* add back settled
2021-02-26 12:01:31 -07:00
Chelsea Shaw 9b3f5c2386
UI/db tests (#11013)
* Add tests for connection create and edit

* Cleanup old tests, add role create form test

* Fix linter/selector
2021-02-25 18:41:04 -06:00
Angel Garbarino efd3677c58
UI: fix KMIP bug and test (#11011)
* fix KMIP test that was failing and clean modal on configuration page.

* add changelog

* remove uncessary unload

* remove async
2021-02-25 15:13:00 -07:00
Angel Garbarino 1394187eb2
UI Add test and clean up for DBSE (#10993)
* clean up

* add test
2021-02-24 11:23:58 -07:00
Angel Garbarino 59e83e2e6d
UI Database Secrets Engine (MongoDB) (#10655)
* move the ttls on enable for db to default and not as options

* refactor form field to angle brackets

* add database to supported backend

* initial setup of components and models

* setup selectable cards, need to make own component

* styling setup

* subtext and links

* number styling

* search select put in place and button, all pretty things

* search label text

* messy but closer to data configuration. making models and fetching those models on routes

* connection adapter and serializer that is pulled in by the overview route

* clean up and add new model params connections and roles to overview route hbs

* setting up overview as route with SecretHeader component.  TODO, show Overview tab, but have link to route.  It's going be on the secret header list component

* setup overview tab on secret-list-header to go to overview page

* setup id in overview route

* Correct link on secrets engine list for database and others

* Roles tab on database fetches correct model

* Update options for backend with hasOverview param so overview tab is rendered conditionally on secret list header

* create new getCrendentialsComponent

* Rename database connection parent component and start working on display

* setup routing to credentials route for database from overview page

* setup network request for the credentials of role

* setup serializer for credentials

* redirect previous route

* fix border color on button disable

* add margin to back button

* change to glimmer component

* glimmerize and clean up the get-credentials-card

* Begin database connection show and create form

* add component test for the get-credentials-card

* Database connection model and field groups

* add static roles to searhSelect

* add staticRoles on overview page

* Toolbar and tabs on database connection show view looks correct

* combine static and dynamic role models for pagination

* Update database-list-item with real link to connection

* Add support for optionalText edit type on form-field

* handle situation when no static and/or dynamic roles

* turn partial into component so can handle computed and eventually click actions, similar to transform

* glimmerize database-list-item

* use lazy capabilities on list role and static-role actions

* Create connection works and redirects to show page

* creds request based on dynamic or static and unload the store by record creds when they transition away.

* dynamcially add in backend for queries

* fixes on overview page for get credentials with hardcoded backend and layout for static creds

* Rotate and Reset connection actions working on connection

* get credentials set the query params

* setup async for handling permission errors on overivew

* Move query logic to store for getting both types of role

* Filtering works on combined role models

* cleanup

* Fix no meta on connections list

* better handle the situation where you don't have access to list roles but do to generate

* implment updated empty state component and add to credentials page when roleType is noRoleType

* glimmerize the input search component

* move logic for generate credentials urlto the generate creds component

* remove query param for role type

* handle permissions on the overview page

* permissions for role list

* New roles route for backends

* handle different permissions for empty return on 404 vs 403 on overview page

* fix links on overview page

* Connetions WIP

* setup lazy caps for the connections model and list

* add computed to role and static role models to clean up permissions

* setup actions for connections list

* Update form-field to show password type and update json input to angle bracket syntax with optional theme option

* setup capabilities on overview for empty state

* fix hardcoded on the backend

* toggle inner label has width 100%

* Add custom update password togglable input on database connection edit form, and only submit defined attrs

* Add updateRecord to connection adapter

* glimmerize secret list header and make new component which either shows or does not show the tab based on permissions

* Remove tabs on show connection

* add peek record

* Update database role to get both models on a single model, remove static-role model and adapter, remove roles route

* fix creds permissions on database-list-item

* add component info and rename for secret-list-header-tab

* fix issues on overview page

* Add path to individual role on serializer

* add accetpance test for testing the engine

* fix transform test

* test fix

* Update connection before role created, disable button with tooltip if user cannot update path

* Add add-to-array and remove-from-array helpers with tests

* Clean up connection update on delete or create role, cleanup logs, role create link works

* Database role create and edit forms with readonly fields and validation. Add readonly-form-field

* Add field div around ttl picker for correct spacing on form-field

* fix the breadcrumbs

* PLaceholder test for readonly form field

* create new helper to format time duration

* tooltip and formatting on static role

* more on static roles time stuff

* clean up

* clean up

* fixes on the test and addition of another helper test

* fix secrets machine test

* Add modal to connection creation flow

* fix issue with readonly form field test

* Add is-empty-object helper and tests

* Role error handling

* Remove Atlas option from connection list, add defaults to db role form

* clean up stuff though might have made it uglier

* clean up

* Add capabilities checks on connection actions

* Fix jsdocs on readonly-form-field

* Fix json editor height on form field

* Readonly form has notallowed cursor, readonly form field updates

* Add blank field rendering to info-table-row

* Start writing readonly form field tests

* Address some PR comments

* fix fallback action on search select

* cleanup per comments

* fix readonly form field test and lint

* Cleanup string helpers

* Replace renderBlank with alwaysRender logic

* re-humanize label on readonly form field

* Show defaultShown value on info-table-row if no value and always render

* Show default on role and connection show table

* Add changelog

Co-authored-by: Chelsea Shaw <chelshaw.dev@gmail.com>
2021-02-18 10:36:31 -06:00
Chelsea Shaw acdf42dfbf
Fix KMIP tests failing after 1.6.2 (#10891) 2021-02-10 15:48:29 -06:00
Angel Garbarino 5ce35d1c52
Updating date-fns library from 1.x to 2.x (#10848)
* first round of fixes and setup

* test fixes

* fix dumb options on new method

* test fix

* clean up

* fixes

* clean up

* handle utc time

* add changelog
2021-02-08 13:13:00 -07:00
Chelsea Shaw 8d8577c60e
UI: Temporarily skip flaky tests on test-ui (#10728)
* Skip secrets/pki/list?tab=certs

* Skip redirect_to acceptance test

* Skip access/identity/entities/create acceptance test

* Skip settings/configure/secrets/pki/cert
2021-01-20 10:03:29 -06:00
Chelsea Shaw 5ec08a469a
UI: refactor flaky test (#10697)
* refactor flaky test

* Replace is-present with dom assertions

* Skip test for now
2021-01-14 14:26:01 -06:00
Chelsea Shaw 5a05a1b39f
UI: Fix shape of response anticipated from feature-flags endpoint (#10684)
* Fix shape of response anticipated from feature-flags endpoint

* Add changelog
2021-01-11 14:44:52 -06:00
Chelsea Shaw 70d3185d3a
UI/managed namespace changes (#10588)
* Redirect to url with namespace param if user logged into root namespace without permission

* Feature flag service for managing flags

* Redirect with namespace query param if no current namespace param AND managed root namespace set

* Test coverage for managed namespace changes

* Handle null body case on feature-flag response, add pretender route for feature-flags on shamir test
2021-01-07 14:18:36 -06:00
Angel Garbarino ad42d8f6ec
Bug: Fix namespace test (#10662)
* cannot do full refresh of page, so set the current URL instead of using the toggle

* add comment remove pauseTest

* remove

* check for namespace in toggle
2021-01-06 14:33:43 -07:00
Angel Garbarino feca115ef4
Bug: Fix issue with double encoding on space in secret history route (#10596)
* setup for concept it works, but probably not the best solution

* add comment and remove console and test var

* use normalize path higher up to fix issu

* add test for bug that fixing

* forgot a couple of changes

* changelog
2021-01-04 09:32:52 -07:00
Kloppi313 64b4487d8e
No 'v' in version HTML anchor (#10491)
* No 'v' in version HTML anchor

The footer version output links to https://www.github.com/hashicorp/vault/blob/master/CHANGELOG.md#v160 (in Version 1.6.0) but you reach the anchor with https://github.com/hashicorp/vault/blob/master/CHANGELOG.md#160 (without 'v' before the version number)

* Removed 'v' from URL version anchor

* Create 10491.txt

Co-authored-by: Chelsea Shaw <chelshaw.dev@gmail.com>
2020-12-08 11:21:48 -06:00
Angel Garbarino 081db3a240
Ember-cli upgrade from ~3.8 to ~3.20 (#9972)
* Update ember-cli to ~3.20

* Remove bad optional-feature

* Remove ember-fetch dep

* re-install ember-fetch

* update model fragments pr

* update ember model fragments correct package name

* update ember composable helpers to solve array helper error

* update ember-concurrency

* add back engine dependencies, automatically removed during ember-cli-upgrade

* make author-form-options component js file otherwise error

* for now comment out withTestWaiter

* add eslint-node and fix if not with unless in templates

* fix linting for tab index of false is now -1 and add type button to all buttons without types

* fix href errors for linting, likely have to come back and fix

* using eslint fix flag to fix all this.gets

* ember modules codemode removed files that had module twice, will fix in next commit

* finish codemode ember-data-codemod needed to rename const model

* more this.get removal codemode did not work

* cont. removal of this.get

* stop mixin rules until figure out how to reconfig them all

* smaller eslint ignores

* get codemode

* testing app small fixes to bring it back after all the changes

* small changes to eslint

* test removal of getProperties

* fix issue with baseKey because value could be unknown needed to add a question mark in nested get

* smaller linting fixes

* get nested fixes

* small linting error fixes

* small linting changes

* working through more small linting changes

* another round of linting modifications

* liniting fixes

* ember module codemod

* quinit dom codemod

* angle bracket codemod

* discovered that components must have js files

* ran all codemods this is all that's left

* small changes to fix get needs two object, should not have been using get.

* fix issue with one input in form field

* fun times with set and onChange from oninput

* fix issue with model not being passed through on secret-edit-display

* fix issue with yarn run test not working, revert without npm run all

* linting and small fix when loading without a selectAuthBackend

* fix failing test with ui-wizard issue

* fix test failure due to model not being asked for correctly with new changes, probably run into this more.

* fix issue with component helper and at props specific to wizard

* rename log to clilog due to conflict with new eslint rule

* small changes for test failures

* component helper at fixes

* Revert to old component style something with new one broke this and can't figure it out for now

* small fishy smelling test fixes will revisit

* small test changes

* more small test changes, appears upgrade treats spaces differently

* comment out code and test that no longer seems relevant but confirm

* clean run on component test though still some potential timing issues on ui-console test

* fixing one auth test issue and timing issue on enable-test

* small mods

* fix this conditional check from upgrade

* linting fixes after master merge

* package updates using yarn upgrade-interactive

* update libraries that did not effect any of the test failures.

* update ember truth helpers library

* settling tests

* Fix ui-panel control group output

* fix features selection test failures

* Fix auth tests (x-vault-token)

* fix shared test

* fix issue with data null on backend

* Revert "Fix auth tests (x-vault-token)"

This reverts commit 89cb174b2f1998efa56d9604d14131415ae65d6f.

* Fix auth tests (x-vault-token) without updating this.set

* Update redirect-to tests

* fix wrapped token test

* skip some flaky test

* fix issue with href and a tags vs buttons

* fix linting

* updates to get tests running (#10409)

* yarn isntall

* increasing resource_class

* whoops

* trying large

* back to xlarge

* Fix param issue on transform item routes

* test fixes

* settle on policies (old) test

* fix browserstack test warning and skips of test confirmed worked

* Fix redirect-to test

* skips

* fix transformation test and skip some kmip

* Skip tests

* Add meep marker to remaining failing tests

* Skip test with failing component

* rever skip on secret-create test

* Skip piece of test that fails due to navigation-input

* fix settings test where can and skip in others after confirming

* fix circle ci test failures

* ssh role settle

* Fix navigate-input and add settled to test

* Remove extra import

* secret cubbyhole and alicloud

* Add settled to gcpkms test

* settles on redirect to test

* Bump browserstack test resource to large

* Update browserstack resource size to xlarge

* update todos

* add back in withTestWaiter

* try and fix credentials conditional action added comment instead

* Update volatile computed properies to get functions

* this step was never reached and we never defined secretType anywhere so I removed

* add settled to policy old test

* Fix navigate-input on policies and leases

* replace ssh test with no var hoping that helps and add settled to other failing tests, unskip console tests

* kmip, transit, role test remove a skip and add in settled

* fix hover copy button, had to remove some testing functionality

* Remove private router service

* remove skip on control ssh and ui panel, fix search select by restructuring how to read the error

* final bit of working through skipped test

* Replace clearNonGlobalModels by linking directly to namespace with href-to

* Remove unused var

* Fix role-ssh id bug by updating form-field-from-model to form-field-group-loop

* Fix transit create id would not update

* Update option toggle selector for ssh-role

* Fix ssh selector

* cleanup pt1

* small clean up

* cleanup part2

* Fix computed on pricing-metrics-form

* small cleanup based on chelseas comments.

Co-authored-by: Chelsea Shaw <chelshaw.dev@gmail.com>
Co-authored-by: Sarah Thompson <sthompson@hashicorp.com>
2020-12-03 16:00:22 -07:00