You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
PPC BE release machine/PPC BE in standard releases #377
We had been using fedora machines for testing PPC BE but after discussion that is not appropriate for the release machines. There are limited choices available today on OSUOSL so we are going to look at using ubuntu 14.04.
That will mean that the binaries won't necessarily run on earlier releases but given the dependency on the 4.8.3 compiler users who want a supported configuration will likely be running on recent distro's. As long as the binaries will run on rhel7.1 in addition to ubuntu 14.04 I think it will be acceptable. We can always adjust if there is a real need from the community for support of earlier versions.
The required steps to complete this would be:
provision ubuntu 14.04 machine at osuosl
build on ubuntu 14.04
validate binary runs on rhel7.1
Update ansible files to install additional required modules
move test machines over to ubuntu 14.04 for BE and add to jenkins
provision ubuntu 14.04 BE release machine + add to jenkins
validate tests run/pass as they are on fedora
add release jobs/scripts etc
add to subsequent releases
update download page to point to releases in download directory and update wording on download page
Created an ubuntu 14.04 machine quite a while ago but 64 bit compiles were failing. Took a while to get back to looking at it but the problem seems to have been:
32 bit is still the default for 14.04 for PPC (different from other platforms)
even compiling hello world failed
you need g++-multilib to get the 64 bit components (for x86 this would give you the 32 bit components instead)
After adding g++-multilib I have successfully build/run the tests and they all passed.
I just ran citgm-all on one of our PPC BE RHEL 7.0 machines. Nothing unexpected so seems like its reasonable to build on ubuntu 14.04 and get RHEL support as well.
Since he does have access to the release machines(which I'm assuming is necessary, at least for testing things out). If that is something he can do could you confirm its ok for him to go ahead and point him at the PR for when le was added as I assume it will be a good template for adding be.
Just clarifying the next steps that will likely need to be done
Create temporary fork of release job
enable ppcbe-ubuntu1404-release-64
create successful build
run tests to ensure that build works (with help from @mhdawson)
enable ppcbe-ubuntu1404-release-64 in production release job
in first release that uses updated production release job run tests to ensure that build works (with help from @mhdawson)
Update website to support new build
@rvagg does that sounds reasonable? @jbergstroem any complaints to me cloning the build job? I'd run the build exclusively as "test" and like only enable the single platform we are targeting
CITGM and only modules marked flaky or the known eslint ppc test issue due to the phantomjs dependency in the eslint test had issues
The core tests passed except with a small number which fail in the same way on the corresponding x86 build. I believe they are related to either running dev tests on release binary or being a 5.x nightly.
Install and test of the heapdump modules (which requires compilation as it is a native addon) was successful.
So I believe next step is to enable in the release job, see the nighties be generated and then included in next release. Hoping we can do that as soon as current security releases go out.
Activity
mhdawson commentedon Apr 1, 2016
Created an ubuntu 14.04 machine quite a while ago but 64 bit compiles were failing. Took a while to get back to looking at it but the problem seems to have been:
After adding g++-multilib I have successfully build/run the tests and they all passed.
mhdawson commentedon Apr 1, 2016
I just ran citgm-all on one of our PPC BE RHEL 7.0 machines. Nothing unexpected so seems like its reasonable to build on ubuntu 14.04 and get RHEL support as well.
mhdawson commentedon Apr 7, 2016
PR here for required core ansible updates: #382
mhdawson commentedon Apr 7, 2016
Hooked up one ubu 14 be test machine and validated builds/tests ok under CI:
https://ci.nodejs.org/job/node-test-commit-plinux-mdawson/
Looks ok so next step is to switch over the existing be test machines from fedora to ubuntu
mhdawson commentedon Apr 11, 2016
building new test and release machine now
mhdawson commentedon Apr 12, 2016
second test machine moved over (test-osuosl-ubuntu14-ppc64_be-2), build to validate all is ok: https://ci.nodejs.org/job/node-test-commit-plinux/2022/nodes=ppcbe-ubuntu1404/
mhdawson commentedon Apr 12, 2016
Noticed I had not move all the config over from my earlier test job to force 64 bit on be, added that and new runs to validate:
https://ci.nodejs.org/job/node-test-commit-plinux/2023/
https://ci.nodejs.org/job/node-test-commit-plinux/2024/
mhdawson commentedon Apr 12, 2016
I've added a release machine https://ci-release.nodejs.org/computer/release-osuosl-ubuntu14-ppc64_be-1/ but left it offline for final clean/config by @jbergstroem since I don't have access to keys for release machines
mhdawson commentedon Apr 12, 2016
@rvagg, @thealphanerd volunteered to do the next steps:
Since he does have access to the release machines(which I'm assuming is necessary, at least for testing things out). If that is something he can do could you confirm its ok for him to go ahead and point him at the PR for when le was added as I assume it will be a good template for adding be.
MylesBorins commentedon Apr 12, 2016
@mhdawson can you please assign this issue to me to follow up on
mhdawson commentedon Apr 12, 2016
@thealphanerd I tried assigning it to you but was not able for some reason
5 remaining items
MylesBorins commentedon Apr 22, 2016
Just clarifying the next steps that will likely need to be done
ppcbe-ubuntu1404-release-64ppcbe-ubuntu1404-release-64in production release job@rvagg does that sounds reasonable?
@jbergstroem any complaints to me cloning the build job? I'd run the build exclusively as "test" and like only enable the single platform we are targeting
mhdawson commentedon May 4, 2016
Myles had create a test release job but there were issues in that it looks like it was running out of memory. I investigated and with @jbergstroem figured out the issue was the concurrency setting (see #385). Binary was successfully built/published here: https://nodejs.org/download/nightly/v5.11.1-nightly2016050299920480ae/
Next step is to validate the binaries look ok.
mhdawson commentedon May 5, 2016
Ran the core tests and citgm on the binaries.
So the net is that the binary looks good.
mhdawson commentedon May 5, 2016
So I believe next step is to enable in the release job, see the nighties be generated and then included in next release. Hoping we can do that as soon as current security releases go out.
mhdawson commentedon May 6, 2016
Looks like the security releases went out @rvagg @jbergstroem any objections to adding ppc be to the release job so we start to get regular nightlies ?
jbergstroem commentedon May 6, 2016
I'm ok with it.
rvagg commentedon May 9, 2016
ubuntu 14.04 makes me ok so +1
jbergstroem commentedon May 9, 2016
We've retired the fedora20 release slave. it remains to be deleted from our test environment though.
mhdawson commentedon May 9, 2016
Ok, added to regular release job, we'll track how it goes over the next few days
mhdawson commentedon May 10, 2016
Nightlies for 7 and 5 built ok last night, did a simple sanity check and they look ok.
jbergstroem commentedon May 10, 2016
Great! perhaps ping the website team to update links for upcoming releases?
rvagg commentedon May 11, 2016
fine by me
mhdawson commentedon May 11, 2016
@thealphanerd had volunteered to put together the PR for the website, expect it soon
mhdawson commentedon Jun 7, 2016
Ok this is done, closing