#!/usr/bin/bash printf ' __ ___\r\n' printf '(__|_ _.._ _ ._ _ |\ /\r\n' printf '__)|_(_|| | || | || \/\r\n' # Define paths BASE_DIR=base MANIFEST_DIR=firefox OUTPUT_DIR=out/artifacts/firefox 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."