Compare commits

...

6 Commits

Author SHA1 Message Date
bfd826276d fixup! wip: ci: use fedoraBuild
All checks were successful
RPMs/gasket-driver/pipeline/head This commit looks good
2025-11-23 13:04:19 -06:00
b2937d54c2 fixup! wip: ci: use fedoraBuild 2025-11-23 12:56:34 -06:00
0ace925ec1 fixup! wip: ci: use fedoraBuild
All checks were successful
RPMs/gasket-driver/pipeline/head This commit looks good
2025-11-23 12:55:40 -06:00
49eff87281 fixup! wip: ci: use fedoraBuild
All checks were successful
RPMs/gasket-driver/pipeline/head This commit looks good
2025-11-23 11:45:21 -06:00
2c803f822e fixup! wip: ci: use fedoraBuild
All checks were successful
RPMs/gasket-driver/pipeline/head This commit looks good
2025-11-23 11:43:36 -06:00
4a4295e1a2 wip: ci: use fedoraBuild
Some checks failed
RPMs/gasket-driver/pipeline/head There was a failure building this commit
2025-11-23 11:42:55 -06:00

155
ci/Jenkinsfile vendored
View File

@@ -1,7 +1,7 @@
pipeline {
agent none
@Library('dch@fedora')_
triggers {
properties([
pipelineTriggers([
GenericTrigger(
causeString: 'Webhook Trigger',
genericVariables: [[
@@ -15,100 +15,77 @@ pipeline {
silentResponse: true,
tokenCredentialId: 'webhook-trigger',
)
}
])
])
stages {
stage('RPM') {
matrix {
axes {
axis {
name 'FEDORA'
values '41', '42'
try {
fedoraBuild(architectures: ['amd64']) {
stage('Prepare') {
checkout scm
container('build') {
sh '. ci/prepare.sh'
}
}
stage('Build') {
withCredentials([file(
credentialsId: 'kmod-signing-cert',
variable: 'SIGNING_KEY',
)]) {
container('build') {
sh '. ci/build.sh'
}
}
}
stage('Sign') {
if (BRANCH_NAME == 'main') {
withEnvironment([
"GNUPGHOME=${env.WORKSPACE_TMP}/gnupg",
]) {
withCredentials([
file(
credentialsId: 'rpm-gpg-key',
variable: 'RPM_GPG_PRIVATE_KEY',
),
file(
credentialsId: 'rpm-gpg-key-passphrase',
variable: 'RPM_GPG_KEY_PASSPHRASE',
),
]) {
sh '. ci/sign.sh'
}
}
agent {
kubernetes {
yamlFile 'ci/podTemplate.yaml'
yamlMergeStrategy merge()
defaultContainer 'fedora'
containerTemplate {
name 'fedora'
image "registry.fedoraproject.org/fedora:${FEDORA}"
}
}
} else {
catchError(
catchInterruptions: false,
buildResult: null,
stageResult: 'NOT_BUILT',
) {
error('skip')
}
}
}
stages {
stage('Prepare') {
steps {
sh '. ci/prepare.sh'
}
archiveArtifacts '*.rpm'
stage('Publish') {
when(BRANCH_NAME == 'main') {
container('build') {
sshagent(['jenkins-repohost']) {
sh '. ci/publish.sh'
}
stage('Build') {
steps {
withCredentials([file(
credentialsId: 'kmod-signing-cert',
variable: 'SIGNING_KEY',
)]) {
sh '. ci/build.sh'
}
}
}
stage('Sign') {
when {
branch 'main'
}
environment {
GNUPGHOME = "${env.WORKSPACE_TMP}/gnupg"
}
steps {
withCredentials([
file(
credentialsId: 'rpm-gpg-key',
variable: 'RPM_GPG_PRIVATE_KEY',
),
file(
credentialsId: 'rpm-gpg-key-passphrase',
variable: 'RPM_GPG_KEY_PASSPHRASE',
),
]) {
sh '. ci/sign.sh'
}
}
}
stage('Archive') {
steps {
archiveArtifacts '*.rpm'
}
}
stage('Publish') {
when {
branch 'main'
}
steps {
sshagent(['jenkins-repohost']) {
sh '. ci/publish.sh'
}
}
}
}
}
}
}
post {
failure {
emailext(
to: 'gyrfalcon@ebonfire.com',
subject: '$DEFAULT_SUBJECT',
body: '$DEFAULT_CONTENT',
)
}
}
} catch (ex) {
currentBuild.result = 'FAILED'
emailext(
to: 'gyrfalcon@ebonfire.com',
subject: '$DEFAULT_SUBJECT',
body: '$DEFAULT_CONTENT',
)
throw ex
}