#!/bin/bash set -e set +x if [[ ("$1" == "-h") || ("$1" == "--help") ]]; then echo "usage: $(basename $0) [output-absolute-path]" echo echo "Generate distributable .zip archive from ./checkout folder that was previously built." echo exit 0 fi ZIP_PATH=$1 if [[ $ZIP_PATH != /* ]]; then echo "ERROR: path $ZIP_PATH is not absolute" exit 1 fi if [[ $ZIP_PATH != *.zip ]]; then echo "ERROR: path $ZIP_PATH must have .zip extension" exit 1 fi if [[ -f $ZIP_PATH ]]; then echo "ERROR: path $ZIP_PATH exists; can't do anything." exit 1 fi if ! [[ -d $(dirname $ZIP_PATH) ]]; then echo "ERROR: folder for path $($ZIP_PATH) does not exist." exit 1 fi createZipForMac() { # create a TMP directory to copy all necessary files local tmpdir=$(mktemp -d) # copy all relevant files ditto {$SCRIPTS_DIR,$tmpdir}/pw_run.sh # copy protocol # zip resulting directory and cleanup TMP. ditto -c -k $tmpdir $ZIP_PATH rm -rf $tmpdir } trap "cd $(pwd -P)" EXIT cd "$(dirname "$0")" SCRIPTS_DIR="$(pwd -P)" createZipForMac