78 lines
2.1 KiB
Bash
Executable File
78 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
||
|
||
set -e
|
||
|
||
MODULE_NAME="oc_telegram_shop"
|
||
CURRENT_DIR="$(dirname "$0")"
|
||
|
||
echo "Current dir: ${CURRENT_DIR}"
|
||
composer --version
|
||
node -v
|
||
npm -v
|
||
|
||
SRC_PATH="$1"
|
||
BUILD_PATH="${CURRENT_DIR}/build"
|
||
|
||
echo "🔨 Starting build process..."
|
||
echo "ℹ️ Source path: ${SRC_PATH}"
|
||
echo "ℹ️ Build path: ${BUILD_PATH}"
|
||
|
||
if [ -z "$BUILD_PATH" ]; then
|
||
echo "❌ Error: BUILD_PATH is required"
|
||
exit 1
|
||
fi
|
||
|
||
if [ -z "$SRC_PATH" ]; then
|
||
echo "❌ Error: SRC_PATH is required"
|
||
exit 1
|
||
fi
|
||
|
||
echo "Build SPA..."
|
||
cd "${SRC_PATH}/spa"
|
||
npm install
|
||
npm run build
|
||
cd - > /dev/null
|
||
|
||
echo "Install Composer dependencies."
|
||
cd "${SRC_PATH}/module/oc_telegram_shop/upload/oc_telegram_shop"
|
||
composer install \
|
||
--prefer-dist \
|
||
--no-dev \
|
||
--optimize-autoloader \
|
||
--no-interaction \
|
||
--no-cache
|
||
cd - > /dev/null
|
||
|
||
echo "📜 Creating Phar archive..."
|
||
rm -rf \
|
||
"${SRC_PATH}/module/oc_telegram_shop/upload/oc_telegram_shop/tests" \
|
||
"${SRC_PATH}/module/oc_telegram_shop/upload/oc_telegram_shop/phpunit.xml" \
|
||
"${SRC_PATH}/module/oc_telegram_shop/upload/oc_telegram_shop/psalm.xml" \
|
||
"${SRC_PATH}/module/oc_telegram_shop/upload/oc_telegram_shop/psalm-classes.php" \
|
||
"${SRC_PATH}/module/oc_telegram_shop/upload/oc_telegram_shop/psalm-stubs.php"
|
||
|
||
php -d phar.readonly=0 scripts/ci/create-phar.php "${SRC_PATH}/module/oc_telegram_shop/upload/oc_telegram_shop" "${MODULE_NAME}.phar"
|
||
|
||
echo "📦 Packaging into .ocmod.zip..."
|
||
mkdir -p "${SRC_PATH}/module/oc_telegram_shop/upload/system/library/oc_telegram_shop"
|
||
mv "${MODULE_NAME}.phar" "${SRC_PATH}/module/oc_telegram_shop/upload/system/library/oc_telegram_shop"
|
||
|
||
rm -rf \
|
||
"${SRC_PATH}/module/oc_telegram_shop/upload/oc_telegram_shop"
|
||
|
||
cd "${SRC_PATH}/module/oc_telegram_shop/"
|
||
zip -rqq "${MODULE_NAME}.ocmod.zip" .
|
||
mv "${MODULE_NAME}.ocmod.zip" "${BUILD_PATH}"
|
||
|
||
FINAL_FILE="${BUILD_PATH}/${MODULE_NAME}.ocmod.zip"
|
||
|
||
if [ -f "$FINAL_FILE" ]; then
|
||
FILE_SIZE=$(du -h "$FINAL_FILE" | cut -f1)
|
||
echo -e "✅ Build completed successfully!"
|
||
echo -e "🎉 Created: $FINAL_FILE ($FILE_SIZE)"
|
||
else
|
||
echo "❌ Error: Final build file not found: $FINAL_FILE"
|
||
exit 1
|
||
fi
|
||
|
||
echo -e "🎯 Build artifact ready for installation!" |