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" } } }