Skip to content
Snippets Groups Projects
Commit b3f1292a authored by Simon McVittie's avatar Simon McVittie
Browse files

Add CI

parent 045f8366
No related branches found
No related tags found
No related merge requests found
......@@ -93,7 +93,7 @@ _build/%/build.stamp: _build/%/config.stamp $(sysroot)/etc/debian_version
$(in_sysroot) $(MAKE) -C _build/$*/libcapsule
touch $@
install-%:
install-%: _build/%/build.stamp
mkdir -p relocatable-install/bin
$(in_sysroot) $(MAKE) in-sysroot/install-$*
......
#!/usr/bin/env groovy
/*
* SPDX-License-Identifier: LGPL-2.1+
*
* Copyright © 2017-2018 Collabora Ltd
*
* This package is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This package is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this package. If not, see
* <http://www.gnu.org/licenses/>.
*/
@Library('steamos-ci') _
pipeline {
agent none
options {
timestamps()
skipDefaultCheckout()
}
stages {
stage ("libcapsule") {
agent {
docker {
label 'docker-slave'
image "docker-registry.internal.collabora.com/steamos/package-builder:stretch"
registryUrl 'https://docker-registry.internal.collabora.com'
registryCredentialsId 'ccu-docker-internal-collabora-com'
alwaysPull true
}
}
environment {
HOME="${env.WORKSPACE}"
TMPDIR="${env.WORKSPACE}"
PYTHONUNBUFFERED="1"
}
steps {
sh '''
git config --global user.name Jenkins
git config --global user.email nobody@example.com
'''
checkout changelog: true, poll: true, scm: [
$class: 'GitSCM',
branches: [[name: "origin/master"]],
extensions: [[$class: 'PruneStaleBranch'], [$class: 'RelativeTargetDirectory', relativeTargetDir: 'libcapsule']],
userRemoteConfigs: [[name: 'origin', url: "git@gitlab.collabora.com:vivek/libcapsule", credentialsId: 'GITLABSSHKEY']]
]
sh '''
set -e
mkdir -p debs
echo "jenkins::$(id -u):$(id -g):Jenkins:$(pwd):/bin/sh" > passwd
export NSS_WRAPPER_PASSWD=$(pwd)/passwd
export NSS_WRAPPER_GROUP=/dev/null
export LD_PRELOAD=libnss_wrapper.so
( cd libcapsule; deb-build-snapshot -d ../debs --no-check -s -u localhost )
'''
stash name: 'debs', includes: 'debs/**'
}
post {
always {
deleteDir()
}
}
}
stage ("pressure-vessel") {
agent {
docker {
label 'docker-slave'
image "docker-registry.internal.collabora.com/steamos/package-builder:jessie"
registryUrl 'https://docker-registry.internal.collabora.com'
registryCredentialsId 'ccu-docker-internal-collabora-com'
alwaysPull true
}
}
environment {
HOME="${env.WORKSPACE}"
TMPDIR="${env.WORKSPACE}"
PYTHONUNBUFFERED="1"
}
steps {
sh '''
git config --global user.name Jenkins
git config --global user.email nobody@example.com
'''
checkoutCollaboraGitlab('steam/pressure-vessel', 'master', 'src')
unstash 'debs'
sh '''
set -e
echo "jenkins::$(id -u):$(id -g):Jenkins:$(pwd):/bin/sh" > passwd
export NSS_WRAPPER_PASSWD=$(pwd)/passwd
export NSS_WRAPPER_GROUP=/dev/null
export LD_PRELOAD=libnss_wrapper.so
mv debs/*.dsc debs/*.tar.* src/
( cd src; make sysroot=/ )
'''
archiveArtifacts 'src/pressure-vessel-*-bin.tar.gz'
}
post {
always {
deleteDir()
}
}
}
}
}
/* vim:set sw=2 sts=2 et: */
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment