Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.maint.python > #10029 > unrolled thread
| Started by | Hans-Christoph Steiner <hans@guardianproject.info> |
|---|---|
| First post | 2018-01-09 19:40 +0100 |
| Last post | 2018-03-21 23:30 +0100 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.debian.maint.python
GitLab CI on salsa.debian.org Hans-Christoph Steiner <hans@guardianproject.info> - 2018-01-09 19:40 +0100
Re: GitLab CI on salsa.debian.org Hans-Christoph Steiner <hans@at.or.at> - 2018-03-21 15:40 +0100
Re: GitLab CI on salsa.debian.org Diane Trout <diane@ghic.org> - 2018-03-21 17:40 +0100
Re: GitLab CI on salsa.debian.org Hans-Christoph Steiner <hans@at.or.at> - 2018-03-21 23:30 +0100
| From | Hans-Christoph Steiner <hans@guardianproject.info> |
|---|---|
| Date | 2018-01-09 19:40 +0100 |
| Subject | GitLab CI on salsa.debian.org |
| Message-ID | <v66Yy-7Fj-1@gated-at.bofh.it> |
One great addition that GitLab gives us is CI builds with custom Docker
images, which will run the whole build/test process for each merge
request. For example:
https://salsa.debian.org/eighthave/python-vagrant/-/jobs/4005
I have set up a prototype Docker image for running git-buildpackage
builds automatically. This Docker image is built and deployed using
Gitlab CI (albeit on gitlab.com):
https://gitlab.com/eighthave/ci-image-git-buildpackage
Then any git-buildpackage package can be built by doing this:
* put git project on salsa
* In Settings -> CI/CD -> General pipelines settings ->
Custom CI config path, set it to: debian/.gitlab-ci.yml
* include debian/.gitlab-ci.yml in the git repo with this contents:
image: registry.gitlab.com/eighthave/ci-image-git-buildpackage:latest
build:
artifacts:
paths:
- *.deb
expire_in: 1 day
script:
- /gitlab-ci-git-buildpackage
- dpkg -i ../*.deb || apt-get install -f
- mv ../*.deb .
I think we can do a lot of automation in the Docker image, like some of
the stuff I've already done in ci-image-git-buildpackage. If someone
knows how to get ENTRYPOINT and/or CMD working with GitLab CI, then
/gitlab-ci-git-buildpackage could be run automatically.
.hc
--
PGP fingerprint: EE66 20C7 136B 0D2C 456C 0A4D E9E2 8DEA 00AA 5556
https://pgp.mit.edu/pks/lookup?op=vindex&search=0xE9E28DEA00AA5556
[toc] | [next] | [standalone]
| From | Hans-Christoph Steiner <hans@at.or.at> |
|---|---|
| Date | 2018-03-21 15:40 +0100 |
| Message-ID | <vvN4d-3ec-3@gated-at.bofh.it> |
| In reply to | #10029 |
Since I got only crickets on this email, let me elaborate: gitlab-ci lets you run whatever you want as root via Docker images. That means its easy to run full builds, installs, and tests in gitlab-ci. It also makes it easy to add CI tests for various releases, like to support backports. .hc Hans-Christoph Steiner: > > One great addition that GitLab gives us is CI builds with custom Docker > images, which will run the whole build/test process for each merge > request. For example: > > https://salsa.debian.org/eighthave/python-vagrant/-/jobs/4005 > > I have set up a prototype Docker image for running git-buildpackage > builds automatically. This Docker image is built and deployed using > Gitlab CI (albeit on gitlab.com): > > https://gitlab.com/eighthave/ci-image-git-buildpackage > > Then any git-buildpackage package can be built by doing this: > > * put git project on salsa > * In Settings -> CI/CD -> General pipelines settings -> > Custom CI config path, set it to: debian/.gitlab-ci.yml > * include debian/.gitlab-ci.yml in the git repo with this contents: > > > > image: registry.gitlab.com/eighthave/ci-image-git-buildpackage:latest > > build: > artifacts: > paths: > - *.deb > expire_in: 1 day > script: > - /gitlab-ci-git-buildpackage > - dpkg -i ../*.deb || apt-get install -f > - mv ../*.deb . > > > > I think we can do a lot of automation in the Docker image, like some of > the stuff I've already done in ci-image-git-buildpackage. If someone > knows how to get ENTRYPOINT and/or CMD working with GitLab CI, then > /gitlab-ci-git-buildpackage could be run automatically. > > .hc >
[toc] | [prev] | [next] | [standalone]
| From | Diane Trout <diane@ghic.org> |
|---|---|
| Date | 2018-03-21 17:40 +0100 |
| Message-ID | <vvOWl-4rZ-11@gated-at.bofh.it> |
| In reply to | #10291 |
Can you trigger test on dependencies changing? Does CI run on architectures other than amd64? (I was thinking of complex packages with many dependencies like dask, or with fiddly bit manipulation like pandas) So this would get tests on each commit instead of the current autopkgtests which run on each build? On Wed, 2018-03-21 at 15:27 +0100, Hans-Christoph Steiner wrote: > Since I got only crickets on this email, let me elaborate: gitlab-ci > lets you run whatever you want as root via Docker images. That means > its easy to run full builds, installs, and tests in gitlab-ci. It > also > makes it easy to add CI tests for various releases, like to support > backports.
[toc] | [prev] | [next] | [standalone]
| From | Hans-Christoph Steiner <hans@at.or.at> |
|---|---|
| Date | 2018-03-21 23:30 +0100 |
| Message-ID | <vvUp3-89l-1@gated-at.bofh.it> |
| In reply to | #10292 |
Diane Trout: > Can you trigger test on dependencies changing? You can cron test runs, that would then check the deps. > Does CI run on architectures other than amd64? That depends on the gitlab-ci-runners that are registered. Anyone can register CI-runners for their own projects, and CI runners can be any Debian box or VM. It works easiest with Docker setups. CI runners can be tagged, the jobs can be marked for the required tags. So the CI runners could be tagged based on arch. I hope that salsa.debian.org will also have some shared CI runners for other arches. > (I was thinking of complex packages with many dependencies like dask, > or with fiddly bit manipulation like pandas) > > So this would get tests on each commit instead of the current > autopkgtests which run on each build? It runs on each new push to git, so if you push commits one at a time, it'll run per commit. .hc > On Wed, 2018-03-21 at 15:27 +0100, Hans-Christoph Steiner wrote: >> Since I got only crickets on this email, let me elaborate: gitlab-ci >> lets you run whatever you want as root via Docker images. That means >> its easy to run full builds, installs, and tests in gitlab-ci. It >> also >> makes it easy to add CI tests for various releases, like to support >> backports. >
[toc] | [prev] | [standalone]
Back to top | Article view | linux.debian.maint.python
csiph-web