From 18ac659cd8a7e61f824f1a31362dbd942fb00f1c Mon Sep 17 00:00:00 2001 From: Patrick Wuttke Date: Sun, 18 Jun 2023 13:28:36 +0200 Subject: [PATCH] Initial commit. --- Dockerfile | 6 ++++++ Jenkinsfile | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 Dockerfile create mode 100644 Jenkinsfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..be1042d --- /dev/null +++ b/Dockerfile @@ -0,0 +1,6 @@ +FROM debian:sid-slim + +RUN apt-get -y update && \ + apt-get -y upgrade && \ + apt-get -y install scons pkg-config libx11-dev libxcursor-dev libxinerama-dev libgl1-mesa-dev \ + libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev clang diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..f942ed5 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,51 @@ +pipeline { + agent { + dockerfile { + filename 'Dockerfile' + dir 'build' + } + } + + parameters { + booleanParam(name: 'CLEAN', defaultValue: false, description: 'Clean build') + } + + stages { + stage('Clean') { + when { + expression { params.CLEAN } + } + steps { + sh 'scons platform=linuxbsd -c' + } + } + stage('Build Linux GCC') { + steps { + sh 'scons -j8 platform=linuxbsd use_lto=yes' + sh 'scons -j8 platform=linuxbsd target=template_release use_lto=yes' + sh 'scons -j8 platform=linuxbsd target=template_debug use_lto=yes' + } + } + stage('Archive') { + steps { + archiveArtifacts artifacts: 'bin/*', + fingerprint: true, + onlyIfSuccessful: true + } + } + } + + post { + failure { + mail from: 'Jenkins ', + to: 'jenkins@mewin.de', + cc: '', + bcc: '', + subject: "Jenkins Build Error (${env.JOB_NAME})", + body: "Build Failure
Project: ${env.JOB_NAME}
Build Number: ${env.BUILD_NUMBER}
Build URL: ${env.BUILD_URL}", + charset: 'UTF-8', + mimeType: 'text/html', + replyTo: ''; + } + } +}