Files
2026-07-16 11:50:56 +02:00

98 lines
2.7 KiB
Groovy

pipeline {
agent any
environment {
PACKAGE_NAME = "espos-archive-keyring"
APTLY_REPO = "espos-unstable"
APTLY_HOST = "ubuntu@elordenador.org"
DEB_FILE = "*.deb"
}
stages {
stage('Checkout') {
steps {
checkout scm
}
}
stage('Install Build Dependencies') {
steps {
sh '''
sudo apt update
sudo apt install -y build-essential devscripts debhelper lintian
'''
}
}
stage("Build Debian Package") {
steps {
sh '''
dpkg-buildpackage -us -uc
ls -lah ..
'''
}
}
stage("Lintian Check") {
steps {
sh '''
lintian ../*.deb || true
'''
}
}
stage("Upload to aptly") {
steps {
sshagent(['srv01_elordenador_org']) {
sh '''
ssh-keyscan -H elordenador.org >> ~/.ssh/known_hosts
scp ../${DEB_FILE} ${APTLY_HOST}:/tmp/
'''
}
}
}
stage("Publish Repository") {
steps {
sshagent(['srv01_elordenador_org']) {
withCredentials([
string(
credentialsId: 'aptly_gpg_pass',
variable: 'GPG_PASS'
)
]) {
sh '''
ssh ${APTLY_HOST} "
aptly repo add espos-unstable /tmp/*.deb
if aptly publish list | grep -q espos-unstable
then
aptly publish update \
-passphrase='${GPG_PASS}' \
espos-unstable
else
aptly publish repo \
-distribution=espos-unstable \
-component=main \
-passphrase='${GPG_PASS}' \
espos-unstable
fi
"
'''
}
}
}
}
}
post {
success {
echo "Paquete publicado correctamente"
}
failure {
echo "Error construyendo paquete"
}
}
}