50 lines
1.3 KiB
Bash
Executable File
50 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
DEPLOY_DIR="${1:-"${ROOT_DIR}/build/deploy"}"
|
|
|
|
rm -rf "${DEPLOY_DIR}"
|
|
mkdir -p "${DEPLOY_DIR}"
|
|
|
|
copy_path() {
|
|
local source="$1"
|
|
|
|
if [ -e "${ROOT_DIR}/${source}" ]; then
|
|
mkdir -p "${DEPLOY_DIR}/$(dirname "${source}")"
|
|
cp -a "${ROOT_DIR}/${source}" "${DEPLOY_DIR}/${source}"
|
|
fi
|
|
}
|
|
|
|
# CodeIgniter application/runtime entry points.
|
|
copy_path app
|
|
copy_path bootstrap
|
|
copy_path public
|
|
copy_path routes
|
|
copy_path vendor
|
|
copy_path composer.json
|
|
copy_path composer.lock
|
|
copy_path spark
|
|
copy_path preload.php
|
|
|
|
# Writable should exist on the server, but deploy only safe skeleton files.
|
|
mkdir -p \
|
|
"${DEPLOY_DIR}/writable/cache" \
|
|
"${DEPLOY_DIR}/writable/debugbar" \
|
|
"${DEPLOY_DIR}/writable/logs" \
|
|
"${DEPLOY_DIR}/writable/reports" \
|
|
"${DEPLOY_DIR}/writable/session" \
|
|
"${DEPLOY_DIR}/writable/uploads"
|
|
|
|
copy_path writable/.htaccess
|
|
copy_path writable/index.html
|
|
copy_path writable/.gitkeep
|
|
copy_path writable/cache/.gitkeep
|
|
copy_path writable/debugbar/.gitkeep
|
|
copy_path writable/logs/.gitkeep
|
|
copy_path writable/session/.gitkeep
|
|
copy_path writable/uploads/.gitkeep
|
|
copy_path writable/tcpdf_fonts
|
|
|
|
find "${DEPLOY_DIR}" -name '.DS_Store' -delete
|