| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- hr() {
- echo "───────────────────────────────────────────────────"
- echo $1
- echo "───────────────────────────────────────────────────"
- }
- # Exit if something fails
- set -e
- # Generate file name variables
- export GIT_HASH=$(git rev-parse --short HEAD)
- export FILE_DATE=$(date +%Y-%m-%d.%H:%M:%S)
- export FILENAME=$FILE_DATE-$GIT_HASH-$TRAVIS_BRANCH-osx.pkg
- cd ./build
- # Move obslua
- hr "Moving OBS LUA"
- mv ./rundir/RelWithDebInfo/data/obs-scripting/obslua.so ./rundir/RelWithDebInfo/bin/
- # Move obspython
- # hr "Moving OBS Python"
- # mv ./rundir/RelWithDebInfo/data/obs-scripting/_obspython.so ./rundir/RelWithDebInfo/bin/
- # mv ./rundir/RelWithDebInfo/data/obs-scripting/obspython.py ./rundir/RelWithDebInfo/bin/
- # Package everything into a nice .app
- hr "Packaging .app"
- STABLE=false
- if [ -n "${TRAVIS_TAG}" ]; then
- STABLE=true
- fi
- sudo python ../CI/install/osx/build_app.py --public-key ../CI/install/osx/OBSPublicDSAKey.pem --sparkle-framework ../../sparkle/Sparkle.framework --stable=$STABLE
- # Copy Chromium embedded framework to app Frameworks directory
- hr "Copying Chromium Embedded Framework.framework"
- sudo mkdir -p OBS.app/Contents/Frameworks
- sudo cp -r ../../cef_binary_${CEF_BUILD_VERSION}_macosx64/Release/Chromium\ Embedded\ Framework.framework OBS.app/Contents/Frameworks/
- sudo install_name_tool -change \
- @rpath/Frameworks/Chromium\ Embedded\ Framework.framework/Chromium\ Embedded\ Framework \
- ../../Frameworks/Chromium\ Embedded\ Framework.framework/Chromium\ Embedded\ Framework \
- OBS.app/Contents/Resources/obs-plugins/obs-browser.so
- sudo install_name_tool -change \
- @rpath/Frameworks/Chromium\ Embedded\ Framework.framework/Chromium\ Embedded\ Framework \
- ../../Frameworks/Chromium\ Embedded\ Framework.framework/Chromium\ Embedded\ Framework \
- OBS.app/Contents/Resources/obs-plugins/obs-browser-page
- # Package app
- hr "Generating .pkg"
- packagesbuild ../CI/install/osx/CMakeLists.pkgproj
- # Signing stuff
- hr "Decrypting Cert"
- openssl aes-256-cbc -K $encrypted_dd3c7f5e9db9_key -iv $encrypted_dd3c7f5e9db9_iv -in ../CI/osxcert/Certificates.p12.enc -out Certificates.p12 -d
- hr "Creating Keychain"
- security create-keychain -p mysecretpassword build.keychain
- security default-keychain -s build.keychain
- security unlock-keychain -p mysecretpassword build.keychain
- security set-keychain-settings -t 3600 -u build.keychain
- hr "Importing certs into keychain"
- security import ./Certificates.p12 -k build.keychain -T /usr/bin/productsign -P ""
- # macOS 10.12+
- security set-key-partition-list -S apple-tool:,apple: -s -k mysecretpassword build.keychain
- hr "Signing Package"
- productsign --sign 2MMRE5MTB8 ./OBS.pkg ./$FILENAME
- # Move to the folder that travis uses to upload artifacts from
- hr "Moving package to nightly folder for distribution"
- mkdir ../nightly
- sudo mv ./$FILENAME ../nightly
|