2016-03-14 10:26:59 +00:00
|
|
|
########################################################################
|
|
|
|
#
|
|
|
|
# pgAdmin 4 - PostgreSQL Tools
|
|
|
|
#
|
2025-01-01 11:26:42 +05:30
|
|
|
# Copyright (C) 2013 - 2025, The pgAdmin Development Team
|
2016-03-14 10:26:59 +00:00
|
|
|
# This software is released under the PostgreSQL Licence
|
|
|
|
#
|
|
|
|
#########################################################################
|
|
|
|
|
|
|
|
SHELL = /bin/sh
|
|
|
|
|
2024-02-09 16:25:03 +05:30
|
|
|
APP_NAME := $(shell grep ^APP_NAME web/branding.py | awk -F"=" '{print $$NF}' | tr -d '[:space:]' | tr -d "'" | awk '{print tolower($$0)}')
|
|
|
|
APP_RELEASE := $(shell grep ^APP_RELEASE web/version.py | awk -F"=" '{print $$NF}' | tr -d '[:space:]')
|
|
|
|
APP_REVISION := $(shell grep ^APP_REVISION web/version.py | awk -F"=" '{print $$NF}' | tr -d '[:space:]')
|
2019-09-19 09:58:44 +01:00
|
|
|
|
2016-03-14 10:26:59 +00:00
|
|
|
#########################################################################
|
|
|
|
# High-level targets
|
|
|
|
#########################################################################
|
|
|
|
|
2016-06-03 10:56:53 +01:00
|
|
|
# Include only platform-independent builds in all
|
2023-04-03 15:09:11 +01:00
|
|
|
all: docs pip src
|
2016-03-14 10:26:59 +00:00
|
|
|
|
2021-01-29 13:38:27 +05:30
|
|
|
appbundle:
|
2016-06-02 13:56:56 +01:00
|
|
|
./pkg/mac/build.sh
|
|
|
|
|
2017-06-23 09:23:31 +01:00
|
|
|
install-node:
|
2023-04-03 15:18:46 +01:00
|
|
|
cd web && yarn install
|
|
|
|
|
|
|
|
install-python:
|
|
|
|
./tools/setup-python-env.sh
|
|
|
|
|
|
|
|
install-python-testing:
|
|
|
|
./tools/setup-python-env.sh --test
|
2017-06-23 09:23:31 +01:00
|
|
|
|
2017-07-06 13:02:43 +01:00
|
|
|
bundle:
|
|
|
|
cd web && yarn run bundle
|
2017-06-14 14:11:51 +01:00
|
|
|
|
2017-09-13 09:47:01 +01:00
|
|
|
bundle-dev:
|
|
|
|
cd web && yarn run bundle:dev
|
|
|
|
|
2017-07-06 13:02:43 +01:00
|
|
|
linter:
|
|
|
|
cd web && yarn run linter
|
2017-06-14 14:11:51 +01:00
|
|
|
|
2019-05-15 10:03:29 +01:00
|
|
|
check: install-node bundle linter check-pep8
|
2023-10-23 17:43:17 +05:30
|
|
|
cd web && yarn run test:js-once && python regression/runtests.py
|
2017-06-14 14:11:51 +01:00
|
|
|
|
2019-08-02 14:05:09 +01:00
|
|
|
check-audit:
|
|
|
|
cd web && yarn run audit
|
|
|
|
|
|
|
|
check-auditjs:
|
2020-02-28 17:29:32 +05:30
|
|
|
# Commented the below line to avoid vulnerability in decompress package and
|
|
|
|
# audit only dependencies folder. Refer https://www.npmjs.com/advisories/1217.
|
|
|
|
# Pull request is already been send https://github.com/kevva/decompress/pull/73,
|
|
|
|
# once fixed we will uncomment it.
|
|
|
|
# cd web && yarn run auditjs
|
|
|
|
cd web && yarn run auditjs --groups dependencies
|
2019-08-02 14:05:09 +01:00
|
|
|
|
|
|
|
check-auditjs-html:
|
|
|
|
cd web && yarn run auditjs-html
|
|
|
|
|
|
|
|
check-auditpy:
|
|
|
|
cd web && yarn run auditpy
|
|
|
|
|
2018-01-29 12:45:32 +00:00
|
|
|
check-pep8:
|
2019-03-20 11:17:51 +00:00
|
|
|
pycodestyle --config=.pycodestyle docs/
|
|
|
|
pycodestyle --config=.pycodestyle pkg/
|
|
|
|
pycodestyle --config=.pycodestyle web/
|
|
|
|
pycodestyle --config=.pycodestyle tools/
|
2018-01-29 12:45:32 +00:00
|
|
|
|
2017-11-16 12:01:22 +00:00
|
|
|
check-python:
|
2017-07-06 13:02:43 +01:00
|
|
|
cd web && python regression/runtests.py --exclude feature_tests
|
|
|
|
|
2019-06-18 14:28:25 +01:00
|
|
|
check-resql:
|
|
|
|
cd web && python regression/runtests.py --pkg resql --exclude feature_tests
|
|
|
|
|
2018-04-30 17:15:44 +01:00
|
|
|
check-feature: install-node bundle
|
2017-07-06 13:02:43 +01:00
|
|
|
cd web && python regression/runtests.py --pkg feature_tests
|
|
|
|
|
|
|
|
check-js: install-node linter
|
2023-10-23 17:43:17 +05:30
|
|
|
cd web && yarn run test:js-once
|
2017-03-25 16:54:40 -04:00
|
|
|
|
2020-08-07 16:36:48 +05:30
|
|
|
check-js-coverage:
|
2023-10-23 17:43:17 +05:30
|
|
|
cd web && yarn run test:js-coverage
|
2020-08-07 16:36:48 +05:30
|
|
|
|
2017-04-18 15:05:32 +01:00
|
|
|
# Include all clean sub-targets in clean
|
2023-03-22 15:34:07 +00:00
|
|
|
clean: clean-appbundle clean-debian clean-dist clean-docs clean-node clean-pip clean-redhat clean-src
|
2018-04-30 16:13:43 +01:00
|
|
|
rm -rf web/pgadmin/static/js/generated/*
|
|
|
|
rm -rf web/pgadmin/static/js/generated/.cache
|
|
|
|
rm -rf web/pgadmin/static/css/generated/*
|
|
|
|
rm -rf web/pgadmin/static/css/generated/.cache
|
2018-03-22 11:19:42 +00:00
|
|
|
|
2017-04-18 15:05:32 +01:00
|
|
|
clean-appbundle:
|
|
|
|
rm -rf mac-build/
|
2017-04-05 13:27:32 +01:00
|
|
|
|
2020-03-12 15:22:23 +00:00
|
|
|
clean-debian:
|
|
|
|
rm -rf debian-build/
|
|
|
|
|
2017-04-18 15:05:32 +01:00
|
|
|
clean-dist:
|
|
|
|
rm -rf dist/
|
2017-04-05 13:27:32 +01:00
|
|
|
|
2017-04-18 15:05:32 +01:00
|
|
|
clean-docs:
|
|
|
|
LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 $(MAKE) -C docs/en_US -f Makefile.sphinx clean
|
2016-06-02 13:56:56 +01:00
|
|
|
|
2018-04-10 11:15:57 +01:00
|
|
|
clean-node:
|
|
|
|
rm -rf web/node-modules/
|
|
|
|
|
2016-03-14 10:26:59 +00:00
|
|
|
clean-pip:
|
2016-06-15 17:09:05 +01:00
|
|
|
rm -rf pip-build/
|
2016-06-02 13:56:56 +01:00
|
|
|
|
2020-03-18 08:51:11 -04:00
|
|
|
clean-redhat:
|
|
|
|
rm -rf redhat-build/
|
|
|
|
|
2016-06-03 10:56:53 +01:00
|
|
|
clean-src:
|
2016-06-15 17:09:05 +01:00
|
|
|
rm -rf src-build/
|
|
|
|
|
2020-03-12 15:22:23 +00:00
|
|
|
debian:
|
2020-03-18 08:51:11 -04:00
|
|
|
./pkg/debian/build.sh
|
2020-03-12 15:22:23 +00:00
|
|
|
|
2017-09-21 16:49:37 +01:00
|
|
|
docker:
|
2019-09-19 09:58:44 +01:00
|
|
|
echo $(APP_NAME)
|
2024-06-27 18:03:10 +05:30
|
|
|
git checkout HEAD
|
2022-05-13 13:55:41 +01:00
|
|
|
docker build --pull -t ${APP_NAME} -t $(APP_NAME):latest -t $(APP_NAME):$(APP_RELEASE) -t $(APP_NAME):$(APP_RELEASE).$(APP_REVISION) .
|
2017-09-21 16:49:37 +01:00
|
|
|
|
2017-04-18 15:05:32 +01:00
|
|
|
docs:
|
|
|
|
LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 $(MAKE) -C docs/en_US -f Makefile.sphinx html
|
2016-06-03 10:56:53 +01:00
|
|
|
|
2017-10-11 14:57:58 +01:00
|
|
|
docs-pdf:
|
|
|
|
LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 $(MAKE) -C docs/en_US -f Makefile.sphinx latexpdf
|
|
|
|
|
2019-03-12 14:33:46 +00:00
|
|
|
docs-epub:
|
|
|
|
LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 $(MAKE) -C docs/en_US -f Makefile.sphinx epub
|
|
|
|
|
2018-07-12 10:00:40 +01:00
|
|
|
messages: msg-extract msg-update msg-compile
|
|
|
|
|
2017-04-18 15:05:32 +01:00
|
|
|
msg-compile:
|
2017-10-31 09:16:47 +00:00
|
|
|
cd web && pybabel compile --statistics -d pgadmin/translations
|
2017-04-18 15:05:32 +01:00
|
|
|
|
|
|
|
msg-extract:
|
|
|
|
cd web && pybabel extract -F babel.cfg -o pgadmin/messages.pot pgadmin
|
|
|
|
|
|
|
|
msg-update:
|
2021-07-05 09:49:51 +01:00
|
|
|
cd web && pybabel update --no-fuzzy-matching -i pgadmin/messages.pot -d pgadmin/translations
|
2017-02-16 11:31:13 +00:00
|
|
|
|
2016-06-02 13:56:56 +01:00
|
|
|
.PHONY: docs
|
2017-04-18 15:05:32 +01:00
|
|
|
|
|
|
|
pip: docs
|
|
|
|
./pkg/pip/build.sh
|
|
|
|
|
2020-03-18 08:51:11 -04:00
|
|
|
redhat:
|
|
|
|
./pkg/redhat/build.sh
|
|
|
|
|
2017-04-18 15:05:32 +01:00
|
|
|
src:
|
|
|
|
./pkg/src/build.sh
|