Opened 4 years ago
Closed 3 years ago
#23937 closed enhancement (duplicate)
Setup remote CI service
Reported by: | kprichter | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | sage-duplicate/invalid/wontfix |
Component: | build | Keywords: | |
Cc: | Merged in: | ||
Authors: | Reviewers: | ||
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description
GitLab is a free (as in speech) code platform to which sage could mirror (2 clicks) in order to profit from the CI service (free for FLOSS projects). You can also connect your own machines in case you need to things tested faster. It allows to detect build and test failures early and verify the validity of build instructions on a bunch of systems.
I propose a basic CI script for Ubuntu 14.04, 16.04, 17.04 and 17.10 [which works](https://gitlab.com/krichter/sage/-/jobs/34421190). GitLab CI works with docker images, so the list of possible OS to test on is basically endless.
Attachments (1)
Change History (7)
Changed 4 years ago by
comment:1 Changed 4 years ago by
comment:2 Changed 4 years ago by
And use ccache?
comment:3 follow-up: ↓ 4 Changed 4 years ago by
This doesn't actually seem to work due to the 2 hour time limit. Are we allowed to use multiple processors?
GitLab CI allows to use arbitrary so-called builder and in case the free builders aren't sufficient there're paid plans which most likely increase resources and timeout or the possibility to run your own machine(s) at home with all the possibilities of parallelization and clustering which come with Docker - if all Sage core developers ship in with their desktops and laptops you might find yourself with an improvised CI server farm for free.
And use ccache?
It's a program that can be installed into Docker. It might have a very limited effect because the docker images are thrown away after each build.
comment:4 in reply to: ↑ 3 Changed 4 years ago by
Replying to kprichter:
And use ccache?
It's a program that can be installed into Docker. It might have a very limited effect because the docker images are thrown away after each build.
And there is no way to keep persistent data, like in Travis CI? This would make an important difference.
comment:5 Changed 4 years ago by
And there is no way to keep persistent data, like in Travis CI? This would make an important difference.
Maybe. You can create your own Docker image which already has the data in it after booting the container.
comment:6 Changed 3 years ago by
- Milestone changed from sage-wishlist to sage-duplicate/invalid/wontfix
- Resolution set to duplicate
- Status changed from new to closed
Unfortunate that I never saw this ticket before. Nevertheless, this is basically now done, albeit a little more complex than the specific solution proposed here: #24655
This doesn't actually seem to work due to the 2 hour time limit. Are we allowed to use multiple processors?