Commit Graph

251 Commits

Author SHA1 Message Date
Daniel Nephin c8f53a1d52 ci: allow cherry-picking a manual backport to other release branches
If an automatic backport fails to more than one release branch we need
to crate a PR to backport it. So far we've had to create a backport PR
for each target release branch.

With this change, we may be able to create only a single PR, and then
run the backport automation to cherry-pick it into other release
branches.

The idea is that if a change introduced in version n-1 caused a
conflict, and there are no other changes, then the backport automation
should be able to use the same commit for version n-2 and n-3.
2021-05-03 16:09:10 -04:00
R.B. Boyer abc1dc0fe9
connect: update supported envoy versions to 1.18.2, 1.17.2, 1.16.3, and 1.15.4 (#10101)
The only thing that needed fixing up pertained to this section of the 1.18.x release notes:

> grpc_stats: the default value for stats_for_all_methods is switched from true to false, in order to avoid possible memory exhaustion due to an untrusted downstream sending a large number of unique method names. The previous default value was deprecated in version 1.14.0. This only changes the behavior when the value is not set. The previous behavior can be used by setting the value to true. This behavior change by be overridden by setting runtime feature envoy.deprecated_features.grpc_stats_filter_enable_stats_for_all_methods_by_default.

For now to maintain status-quo I'm explicitly setting `stats_for_all_methods=true` in all versions to avoid relying upon the default.

Additionally the naming of the emitted metrics for these gRPC requests changed slightly so the integration test assertions for `case-grpc` needed adjusting.
2021-04-29 15:22:03 -05:00
Jamie Finnigan 8fc62cb87f
remove Codecov from CI runs (#10145) 2021-04-28 13:23:31 -07:00
John Cowen 345765f766
ui: Adds human formatting to nanosecond based session durations (#10062)
* ui: Adds human formatting to nanosecond based session durations
2021-04-28 12:12:56 +01:00
Sarah 602b1e3b0c
updating fingerprint 2021-04-22 15:08:55 +01:00
Sam Salisbury 7ae1d4fa28 ci: rotate the read/write SSH key fingerprint 2021-04-19 18:04:34 +01:00
Daniel Nephin 66567f4bc0 ci: test against Go1.16.3 2021-04-13 12:06:13 -04:00
Daniel Nephin c715d0cef1 ci: update config for nomad main branch rename 2021-03-09 14:44:44 -05:00
R.B. Boyer 398b766532
xds: default to speaking xDS v3, but allow for v2 to be spoken upon request (#9658)
- Also add support for envoy 1.17.0
2021-02-26 16:23:15 -06:00
R.B. Boyer 3b6ffc447b
xds: remove deprecated usages of xDS (#9602)
Note that this does NOT upgrade to xDS v3. That will come in a future PR.

Additionally:

- Ignored staticcheck warnings about how github.com/golang/protobuf is deprecated.
- Shuffled some agent/xds imports in advance of a later xDS v3 upgrade.
- Remove support for envoy 1.13.x but don't add in 1.17.x yet. We have to wait until the xDS v3 support is added in a follow-up PR.

Fixes #8425
2021-02-22 15:00:15 -06:00
R.B. Boyer 6eeccc93ce
connect: update supported envoy point releases to 1.16.2, 1.15.3, 1.14.6, 1.13.7 (#9737) 2021-02-10 13:11:15 -06:00
Alvin Huang 0d1301c408
ci: add nightly load testing on master (#9693) 2021-02-03 15:59:37 -05:00
Alvin Huang e889f7dbcd
ci: fail cherrypick if git push fails (#9673) 2021-01-29 19:42:14 -05:00
Alvin Huang 6cb0482db6
ci: reset working directory between cherrypick labels (#9656) 2021-01-27 15:51:12 -05:00
Alvin Huang 58191cbe4c
ci: fix logic for check-vendor (#9619) 2021-01-22 11:36:35 -05:00
Alvin Huang 2a5b88e5b1
ci: change check-vendor to verify git status has no changes (#9615) 2021-01-21 18:29:26 -05:00
Alvin Huang 62acc073b7 modify envoy test job names to make circleci happy 2021-01-13 23:31:15 -05:00
Alvin Huang 3165e84e98 add load test configuration 2021-01-13 23:30:00 -05:00
Alvin Huang 4120e72875 upload zip instead of tar dev builds 2021-01-13 23:27:17 -05:00
Alvin Huang b5560b04d8 modify aws assume role circleci command 2021-01-13 23:25:21 -05:00
Alvin Huang de98b4591c add PR load test terraform config 2021-01-13 23:19:53 -05:00
Daniel Nephin 2e2ee41390 xds: Fix data race
TestEnvoy.Close used e.stream.recvCh == nil to indicate the channel had already
been closed, so that TestEnvoy.Close can be called multiple times. The recvCh
was not protected by a lock, so setting it to nil caused a data race with any
goroutine trying to read from the channel.

Instead set the stream to nil. The stream is guarded by a lock, so it does not race.

This change allows us to test the agent/xds package using -race.
2021-01-07 18:13:48 -05:00
John Cowen 6196d49f62
ui: Remove ui-staging from CI (#9508)
* Remove all mention of ui-staging as we don't use that branch name
2021-01-06 18:37:51 +00:00
John Cowen 512ad836bc
ui: Add license checker to the workspace plus CI (#9507)
* ui: Adds license-checker plus manually run package script
2021-01-06 18:37:21 +00:00
Mike Morris 2c84b76469
ci: update to Go 1.15.6 (#9373) 2021-01-04 12:56:40 -05:00
Daniel Nephin 839429eb40
Merge pull request #9160 from hashicorp/dnephin/go-test-race-in-to-out-list
ci: change go-test-race package list to exclude list
2020-11-17 13:13:38 -05:00
Mike Morris 81f8f3cace
ci: reword cherry-picker comment (#9192) 2020-11-13 17:14:47 -05:00
R.B. Boyer a2e1cbd061
ci: update to go 1.15.5 (#9187) 2020-11-13 15:35:33 -06:00
Mike Morris 7af643ac37
ci: update to Go 1.15.4 and alpine:3.12 (#9036)
* ci: stop building darwin/386 binaries

Go 1.15 drops support for 32-bit binaries on Darwin https://golang.org/doc/go1.15#darwin

* tls: ConnectionState::NegotiatedProtocolIsMutual is deprecated in Go 1.15, this value is always true

* correct error messages that changed slightly

* Completely regenerate some TLS test data

Co-authored-by: R.B. Boyer <rb@hashicorp.com>
2020-11-13 13:02:59 -05:00
Daniel Nephin b27457dac8 ci: go-test-race switch to exclude list
Most packages should pass the race detector. An exclude list ensures
that new packages are automatically tested with -race.

Also fix a couple small test races to allow more packages to be tested.

Returning readyCh requires a lock because it can be set to nil, and
setting it to nil will race without the lock.

Move the TestServer.Listening calls around so that they properly guard
setting TestServer.l. Otherwise it races.

Remove t.Parallel in a small package. The entire package tests run in a
few seconds, so t.Parallel does very little.

In auto-config, wait for the AutoConfig.run goroutine to stop before
calling readPersistedAutoConfig. Without this change there was a data
race on reading ac.config.
2020-11-11 14:44:57 -05:00
Mike Morris 79a1eb7daf
ci: publish bindata_assetfs.go for all release/.x branches (#9158) 2020-11-11 13:39:40 -05:00
Mike Morris 1924ab9703
ci: remove nonexistant autopilot directory from go-test-race (#9159) 2020-11-11 13:38:45 -05:00
Mike Morris c0ef425ae5 chore: update to Go 1.14.11 2020-11-09 15:48:18 -05:00
Daniel Nephin acfc22822c ci: cherry-pick port-merge comment 2020-11-06 18:06:52 -05:00
Alvin Huang ea88956c9c
use hashicorp docker mirror to prevent rate limit (#9070) 2020-10-30 17:59:13 -04:00
John Cowen 827e53694c
ui: Upgrade consul-api-double to fix datacenter mocks (#9045) 2020-10-27 13:31:57 +00:00
Daniel Nephin 194c7f7ae6 ci: upgrade gotestsum
So that we are using the same version as enterprise
2020-10-26 15:19:08 -04:00
Alvin Huang 0d34e2939f
ci: add parallelism to envoy tests (#9005)
add subtest output
2020-10-23 11:53:24 -04:00
Alvin Huang 5e4de8b50a
move static-assets dist to new path (#9015) 2020-10-22 21:04:39 -04:00
R.B. Boyer a2c50d3303
connect: add support for envoy 1.16.0, drop support for 1.12.x, and bump point releases as well (#8944)
Supported versions will be: "1.16.0", "1.15.2", "1.14.5", "1.13.6"
2020-10-22 13:46:19 -05:00
John Cowen 6589cbbd0d
ui: Move to Workspaced Structure (#8994)
* ui: Add the most basic workspace root in /ui

* We already have a LICENSE file in the repository root

* Change directory path in build scripts ui-v2 -> ui

* Make yarn install flags configurable from elsewhere

* Minimal workspace root makefile

* Call the new docker specific target

* Update yarn in the docker build image

* Reconfigure the netlify target and move to the higher makefile

* Move ui-v2 -> ui/packages/consul-ui

* Change repo root to refleect new folder structure

* Temporarily don't hoist consul-api-double

* Fixup CI configuration

* Fixup lint errors

* Fixup Netlify target
2020-10-21 15:23:16 +01:00
John Cowen 9a302f6f4a
ui: Clean up and document environment.js file (#8966)
* Move various environment getting utils out of the main file and test/doc

* Clean up and document the entire environment file

* Tweak the environment tests to reflect what they should be

* Explicitly enable namespaces instead of defaulting

* Allow env fallback functions to be called lazily

Otherwise the executables used for finding out things would be required
during build, this way if env vars are set the executable aren't needed

* Infer booleans from the fallback and cast them as such
2020-10-19 17:29:43 +01:00
Mike Morris 488f601612 ci: bump to Go 1.14.9 2020-10-09 22:52:23 -04:00
Alvin Huang 52fd707f3d
[skip ci] ci: fix trigger-oss-merge yaml spacing (#8916) 2020-10-09 16:12:54 -04:00
Alvin Huang a7df0b190b
add per commit oss->ent merge on master and release branches (#8740) 2020-10-09 15:49:04 -04:00
Daniel Nephin 1eefd41882 ci: go-test-race more packages 2020-10-08 19:14:22 -04:00
Mike Morris 6c0907f494
test(vault): generate test coverage and upload to CodeCov (#8870) 2020-10-07 16:32:25 -04:00
Alvin Huang c6001e9b68
add ui test-node (#8820) 2020-10-06 15:58:12 -04:00
Alvin Huang 8b409529aa
ci: fix bindata autoupdate (#8801)
* update bindata on ui-v2/ changes

* Revert "Remove GIT_SHA environment variable"

This reverts commit f620f9aefd41362ce76c3a8e0f4addf402ee0ca2.

* Revert "Hardcode in an app version for ember-cli-app-version"

This reverts commit 5ae493d79b34ef2143d78a44c21a63623140bba8.

* revert modtime change in #8712
2020-10-02 15:23:38 -04:00
Paul Banks d0c160130b
Merge pull request #8694 from hashicorp/ui-config-metrics
Add config changes for UI metrics
2020-10-01 17:38:03 +01:00
Paul Banks 3b8125a24d
Update all the references in CI and makefile to the bindata file location 2020-10-01 16:19:10 +01:00
Alvin Huang e138a6499c
ci: only add consul binary to dev tarball (#8785) 2020-09-30 16:49:50 -04:00
Daniel Nephin 89f44cc4d0 Disable publish static assets
The contents are diff on every change, so it is publishing in a loop
2020-09-30 12:25:25 -04:00
Alvin Huang 823d6dadbf
add git config for static assets (#8777)
* add git config for static assets

* add commit sha to static-asset auto commit
2020-09-30 11:12:36 -04:00
Alvin Huang 8e6f8714ba commit a new bindata file if there are changes 2020-09-29 18:10:05 -04:00
Alvin Huang 87f6617eec
ci:add check for bindata_assetfs changes (#8712)
* add check for bindata_assetfs changes

* Remove GIT_SHA environment variable

* Hardcode in an app version for ember-cli-app-version

* change ' to " for CONSUL_UI_SETTINGS_PLACEHOLDER

Co-authored-by: John Cowen <jcowen@hashicorp.com>
Co-authored-by: hashicorp-ci <hashicorp-ci@users.noreply.github.com>
2020-09-29 17:03:45 -04:00
Alvin Huang e918da9c40
fix command in cherry-picker script (#8738) 2020-09-23 09:59:17 -04:00
Alvin Huang 958d12907c
cherrypick docs to latest release branch (#8719) 2020-09-21 17:31:21 -04:00
Alvin Huang 2651f734a6
add checkout to dev-upload-s3 (#8617) 2020-09-04 10:42:18 -04:00
Alvin Huang 9fb76d7bb5
switch to new aws account s3 bucket for dev artifacts (#8612) 2020-09-03 23:40:23 -04:00
Mike Morris ebc9b27cfa
ci: bump Go to v1.14.7 (#8449) 2020-08-12 10:43:19 -04:00
Daniel Nephin da799c6a59
Merge pull request #8385 from hashicorp/dnephin/check-generated
ci: Add check-generated-protobuf
2020-08-05 12:10:27 -04:00
R.B. Boyer c599a2f5f4
xds: add support for envoy 1.15.0 and drop support for 1.11.x (#8424)
Related changes:

- hard-fail the xDS connection attempt if the envoy version is known to be too old to be supported
- remove the RouterMatchSafeRegex proxy feature since all supported envoy versions have it
- stop using --max-obj-name-len (due to: envoyproxy/envoy#11740)
2020-07-31 15:52:49 -05:00
Daniel Nephin f4791f0e82 ci: Add check-generated
And remove makefile targets that can be accomplished with --always-make
2020-07-29 12:10:44 -04:00
Alvin Huang 3a7b9af518
add circleci job failure notifications for any jobs on master (#8393)
* add circleci job failure notifications for any jobs on master

* rename URL variable
2020-07-28 14:54:48 -04:00
Daniel Nephin 4843551125 ci: Add jsonfile artifact for go-test-race
So that we can better debug failures
2020-07-20 19:07:58 -04:00
Daniel Nephin 6e2186beee
Merge pull request #8328 from hashicorp/dnephin/go1.14.6
ci: Use go1.14.6
2020-07-20 13:32:54 -04:00
Daniel Nephin 099000e850 ci: add 'go test -race' job
Running every test with the race detector would add significant time to
CI. That additionaltime won't provide much value as many of the integration tests use
much of the same code.

For now we can run -race on some of the smaller packages. As we move
more code into smaller packages we should be able to add more packages
to the list that runs with '-race'.

For now this is running without parallelism, but we can enable that as
well when we need it.

boltdb fails the 'checkptr' check, which is automatically enabled by
'-race', so I've disabled checkptr as well.
2020-07-17 13:32:16 -04:00
Alvin Huang e206307c4f
ci: separate install-gotestsum step into its own config (#8327) 2020-07-17 13:00:31 -04:00
Daniel Nephin b8a405b604 ci: Use go1.14.6
Includes the security patches from go14.5 and https://github.com/golang/go/issues/39308
to fix our test logs.
2020-07-17 12:02:16 -04:00
Alvin Huang c591d40be0
add back missing quote in bashenv for CI (#8317) 2020-07-15 17:21:40 -04:00
Alvin Huang 2a040342ba
remove GIT_DESCRIBE variable since we have a revision line (#8310) 2020-07-14 15:17:45 -04:00
Hans Hasselberg 496fb5fc5b
add support for envoy 1.14.4, 1.13.4, 1.12.6 (#8216) 2020-07-13 15:44:44 -05:00
Daniel Nephin 007c6cd2cf ci: Store a jsonfile 2020-07-08 19:45:27 -04:00
Kevin Pruett 41254a1b74
Add Algolia indexing to CI 2020-06-29 12:14:43 -04:00
Alvin Huang 2a95289f56
remove set -e for cherry-pick script since we collect errors (#8177) 2020-06-23 18:37:20 -04:00
Chris Piraino af11169c26
Bump golang to 1.14.4 to avoid known runtime issue (#8146)
An issue where the golang runtime would hang and loop forever
2020-06-18 11:38:33 -05:00
Alvin Huang 57a23ccf45
split out oss and ent ember builds for testing (#8122) 2020-06-16 14:19:43 -04:00
Alvin Huang 158361fb35
Add GitHub Notifications for cherry picks (#8115)
* add github PR notification for backport cherry picks

* count number of backport failures and exit after looping through all of them
2020-06-16 14:18:53 -04:00
Hans Hasselberg e62a43c6cf
Support envoy 1.14.2, 1.13.2, 1.12.4 (#8057) 2020-06-10 23:20:17 +02:00
R.B. Boyer fed7489a37
Use linkmode=external for the arm builds (#8029)
This gets around some issues regarding too large plt offsets when compiling with CGO

Co-authored-by: Matt Keeler <mjkeeler7@gmail.com>
2020-06-05 13:21:57 -05:00
Daniel Nephin e02ee13657
Make envoy integration tests a `go test` suite (#7842)
* test/integration: only run against 1 envoy version

These tests are slow enough that it seems unlikely that anyone is
running multiple versions locally. If someone wants to, a for loop
outside of run_test.sh should do the right thing.

Remove unused vars.

* Remove logic to iterate over test cases, run a single case

* Add a golang runner for integration tests

* Use build tags for envoy integration tests

And add junit-xml report
2020-05-19 14:00:00 -04:00
Mike Morris 1b152f9f21
ci: limit parallelism for Ember builds (#7917)
If not artificially limited by setting JOBS env var,
broccoli-babel-transpiler will attempt to parallelize across the number
of CPUs on the host VM rather than the Docker container, resulting in CI
jobs being killed due to running out of memory.
2020-05-19 13:00:35 -04:00
Alvin Huang 38da343790
re-enable auto cherry-picking after website launch (#7897)
* re-enable auto cherry-picking after website launch

* change to regex since we renamed docs-cherrypick to type/docs-cherrypick
2020-05-14 16:53:51 -04:00
Alvin Huang ccd0dea865
Give ember-build a larger container (#7873)
* bump ember-build-prod and ember-build to medium+ to prevent OOM errors

* filter frontend workflow to only run on master, ui-staging, and ui/* branches
2020-05-13 15:40:30 -04:00
John Cowen 64ff304585 ui: Make a specific CI coverage make target ensuring use of CI cache (#7335) 2020-05-12 17:14:08 +00:00
John Cowen 4be566e545 ui: Upgrade ember-cli-api-double (#7322)
* ui: Upgrade ember-cli-api-double
2020-05-12 17:14:04 +00:00
John Cowen e460c8b2b4 ui: Upgrade circle CI node image to use node 12 (#7314) 2020-05-12 17:13:59 +00:00
Alvin Huang 48a52e07da fix ember parallelization (#7221) 2020-05-12 17:13:52 +00:00
John Cowen 79156324bf ui: Test Coverage Reporting (#7027)
* Serve up the /coverage folder whilst developing

* Upgrade ember-cli-api-double now it supports passthrough per url
2020-05-12 17:13:50 +00:00
Daniel Nephin d286e8e5a0 ci: debugging for golangci-lint download failing
We've seen a few CI runs fail with "exit status 52". This will hopefully give us more detail about what is failing.
2020-05-11 19:54:18 -04:00
Alvin Huang 30acb31035
disable stable-website auto cherry-pick until replatform is merged into stable-website (#7726) 2020-04-28 17:01:51 -04:00
Alvin Huang df43a796ad use environment variables in website-docker-image for website docker image push 2020-04-28 13:38:38 -04:00
Jeff Escalante 7ecec91869
circle docker image config 2020-04-28 12:53:26 -04:00
Daniel Nephin 1dff855845 Upgrade gotestsum to latest
0.4.2 should fix some bugs in test2json causing missing output.
2020-04-21 14:05:46 -04:00
Hans Hasselberg 66415be90e
connect: support envoy 1.14.1 (#7624) 2020-04-09 20:58:22 +02:00
Alvin Huang 1bb4e1ccd2
filter out non go branches from the 'go-tests' workflow (#7606) 2020-04-07 15:39:23 -04:00
Daniel Nephin 625ce9baf2 ci: Fix working_directory for go mod download
The previous PR which added these was accidentally performing the download
in the root directory. For the api, and sdk directories it should be in done
in the same directory that will be used to run tests. Otherwise the
wrong dependencies will be downloaded which may add unnecessary time to
the CI run.
2020-04-01 17:02:23 -04:00
Daniel Nephin 66a51c9701 Upload coverage from each job
Allows us to remove the merge coverage report step
2020-03-31 14:43:13 -04:00
Daniel Nephin 2a676dc287 ci: Increase GOMAXPROCS so that the tests run faster 2020-03-31 12:32:23 -04:00