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

ansible: add gcc-8 to Ubuntu 18.04 hosts/containers #2660

Merged
merged 2 commits into from
May 28, 2021

Conversation

richardlau
Copy link
Member

Baseline gcc/g++ compiler version for Node.js 16 and above is 8. The
default gcc and g++ packages on Ubuntu 18.04 install version 7.

Moves gcc-6 and g++-6 out of the common ubuntu packages into
ubuntu1604 -- it doesn't seem worth installing a lower version of
GCC to the default for Ubuntu 18.04.

Update select-compiler.sh to select GCC 8 for Node.js 16 and later.

Refs: #2445

Baseline gcc/g++ compiler version for Node.js 16 and above is 8. The
default `gcc` and `g++` packages on Ubuntu 18.04 install version 7.

Moves `gcc-6` and `g++-6` out of the common `ubuntu` packages into
`ubuntu1604` -- it doesn't seem worth installing a lower version of
GCC to the default for Ubuntu 18.04.

Update `select-compiler.sh` to select GCC 8 for Node.js 16 and later.
@@ -17,6 +17,8 @@ RUN apt-get update && apt-get dist-upgrade -y && apt-get install -y \
ccache \
g++ \
gcc \
g++-8 \
gcc-8 \
Copy link
Member Author

Choose a reason for hiding this comment

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

Copy link
Member

Choose a reason for hiding this comment

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

yeah, probably not used, they were at one stage for some temporary testing work and they also exist as a way of experimenting with offloading VM tests to container tests, but other than that they're probably idling (which really only costs us the memory impact of the jenkins nodes)

@richardlau
Copy link
Member Author

I haven't deployed this anywhere yet.

@@ -144,14 +144,20 @@ packages: {
],

ubuntu: [
'ccache,g++,gcc,g++-6,gcc-6,git,libfontconfig1,sudo,python3-pip',
'ccache,g++,gcc,git,libfontconfig1,sudo,python3-pip',
Copy link
Member

Choose a reason for hiding this comment

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

maybe we should just remove g++,gcc from here too?

@rvagg
Copy link
Member

rvagg commented May 26, 2021

What do you think about being more explicit? Remove g++ and gcc from both baselayout and the Dockerfiles, add in g++-6 and gcc-6 and make select-compiler.sh use those instead of YOLO plain gcc and g++? As long as select-compiler.sh is involved it should be fine then. I'm not sure if it is on the bare 18.04 VMs but we could easily do that if needed.

Install specific versions of gcc/g++ on Ubuntu.
@richardlau
Copy link
Member Author

Pushed ca9dcab to remove gcc/g++ and explicitly install gcc-6/g++-6 (in addition to gcc-8/g++-8). I think (based on a modified local copy of the sharedlibs Dockerfile) we still end up with the gcc/g++ package installed through some dependency chain.

@richardlau
Copy link
Member Author

I've deployed this onto the Docker containers hosted on

  • test-digitalocean-ubuntu1804_docker-x64-1
  • test-digitalocean-ubuntu1804_docker-x64-2
  • test-softlayer-ubuntu1804_docker-x64-1

and the two test non-containered Ubuntu 18.04 hosts:

  • test-digitalocean-ubuntu1804-x64-1
  • test-joyent-ubuntu1804-x64-1

I've also updated the node-test-commit-linux-containered job to call the select-compiler.sh script (https://github.com/nodejs/jenkins-config-test/commit/96bd09b15124cdfc9f985a947d94091b325d9287 and https://github.com/nodejs/jenkins-config-test/commit/741f1f8553e411adbea24acfbad8591d3003da67) in preparation for when this PR is merged (until then the builds fall through the existing select-compiler.sh script and default to gcc/g++). The node-test-commit-linux job is already calling select-compiler.sh.

@richardlau richardlau merged commit 5f233e6 into nodejs:master May 28, 2021
@richardlau richardlau deleted the ubuntu1804 branch May 28, 2021 12:59
richardlau added a commit that referenced this pull request Jun 23, 2021
Fixup copy/paste error and install g++-8 on Ubuntu 16.04.

Refs: #2660
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants