123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- VERSION = 2.0.0
- NPM_ROOT = ./node_modules
- STATIC_DIR = src/sentry/static/sentry
- BOOTSTRAP_JS = ${STATIC_DIR}/scripts/lib/bootstrap.js
- BOOTSTRAP_JS_MIN = ${STATIC_DIR}/scripts/lib/bootstrap.min.js
- UGLIFY_JS ?= node_modules/uglify-js/bin/uglifyjs
- JS_TESTS = tests/js/index.html
- JS_REPORTER = dot
- develop: update-submodules setup-git
- @echo "--> Installing dependencies"
- npm install
- pip install "setuptools>=0.9.8"
- # order matters here, base package must install first
- pip install -e .
- pip install "file://`pwd`#egg=sentry[dev]"
- pip install "file://`pwd`#egg=sentry[tests]"
- @echo ""
- dev-postgres: develop
- pip install "file://`pwd`#egg=sentry[postgres]"
- dev-mysql: develop
- pip install "file://`pwd`#egg=sentry[mysql]"
- dev-docs:
- pip install -r docs/requirements.txt
- setup-git:
- @echo "--> Installing git hooks"
- git config branch.autosetuprebase always
- cd .git/hooks && ln -sf ../../hooks/* ./
- @echo ""
- build: locale
- clean:
- @echo "--> Cleaning static cache"
- rm -rf src/sentry/static/CACHE
- @echo "--> Cleaning pyc files"
- find . -name "*.pyc" -delete
- @echo ""
- locale:
- cd src/sentry && sentry makemessages -i static -l en
- cd src/sentry && sentry compilemessages
- update-transifex:
- pip install transifex-client
- tx push -s
- tx pull -a
- compile-bootstrap-js:
- @cat src/bootstrap/js/bootstrap-transition.js src/bootstrap/js/bootstrap-alert.js src/bootstrap/js/bootstrap-button.js src/bootstrap/js/bootstrap-carousel.js src/bootstrap/js/bootstrap-collapse.js src/bootstrap/js/bootstrap-dropdown.js src/bootstrap/js/bootstrap-modal.js src/bootstrap/js/bootstrap-tooltip.js src/bootstrap/js/bootstrap-popover.js src/bootstrap/js/bootstrap-scrollspy.js src/bootstrap/js/bootstrap-tab.js src/bootstrap/js/bootstrap-typeahead.js src/bootstrap/js/bootstrap-affix.js ${STATIC_DIR}/scripts/bootstrap-datepicker.js > ${BOOTSTRAP_JS}
- ${UGLIFY_JS} -nc ${BOOTSTRAP_JS} > ${BOOTSTRAP_JS_MIN};
- update-submodules:
- @echo "--> Updating git submodules"
- git submodule init
- git submodule update
- @echo ""
- test: develop lint test-js test-python test-cli
- testloop: develop
- pip install pytest-xdist
- py.test tests -f
- test-cli:
- @echo "--> Testing CLI"
- rm -rf test_cli
- mkdir test_cli
- cd test_cli && sentry init test.conf > /dev/null
- cd test_cli && sentry --config=test.conf upgrade --traceback --noinput > /dev/null
- cd test_cli && sentry --config=test.conf help | grep start > /dev/null
- rm -r test_cli
- @echo ""
- test-js:
- @echo "--> Running JavaScript tests"
- ${NPM_ROOT}/.bin/mocha-phantomjs -p ${NPM_ROOT}/phantomjs/bin/phantomjs -R ${JS_REPORTER} ${JS_TESTS}
- @echo ""
- test-python:
- @echo "--> Running Python tests"
- py.test tests || exit 1
- @echo ""
- lint: lint-python lint-js
- lint-python:
- @echo "--> Linting Python files"
- PYFLAKES_NODOCTEST=1 flake8 src/sentry tests
- @echo ""
- lint-js:
- @echo "--> Linting JavaScript files"
- ${NPM_ROOT}/.bin/jshint src/sentry/ || exit 1
- @echo ""
- coverage: develop
- coverage run --source=src/sentry -m py.test
- coverage html
- run-uwsgi:
- uwsgi --http 127.0.0.1:8000 --need-app --disable-logging --wsgi-file src/sentry/wsgi.py --processes 1 --threads 5
- publish:
- python setup.py sdist bdist_wheel upload
- .PHONY: develop dev-postgres dev-mysql dev-docs setup-git build clean locale update-transifex compile-bootstrap-js update-submodules test testloop test-cli test-js test-python lint lint-python lint-js coverage run-uwsgi publish
|