#!/usr/bin/bash printf " _ _____ \r\n" printf " ___| |_ __ _ _ __ ___ _ __ ___/__ \/ \ /\ \r\n" printf "/ __| __/ _\` | '_ \` _ \| '_ \` _ \ / /\/\ \ / / \r\n" printf "\__ \ || (_| | | | | | | | | | | / / \ V / \r\n" printf "|___/\__\__,_|_| |_| |_|_| |_| |_\/ \_/ \r\n" # Define paths BASE_DIR=base MANIFEST_DIR=chrome OUTPUT_DIR=out/artifacts/chrome OUTPUT_FILE=${OUTPUT_DIR}/extension.zip printf "Base dir: \t%s\r\n" "$BASE_DIR" printf "Manifest dir: \t%s\r\n" "$MANIFEST_DIR" printf "Output dir: \t%s\r\n" "$OUTPUT_DIR" printf "\r\n" # Create output directory, if not existing mkdir -p "${OUTPUT_DIR}" # Remove previous build, if existing [ -f ${OUTPUT_FILE} ] && rm -f ${OUTPUT_FILE} # Add base components to zip pushd ${BASE_DIR} 1> /dev/null || exit zip -r ../${OUTPUT_FILE} * 1> /dev/null popd 1> /dev/null || exit # Add firefox manifest to zip pushd ${MANIFEST_DIR} 1> /dev/null || exit zip ../${OUTPUT_FILE} manifest.json 1> /dev/null popd 1> /dev/null || exit # Feedback [ -f ${OUTPUT_FILE} ] && echo "✔ Successfully created $(file ${OUTPUT_FILE})" || echo "❌ Failed to build extension. See output printed above for more details."