Opened on 12/27/2017 at 09:42:45 AM
Closed on 08/29/2019 at 05:43:52 PM
#6220 closed change (rejected)
add CI for adblockpluscore
Reported by: | sergz | Assignee: | |
---|---|---|---|
Priority: | Unknown | Milestone: | |
Module: | Core | Keywords: | closed-in-favor-of-gitlab |
Cc: | kzar, hfiguiere, tlucas, mjethani, erikvold | Blocked By: | |
Blocking: | Platform: | Unknown / Cross platform | |
Ready: | no | Confidential: | no |
Tester: | Unknown | Verified working: | no |
Review URL(s): |
https://codereview.adblockplus.org/29663680/ |
Description (last modified by sergz)
Background
It will help a lot if we have CI for the core, mainly because we want to be sure that not only JS part but also the code which is used in native applications on different platforms (e.g. in libadblockplus-andoid) is at least compilable.
I propose to have a configuration for
- travis-ci
- [done] JavaScript (host-platforms: {linux, osx})
- emscripten
- should be done: target-platfom: android, host-platforms: {linux, osx}, native and optionally JS
- done: JS for {linux, osx}, native for host and target platforms {linux, osx}
- appveyor (windows, the same as travis-ci)
- there is still neither eyeo nor adblockplus account
- JavaScript: run tests in nodejs
for present the default branch is set emscripten and it builds only emscripten branch in order to avoid broken builds for master merely because of the absence of the configuration. - emscripten
- since there is no prebuilt emscripten for windows of our version we have to prepare and provide the binaries by our self.
- catch up with custom user-config.h for native as for travis-ci
- done: native
- gitlab
There is still a lot of room for work but the minimum is done. - optionally for circle-ci
because we have a mirror on github which is easily integrable with the services, these services seem the most popular ones and everyone, who is willing to contribute, can easily and for free use them before sending a codereview/pull request.
What to change
- ensure that CI status is failure when JS tests don't pass (for both, emscripten and JS)
- Just do it. Details will come later because it can require additional investigations regarding preparation.
Notifications
Consider sending notifications with build statuses into IRC channel but only for the main repository.
Additional notes
This approach is already in a working form #5133 for libadblockplus.
Attachments (0)
Change History (22)
comment:1 Changed on 01/04/2018 at 10:44:08 AM by kzar
comment:2 Changed on 01/04/2018 at 11:47:21 AM by tlucas
I am investigating CI with gitlab, yes - but i'm also evaluating travis-ci. No strong preference yet here.
comment:3 Changed on 01/05/2018 at 04:24:03 PM by kzar
Awesome OK, well when you've got a better idea how our CI system will be setup let us know what changes we'll need to make to the adblockpluscore repository and we can update this issue.
comment:4 Changed on 01/11/2018 at 09:48:17 PM by sergz
- Review URL(s) modified (diff)
I have added two codereviews (so far only osx and linux) FYI. The first one is ready and working. The second one is not working right now because precompiled emscripten is linked with libraries which are incompatible with ones currently available by default on travis servers. Compiling of emscripten each time on the server is not an option, therefore I guess we will have to prepare and host a compatible version (BTW we do it already for v8 in libadblockplus). However, the rest should be correct. In addition, I have not tested the one for emscripten on osx because travis-ci is experiencing big troubles with osx machines right now.
comment:5 follow-up: ↓ 6 Changed on 01/12/2018 at 11:32:46 AM by kzar
Please could you add Tristan to the reviews as well? He's looking into CI at the moment.
comment:6 in reply to: ↑ 5 Changed on 01/12/2018 at 11:55:08 AM by sergz
Replying to kzar:
Please could you add Tristan to the reviews as well? He's looking into CI at the moment.
He is already in CC.
comment:7 Changed on 01/12/2018 at 12:05:38 PM by kzar
Whoops, sorry you're right.
comment:9 Changed on 02/01/2018 at 11:07:35 AM by abpbot
A commit referencing this issue has landed:
Issue 6220 - add travis-ci configuration for adblockpluscore
comment:10 Changed on 02/05/2018 at 01:10:06 PM by sergz
- Description modified (diff)
I have added a link to https://travis-ci.org/adblockplus/adblockpluscore which is running tests for pushed branches containing travis-ci configuration, no limits, no auto-cancelling, no builds of pushed pull requests. For more details please check the doc and the settings page.
comment:11 Changed on 03/01/2018 at 04:34:12 PM by abpbot
A commit referencing this issue has landed:
Issue 6220 - add travis-ci configuration for adblockpluscore
comment:12 Changed on 03/01/2018 at 04:46:25 PM by sergz
- Description modified (diff)
comment:13 Changed on 03/05/2018 at 03:30:54 PM by sergz
comment:14 Changed on 03/06/2018 at 03:47:54 PM by abpbot
A commit referencing this issue has landed:
Issue 6220 - include running of native tests on travis-ci for emscripten
comment:15 Changed on 03/06/2018 at 03:48:59 PM by sergz
- Description modified (diff)
comment:16 Changed on 03/07/2018 at 10:39:36 AM by sergz
comment:17 Changed on 03/07/2018 at 11:59:19 AM by sergz
- Description modified (diff)
comment:18 Changed on 03/14/2018 at 10:38:15 AM by abpbot
A commit referencing this issue has landed:
Issue 6220 - add appveyor configuration for adblockpluscore [emscripten]
comment:19 Changed on 03/14/2018 at 10:52:49 AM by sergz
- Description modified (diff)
comment:20 Changed on 09/07/2018 at 09:17:06 AM by sergz
comment:21 Changed on 11/15/2018 at 03:38:40 AM by erikvold
- Cc erikvold added
comment:22 Changed on 08/29/2019 at 05:43:52 PM by sebastian
- Keywords closed-in-favor-of-gitlab added
- Resolution set to rejected
- Status changed from new to closed
Sorry, but we switched to GitLab. If this issue is still relevant, please file it again in the new issue tracker.
I know Tristan is already playing with using GitLab for CI, so I think we should see what he thinks. Also I suspect this issue might come under the buildtools module. Either way I'd love to see more CI as well.