Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: upgrade circleci configuration #11889

Merged
merged 1 commit into from
Jan 24, 2022
Merged

build: upgrade circleci configuration #11889

merged 1 commit into from
Jan 24, 2022

Conversation

shoenig
Copy link
Member

@shoenig shoenig commented Jan 20, 2022

This PR upgrades our CI images and fixes some affected tests.

  • upgrade go-machine-image to premade latest ubuntu LTS (ubuntu-2004:202111-02)

    • (16.04 is deprecated in Circle and EOL outside of paid Canonical support)
  • eliminate go-machine-recent-image (no longer necessary)

  • manage GOPATH in GNUMakefile (see https://discuss.circleci.com/t/gopath-is-set-to-multiple-directories/7174)

  • fix tcp dial error check (message seems to be OS specific)

  • spot check values measured instead of specifically 'RSS' (rss no longer reported in cgroups v2)

NOT applied: (too flaky)

These changes cause 1 or 2 random tests to fail consistently. Hard to track down, because it's never the same tests.

  • eliminate setting GOMAXPROCS=1 (build tools were also affected by this setting)

  • upgrade resource type for all images to large (2C -> 4C)

    • No point without increasing max procs

This PR upgrades our CI images and fixes some affected tests.

- upgrade go-machine-image to premade latest ubuntu LTS (ubuntu-2004:202111-02)

- eliminate go-machine-recent-image (no longer necessary)

- manage GOPATH in GNUMakefile (see https://discuss.circleci.com/t/gopath-is-set-to-multiple-directories/7174)

- fix tcp dial error check (message seems to be OS specific)

- spot check values measured instead of specifically 'RSS' (rss no longer reported in cgroups v2)

- use safe MkdirTemp for generating tmpfiles

NOT applied: (too flakey)

- eliminate setting GOMAXPROCS=1 (build tools were also affected by this setting)

- upgrade resource type for all imanges to large (2C -> 4C)
var files []string
for i := 1; i < 10; i++ {
filename := fmt.Sprintf("test%d.txt", i)
filepath := filepath.Join(os.TempDir(), filename)
Copy link
Member Author

@shoenig shoenig Jan 24, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Conflicts with some other test writing/rm-ing directly in /tmp; at the very least we can make this test use a custom dir

@shoenig shoenig changed the title build: upgrade and speedup circleci configuration build: upgrade circleci configuration Jan 24, 2022
@shoenig shoenig marked this pull request as ready for review January 24, 2022 15:10
Copy link
Member

@tgross tgross left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Thanks @shoenig!

Copy link
Member

@jrasell jrasell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@shoenig shoenig merged commit cb77cf6 into main Jan 24, 2022
@shoenig shoenig deleted the build-update-circle branch January 24, 2022 16:18
lgfa29 pushed a commit that referenced this pull request Apr 28, 2022
build: upgrade circleci configuration
lgfa29 pushed a commit that referenced this pull request Apr 29, 2022
build: upgrade circleci configuration
lgfa29 added a commit that referenced this pull request Apr 29, 2022
* Merge pull request #11889 from hashicorp/build-update-circle

build: upgrade circleci configuration

* Merge pull request #12299 from hashicorp/ci-parallel

ci: trade test parallelization for unconstrained gomaxprocs

* Merge pull request #12321 from hashicorp/ci-less-logging

ci: limit gotestsum to circle ci

* CI: build binaries for UI branches (#12594)

Build binaries for every code change, not just backend code
changes. This means that we'll have up-to-date compiled assets for
every commit available in CircleCI artifacts.

* Merge pull request #12736 from hashicorp/build-update-go-1.17.9

build: update golang to 1.17.9

* cgutil test: reserve only a single CPU for AddAlloc test

Reserving the entire machine's worth of CPUs for the `AddAlloc` test
triggers a condition where the empty shared CPUs defaults to the
parent CPU set on some system configurations. This was done in `main`
as part of cgroups v2 work, but we need to backport this to earlier
branches in order to use the same machines across branches.

Co-authored-by: Seth Hoenig <seth.a.hoenig@gmail.com>
Co-authored-by: Tim Gross <tgross@hashicorp.com>
lgfa29 added a commit that referenced this pull request Apr 29, 2022
* Merge pull request #11889 from hashicorp/build-update-circle

build: upgrade circleci configuration

* Merge pull request #12299 from hashicorp/ci-parallel

ci: trade test parallelization for unconstrained gomaxprocs

* Merge pull request #12321 from hashicorp/ci-less-logging

ci: limit gotestsum to circle ci

* CI: build binaries for UI branches (#12594)

Build binaries for every code change, not just backend code
changes. This means that we'll have up-to-date compiled assets for
every commit available in CircleCI artifacts.

* cgutil test: reserve only a single CPU for AddAlloc test

Reserving the entire machine's worth of CPUs for the `AddAlloc` test
triggers a condition where the empty shared CPUs defaults to the
parent CPU set on some system configurations. This was done in `main`
as part of cgroups v2 work, but we need to backport this to earlier
branches in order to use the same machines across branches.

Co-authored-by: Seth Hoenig <seth.a.hoenig@gmail.com>
Co-authored-by: Tim Gross <tgross@hashicorp.com>
@github-actions
Copy link

github-actions bot commented Nov 1, 2022

I'm going to lock this pull request because it has been closed for 120 days ⏳. This helps our maintainers find and focus on the active contributions.
If you have found a problem that seems related to this change, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 1, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants