[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2 0/8] Using GitLab CI for build testing



On 3/15/18 8:55 PM, John Thomson wrote:
> Hi,
> 
> I have some suggestions / queries.
> I package Xen using GitLab CI for my use: 
> https://gitlab.com/archlinux-packages-johnth/xen/pipelines
> My examples here are just mock-ups and not tested.
> 
> On Fri, 16 Mar 2018, at 04:21, Doug Goldstein wrote:
>> Example run: https://gitlab.com/cardoe/xen/pipelines/18968075
> 
> - You probably want to set "XEN_TARGET_ARCH". The example build misses tools.
> job:
>   variables:
>     ...
>     XEN_TARGET_ARCH: x86_64

Agreed. I've added for a v3.

> 
> 
> - Is it worth storing the resultant built files as artifacts?
>   This way they can be downloaded or tested later.
> 
> artifacts:
>   paths:
>     - 'dist'

I agree as well. I was likely going to keep them for a week only to
start with. Internally I use the artifacts to do some basic boot tests
with Xen.

> 
>> Currently the example uses one stage called build and all the different 
>> distros are different jobs.  
> 
> - Is is worth caching and artifacting the build (tools) dependencies as a job,
>   so that each CI job does not hit the dependency Xen repos and websites for 
> the same data,
>   and you have an easily accessible pre-build state?
>   This may need an empty job for collect stage where not wanted? I am unsure 
> if you can skip a first stage.
> 
> stages:
>   - collect
>   - build
> 
> collect:tools:
>   stage: collect
>   script:
>     - Clone all tools dependency repos & downloads
>     - Move files into place, and set repo URLs (example; QEMU_UPSTREAM_URL) 
> to the local copies.
>   artifacts:
>     untracked: true
>   cache:
>     untracked: true
> 
> build-job-example:
>   ...
>   dependencies:
>     - collect:tools

Good suggestion. We'll also be able to ensure all the builds used the
same revs in case they start at different times.


> 
> - My build log exceeds the GitLab CI Job limit. You may not hit this limit, 
> then you can ignore this.
>   It looks like this, at the end of the GitLab CI log, but mid-way through 
> the job log:
>   ...
>   "Job's log exceeded limit of 4194304 bytes."
>   To work around this, I log to a file, then store this file as an artifact.
>   These can then be downloaded later.
>   This could be something like:
> 
> artifacts:
>   paths:
>     - '*.log'
>   when: always
> 
> job:
>   ...
>   script:
>     - ./scripts/travis-build 2>&1 | tee build.log
> 
> 
> Cheers,
> 

Good to know. Thanks!

I appreciate the feedback and I'll incorporate your suggestions.
-- 
Doug Goldstein

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.