Compare commits
2 Commits
2684e4b814
...
71bb2e8de5
| Author | SHA1 | Date | |
|---|---|---|---|
| 71bb2e8de5 | |||
| 1a2b2f604c |
85
ci/Jenkinsfile
vendored
85
ci/Jenkinsfile
vendored
@@ -1,7 +1,7 @@
|
|||||||
pipeline {
|
@Library('dch')_
|
||||||
agent none
|
|
||||||
|
|
||||||
triggers {
|
properties([
|
||||||
|
pipelineTriggers([
|
||||||
GenericTrigger(
|
GenericTrigger(
|
||||||
causeString: 'Webhook Trigger',
|
causeString: 'Webhook Trigger',
|
||||||
genericVariables: [[
|
genericVariables: [[
|
||||||
@@ -15,56 +15,39 @@ pipeline {
|
|||||||
silentResponse: true,
|
silentResponse: true,
|
||||||
tokenCredentialId: 'webhook-trigger',
|
tokenCredentialId: 'webhook-trigger',
|
||||||
)
|
)
|
||||||
}
|
])
|
||||||
|
])
|
||||||
|
|
||||||
stages {
|
try {
|
||||||
stage('RPM') {
|
fedoraBuild(
|
||||||
matrix {
|
architectures: ['amd64'],
|
||||||
axes {
|
podTemplate: 'ci/podTemplate.yaml',
|
||||||
axis {
|
buildContainer: 'fedora',
|
||||||
name 'FEDORA'
|
) { arch, fedoraVersion ->
|
||||||
values '41', '42'
|
stage("Prepare f${fedoraVersion}/${arch}") {
|
||||||
}
|
checkout scm
|
||||||
}
|
|
||||||
|
|
||||||
agent {
|
container('fedora') {
|
||||||
kubernetes {
|
|
||||||
yamlFile 'ci/podTemplate.yaml'
|
|
||||||
yamlMergeStrategy merge()
|
|
||||||
defaultContainer 'fedora'
|
|
||||||
containerTemplate {
|
|
||||||
name 'fedora'
|
|
||||||
image "registry.fedoraproject.org/fedora:${FEDORA}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
stages {
|
|
||||||
stage('Prepare') {
|
|
||||||
steps {
|
|
||||||
sh '. ci/prepare.sh'
|
sh '. ci/prepare.sh'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
stage('Build') {
|
stage("Build f${fedoraVersion}/${arch}") {
|
||||||
steps {
|
|
||||||
withCredentials([file(
|
withCredentials([file(
|
||||||
credentialsId: 'kmod-signing-cert',
|
credentialsId: 'kmod-signing-cert',
|
||||||
variable: 'SIGNING_KEY',
|
variable: 'SIGNING_KEY',
|
||||||
)]) {
|
)]) {
|
||||||
|
container('fedora') {
|
||||||
sh '. ci/build.sh'
|
sh '. ci/build.sh'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
stage('Sign') {
|
stage("Sign f${fedoraVersion}/${arch}") {
|
||||||
when {
|
when(BRANCH_NAME == 'main') {
|
||||||
branch 'main'
|
withEnvironment([
|
||||||
}
|
"GNUPGHOME=${env.WORKSPACE_TMP}/gnupg",
|
||||||
environment {
|
]) {
|
||||||
GNUPGHOME = "${env.WORKSPACE_TMP}/gnupg"
|
|
||||||
}
|
|
||||||
steps {
|
|
||||||
withCredentials([
|
withCredentials([
|
||||||
file(
|
file(
|
||||||
credentialsId: 'rpm-gpg-key',
|
credentialsId: 'rpm-gpg-key',
|
||||||
@@ -75,40 +58,32 @@ pipeline {
|
|||||||
variable: 'RPM_GPG_KEY_PASSPHRASE',
|
variable: 'RPM_GPG_KEY_PASSPHRASE',
|
||||||
),
|
),
|
||||||
]) {
|
]) {
|
||||||
|
container('fedora') {
|
||||||
sh '. ci/sign.sh'
|
sh '. ci/sign.sh'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
stage('Archive') {
|
|
||||||
steps {
|
|
||||||
archiveArtifacts '*.rpm'
|
archiveArtifacts '*.rpm'
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
stage('Publish') {
|
stage("Publish f${fedoraVersion}/${arch}") {
|
||||||
when {
|
when(BRANCH_NAME == 'main') {
|
||||||
branch 'main'
|
container('fedora') {
|
||||||
}
|
|
||||||
steps {
|
|
||||||
sshagent(['jenkins-repohost']) {
|
sshagent(['jenkins-repohost']) {
|
||||||
sh '. ci/publish.sh'
|
sh '. ci/publish.sh'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
} catch (ex) {
|
||||||
}
|
currentBuild.result = 'FAILED'
|
||||||
|
|
||||||
post {
|
|
||||||
failure {
|
|
||||||
emailext(
|
emailext(
|
||||||
to: 'gyrfalcon@ebonfire.com',
|
to: 'gyrfalcon@ebonfire.com',
|
||||||
subject: '$DEFAULT_SUBJECT',
|
subject: '$DEFAULT_SUBJECT',
|
||||||
body: '$DEFAULT_CONTENT',
|
body: '$DEFAULT_CONTENT',
|
||||||
)
|
)
|
||||||
}
|
throw ex
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
Name: gasket-driver
|
Name: gasket-driver
|
||||||
Version: 0.0.git%{git_revision}
|
Version: 0.0.git%{git_revision}
|
||||||
Release: 3.k%{kernel_version}%{?dist}
|
Release: 4.k%{kernel_version}%{?dist}
|
||||||
Summary: The Coral Gasket Driver allows usage of the Coral EdgeTPU on Linux systems
|
Summary: The Coral Gasket Driver allows usage of the Coral EdgeTPU on Linux systems
|
||||||
|
|
||||||
License: GPL-2.0
|
License: GPL-2.0
|
||||||
@@ -19,6 +19,7 @@ Patch0: 0001-core-Omit-no_llseek-reference.patch
|
|||||||
Patch1: 0002-Update-gasket_page_table.c-Fix-MODULE_IMPORT_NS.patch
|
Patch1: 0002-Update-gasket_page_table.c-Fix-MODULE_IMPORT_NS.patch
|
||||||
|
|
||||||
BuildRequires: kernel-devel
|
BuildRequires: kernel-devel
|
||||||
|
Provides: installonlypkg(kernel-module)
|
||||||
Requires: kernel-core == %{kernel_version}
|
Requires: kernel-core == %{kernel_version}
|
||||||
Conflicts: kernel-core > %{kernel_version}
|
Conflicts: kernel-core > %{kernel_version}
|
||||||
Requires(post): kmod
|
Requires(post): kmod
|
||||||
@@ -50,6 +51,9 @@ depmod -a %{kernel_ver}.%{_arch}
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sun Nov 23 2025 Dustin C. Hatch <dustin@hatch.name> [0.0.git5815ee3-4]
|
||||||
|
- Provide installonlypkg(kernel-module)
|
||||||
|
|
||||||
* Sun Nov 16 2025 Dustin C. Hatch <dustin@hatch.name> [0.0.git5815ee3-2]
|
* Sun Nov 16 2025 Dustin C. Hatch <dustin@hatch.name> [0.0.git5815ee3-2]
|
||||||
- Include kernel version in release tag
|
- Include kernel version in release tag
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user