80 lines
2.1 KiB
Bash
Executable File
80 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Exit on error
|
|
set -e
|
|
|
|
# Check if version is provided
|
|
if [ -z "$1" ]; then
|
|
echo "Error: Please provide a version number. Example: ./build.sh 1.2"
|
|
exit 1
|
|
fi
|
|
|
|
VERSION=$1
|
|
PLUGIN_SLUG="wp-fix-plugin-does-not-exist-notices"
|
|
BUILD_DIR="build/$PLUGIN_SLUG"
|
|
ZIP_FILE="${PLUGIN_SLUG}-${VERSION}.zip"
|
|
|
|
# Create build directory
|
|
echo "Creating build directory..."
|
|
mkdir -p $BUILD_DIR
|
|
|
|
# Install composer dependencies
|
|
echo "Installing composer dependencies..."
|
|
composer install --no-dev --optimize-autoloader
|
|
|
|
# Copy required files
|
|
echo "Copying plugin files..."
|
|
cp wp-fix-plugin-does-not-exist-notices.php $BUILD_DIR/
|
|
cp readme.txt $BUILD_DIR/
|
|
cp LICENSE $BUILD_DIR/
|
|
cp README.md $BUILD_DIR/
|
|
cp CHANGELOG.md $BUILD_DIR/
|
|
cp composer.json $BUILD_DIR/
|
|
|
|
# Copy directories
|
|
echo "Copying directories..."
|
|
mkdir -p $BUILD_DIR/includes
|
|
cp -r includes/* $BUILD_DIR/includes/
|
|
mkdir -p $BUILD_DIR/languages
|
|
cp -r languages/* $BUILD_DIR/languages/
|
|
|
|
# Copy admin assets
|
|
mkdir -p $BUILD_DIR/admin/css
|
|
cp -r admin/css/* $BUILD_DIR/admin/css/
|
|
mkdir -p $BUILD_DIR/admin/js
|
|
cp -r admin/js/* $BUILD_DIR/admin/js/
|
|
mkdir -p $BUILD_DIR/admin/lib
|
|
cp -r admin/lib/* $BUILD_DIR/admin/lib/
|
|
|
|
# Create assets directory structure
|
|
mkdir -p $BUILD_DIR/assets
|
|
|
|
# Copy PNG files from .wordpress-org/assets to the build directory
|
|
mkdir -p $BUILD_DIR/assets/banner
|
|
cp -r .wordpress-org/assets/banner-*.png $BUILD_DIR/assets/banner/ 2>/dev/null || :
|
|
mkdir -p $BUILD_DIR/assets/icon
|
|
cp -r .wordpress-org/assets/icon-*.png $BUILD_DIR/assets/icon/ 2>/dev/null || :
|
|
mkdir -p $BUILD_DIR/assets/screenshots
|
|
cp -r .wordpress-org/assets/screenshot-*.png $BUILD_DIR/assets/screenshots/ 2>/dev/null || :
|
|
|
|
mkdir -p $BUILD_DIR/vendor
|
|
cp -r vendor/* $BUILD_DIR/vendor/
|
|
|
|
# Create ZIP file
|
|
echo "Creating ZIP file..."
|
|
cd build
|
|
zip -r ../$ZIP_FILE $PLUGIN_SLUG
|
|
cd ..
|
|
|
|
# Verify the ZIP file was created
|
|
if [ -f "$ZIP_FILE" ]; then
|
|
echo "✅ Build successful: $ZIP_FILE created"
|
|
echo "File path: $(pwd)/$ZIP_FILE"
|
|
|
|
# Deploy to local WordPress installation
|
|
echo "\nDeploying to local WordPress installation..."
|
|
./scripts/deploy-local.sh
|
|
else
|
|
echo "❌ Build failed: ZIP file was not created"
|
|
exit 1
|
|
fi |