Page MenuHomeWildfire Games

Jenkins scripts and tweaks for OSX
ClosedPublic

Authored by Itms on Dec 30 2019, 11:08 AM.

Details

Summary

This adds new Jenkins pipelines for testing commits, patches, and building installers for OSX/macOS on our new Jenkins slave.

It includes some tweaks and fixes to some build scripts.
The dmgbuild configuration is based on Tobbi's work.

Test Plan

Being tested in Jenkins.

Diff Detail

Repository
rP 0 A.D. Public Repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Itms created this revision.Dec 30 2019, 11:08 AM

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/912/display/redirect

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/1428/display/redirect

I looked into jenkin scripts as that is only thing I know something about. As I cannot test that, from just reading the script it looks good, I could not spot anything wrong with it. I would suggest to add timeout to tests like it is done for windows differential, maybe it is not needed for mac but that is not harm setting to have.

Itms added inline comments.Jan 3 2020, 6:28 PM
build/jenkins/pipelines/macos-differential.Jenkinsfile
54 ↗(On Diff #10825)

This is too harsh for macOS. This wipes out the macOS libraries, and rebuilding them is long and often fail at downloading one of the libs.

removing --no-ignore here is probably enough (I'm testing that on Jenkins right now)

62 ↗(On Diff #10825)

Alternatively, we could just pre-download things somewhere (in $HOME or in a helper job) and copy them before building.

Stan added a subscriber: Stan.Jan 3 2020, 6:37 PM
Stan added inline comments.
build/jenkins/pipelines/macos-differential.Jenkinsfile
54 ↗(On Diff #10825)

You could also specify the folders.

Itms added inline comments.
build/workspaces/clean-workspaces.sh
32 ↗(On Diff #10825)

@vladislavbelov @Krinkle Following your troubles with rebuilding NVTT, maybe it's not a good idea to do this. clean-workspaces.sh would not have fixed your issue if that check was present. What do you think?

Itms planned changes to this revision.Jan 13 2020, 8:35 AM
Itms added inline comments.
build/jenkins/pipelines/macos-bundle.Jenkinsfile
33 ↗(On Diff #10825)

This imperatively needs a 3-retry loop like the other ones. The macOS slave fails during a full checkout almost 100% of the time.

This revision was not accepted when it landed; it landed in state Changes Planned.May 17 2020, 4:12 PM
This revision was automatically updated to reflect the committed changes.
Owners added a subscriber: Restricted Owners Package.May 17 2020, 4:12 PM