Files
jhonny-editor/bm/premiere-pro-mcp-main/scripts/build-connector-installer.sh
T
João Henrique b541f502ba feat: initial commit - Jhonny Editor
- Adicionado estrutura completa do projeto
- Configurado MCP server para Premiere Pro
- Adicionado documentação e skills
- Configurado Gitignore para o projeto
2026-09-08 09:59:31 -04:00

46 lines
1.8 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
CONNECTOR_PACKAGE="${CONNECTOR_PACKAGE:-$PROJECT_DIR/artifacts/MCPBridgeCEP.zxp}"
OUTPUT_DIRECTORY="${OUTPUT_DIRECTORY:-$PROJECT_DIR/artifacts/connector-installers}"
REQUIRE_SIGNING="${REQUIRE_SIGNING:-false}"
VERSION="$(node -p "require('$PROJECT_DIR/package.json').version")"
if [[ ! -f "$CONNECTOR_PACKAGE" ]]; then
echo "Verified connector package not found: $CONNECTOR_PACKAGE" >&2
exit 1
fi
TEMP_ROOT="$(mktemp -d)"
trap 'rm -rf "$TEMP_ROOT"' EXIT
PAYLOAD_ROOT="$TEMP_ROOT/payload"
INSTALL_ROOT="$PAYLOAD_ROOT/Library/Application Support/Adobe/CEP/extensions/MCPBridgeCEP"
mkdir -p "$INSTALL_ROOT" "$OUTPUT_DIRECTORY"
ditto -x -k "$CONNECTOR_PACKAGE" "$INSTALL_ROOT"
if [[ ! -f "$INSTALL_ROOT/CSXS/manifest.xml" ]]; then
echo "Connector package is missing CSXS/manifest.xml" >&2
exit 1
fi
OUTPUT="$OUTPUT_DIRECTORY/Premiere-Connector-Setup-$VERSION-macos-universal.pkg"
UNINSTALLER="$OUTPUT_DIRECTORY/Premiere-Connector-Uninstall-$VERSION-macos.command"
ARGS=(--root "$PAYLOAD_ROOT" --identifier com.premieremcp.connector --version "$VERSION" --install-location /)
if [[ -n "${MAC_INSTALLER_IDENTITY:-}" ]]; then
ARGS+=(--sign "$MAC_INSTALLER_IDENTITY")
elif [[ "$REQUIRE_SIGNING" == "true" ]]; then
echo "Production macOS installer signing was required, but MAC_INSTALLER_IDENTITY is not configured." >&2
exit 1
fi
pkgbuild "${ARGS[@]}" "$OUTPUT"
cp "$PROJECT_DIR/scripts/uninstall-cep.sh" "$UNINSTALLER"
chmod +x "$UNINSTALLER"
pkgutil --check-signature "$OUTPUT" || {
if [[ "$REQUIRE_SIGNING" == "true" ]]; then exit 1; fi
echo "Preview artifact is unsigned and must not be published as a production installer." >&2
}
shasum -a 256 "$OUTPUT"
shasum -a 256 "$UNINSTALLER"