From 80672a5c3ee7edc63f167c10a312dc9c6a4ed814 Mon Sep 17 00:00:00 2001 From: gnl Date: Tue, 28 Aug 2018 17:09:22 +0300 Subject: [PATCH] Update CI bundle packaging to support code-signing Signed-off-by: gnl --- ci/Jenkinsfile.desktopbuild | 21 +++++++++------ ci/Jenkinsfile.nightly_desktop | 18 +++++++++---- ci/desktop.groovy | 27 +++++++++++-------- .../macos/{qt.conf => qt-reportApp.conf} | 0 4 files changed, 42 insertions(+), 24 deletions(-) rename deployment/macos/{qt.conf => qt-reportApp.conf} (100%) diff --git a/ci/Jenkinsfile.desktopbuild b/ci/Jenkinsfile.desktopbuild index 892286534f..4ec62c6ac6 100644 --- a/ci/Jenkinsfile.desktopbuild +++ b/ci/Jenkinsfile.desktopbuild @@ -141,20 +141,25 @@ timeout(90) { stage('Create MacOS Bundle') { dir(packageFolder) { - sh 'curl -L -O "https://github.com/status-im/StatusAppFiles/raw/master/StatusIm.app.zip"' + sh 'curl -L -O "https://github.com/gnl/StatusAppFiles/raw/master/StatusIm.app.zip"' sh 'unzip StatusIm.app.zip' - sh 'cp -r assets/share/assets StatusIm.app/Contents/MacOs' - sh 'chmod +x StatusIm.app/Contents/MacOs/ubuntu-server' - sh 'cp ../desktop/bin/StatusIm StatusIm.app/Contents/MacOs' - sh 'cp ../desktop/reportApp/reportApp StatusIm.app/Contents/MacOs' - sh 'install_name_tool -add_rpath "@executable_path/../Frameworks" StatusIm.app/Contents/MacOs/reportApp' + sh 'cp -r assets/share/assets StatusIm.app/Contents/Resources' + sh 'ln -sf ../Resources/assets ../Resources/ubuntu-server ../Resources/node_modules ' + + 'StatusIm.app/Contents/MacOS' + sh 'chmod +x StatusIm.app/Contents/Resources/ubuntu-server' + sh 'cp ../desktop/bin/StatusIm StatusIm.app/Contents/MacOS' + sh 'cp ../desktop/reportApp/reportApp StatusIm.app/Contents/MacOS' + sh 'cp -f ../deployment/macos/qt-reportApp.conf StatusIm.app/Contents/Resources' + sh 'ln -sf ../Resources/qt-reportApp.conf StatusIm.app/Contents/MacOS/qt.conf' + sh 'install_name_tool -add_rpath "@executable_path/../Frameworks" ' + + '-delete_rpath "/Users/administrator/qt/5.9.1/clang_64/lib" ' + + 'StatusIm.app/Contents/MacOS/reportApp' sh 'cp -f ../deployment/macos/Info.plist StatusIm.app/Contents' - sh 'cp -f ../deployment/macos/qt.conf StatusIm.app/Contents/MacOs' sh """ macdeployqt StatusIm.app -verbose=1 -dmg \\ -qmldir='${workspace}/node_modules/react-native/ReactQt/runtime/src/qml/' """ - sh 'rm -fr StatusAppFiles' + sh 'rm -f StatusIm.app.zip' } } diff --git a/ci/Jenkinsfile.nightly_desktop b/ci/Jenkinsfile.nightly_desktop index 4732eba8b0..723340c089 100644 --- a/ci/Jenkinsfile.nightly_desktop +++ b/ci/Jenkinsfile.nightly_desktop @@ -152,17 +152,25 @@ parallel( stage('Create MacOS Bundle') { dir(packageFolder) { - sh 'curl -L -O "https://github.com/status-im/StatusAppFiles/raw/master/StatusIm.app.zip"' + sh 'curl -L -O "https://github.com/gnl/StatusAppFiles/raw/master/StatusIm.app.zip"' sh 'unzip StatusIm.app.zip' - sh 'cp -r assets/share/assets StatusIm.app/Contents/MacOs' - sh 'chmod +x StatusIm.app/Contents/MacOs/ubuntu-server' - sh 'cp ../desktop/bin/StatusIm StatusIm.app/Contents/MacOs' + sh 'cp -r assets/share/assets StatusIm.app/Contents/Resources' + sh 'ln -sf ../Resources/assets ../Resources/ubuntu-server ../Resources/node_modules ' + + 'StatusIm.app/Contents/MacOS' + sh 'chmod +x StatusIm.app/Contents/Resources/ubuntu-server' + sh 'cp ../desktop/bin/StatusIm StatusIm.app/Contents/MacOS' + sh 'cp ../desktop/reportApp/reportApp StatusIm.app/Contents/MacOS' + sh 'cp -f ../deployment/macos/qt-reportApp.conf StatusIm.app/Contents/Resources' + sh 'ln -sf ../Resources/qt-reportApp.conf StatusIm.app/Contents/MacOS/qt.conf' + sh 'install_name_tool -add_rpath "@executable_path/../Frameworks" ' + + '-delete_rpath "/Users/administrator/qt/5.9.1/clang_64/lib" ' + + 'StatusIm.app/Contents/MacOS/reportApp' sh 'cp -f ../deployment/macos/Info.plist StatusIm.app/Contents' sh """ macdeployqt StatusIm.app -verbose=1 -dmg \\ -qmldir='${workspace}/node_modules/react-native/ReactQt/runtime/src/qml/' """ - sh 'rm -fr StatusAppFiles' + sh 'rm -f StatusIm.app.zip' dmg_file = "StatusIm-${commit}.dmg" sh "mv StatusIm.dmg ${dmg_file}" } diff --git a/ci/desktop.groovy b/ci/desktop.groovy index 9b6e5f29e2..3044185f2b 100644 --- a/ci/desktop.groovy +++ b/ci/desktop.groovy @@ -84,7 +84,7 @@ def prepDeps() { common.doGitRebase() cleanupAndDeps() } - + def compileLinux() { /* add path for QT installation binaries */ env.PATH = "${qtBin}:${env.PATH}" @@ -101,7 +101,7 @@ def compileLinux() { sh 'make' } } - + def bundleLinux(type = 'nightly') { def pkg @@ -179,20 +179,25 @@ def compileMacOS() { def bundleMacOS(type = 'nightly') { def pkg = common.pkgFilename(type, 'dmg') dir(packageFolder) { - sh 'git clone https://github.com/vkjr/StatusAppFiles.git' - sh 'unzip StatusAppFiles/StatusIm.app.zip' - sh 'cp -r assets/share/assets StatusIm.app/Contents/MacOs' - sh 'chmod +x StatusIm.app/Contents/MacOs/ubuntu-server' - sh 'cp ../desktop/bin/StatusIm StatusIm.app/Contents/MacOs' - sh 'cp ../desktop/reportApp/reportApp StatusIm.app/Contents/MacOs' - sh 'cp -f ../deployment/macos/qt.conf StatusIm.app/Contents/MacOs' - sh 'install_name_tool -add_rpath "@executable_path/../Frameworks" StatusIm.app/Contents/MacOs/reportApp' + sh 'curl -L -O "https://github.com/gnl/StatusAppFiles/raw/master/StatusIm.app.zip"' + sh 'unzip StatusIm.app.zip' + sh 'cp -r assets/share/assets StatusIm.app/Contents/Resources' + sh 'ln -sf ../Resources/assets ../Resources/ubuntu-server ../Resources/node_modules ' + + 'StatusIm.app/Contents/MacOS' + sh 'chmod +x StatusIm.app/Contents/Resources/ubuntu-server' + sh 'cp ../desktop/bin/StatusIm StatusIm.app/Contents/MacOS' + sh 'cp ../desktop/reportApp/reportApp StatusIm.app/Contents/MacOS' + sh 'cp -f ../deployment/macos/qt-reportApp.conf StatusIm.app/Contents/Resources' + sh 'ln -sf ../Resources/qt-reportApp.conf StatusIm.app/Contents/MacOS/qt.conf' + sh 'install_name_tool -add_rpath "@executable_path/../Frameworks" ' + + '-delete_rpath "/Users/administrator/qt/5.9.1/clang_64/lib" ' + + 'StatusIm.app/Contents/MacOS/reportApp' sh 'cp -f ../deployment/macos/Info.plist StatusIm.app/Contents' sh """ macdeployqt StatusIm.app -verbose=1 -dmg \\ -qmldir='${workspace}/node_modules/react-native/ReactQt/runtime/src/qml/' """ - sh 'rm -fr StatusAppFiles' + sh 'rm -f StatusIm.app.zip' sh "mv StatusIm.dmg ${pkg}" } return "${packageFolder}/${pkg}".drop(2) diff --git a/deployment/macos/qt.conf b/deployment/macos/qt-reportApp.conf similarity index 100% rename from deployment/macos/qt.conf rename to deployment/macos/qt-reportApp.conf