-
Notifications
You must be signed in to change notification settings - Fork 53
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
NXDRIVE-1280: Add GNU/Linux support 🍾!
For now, we are stuck with Python 3.6.8 because of an incomptibility with SSL: Could not build the ssl module! Python requires an OpenSSL 1.0.2 or 1.1 compatible libssl with X509_VERIFY_PARAM_set1_host(). LibreSSL 2.6.4 and earlier do not provide the necessary APIs, libressl/portable#381 * Compile Python with --enabled-shared on GNU/Linux too; * Display the SKIP envar only if set.
- Loading branch information
Mickaël
committed
Jun 18, 2019
1 parent
f9e12f3
commit 77b9b50
Showing
5 changed files
with
87 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
#!groovy | ||
// Script to build Nuxeo Drive package on GNU/Linux. | ||
// An AppImage will be built on the docker image manylinux2010. | ||
|
||
// Pipeline properties | ||
properties([ | ||
disableConcurrentBuilds(), | ||
pipelineTriggers([[$class: 'GitHubPushTrigger']]), | ||
[$class: 'BuildDiscarderProperty', strategy: | ||
[$class: 'LogRotator', daysToKeepStr: '60', numToKeepStr: '60', artifactNumToKeepStr: '1']], | ||
[$class: 'SchedulerPreference', preferEvenload: true], | ||
[$class: 'RebuildSettings', autoRebuild: false, rebuildDisabled: false], | ||
[$class: 'ParametersDefinitionProperty', parameterDefinitions: [ | ||
[$class: 'StringParameterDefinition', | ||
name: 'BRANCH_NAME', | ||
defaultValue: 'master'] | ||
]] | ||
]) | ||
|
||
pipeline { | ||
agent { | ||
docker { | ||
label 'PUB_DEPLOY' | ||
image 'python:3.7.3-slim-stretch' | ||
args '-u root --privileged' | ||
} | ||
} | ||
|
||
stages { | ||
stage('Install') { | ||
steps { | ||
// https://github.com/pyenv/pyenv/wiki/Common-build-problems#prerequisites | ||
echo 'Installing pyenv requirements' | ||
sh """ | ||
apt update | ||
apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \ | ||
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \ | ||
xz-utils libffi-dev liblzma-dev python-openssl git | ||
""" | ||
} | ||
} | ||
|
||
stage('Checkout') { | ||
steps { | ||
checkout scm | ||
} | ||
} | ||
|
||
stage('Build') { | ||
steps { | ||
sh """ | ||
tools/linux/deploy_jenkins_slave.sh --install-release || (cat /tmp/python-build.*.log && exit 1) | ||
tools/linux/deploy_jenkins_slave.sh --build | ||
""" | ||
} | ||
} | ||
|
||
stage('Archive') { | ||
steps { | ||
archiveArtifacts artifacts: 'dist/*.appimage', fingerprint: true | ||
archiveArtifacts artifacts: 'dist/*.zip', fingerprint: true | ||
} | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters