Commit Graph

268 Commits

Author SHA1 Message Date
Alvin Huang 3b4469d31d
ci: fix logic for check-vendor (#9619) 2021-01-22 11:36:35 -05:00
Alvin Huang 90cf562311
ci: change check-vendor to verify git status has no changes (#9615) 2021-01-21 18:29:26 -05:00
Alvin Huang aaed7897d5 modify envoy test job names to make circleci happy 2021-01-13 23:31:15 -05:00
Alvin Huang 5291d0551d add load test configuration 2021-01-13 23:30:00 -05:00
Alvin Huang 76f25d14fd upload zip instead of tar dev builds 2021-01-13 23:27:17 -05:00
Alvin Huang 656c934f98 modify aws assume role circleci command 2021-01-13 23:25:21 -05:00
Daniel Nephin bbf1a116f6 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 54bad3852b
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 2a5aa78548
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 b415e72688
ci: update to Go 1.15.6 (#9373) 2021-01-04 12:56:40 -05:00
Daniel Nephin d9af48afce
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
R.B. Boyer 2ded9120c1
ci: update to go 1.15.5 (#9187) 2020-11-13 15:35:33 -06:00
Mike Morris a343365da7
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 a7fec642fc 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 ccbdde7e12
ci: publish bindata_assetfs.go for all release/.x branches (#9158) 2020-11-11 13:39:40 -05:00
Mike Morris 5fb49b7a76
ci: remove nonexistant autopilot directory from go-test-race (#9159) 2020-11-11 13:38:45 -05:00
Mike Morris 104547b62f chore: update to Go 1.14.11 2020-11-09 15:48:18 -05:00
Alvin Huang d6652b0bc9
use hashicorp docker mirror to prevent rate limit (#9070) 2020-10-30 17:59:13 -04:00
John Cowen 77b97a4ae4
ui: Upgrade consul-api-double to fix datacenter mocks (#9045) 2020-10-27 13:31:57 +00:00
Daniel Nephin 6cda5319b2 ci: upgrade gotestsum
So that we are using the same version as enterprise
2020-10-26 15:19:08 -04:00
Alvin Huang 5f0f8baef9
ci: add parallelism to envoy tests (#9005)
add subtest output
2020-10-23 11:53:24 -04:00
Alvin Huang 6d2ceb603e
move static-assets dist to new path (#9015) 2020-10-22 21:04:39 -04:00
R.B. Boyer 2183842f0e
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 c98130cc08
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 0d23c9f8cc
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 69a05a3111 ci: bump to Go 1.14.9 2020-10-09 22:52:23 -04:00
Alvin Huang 097b47a741
[skip ci] ci: fix trigger-oss-merge yaml spacing (#8916) 2020-10-09 16:12:54 -04:00
Alvin Huang 804fef5c7c
add per commit oss->ent merge on master and release branches (#8740) 2020-10-09 15:49:04 -04:00
Daniel Nephin 2e9a52dfa9 ci: go-test-race more packages 2020-10-08 19:14:22 -04:00
Mike Morris 80aef1ca1d
test(vault): generate test coverage and upload to CodeCov (#8870) 2020-10-07 16:32:25 -04:00
Alvin Huang b2a66b7426
add ui test-node (#8820) 2020-10-06 15:58:12 -04:00
Alvin Huang 28c8ac91bc
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 35d249e38f
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 4c4c7266e6
Update all the references in CI and makefile to the bindata file location 2020-10-01 16:19:10 +01:00
Alvin Huang 3bd129d445
ci: only add consul binary to dev tarball (#8785) 2020-09-30 16:49:50 -04:00
Daniel Nephin 24977886e7 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 84a711eba5
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 21b1163cd6 commit a new bindata file if there are changes 2020-09-29 18:10:05 -04:00
Alvin Huang a7353d925e
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 b57a5b4911
add checkout to dev-upload-s3 (#8617) 2020-09-04 10:42:18 -04:00
Alvin Huang 4802c5fd89
switch to new aws account s3 bucket for dev artifacts (#8612) 2020-09-03 23:40:23 -04:00
Mike Morris 2d13f77730
ci: bump Go to v1.14.7 (#8449) 2020-08-12 10:43:19 -04:00
Daniel Nephin 1298b3afd8
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 8ea4c482b3
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 1abd042162 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 a86e0233a2
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 2d4e5da41e 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 b91f7ad7cf
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 08741c85b0 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 2d1ab42c17
ci: separate install-gotestsum step into its own config (#8327) 2020-07-17 13:00:31 -04:00
Daniel Nephin 76336301ca 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
Hans Hasselberg 0c39b2c820
add support for envoy 1.14.4, 1.13.4, 1.12.6 (#8216) 2020-07-13 15:44:44 -05:00
Daniel Nephin d013999e52 ci: Store a jsonfile 2020-07-08 19:45:27 -04:00
Kevin Pruett 333e0d3e5d
Add Algolia indexing to CI 2020-06-29 12:14:43 -04:00
Chris Piraino d62cead958
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 6c4cb5d357
split out oss and ent ember builds for testing (#8122) 2020-06-16 14:19:43 -04:00
Hans Hasselberg 26494286c7
Support envoy 1.14.2, 1.13.2, 1.12.4 (#8057) 2020-06-10 23:20:17 +02:00
R.B. Boyer e56cb94304
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 dcc76f8774
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 aed31fef6c
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 f1346bd34d
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 b500cd929e ui: Make a specific CI coverage make target ensuring use of CI cache (#7335) 2020-05-12 17:14:08 +00:00
John Cowen e3b99b7ae6 ui: Upgrade ember-cli-api-double (#7322)
* ui: Upgrade ember-cli-api-double
2020-05-12 17:14:04 +00:00
John Cowen 450f549ce3 ui: Upgrade circle CI node image to use node 12 (#7314) 2020-05-12 17:13:59 +00:00
Alvin Huang 79ba29b954 fix ember parallelization (#7221) 2020-05-12 17:13:52 +00:00
John Cowen 275eeb6dcd 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 801bfb9477 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 fad0d74182 use environment variables in website-docker-image for website docker image push 2020-04-28 13:38:38 -04:00
Jeff Escalante 6945548f42
circle docker image config 2020-04-28 12:53:26 -04:00
Daniel Nephin 2d0895c2ae 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 b78220981c
connect: support envoy 1.14.1 (#7624) 2020-04-09 20:58:22 +02:00
Alvin Huang c5f5cfddf6
filter out non go branches from the 'go-tests' workflow (#7606) 2020-04-07 15:39:23 -04:00
Daniel Nephin 4abb00cd17 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 2b5eb83ffb Upload coverage from each job
Allows us to remove the merge coverage report step
2020-03-31 14:43:13 -04:00
Daniel Nephin cbd6508b5f ci: Increase GOMAXPROCS so that the tests run faster 2020-03-31 12:32:23 -04:00
Daniel Nephin 62ed95fbef ci: small improvements
Run 'go mod download' first so that dependencies are pulled in a
separate step. This makes the test splitting and test output easier
to scroll through.

Remove test splitting from the api/sdk test runs. These jobs do not
use parallelism, so there is no test timing data injected into the
job. They can't be split.

Remove the dependencies from the go-test job, so that we can start
the slowest test job earlier in the workflow.
2020-03-31 11:52:58 -04:00
Daniel Nephin db1fb95f21
Merge pull request #7485 from hashicorp/dnephin/do-not-skip-tests-on-ci
ci: Make it harder to accidentally skip tests on CI, and doc why some are skipped
2020-03-31 11:15:44 -04:00
Alvin Huang 6961fb571e
rebuild UI for master/ui-staging dev docker image (#7530) 2020-03-27 15:33:49 -04:00
Alvin Huang ce81e026de
add ssh package and push to branch before notifying (#7517) 2020-03-26 15:23:31 -04:00
Daniel Nephin 759ea803e5
Merge pull request #7496 from hashicorp/dnephin/add-lint-to-makefile
Add lint to makefile
2020-03-26 10:48:21 -04:00
Daniel Nephin 874788dd66 Add lint to makefile
And support for setting build tags in CI lint job.

Removed the unused 'test-ci' target.
2020-03-24 16:34:02 -04:00
Daniel Nephin 3b0696565d
Merge pull request #7481 from hashicorp/dnephin/go1.14
ci: Upgrade Go to 1.14.1
2020-03-24 16:23:53 -04:00
Daniel Nephin 8fa1388ba3
Merge pull request #7440 from hashicorp/dnephin/golangci-lint
ci: Use golangci-lint for linting
2020-03-24 16:00:59 -04:00
Daniel Nephin e3b4cd9b90 ci: Upgrade Go to 1.14.1 2020-03-24 15:55:47 -04:00
Daniel Nephin 8b6e07d960 ci: Run all connect/ca tests from the integration suite
To reduce the chance of some tests not being run because it does not
match the regex passed to '-run'.

Also document why some tests are allowed to be skipped on CI.
2020-03-24 15:22:01 -04:00
Daniel Nephin 8e0df141ff ci: fix cherry-pick job by using newer git
37897bfc27 made it possible to use
the -m flag with cherry-pick, even when the target is not a merge commit.

This commit changes the image used to run the cherry-pick job to alpine so that we get
a more recent version of git.

The alpine image will also download much faster when the CI node does not have the image cached.
2020-03-23 14:30:32 -04:00
Daniel Nephin 4d485649d1 ci: Use golangci-lint for linting
Using golangci-lint has a number of advantages:

- adding new linters becomes much easier, its a couple lines of yaml config
  instead of more bash scripting

- it enables whitelisting of issues using inline comments or regex

- when running multiple linters less work is done. The parsed source can be reused
  by multiple linters

- linters are run in parallel to reduce CI runtime.
2020-03-17 13:43:40 -04:00
Daniel Nephin ebe622b4a3 ci: Remove restore_cache
As of go1.13 it is faster to download dependencies from the module
proxy service, than to download a cached /go/pkg/mod
2020-03-11 15:50:42 -04:00
Alvin Huang c2b5edf805
add auto cherry-picking (#7406)
* add auto cherry-picking

* exit on git cherry-pick failure

* release branches are #.#.x
2020-03-06 17:59:14 -05:00
Mike Morris 89abe301aa Update config.yml 2020-02-18 13:27:48 -05:00
Alvin Huang ea809b3f17
skip go build and tests on ui/* branches (#7303)
* skip go build and tests on ui/* branches

* also filter out lint-consul-retry since it runs in parallel with check-vendor
2020-02-14 09:40:02 -05:00
Alvin Huang c0a85ffdb7
only run website workflow on docs/* branches (#7299) 2020-02-13 21:41:37 -05:00
Alvin Huang a2ed78453e
remove docker layer caching (#7277) 2020-02-12 13:56:16 -05:00
R.B. Boyer 0394ed2967
Switch to go 1.13.7 (#7262)
- You can no longer cross submodule boundaries with ./... in go
  subcommands like `go list` or `go test`. The makefile and CI scripts
  were updated accordingly.

- Also of note: `go mod vendor` now omits things build ignored.
2020-02-12 10:15:24 -06:00
Hans Hasselberg 4ae725cab2
add envoy version 1.12.2 and 1.13.0 to the matrix (#7240)
* add 1.12.2

* add envoy 1.13.0

* Introduce -envoy-version to get 1.10.0 passing.

* update old version and fix consul-exec case

* add envoy_version and fix check

* Update Envoy CLI tests to account for the 1.13 compatibility changes.

Co-authored-by: Matt Keeler <mkeeler@users.noreply.github.com>
2020-02-10 14:53:04 -05:00
John Cowen ee956a4cfe
Merge pull request #7241 from hashicorp/ui-staging
UI Release Merge (ui-staging merge)
2020-02-07 16:07:05 +00:00
John Cowen 4be0f6c061
ui: Run 2 separate test runs oss and ent (#7214)
* ui: Make API integration tests aware of CONSUL_NSPACES_ENABLED

* ui: Allow passing CONSUL_NSPACES_ENABLED in via the cli in ember

* ui: Add more makefile targets/package scripts to switch NSPACEs on/off

* ui: Ensure all acceptance tests continue to pass with NSPACEs on/off

This required a little tweaking of the dictionary, at some point
page-navigation and some of these little tweaks will no longer be
required

* ui: Try running CI frontend tests in two parellel runs oss/ent

* ui: Use correct make target, use different names for the reports
2020-02-07 11:02:53 +00:00
Kenia cabc189b50
Merge pull request #7235 from hashicorp/ui-staging
ui: UI Release Merge (ui-staging merge)
2020-02-06 15:34:02 -05:00
Hans Hasselberg b528667328
build: update to golang 1.12.16 (#7153) 2020-02-03 18:20:03 +01:00
John Cowen 0d44ebb588
ui: Actually remove CI parallelism (#7190) 2020-01-31 14:47:39 +00:00
John Cowen ca6f73abe2
ui: Move CI to use the Makefile for testing (+ tmporary removal of exam) (#7188)
* ui: Move CI to use the Makefile for testing (+ tmporary removal of exam)

* ui: make a specific test-ci target as we are using --path dist

--path dist looks for a previous build to test against, in CI this
exists as we run a build first, but locally potentially this dist folder
doesn't
2020-01-31 14:12:35 +00:00
Alvin Huang 98a83dbf89
use 4 parallelism for go-test and print package names (#7152) 2020-01-28 12:21:55 -05:00
Kit Patella a0425c64de
CI: Extract remaining values of /tmp/test-results into yaml reference (#6964)
* ci: extract value /tmp/test-results into yaml reference calls

* ci: correctly subtitute a var in bash, womp womp
2019-12-17 15:18:10 -08:00
Kit Patella 7a4a55f570
Add CI test-integrations job for connect Vault CA provider (#6949)
* vault-ca-provider: add make target and CI test-integration job for /agent/connect/ca/ Vault Provider tests

* load env vars in the vault-ca-provider ci job

* add checkout task, see if we need to attach workspace or not

* ci: remove vault dependency from go-test job to ensure we only run the vault-provider tests in their job

* ci: fix from RB and Alvin code review, add mod cache after checkout

* ci: add CI context to make target and store test results

* ci: fix whitespace

* ci: create test results directory before we try to write to it
2019-12-17 13:22:32 -08:00
Mike Morris 3a98249607
coverage: disable comment and project status, set informational mode (#6954)
* ci: set verbose mode for CodeCov upload

* coverage: rename config to codecov.yml
2019-12-17 11:51:52 -05:00
R.B. Boyer 88d9d0fb09
build: fix makefile and CI 'fmt' and 'vet' tasks (#6937) 2019-12-11 12:32:11 -06:00
Mike Morris 5a2a8ec6f3
ci: set GOMAXPROCS (#6908)
* ci: add comment clarify rationale for setting GOMAXPROCS
2019-12-09 15:57:39 -05:00
Matt Keeler 71c6b77c6f
Turn down some parallelism 2019-11-25 14:34:24 -05:00
Alvin Huang 3fecef1368
add code coverage reporting (#6682)
* add coverage reporting

* add codecov reports

* pass in SHA to codecov

* ignore bindata_assetfs.go file from codecov
2019-11-22 11:49:02 -05:00
Alvin Huang 9bdc65a915
upgrade go to 1.12.13 (#6759) 2019-11-08 13:59:32 -05:00
Alvin Huang bd0f9e3358
ignore all workflows except website for stable-website (#6747) 2019-11-08 12:55:56 -05:00
Alvin Huang 8dad4143f3
modify netlify-cli installation (#6674)
* modify netlify CLI installation

* bump middleman-hashicorp to 0.3.40 to include ssh
2019-10-23 13:54:19 -04:00
Matt Keeler f9a43a1e2d
ACL Authorizer overhaul (#6620)
* ACL Authorizer overhaul

To account for upcoming features every Authorization function can now take an extra *acl.EnterpriseAuthorizerContext. These are unused in OSS and will always be nil.

Additionally the acl package has received some thorough refactoring to enable all of the extra Consul Enterprise specific authorizations including moving sentinel enforcement into the stubbed structs. The Authorizer funcs now return an acl.EnforcementDecision instead of a boolean. This improves the overall interface as it makes multiple Authorizers easily chainable as they now indicate whether they had an authoritative decision or should use some other defaults. A ChainedAuthorizer was added to handle this Authorizer enforcement chain and will never itself return a non-authoritative decision.

* Include stub for extra enterprise rules in the global management policy

* Allow for an upgrade of the global-management policy
2019-10-15 16:58:50 -04:00
Alvin Huang 1df7b0b829
add go cache to distro builds (#6600) 2019-10-08 15:55:36 -04:00
John Cowen 338812f5c2
ui: UI Release Merge (ui-staging merge) (#6527)
## HTTPAdapter (#5637)

## Ember upgrade 2.18 > 3.12 (#6448)

### Proxies can no longer get away with not calling _super

This means that we can't use create anymore to define dynamic methods.
Therefore we dynamically make 2 extended Proxies on demand, and then
create from those. Therefore we can call _super in the init method of
the extended Proxies.

### We aren't allowed to reset a service anymore

We never actually need to now anyway, this is a remnant of the refactor
from browser based confirmations. We fix it as simply as possible here
but will revisit and remove the old browser confirm functionality at a
later date

### Revert classes to use ES5 style to workaround babel transp. probs

Using a mixture of ES6 classes (and hence super) and arrow functions
means that when babel transpiles the arrow functions down to ES5, a
reference to this is moved before the call to super, hence causing a js
error.

Furthermore, we the testing environment no longer lets use use
apply/call on the constructor.

These errors only manifests during testing (only in the testing
environment), the application itself runs fine with no problems without
this change.

Using ES5 style class definitions give us freedom to do all of the above
without causing any errors, so we reverted these classes back to ES5
class definitions

### Skip test that seems to have changed due to a change in RSVP timing

This test tests a usecase/area of the API that will probably never ever
be used, it was more testing out the API. We've skipped the test for now
as this doesn't affect the application itself, but left a note to come
back here later to investigate further

### Remove enumerableContentDidChange

Initial testing looks like we don't need to call this function anymore,
the function no longer exists

### Rework Changeset.isSaving to take into account new ember APIs

Setting/hanging a computedProperty of an instantiated object no longer
works. Move to setting it on the prototype/class definition instead

### Change how we detect whether something requires listening

New ember API's have changed how you can detect whether something is a
computedProperty or not. It's not immediately clear if its even possible
now. Therefore we change how we detect whether something should be
listened to or not by just looking for presence of `addEventListener`

### Potentially temporary change of ci test scripts to ensure deps exist

All our tooling scripts run through a Makefile (for people familiar with
only using those), which then call yarn scripts which can be called
independently (for people familar with only using yarn).

The Makefile targets always check to make sure all the dependencies are
installed before running anything that requires them (building, testing
etc).

The CI scripts/targets didn't follow this same route and called the yarn
scripts directly (usually CI builds a cache of the dependencies first).

For some reason this cache isn't doing what it usually does, and it
looks as though, in CI, ember isn't installed.

This commit makes the CI scripts consistently use the same method as all
of the other tooling scripts (Makefile target > Install Deps if
required > call yarn script). This should install the dependencies if
for some reason the CI cache building doesn't complete/isn't successful.

Potentially this commit may be reverted if, the root of the problem is
elsewhere, although consistency is always good, so it might be a good
idea to leave this commit as is even if we need to debug and fix things
elsewhere.

### Make test-parallel consistent with the rest of the tooling scripts

As we are here making changes for CI purposes (making test-ci
consistent), we spotted that test-parallel is also inconsistent and also
the README manual instructions won't work without `ember` installed
globally.

This commit makes everything consistent and changes the manual
instructions to use the local ember instance that gets installed via
yarn

### Re-wrangle catchable to fit with new ember 3.12 APIs

In the upgrade from ember 3.8 > 3.12 the public interfaces for
ComputedProperties have changed slightly. `meta` is no longer a public
property of ComputedProperty but of a ComputedDecoratorImpl mixin
instead.

7e4ba1096e/packages/%40ember/-internals/metal/lib/computed.ts (L725)

There seems to be no way, by just using publically available
methods, to replicate this behaviour so that we can create our own
'ComputedProperty` factory via injecting the ComputedProperty class as
we did previously.

3f333bada1/ui-v2/app/utils/computed/factory.js (L1-L18)

Instead we dynamically hang our `Catchable` `catch` method off the
instantiated ComputedProperty. In doing it like this `ComputedProperty`
has already has its `meta` method mixed in so we don't have to manually
mix it in ourselves (which doesn't seem possible)

This functionality is only used during our work in trying to ensure
our EventSource/BlockingQuery work was as 'ember-like' as possible (i.e.
using the traditional Route.model hooks and ember-like Controller
properties). Our ongoing/upcoming work on a componentized approach to
data a.k.a `<DataSource />` means we will be able to remove the majority
of the code involved here now that it seems to be under an amount of
flux in ember.

### Build bindata_assetfs.go with new UI changes
2019-09-30 14:47:49 +01:00
R.B. Boyer 1d54909333
connect: intermediate CA certs generated with the vault provider lack URI SANs (#6491)
This only affects vault versions >=1.1.1 because the prior code
accidentally relied upon a bug that was fixed in
https://github.com/hashicorp/vault/pull/6505

The existing tests should have caught this, but they were using a
vendored copy of vault version 0.10.3. This fixes the tests by running
an actual copy of vault instead of an in-process copy. This has the
added benefit of changing the dependency on vault to just vault/api.

Also update VaultProvider to use similar SetIntermediate validation code
as the ConsulProvider implementation.
2019-09-23 12:04:40 -05:00
R.B. Boyer e512378118 ci: ensure build-distros uses the same go.mod file as normal builds
When running 'make tools' the go command indirectly edits both the
go.mod and go.sum files in ways that can cause the later build of consul
itself to build with slightly different dependencies than it normally
would.
2019-09-23 11:26:02 -05:00
Alvin Huang a0c9a2b329
remove nightly master merge into release/ job (#6510) 2019-09-19 10:28:49 -04:00
Matt Keeler bdb3a9792e
Move tar install forward (#6483) 2019-09-12 17:25:14 -04:00
Matt Keeler ccd5b241ba
Also install tar for the website deploy job (#6482) 2019-09-12 17:05:02 -04:00
R.B. Boyer ad067ae4a5
ci: inject missing tar binary (#6477) 2019-09-11 10:41:02 -05:00
R.B. Boyer fa2c0a7316
test: actually run envoy 1.11.1 integration tests on PRs (#6397) 2019-08-26 16:30:17 -05:00
Alvin Huang a6351223e7 Merge Consul OSS branch 'master' at commit 59150281c52fafa4a3320c42128f1caf9dbd083b 2019-08-21 18:22:19 -04:00
Alvin Huang 469cb6de6d
print a proper error message for master merge CI job failures (#6371) 2019-08-21 18:19:47 -04:00
Alvin Huang 387557dc34 Merge Consul OSS branch 'master' at commit ce9cfc773d529ae4b8259d195323c0c350c1f9f1 2019-08-21 16:07:04 -04:00
Alvin Huang 2821b69dc9
remove ci merge branches if nightly merge fails (#6369) 2019-08-21 15:56:27 -04:00
Matt Keeler 80b67c50da
Turned on Envoy 1.11.1 integration tests (#6347)
I also ran this against 1.5.2 so the docs update claiming compatibility should still be accurate.
2019-08-20 10:20:13 -04:00
Matt Keeler b2331a8fc5
Update toolchain to Go 1.12.8 (#6319) 2019-08-14 09:40:57 -04:00
Mike Morris 88df658243
connect: remove managed proxies (#6220)
* connect: remove managed proxies implementation and all supporting config options and structs

* connect: remove deprecated ProxyDestination

* command: remove CONNECT_PROXY_TOKEN env var

* agent: remove entire proxyprocess proxy manager

* test: remove all managed proxy tests

* test: remove irrelevant managed proxy note from TestService_ServerTLSConfig

* test: update ContentHash to reflect managed proxy removal

* test: remove deprecated ProxyDestination test

* telemetry: remove managed proxy note

* http: remove /v1/agent/connect/proxy endpoint

* ci: remove deprecated test exclusion

* website: update managed proxies deprecation page to note removal

* website: remove managed proxy configuration API docs

* website: remove managed proxy note from built-in proxy config

* website: add note on removing proxy subdirectory of data_dir
2019-08-09 15:19:30 -04:00
Alvin Huang ae898a4a33 Merge remote-tracking branch 'origin/master' into release/1-6 2019-08-02 18:09:32 -04:00
Alvin Huang f834854f8a
add generic master merge into release/* branches (#6249) 2019-08-02 16:11:41 -04:00
Alvin Huang f5471c7f8d
Add arm builds (#6263)
* try arm builds

* Update .circleci/config.yml

Co-Authored-By: Matt Keeler <mkeeler@users.noreply.github.com>

* Update .circleci/config.yml

Co-Authored-By: Matt Keeler <mkeeler@users.noreply.github.com>

* Update .circleci/config.yml

Co-Authored-By: Matt Keeler <mkeeler@users.noreply.github.com>
2019-08-02 15:15:59 -04:00
R.B. Boyer 1b95d2e5e3 Merge Consul OSS branch master at commit b3541c4f34d43ab92fe52256420759f17ea0ed73 2019-07-26 10:34:24 -05:00
Alvin Huang 27dba08e4f
check vendor folder (#6006)
* check vendor in circleci

* make vendor checking step more descriptive

* reorganize check-vendor and gofmt jobs
2019-07-25 11:17:07 -04:00
Alvin Huang 3bfac76bbf
add dev docker image upload (#5879)
* add dev docker image upload

* remove the go cache since that isn't needed

* add comment and image labels

* get password from stdin
2019-07-25 09:19:09 -04:00
Alvin Huang 5b6fa58453 resolve circleci config conflicts 2019-07-23 20:18:36 -04:00
Alvin Huang 60e9703588
enable circleci go tests for forks and reorganize jobs (#6191) 2019-07-22 18:08:54 -04:00
Alvin Huang f3469dbe4b
Run go test packages in parallel (#6165)
* modify gotestsum hacking that is unnecessary with the latest version

* try running 2 packages at a time

* try running 3 packages at a time

* remove old comments
2019-07-22 14:01:22 -04:00
Alvin Huang 17654c6292 Merge branch 'master' into release/1-6 2019-07-17 15:43:30 -04:00
Alvin Huang 477415b107
turning on go tests in circle for non-forks (#6154)
* turning on go tests in circle for non-forks

* fix comment
2019-07-17 13:43:33 -04:00
hashicorp-ci 022483aff0 Merge Consul OSS branch 'master' at commit 95dbb7f2f1b9fc3528a16335201e2324f1b388bd 2019-07-17 02:00:21 +00:00
Alvin Huang 5003afd423
add lint-consul-retry tool (#6139)
* add lint-consul-retry tool

* lint consul retry for forks too
2019-07-16 18:52:24 -04:00
Alvin Huang 6a8b2ee308 increase go test parallelism, resource_class and run tests on release branch (#2) 2019-07-01 16:28:30 -04:00
Alvin Huang 869e07573c
remove skip-checks on git merge (#6017)
* remove skip-checks on git merge

* remove comments for skip-checks
2019-06-25 16:46:17 -04:00
hashicorp-ci d237e86d83 Merge Consul OSS branch 'master' at commit 88b15d84f9fdb58ceed3dc971eb0390be85e3c15
skip-checks: true
2019-06-25 02:00:26 +00:00
Alvin Huang 0afa30d139
Override cla check and add slack notifications (#6007)
* override CLA check

* add slack notifications for merge

* don't delete unmerged branch to ease debugging
2019-06-24 18:55:44 -04:00
Alvin Huang 29c1e4fcc3
skip checks on merge commit (#6000) 2019-06-20 16:27:45 -04:00
Alvin Huang 52378c522f
add master merge to release branch (#5980)
* add master merge to release branch

* remove CircleCI token, use shallow API call, and use commit SHA for merge
2019-06-18 15:56:58 -04:00
Alvin Huang 9b04c3910a
update website build to exclude guides (#5951) 2019-06-14 16:55:18 -04:00
Paul Banks 737be347eb
Upgrade xDS (go-control-plane) API to support Envoy 1.10. (#5872)
* Upgrade xDS (go-control-plane) API to support Envoy 1.10.

This includes backwards compatibility shim to work around the ext_authz package rename in 1.10.

It also adds integration test support in CI for 1.10.0.

* Fix go vet complaints

* go mod vendor

* Update Envoy version info in docs

* Update website/source/docs/connect/proxies/envoy.md
2019-06-07 07:10:43 -05:00