Commit graph

17575 commits

Author SHA1 Message Date
hc-github-team-secure-vault-core f881304cc5
backport of commit 5919645a70a12e2675331e0a7ad43238c823738e (#21707)
Co-authored-by: miagilepner <mia.epner@hashicorp.com>
2023-07-10 10:58:05 +00:00
hc-github-team-secure-vault-core c215c2de27
backport of commit bce4b7a3e5a742326c5d7560bb00696db4fe8cc5 (#21699)
Co-authored-by: Steven Clark <steven.clark@hashicorp.com>
2023-07-07 20:52:57 +00:00
hc-github-team-secure-vault-core 03e6898cfc
backport of commit d18242dae4192b11784e539ef862bcfaf654ec69 (#21698)
Co-authored-by: Violet Hynes <violet.hynes@hashicorp.com>
2023-07-07 20:35:32 +00:00
hc-github-team-secure-vault-core cfa1e9d363
backport of commit 87d37fecb775a5ae82d264f0fc08b613dd733c7c (#21688)
Co-authored-by: Violet Hynes <violet.hynes@hashicorp.com>
2023-07-07 19:56:05 +00:00
Sarah Chavis c569513e54
Manual backport of Client count doc updates (#21685) 2023-07-07 12:40:36 -07:00
hc-github-team-secure-vault-core 9d1592cc93
backport of commit 34d1d200ee5e5547779ee8424c52bb7cf4dcb772 (#21676)
Co-authored-by: Violet Hynes <violet.hynes@hashicorp.com>
2023-07-07 15:35:57 -04:00
hc-github-team-secure-vault-core 37dcc37e81
backport of commit 96fd024d15c4823ac73f08bb576d575d99537b15 (#21680)
Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2023-07-07 13:29:06 -06:00
hc-github-team-secure-vault-core ec7e69adc0
backport of commit 9c8a7422ade1b46f413274c5eb6d5306c9e3e563 (#21665)
Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>
2023-07-07 11:01:33 -07:00
hc-github-team-secure-vault-core 93d2fc099f
VAULT-17592 Extract failed Go test results across runners (#21625) (#21672)
Co-authored-by: Kuba Wieczorek <kuba.wieczorek@hashicorp.com>
2023-07-07 18:52:01 +01:00
hc-github-team-secure-vault-core f3f97c9658
backport of commit 95b44add74807bed971638928599b18d302a2ae2 (#21667)
Co-authored-by: Kuba Wieczorek <kuba.wieczorek@hashicorp.com>
2023-07-07 16:43:07 +00:00
hc-github-team-secure-vault-core 7a0badc115
backport of commit 072f0dd7c85be8d4e4390cf417900efce5e38d56 (#21656)
Co-authored-by: Alexander Scheel <alex.scheel@hashicorp.com>
2023-07-07 15:45:01 +00:00
hc-github-team-secure-vault-core d2b396bd2a
backport UI: PKI show missing info on generated cert (#21652)
Co-authored-by: Chelsea Shaw <82459713+hashishaw@users.noreply.github.com>
2023-07-07 15:09:52 +00:00
hc-github-team-secure-vault-core 4c3c3ebb2a
Add remediation steps to the PKI health-check docs (#21643)
Co-authored-by: Steve Clark <steven.clark@hashicorp.com>
2023-07-06 16:53:26 -07:00
hc-github-team-secure-vault-core 820e38e259
backport of commit 304ecfc8e9d61536834e1e3904c3eee28411f6f8 (#21637)
Co-authored-by: Austin Gebauer <34121980+austingebauer@users.noreply.github.com>
2023-07-06 15:35:25 -07:00
hc-github-team-secure-vault-core 1d9e560f0f
backport of commit 2f677665b37fcced51737cdef7abbebb4c719529 (#21527)
Co-authored-by: Max Bowsher <maxbowsher@gmail.com>
2023-07-06 20:01:33 +00:00
hc-github-team-secure-vault-core 2c4e40eaf6
backport of commit 8bb9cbbebaed39b290590f79a8857f5ba01fbf16 (#21627)
Co-authored-by: Peter Wilson <peter.wilson@hashicorp.com>
2023-07-06 18:46:13 +01:00
hc-github-team-secure-vault-core a3334cb526
backport of commit 6acd2921c5d78382b0a554674cd4f7c81a9a126a (#21622)
Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2023-07-06 16:15:50 +00:00
hc-github-team-secure-vault-core 7e8c0a1cae
backport of commit 4c1a7b53d362ee733707de2fa3280596e35d7f03 (#21609)
Co-authored-by: Bianca Moreira <48203644+biazmoreira@users.noreply.github.com>
2023-07-06 12:05:43 +02:00
Ryan Cragun d1e9b99233
[QT-576] Optimize build workflow (#21486) (#21601)
Improve our build workflow execution time by using custom runners,
improved caching and conditional Web UI builds.

Runners
-------
We improve our build times[0] by using larger custom runners[1] when
building the UI and Vault.

Caching
-------
We improve Vault caching by keeping a cache for each build job. This
strategy has the following properties which should result in faster
build times when `go.sum` hasn't been changed from prior builds, or
when a pull request is retried or updated after a prior successful
build:

* Builds will restore cached Go modules and Go build cache according to
  the Go version, platform, architecture, go tags, and hash of `go.sum`
  that relates to each individual build workflow. This reduces the
  amount of time it will take to download the cache on hits and upload
  the cache on misses.
* Parallel build workflows won't clobber each others build cache. This
  results in much faster compile times after cache hits because the Go
  compiler can reuse the platform, architecture, and tag specific build
  cache that it created on prior runs.
* Older modules and build cache will not be uploaded when creating a new
  cache. This should result in lean cache sizes on an ongoing basis.
* On cache misses we will have to upload our compressed module and build
  cache. This will slightly extend the build time for pull requests that
  modify `go.sum`.

Web UI
------
We no longer build the web UI in every build workflow. Instead we separate
the UI building into its own workflow and cache the resulting assets.
The same UI assets are restored from cache during build worklows. This
strategy has the following properties:

* If the `ui` directory has not changed from prior builds we'll restore
  `http/web_ui` from cache and skip building the UI for no reason.
* We continue to use the built-in `yarn` caching functionality in
  `action/setup-node`. The default mode saves the `yarn` global cache.
  to improve UI build times if the cache has not been modified.

Changes
-------
* Add per platform/archicture Go module and build caching
* Move UI building into a separate job and cache the result
* Restore UI cache during build
* Pin workflows

Notes
-----
[0] https://hashicorp.atlassian.net/browse/QT-578
[1] https://github.com/hashicorp/vault/actions/runs/5415830307/jobs/9844829929

Signed-off-by: Ryan Cragun <me@ryan.ec>
2023-07-05 15:19:49 -06:00
hc-github-team-secure-vault-core 917aeabbcf
backport of commit 8925dc22a0996d08af81f9c9883a66d0c21a88f8 (#21598)
Co-authored-by: Max Bowsher <maxbowsher@gmail.com>
2023-07-05 19:59:26 +00:00
hc-github-team-secure-vault-core 946329b29d
backport of commit e0472d4059decd4a5801e027c34d38b80e038a32 (#21590)
Co-authored-by: Anton Averchenkov <84287187+averche@users.noreply.github.com>
2023-07-05 15:29:29 -04:00
hc-github-team-secure-vault-core df1fb2c868
backport of commit 5ce57dbd00b4d81602b07a82430365f770bf0870 (#21589)
Co-authored-by: Steven Clark <steven.clark@hashicorp.com>
2023-07-05 18:46:58 +00:00
hc-github-team-secure-vault-core 7392a0f6ec
backport of commit 78a86b450830ecaf963480f17e5ec1c9c7ad2dfc (#21584)
Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2023-07-05 12:56:59 -05:00
hc-github-team-secure-vault-core 5a6be772eb
backport of commit 52baf01e5352968d623502a4f49dbda12a4dc322 (#21580)
Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2023-07-05 10:16:02 -06:00
hc-github-team-secure-vault-core 94213dacde
backport of commit c6ef0800a00f3634b869e1152cfbf5581753633f (#21576)
Co-authored-by: mickael-hc <86245626+mickael-hc@users.noreply.github.com>
2023-07-05 11:22:27 -04:00
hc-github-team-secure-vault-core ea7fce78f8
backport of commit 772cda4eb24360db53cb640c71cd32aec4aacfc1 (#21573)
Co-authored-by: Peter Wilson <peter.wilson@hashicorp.com>
2023-07-05 14:47:58 +01:00
hc-github-team-secure-vault-core a2b98398e1
backport of commit eecae3a827f523a25359068ad6714af8f28c6ced (#21550) (#21556)
Co-authored-by: miagilepner <mia.epner@hashicorp.com>
2023-07-04 17:07:05 +02:00
hc-github-team-secure-vault-core a2160e5551
backport of commit c9b18c43ea0ed3a06127ad22dec0a13d094ee06d (#21551)
Co-authored-by: Max Bowsher <maxbowsher@gmail.com>
2023-07-04 00:37:25 +00:00
hc-github-team-secure-vault-core cf7c8bc9dc
Backport of UI: VAULT-17699 Fix masked input bug into release/1.14.x (#21537)
Co-authored-by: Kianna <30884335+kiannaquach@users.noreply.github.com>
2023-07-03 08:04:34 -07:00
hc-github-team-secure-vault-core eef9e493e3
backport of commit 1ffc56cb42af630f6d2d39d20cc7ce3e8a44a83d (#21530)
Co-authored-by: Tom Proctor <tomhjp@users.noreply.github.com>
2023-06-30 20:12:37 +00:00
hc-github-team-secure-vault-core 96f1478944
backport of commit f1c6ab41fc6d90811d1a268465f4d9eb712a58b5 (#21535)
Co-authored-by: Rebecca Willett <47540675+rebwill@users.noreply.github.com>
2023-06-30 15:51:51 -04:00
hc-github-team-secure-vault-core d21351f245
backport of commit 325233ea7dba833e987909b21af547d0933751e3 (#21519)
Co-authored-by: Christophe Deliens <chris@deliens.be>
2023-06-30 17:48:20 +00:00
hc-github-team-secure-vault-core 303f940b96
backport of commit 282b4a07383d1e4bb483e1b91d43dd04a5632282 (#21502) 2023-06-29 18:50:46 +00:00
hc-github-team-secure-vault-core 9310e3acba
backport of commit 5b41148bfcfd305991c19998f6d04ca8880da137 (#21488) 2023-06-28 17:46:37 +00:00
hc-github-team-secure-vault-core c97ada6e49
backport of commit 81a5e2ee65944c656b8ee7b9e2ed2c374821eef0 (#21498)
Co-authored-by: Yoko Hyakuna <yoko@hashicorp.com>
2023-06-28 16:00:09 +00:00
hc-github-team-secure-vault-core 855754e434
backport of commit 9f741af66497e67d96f3b2f0748e7ff09b2fd43a (#21492)
Co-authored-by: Yoko Hyakuna <yoko@hashicorp.com>
2023-06-27 21:37:38 +00:00
hc-github-team-secure-vault-core aa7b7ad951
backport of commit c3741b0177056d9e999ff03a6542a4811508fa9a (#21485)
Co-authored-by: Violet Hynes <violet.hynes@hashicorp.com>
2023-06-27 15:54:28 -04:00
hc-github-team-secure-vault-core 0e8ded4936
backport of commit bcd7083d94532a143fb49f92621d2c7a448dcd71 (#21481)
Co-authored-by: Yoko Hyakuna <yoko@hashicorp.com>
2023-06-27 18:39:17 +00:00
hc-github-team-secure-vault-core 32beec61bc
backport of commit fd1683698bad3556d21e783a26ec1bca5d0de671 (#21477)
Co-authored-by: Ryan Cragun <me@ryan.ec>
2023-06-27 16:58:02 +00:00
hc-github-team-secure-vault-core 649715eeb4
backport of commit e3b3c7a8de6f7c3c240ecf798470bbb24c2aaf60 (#21468)
Co-authored-by: Steven Clark <steven.clark@hashicorp.com>
2023-06-27 13:14:38 +00:00
hc-github-team-secure-vault-core 324557f57e
enos: use on-demand targets (#21459) (#21464)
Add an updated `target_ec2_instances` module that is capable of
dynamically splitting target instances over subnet/az's that are
compatible with the AMI architecture and the associated instance type
for the architecture. Use the `target_ec2_instances` module where
necessary. Ensure that `raft` storage scenarios don't provision
unnecessary infrastructure with a new `target_ec2_shim` module.

After a lot of trial, the state of Ec2 spot instance capacity, their
associated APIs, and current support for different fleet types in AWS
Terraform provider, have proven to make using spot instances for
scenario targets too unreliable.

The current state of each method:
* `target_ec2_fleet`: unusable due to the fact that the `instant` type
  does not guarantee fulfillment of either `spot` or `on-demand`
  instance request types. The module does support both `on-demand` and
  `spot` request types and is capable of bidding across a maximum of
  four availability zones, which makes it an attractive choice if the
  `instant` type would always fulfill requests. Perhaps a `request` type
  with `wait_for_fulfillment` option like `aws_spot_fleet_request` would
  make it more viable for future consideration.
* `target_ec2_spot_fleet`: more reliable if bidding for target instances
  that have capacity in the chosen zone. Issues in the AWS provider
  prevent us from bidding across multiple zones succesfully. Over the
  last 2-3 months target capacity for the instance types we'd prefer to
  use has dropped dramatically and the price is near-or-at on-demand.
  The volatility for nearly no cost savings means we should put this
  option on the shelf for now.
* `target_ec2_instances`: the most reliable method we've got. It is now
  capable of automatically determing which subnets and availability
  zones to provision targets in and has been updated to be usable for
  both Vault and Consul targets. By default we use the cheapest medium
  instance types that we've found are reliable to test vault.

* Update .gitignore
* enos/modules/create_vpc: create a subnet for every availability zone
* enos/modules/target_ec2_fleet: bid across the maximum of four
  availability zones for targets
* enos/modules/target_ec2_spot_fleet: attempt to make the spot fleet bid
  across more availability zones for targets
* enos/modules/target_ec2_instances: create module to use
  ec2:RunInstances for scenario targets
* enos/modules/target_ec2_shim: create shim module to satisfy the
  target module interface
* enos/scenarios: use target_ec2_shim for backend targets on raft
  storage scenarios
* enos/modules/az_finder: remove unsed module

Signed-off-by: Ryan Cragun <me@ryan.ec>
Co-authored-by: Ryan Cragun <me@ryan.ec>
2023-06-26 16:54:39 -06:00
hc-github-team-secure-vault-core 45b8674d03
backport of commit df304012f3b3f4d7860b3bb3b58f844291495793 (#21457)
Co-authored-by: Anton Averchenkov <84287187+averche@users.noreply.github.com>
2023-06-26 14:42:40 -04:00
hc-github-team-secure-vault-core 5d2320170c
backport of commit a71cdb616567fbcd05c257ba3535d1e2297a9647 (#21445)
Co-authored-by: Jason O'Donnell <2160810+jasonodonnell@users.noreply.github.com>
2023-06-23 15:55:15 +00:00
hc-github-team-secure-vault-core 58287739ec
backport of commit 5de6af60760dbcbefd8c8e4eb923f74a5720cf13 (#21440)
Co-authored-by: Ryan Cragun <me@ryan.ec>
2023-06-23 04:48:54 +00:00
hc-github-team-secure-vault-core be67c16299
backport of commit 8d22142a3e9d13435b1a65685317fefba7e2f5b3 (#21421)
Co-authored-by: Ryan Cragun <me@ryan.ec>
2023-06-22 22:14:22 +00:00
hc-github-team-secure-vault-core cdd842289a
backport of commit 9290d5f18843f35bbab60c4030faf302f1c7f511 (#21429)
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2023-06-22 21:17:30 +00:00
hc-github-team-secure-vault-core 05abd2c888
backport of commit e3dad5b6da871c82d8688467fcc7279f484c24d4 (#21425)
Co-authored-by: Shubham P <shubham.prajapat@sourcefuse.com>
2023-06-22 20:40:19 +00:00
hc-github-team-secure-vault-core a3e069e3d9
backport of commit 5d13092b038397d5970dcaa411c43defe993ab3a (#21422)
Co-authored-by: Doug Knight <doug.knight@karmix.org>
2023-06-22 13:19:01 -07:00
hc-github-team-secure-vault-core df5284e6cf
backport of commit 67927a1e9f0a2145b5a5a1e1a8d6d542fe16b25e (#21355)
Co-authored-by: Nick Cabatoff <ncabatoff@hashicorp.com>
Co-authored-by: Sarah Chavis <62406755+schavis@users.noreply.github.com>
2023-06-22 19:25:48 +00:00
hc-github-team-secure-vault-core 5de4bea649
backport of commit e31ead37baadfd35f57bd9ef2ff4715e5bf5a46d (#21353)
Co-authored-by: Anton Averchenkov <84287187+averche@users.noreply.github.com>
Co-authored-by: Sarah Chavis <62406755+schavis@users.noreply.github.com>
2023-06-22 18:30:17 +00:00