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:

Status badges

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)

0001-added-initial-.gitlab-ci.yml.patch (4.1 KB) - added by kprichter 4 years ago.

Download all attachments as: .zip

Change History (7)

Changed 4 years ago by kprichter

comment:1 Changed 4 years ago by jdemeyer

This doesn't actually seem to work due to the 2 hour time limit. Are we allowed to use multiple processors?

comment:2 Changed 4 years ago by jdemeyer

And use ccache?

comment:3 follow-up: Changed 4 years ago by kprichter

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 jdemeyer

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 kprichter

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 embray

  • 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

Note: See TracTickets for help on using tickets.