mirror of
https://github.com/frappe/frappe_docker.git
synced 2024-12-23 10:38:58 +00:00
chore: Fix lint issues (#553)
* ci(Lint): Temporarily disable branch contraint * chore(erpnext-nginx): Fix linting * chore: Fix linting issues * ci(Lint): Add -x flag * ci(Lint): Fix push trigger * chore: Fix linting and formatting * fix: Gunicorn server start * chore(frappe-worker): Fix linting * chore(frappe-nginx): Fix linting * fix(erpnext-nginx): App installation * fix(erpnext-nginx): App installation * refactor(frappe-nginx): Use `find` instead of `ls`
This commit is contained in:
parent
358293afc9
commit
f74f730b5e
16
.github/scripts/get-latest-tags.sh
vendored
16
.github/scripts/get-latest-tags.sh
vendored
@ -4,7 +4,7 @@ set -e
|
|||||||
set -x
|
set -x
|
||||||
|
|
||||||
get_tag() {
|
get_tag() {
|
||||||
tags=$(git ls-remote --refs --tags --sort='v:refname' https://github.com/$1 "v$2.*")
|
tags=$(git ls-remote --refs --tags --sort='v:refname' "https://github.com/$1" "v$2.*")
|
||||||
tag=$(echo "$tags" | tail -n1 | sed 's/.*\///')
|
tag=$(echo "$tags" | tail -n1 | sed 's/.*\///')
|
||||||
echo "$tag"
|
echo "$tag"
|
||||||
}
|
}
|
||||||
@ -12,11 +12,9 @@ get_tag() {
|
|||||||
FRAPPE_VERSION=$(get_tag frappe/frappe "$VERSION")
|
FRAPPE_VERSION=$(get_tag frappe/frappe "$VERSION")
|
||||||
ERPNEXT_VERSION=$(get_tag frappe/erpnext "$VERSION")
|
ERPNEXT_VERSION=$(get_tag frappe/erpnext "$VERSION")
|
||||||
|
|
||||||
# shellcheck disable=SC2086
|
cat <<EOL >>"$GITHUB_ENV"
|
||||||
echo "FRAPPE_VERSION=$FRAPPE_VERSION" >>$GITHUB_ENV
|
FRAPPE_VERSION=$FRAPPE_VERSION
|
||||||
# shellcheck disable=SC2086
|
ERPNEXT_VERSION=$ERPNEXT_VERSION
|
||||||
echo "ERPNEXT_VERSION=$ERPNEXT_VERSION" >>$GITHUB_ENV
|
GIT_BRANCH=version-$VERSION
|
||||||
# shellcheck disable=SC2086
|
VERSION=$VERSION
|
||||||
echo "GIT_BRANCH=version-$VERSION" >>$GITHUB_ENV
|
EOL
|
||||||
# shellcheck disable=SC2086
|
|
||||||
echo "VERSION=$VERSION" >>$GITHUB_ENV
|
|
||||||
|
2
.github/workflows/lint.yml
vendored
2
.github/workflows/lint.yml
vendored
@ -14,3 +14,5 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: ludeeus/action-shellcheck@master
|
- uses: ludeeus/action-shellcheck@master
|
||||||
|
env:
|
||||||
|
SHELLCHECK_OPTS: -x
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
APP_NAME=${1}
|
APP_NAME=${1}
|
||||||
APP_REPO=${2}
|
APP_REPO=${2}
|
||||||
APP_BRANCH=${3}
|
APP_BRANCH=${3}
|
||||||
@ -13,26 +15,29 @@ echo -ne "frappe\n${APP_NAME}" >/home/frappe/frappe-bench/sites/apps.txt
|
|||||||
|
|
||||||
mkdir -p apps
|
mkdir -p apps
|
||||||
cd apps
|
cd apps
|
||||||
git clone --depth 1 https://github.com/frappe/frappe -b ${FRAPPE_BRANCH}
|
git clone --depth 1 https://github.com/frappe/frappe -b "${FRAPPE_BRANCH}"
|
||||||
git clone --depth 1 ${APP_REPO} ${BRANCH} ${APP_NAME}
|
# shellcheck disable=SC2086
|
||||||
|
git clone --depth 1 "${APP_REPO}" ${BRANCH} "${APP_NAME}"
|
||||||
|
|
||||||
echo "Install frappe NodeJS dependencies . . ."
|
echo "Install frappe NodeJS dependencies . . ."
|
||||||
cd /home/frappe/frappe-bench/apps/frappe
|
cd /home/frappe/frappe-bench/apps/frappe
|
||||||
yarn
|
yarn
|
||||||
echo "Install ${APP_NAME} NodeJS dependencies . . ."
|
echo "Install ${APP_NAME} NodeJS dependencies . . ."
|
||||||
cd /home/frappe/frappe-bench/apps/${APP_NAME}
|
cd "/home/frappe/frappe-bench/apps/${APP_NAME}"
|
||||||
yarn
|
yarn
|
||||||
echo "Build browser assets . . ."
|
echo "Build browser assets . . ."
|
||||||
cd /home/frappe/frappe-bench/apps/frappe
|
cd /home/frappe/frappe-bench/apps/frappe
|
||||||
yarn production --app ${APP_NAME}
|
yarn production --app "${APP_NAME}"
|
||||||
echo "Install frappe NodeJS production dependencies . . ."
|
echo "Install frappe NodeJS production dependencies . . ."
|
||||||
cd /home/frappe/frappe-bench/apps/frappe
|
cd /home/frappe/frappe-bench/apps/frappe
|
||||||
yarn install --production=true
|
yarn install --production=true
|
||||||
echo "Install ${APP_NAME} NodeJS production dependencies . . ."
|
echo "Install ${APP_NAME} NodeJS production dependencies . . ."
|
||||||
cd /home/frappe/frappe-bench/apps/${APP_NAME}
|
cd "/home/frappe/frappe-bench/apps/${APP_NAME}"
|
||||||
yarn install --production=true
|
yarn install --production=true
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086
|
||||||
mkdir -p /home/frappe/frappe-bench/sites/assets/${APP_NAME}
|
mkdir -p /home/frappe/frappe-bench/sites/assets/${APP_NAME}
|
||||||
|
# shellcheck disable=SC2086
|
||||||
cp -R /home/frappe/frappe-bench/apps/${APP_NAME}/${APP_NAME}/public/* /home/frappe/frappe-bench/sites/assets/${APP_NAME}
|
cp -R /home/frappe/frappe-bench/apps/${APP_NAME}/${APP_NAME}/public/* /home/frappe/frappe-bench/sites/assets/${APP_NAME}
|
||||||
|
|
||||||
# Add frappe and all the apps available under in frappe-bench here
|
# Add frappe and all the apps available under in frappe-bench here
|
||||||
|
@ -8,7 +8,7 @@ rsync -a --delete /var/www/html/assets/* /assets
|
|||||||
|
|
||||||
/rsync
|
/rsync
|
||||||
|
|
||||||
touch /var/www/html/sites/.build -r "$(ls -td /assets/* | head -n 1)"
|
touch /var/www/html/sites/.build -r "$(find /assets -maxdepth 1 -name "*.*" | head -n 1)"
|
||||||
|
|
||||||
[[ -z "${FRAPPE_PY}" ]] && FRAPPE_PY='0.0.0.0'
|
[[ -z "${FRAPPE_PY}" ]] && FRAPPE_PY='0.0.0.0'
|
||||||
|
|
||||||
@ -36,6 +36,7 @@ if [[ ${SKIP_NGINX_TEMPLATE_GENERATION} == 1 ]]; then
|
|||||||
echo "Skipping default NGINX template generation. Please mount your own NGINX config file inside /etc/nginx/conf.d"
|
echo "Skipping default NGINX template generation. Please mount your own NGINX config file inside /etc/nginx/conf.d"
|
||||||
else
|
else
|
||||||
echo "Generating default template"
|
echo "Generating default template"
|
||||||
|
# shellcheck disable=SC2016
|
||||||
envsubst '${FRAPPE_PY}
|
envsubst '${FRAPPE_PY}
|
||||||
${FRAPPE_PY_PORT}
|
${FRAPPE_PY_PORT}
|
||||||
${FRAPPE_SOCKETIO}
|
${FRAPPE_SOCKETIO}
|
||||||
@ -50,9 +51,11 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Waiting for frappe-python to be available on ${FRAPPE_PY} port ${FRAPPE_PY_PORT}"
|
echo "Waiting for frappe-python to be available on ${FRAPPE_PY} port ${FRAPPE_PY_PORT}"
|
||||||
|
# shellcheck disable=SC2016
|
||||||
timeout 10 bash -c 'until printf "" 2>>/dev/null >>/dev/tcp/$0/$1; do sleep 1; done' ${FRAPPE_PY} ${FRAPPE_PY_PORT}
|
timeout 10 bash -c 'until printf "" 2>>/dev/null >>/dev/tcp/$0/$1; do sleep 1; done' ${FRAPPE_PY} ${FRAPPE_PY_PORT}
|
||||||
echo "Frappe-python available on ${FRAPPE_PY} port ${FRAPPE_PY_PORT}"
|
echo "Frappe-python available on ${FRAPPE_PY} port ${FRAPPE_PY_PORT}"
|
||||||
echo "Waiting for frappe-socketio to be available on ${FRAPPE_SOCKETIO} port ${SOCKETIO_PORT}"
|
echo "Waiting for frappe-socketio to be available on ${FRAPPE_SOCKETIO} port ${SOCKETIO_PORT}"
|
||||||
|
# shellcheck disable=SC2016
|
||||||
timeout 10 bash -c 'until printf "" 2>>/dev/null >>/dev/tcp/$0/$1; do sleep 1; done' ${FRAPPE_SOCKETIO} ${SOCKETIO_PORT}
|
timeout 10 bash -c 'until printf "" 2>>/dev/null >>/dev/tcp/$0/$1; do sleep 1; done' ${FRAPPE_SOCKETIO} ${SOCKETIO_PORT}
|
||||||
echo "Frappe-socketio available on ${FRAPPE_SOCKETIO} port ${SOCKETIO_PORT}"
|
echo "Frappe-socketio available on ${FRAPPE_SOCKETIO} port ${SOCKETIO_PORT}"
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@ function configureEnv() {
|
|||||||
|
|
||||||
export DB_HOST="${MARIADB_HOST:-$POSTGRES_HOST}"
|
export DB_HOST="${MARIADB_HOST:-$POSTGRES_HOST}"
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
envsubst '${DB_HOST}
|
envsubst '${DB_HOST}
|
||||||
${DB_PORT}
|
${DB_PORT}
|
||||||
${REDIS_CACHE}
|
${REDIS_CACHE}
|
||||||
@ -72,120 +73,121 @@ ln -sfn /home/frappe/frappe-bench/sites/assets/frappe/node_modules \
|
|||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
|
|
||||||
start)
|
start)
|
||||||
configureEnv
|
configureEnv
|
||||||
checkConnection
|
checkConnection
|
||||||
|
|
||||||
[[ -z "${WORKERS}" ]] && WORKERS='2'
|
[[ -z "${WORKERS}" ]] && WORKERS='2'
|
||||||
|
|
||||||
[[ -z "${FRAPPE_PORT}" ]] && FRAPPE_PORT='8000'
|
[[ -z "${FRAPPE_PORT}" ]] && FRAPPE_PORT='8000'
|
||||||
|
|
||||||
[[ -z "${WORKER_CLASS}" ]] && WORKER_CLASS='gthread'
|
[[ -z "${WORKER_CLASS}" ]] && WORKER_CLASS='gthread'
|
||||||
|
|
||||||
LOAD_CONFIG_FILE=""
|
LOAD_CONFIG_FILE=""
|
||||||
[[ "${WORKER_CLASS}" == "gevent" ]] &&
|
[[ "${WORKER_CLASS}" == "gevent" ]] &&
|
||||||
LOAD_CONFIG_FILE="-c /home/frappe/frappe-bench/commands/gevent_patch.py"
|
LOAD_CONFIG_FILE="-c /home/frappe/frappe-bench/commands/gevent_patch.py"
|
||||||
|
|
||||||
if [[ -n "${AUTO_MIGRATE}" ]]; then
|
if [[ -n "${AUTO_MIGRATE}" ]]; then
|
||||||
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/auto_migrate.py
|
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/auto_migrate.py
|
||||||
fi
|
fi
|
||||||
|
|
||||||
/home/frappe/frappe-bench/env/bin/gunicorn ${LOAD_CONFIG_FILE} -b 0.0.0.0:${FRAPPE_PORT} \
|
# shellcheck disable=SC2086
|
||||||
--worker-tmp-dir /dev/shm \
|
/home/frappe/frappe-bench/env/bin/gunicorn ${LOAD_CONFIG_FILE} -b 0.0.0.0:${FRAPPE_PORT} \
|
||||||
--threads=4 \
|
--worker-tmp-dir /dev/shm \
|
||||||
--workers ${WORKERS} \
|
--threads=4 \
|
||||||
--worker-class=${WORKER_CLASS} \
|
--workers ${WORKERS} \
|
||||||
--log-file=- \
|
--worker-class=${WORKER_CLASS} \
|
||||||
-t 120 frappe.app:application --preload
|
--log-file=- \
|
||||||
;;
|
-t 120 frappe.app:application --preload
|
||||||
|
;;
|
||||||
|
|
||||||
worker)
|
worker)
|
||||||
checkConfigExists
|
checkConfigExists
|
||||||
checkConnection
|
checkConnection
|
||||||
|
|
||||||
: "${WORKER_TYPE:=default}"
|
: "${WORKER_TYPE:=default}"
|
||||||
bench worker --queue $WORKER_TYPE
|
bench worker --queue $WORKER_TYPE
|
||||||
;;
|
;;
|
||||||
|
|
||||||
schedule)
|
schedule)
|
||||||
checkConfigExists
|
checkConfigExists
|
||||||
checkConnection
|
checkConnection
|
||||||
|
|
||||||
bench schedule
|
bench schedule
|
||||||
;;
|
;;
|
||||||
|
|
||||||
new)
|
new)
|
||||||
checkConfigExists
|
checkConfigExists
|
||||||
checkConnection
|
checkConnection
|
||||||
|
|
||||||
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/new.py
|
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/new.py
|
||||||
exit
|
exit
|
||||||
;;
|
;;
|
||||||
|
|
||||||
drop)
|
drop)
|
||||||
checkConfigExists
|
checkConfigExists
|
||||||
checkConnection
|
checkConnection
|
||||||
|
|
||||||
: "${SITE_NAME:=site1.localhost}"
|
: "${SITE_NAME:=site1.localhost}"
|
||||||
: "${DB_ROOT_USER:=root}"
|
: "${DB_ROOT_USER:=root}"
|
||||||
: "${DB_ROOT_PASSWORD:=$POSTGRES_PASSWORD}"
|
: "${DB_ROOT_PASSWORD:=$POSTGRES_PASSWORD}"
|
||||||
: "${DB_ROOT_PASSWORD:=$MYSQL_ROOT_PASSWORD}"
|
: "${DB_ROOT_PASSWORD:=$MYSQL_ROOT_PASSWORD}"
|
||||||
: "${DB_ROOT_PASSWORD:=admin}"
|
: "${DB_ROOT_PASSWORD:=admin}"
|
||||||
if [[ -n $NO_BACKUP ]]; then
|
if [[ -n $NO_BACKUP ]]; then
|
||||||
NO_BACKUP=--no-backup
|
NO_BACKUP=--no-backup
|
||||||
fi
|
fi
|
||||||
if [[ -n $FORCE ]]; then
|
if [[ -n $FORCE ]]; then
|
||||||
FORCE=--force
|
FORCE=--force
|
||||||
fi
|
fi
|
||||||
|
|
||||||
bench drop-site \
|
bench drop-site \
|
||||||
$SITE_NAME \
|
$SITE_NAME \
|
||||||
--root-login $DB_ROOT_USER \
|
--root-login $DB_ROOT_USER \
|
||||||
--root-password $DB_ROOT_PASSWORD \
|
--root-password $DB_ROOT_PASSWORD \
|
||||||
--archived-sites-path /home/frappe/frappe-bench/sites/archive_sites \
|
--archived-sites-path /home/frappe/frappe-bench/sites/archive_sites \
|
||||||
$NO_BACKUP $FORCE
|
$NO_BACKUP $FORCE
|
||||||
;;
|
;;
|
||||||
|
|
||||||
migrate)
|
migrate)
|
||||||
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/migrate.py
|
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/migrate.py
|
||||||
exit
|
exit
|
||||||
;;
|
;;
|
||||||
|
|
||||||
doctor)
|
doctor)
|
||||||
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/doctor.py "${@:2}"
|
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/doctor.py "${@:2}"
|
||||||
exit
|
exit
|
||||||
;;
|
;;
|
||||||
|
|
||||||
backup)
|
backup)
|
||||||
if [[ -n $WITH_FILES ]]; then
|
if [[ -n $WITH_FILES ]]; then
|
||||||
WITH_FILES=--with-files
|
WITH_FILES=--with-files
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for site in ${$SITES//:/ }; do
|
for site in ${SITES//:/ }; do
|
||||||
bench --site $site backup $WITH_FILES
|
bench --site "$site" backup $WITH_FILES
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
|
||||||
console)
|
console)
|
||||||
if [[ -z "$2" ]]; then
|
if [[ -z "$2" ]]; then
|
||||||
echo "Need to specify a sitename with the command:" >&2
|
echo "Need to specify a sitename with the command:" >&2
|
||||||
echo "console <sitename>" >&2
|
echo "console <sitename>" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
bench --site "$2" console
|
bench --site "$2" console
|
||||||
;;
|
;;
|
||||||
|
|
||||||
push-backup)
|
push-backup)
|
||||||
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/push_backup.py
|
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/push_backup.py
|
||||||
exit
|
exit
|
||||||
;;
|
;;
|
||||||
|
|
||||||
restore-backup)
|
restore-backup)
|
||||||
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/restore_backup.py
|
/home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/commands/restore_backup.py
|
||||||
exit
|
exit
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
exec "$@"
|
exec "$@"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
@ -17,17 +17,17 @@ fi
|
|||||||
# Set REDIS host:port
|
# Set REDIS host:port
|
||||||
REDIS_CACHE=$(getUrl "${COMMON_SITE_CONFIG_JSON}" "redis_cache" | sed 's|redis://||g')
|
REDIS_CACHE=$(getUrl "${COMMON_SITE_CONFIG_JSON}" "redis_cache" | sed 's|redis://||g')
|
||||||
if [[ "${REDIS_CACHE}" == *"/"* ]]; then
|
if [[ "${REDIS_CACHE}" == *"/"* ]]; then
|
||||||
REDIS_CACHE=$(echo ${REDIS_CACHE} | cut -f1 -d"/")
|
REDIS_CACHE=$(echo "${REDIS_CACHE}" | cut -f1 -d"/")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
REDIS_QUEUE=$(getUrl "${COMMON_SITE_CONFIG_JSON}" "redis_queue" | sed 's|redis://||g')
|
REDIS_QUEUE=$(getUrl "${COMMON_SITE_CONFIG_JSON}" "redis_queue" | sed 's|redis://||g')
|
||||||
if [[ "${REDIS_QUEUE}" == *"/"* ]]; then
|
if [[ "${REDIS_QUEUE}" == *"/"* ]]; then
|
||||||
REDIS_QUEUE=$(echo ${REDIS_QUEUE} | cut -f1 -d"/")
|
REDIS_QUEUE=$(echo "${REDIS_QUEUE}" | cut -f1 -d"/")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
REDIS_SOCKETIO=$(getUrl "${COMMON_SITE_CONFIG_JSON}" "redis_socketio" | sed 's|redis://||g')
|
REDIS_SOCKETIO=$(getUrl "${COMMON_SITE_CONFIG_JSON}" "redis_socketio" | sed 's|redis://||g')
|
||||||
if [[ "${REDIS_SOCKETIO}" == *"/"* ]]; then
|
if [[ "${REDIS_SOCKETIO}" == *"/"* ]]; then
|
||||||
REDIS_SOCKETIO=$(echo ${REDIS_SOCKETIO} | cut -f1 -d"/")
|
REDIS_SOCKETIO=$(echo "${REDIS_SOCKETIO}" | cut -f1 -d"/")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Check ${DB_HOST}:${DB_PORT}"
|
echo "Check ${DB_HOST}:${DB_PORT}"
|
||||||
|
@ -6,5 +6,6 @@ APP_BRANCH=${3}
|
|||||||
|
|
||||||
[[ -n "${APP_BRANCH}" ]] && BRANCH="-b ${APP_BRANCH}"
|
[[ -n "${APP_BRANCH}" ]] && BRANCH="-b ${APP_BRANCH}"
|
||||||
|
|
||||||
git clone --depth 1 -o upstream ${APP_REPO} ${BRANCH} /home/frappe/frappe-bench/apps/${APP_NAME}
|
# shellcheck disable=SC2086
|
||||||
/home/frappe/frappe-bench/env/bin/pip3 install --no-cache-dir -e /home/frappe/frappe-bench/apps/${APP_NAME}
|
git clone --depth 1 -o upstream "${APP_REPO}" ${BRANCH} "/home/frappe/frappe-bench/apps/${APP_NAME}"
|
||||||
|
/home/frappe/frappe-bench/env/bin/pip3 install --no-cache-dir -e "/home/frappe/frappe-bench/apps/${APP_NAME}"
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# shellcheck source=functions.sh
|
|
||||||
source tests/functions.sh
|
source tests/functions.sh
|
||||||
|
|
||||||
project_name=frappe_bench_00
|
project_name=frappe_bench_00
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# shellcheck source=functions.sh
|
|
||||||
source tests/functions.sh
|
source tests/functions.sh
|
||||||
|
|
||||||
project_name="test_erpnext"
|
project_name="test_erpnext"
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# shellcheck source=functions.sh
|
|
||||||
source tests/functions.sh
|
source tests/functions.sh
|
||||||
|
|
||||||
project_name="test_frappe"
|
project_name="test_frappe"
|
||||||
|
Loading…
Reference in New Issue
Block a user