[perl PATCH v4 1/3] gitlab: add CI jobs for validating build across platforms

Daniel P. Berrangé berrange at redhat.com
Thu May 7 10:41:15 UTC 2020


On Thu, May 07, 2020 at 12:04:10PM +0200, Andrea Bolognani wrote:
> On Tue, 2020-05-05 at 12:40 +0100, Daniel P. Berrangé wrote:
> > +.git_build_job_template: &git_build_job_definition
> > +  image: $CI_REGISTRY_IMAGE/ci-$NAME:latest
> > +  stage: builds
> > +  before_script:
> > +    - export MAKEFLAGS="-j$(getconf _NPROCESSORS_ONLN)"
> > +    - export SCRATCH_DIR="/tmp/scratch"
> > +    - export VROOT="$SCRATCH_DIR/vroot"
> > +    - export LD_LIBRARY_PATH="$VROOT/lib"
> > +    - export PATH="$VROOT/bin:$PATH"
> > +    - export PKG_CONFIG_PATH="$VROOT/lib/pkgconfig"
> > +    - export TEST_MAINTAINER=1
> > +  script:
> > +    - pushd "$PWD"
> > +    - mkdir -p "$SCRATCH_DIR"
> > +    - cd "$SCRATCH_DIR"
> > +    - git clone --depth 1 https://gitlab.com/libvirt/libvirt.git
> > +    - mkdir libvirt/build
> > +    - cd libvirt/build
> > +    - ../autogen.sh --prefix="$VROOT" --without-libvirtd
> > +    - $MAKE install
> > +    - popd
> > +    - perl Build.PL
> > +    - perl Build
> > +    - perl Build test
> 
> The Jenkins-based CI also runs
> 
>   perl Build install
> 
> and I think we should keep that.

I'll add that.

> 
> Partially related point: I just realized that, among the projects
> we've added to GitLab CI so far, I don't think there's a single one
> where we're testing that we can successfully build RPMs. This is
> something that CentOS CI does, and I think it's important that we
> keep testing it on GitLab CI.

The way we tested RPM builds was a bit gross in CentOS as we were
hacking the spec to cut out the BuildRequires. I'd like to figure
out a better way todo that which actually reflects the way we'll
run builds for real.

When testing against distro-provided libvirtd this is quite easy
as we have the right devel packages present.

Testing against GIT it is harder.

> 
> > +centos-7-git-build:
> > +  <<: *git_build_job_definition
> > +  variables:
> > +    NAME: centos-7
> > +
> > +centos-8-git-build:
> > +  <<: *git_build_job_definition
> > +  variables:
> > +    NAME: centos-8
> > +
> > +debian-9-git-build:
> > +  <<: *git_build_job_definition
> > +  variables:
> > +    NAME: debian-9
> 
> Same question as libvirt-php: why are we not building against
> distro-provided libvirt packages?

Perl bindings only support exactly matching libvirt versions.


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list