Changes between Version 8 and Version 10 of Ticket #6651


Ignore:
Timestamp:
05/18/2018 07:57:08 AM (23 months ago)
Author:
tlucas
Comment:

Also adding Sergei, as he might be able to provide / gain something to / from this endeavor.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #6651

    • Property Cc sergz added
    • Property Blocked By changed from 6339, 6369 to
  • Ticket #6651 – Description

    v8 v10  
    33 
    44=== What to do === 
    5  * Choose a CI solution - My current favorite is [https://about.gitlab.com/features/gitlab-ci-cd/ GitLab CI], for it's scaling-method is the most simple for our ops to use (we can simply spawn VMs and register them as workers, everything would remain under our control ~~(especially with our attempt to have gitlab selfhosted)~~ (<- this was [http://hub.eyeo.com/issues/6210#note-13 canceled]); FWIW while abp-builds-1 would lose it's role of being the only instance controlling what is build when, it could still be used as our main worker. However [https://travis-ci.com/ Travis CI] and [https://circleci.com/product/ CircleCI] also seem feasible (all tools should remain free for Adblock Plus only) 
     5Tasks in our infrastructure: 
     6 * http://hub.eyeo.com/issues/11192 -> Discussion about storing sensitive data on gitlab.com (outcome: don't) 
     7 * Create a skeleton for a VM, which can be registered as a runner for a project on gitlab.com (case study: https://gitlab.com/triluc/vagrant-puppet-gitlab-setup ) 
     8 * http://hub.eyeo.com/issues/11275 -> requesting custom runners for gitlab.com 
    69 
    7  * Let the `buildtools` be able to render an appropriate configuration file for the chosen tool (In order to keep flexibility, e.g. choosing which platform's extension should be build from which branch) 
     10After implementing the tickets listed below, add a `.gitlab-ci.yml` which should invoke a gitlab-pipeline to `build` and `upload` a devbuild for `adblockpluschrome` for `Firefox` and `Chrome` any time a new commit is pushed to `master`, or for `Edge`, any time a new commit is pushed to `edge` (as soon as we get rid of the `edge`-branch, we can also trigger the job for `Edge` from the master branch as well.). Let these builds be listed in a `development` [https://docs.gitlab.com/ee/ci/yaml/#environment environment] on gitlab.com. 
    811 
    9  * Integrate the machinery for uploading development builds of Adblock Plus, currently living in `abpssembly` into the `buildtools` 
     12A working case study can be found [https://gist.github.com/TrLucas/953c1020d5124070d43245fea148eb4d here]. (it assumes `./build.py upload ...` to be available) 
    1013 
     14[[TicketQuery(keywords~=gitlab ci,order=id,desc=1,format=table,col=summary|component)]] 
    1115=== Note === 
    1216This ticket is meant for discussion and / or as a parent ticket for more detailed children (on both trac and the hub), once we decided on a tool.