RPMBUILD = $(PWD)/dist/rpmbuild
-all: lint pep8
+all: testdeps lint pep8 test
+ echo "All tests passed"
+
+testdeps:
+ # Determine if test deps are installed
+ # First, some binaries
+ which lessc
+ which pylint
+ which pep8
+ which httpd
+ which postgres
+ which openssl
+ which slapd
+ # Now, python libraries
+ python -c 'import openid'
+ python -c 'import openid_teams'
+ python -c 'import openid_cla'
+ python -c 'import cherrypy'
+ python -c 'import M2Crypto'
+ python -c 'import lasso'
+ python -c 'import sqlalchemy'
+ python -c 'import ldap'
+ python -c 'import pam'
+ python -c 'import fedora'
+ python -c 'import ipapython'
+ python -c 'import jinja2'
+ python -c 'import psycopg2'
+ # And now everything else
+ ls /usr/share/doc/sssd
+ ls /usr/lib64/libsss_simpleifp.so.0
+ ls /usr/lib64/httpd/modules/mod_wsgi.so
+ ls /usr/libexec/mod_auth_mellon
lint:
# Analyze code
# don't show recommendations, info, comments, report
# W0613 - unused argument
# Ignore cherrypy class members as they are dynamically added
+ # Ignore IPA API class members as they are dynamically added
pylint -d c,r,i,W0613 -r n -f colorized \
--notes= \
- --ignored-classes=cherrypy \
+ --ignored-classes=cherrypy,API \
+ --disable=star-args \
./ipsilon
pep8:
pylint -d c,r,i,W0613 -r n -f colorized \
--notes= \
--ignored-classes=cherrypy \
+ --disable=star-args \
./tests
pep8 tests
#SOCKET_WRAPPER_DEFAULT_IFACE=9
tests: wrappers
+ rm -rf testdir
PYTHONPATH=./ ./tests/tests.py --test=test1
+ PYTHONPATH=./ ./tests/tests.py --test=testlogout
+ PYTHONPATH=./ ./tests/tests.py --test=testnameid
+ PYTHONPATH=./ ./tests/tests.py --test=testrest
+ PYTHONPATH=./ ./tests/tests.py --test=testmapping
+ PYTHONPATH=./ ./tests/tests.py --test=testgssapi
PYTHONPATH=./ ./tests/tests.py --test=attrs
PYTHONPATH=./ ./tests/tests.py --test=trans
+ PYTHONPATH=./ ./tests/tests.py --test=pgdb
+ PYTHONPATH=./ ./tests/tests.py --test=fconf
+ PYTHONPATH=./ ./tests/tests.py --test=ldap
+ PYTHONPATH=./ ./tests/tests.py --test=ldapdown
+ PYTHONPATH=./ ./tests/tests.py --test=openid
+
+test: lp-test unittests tests
-test: lp-test tests
+unittests:
PYTHONPATH=./ ./ipsilon/tools/saml2metadata.py
+ PYTHONPATH=./ python ./ipsilon/util/policy.py
sdist:
python setup.py sdist
rpms: rpmroot rpmdistdir sdist
cp dist/ipsilon*.tar.gz $(RPMBUILD)/SOURCES/
- rpmbuild --define "_topdir $(RPMBUILD)" -ba contrib/fedora/ipsilon.spec
+ rpmbuild --define "gittag .git`git rev-parse --short HEAD`" --define "builddate .`date +%Y%m%d%H%M`" --define "_topdir $(RPMBUILD)" -ba contrib/fedora/ipsilon.spec
mv $(RPMBUILD)/RPMS/*/ipsilon-*.rpm dist/rpms/
mv $(RPMBUILD)/SRPMS/ipsilon-*.src.rpm dist/srpms/
rm -rf $(RPMBUILD)
-rpms: sdist
+releaserpms: rpmroot rpmdistdir sdist
+ cp dist/ipsilon*.tar.gz $(RPMBUILD)/SOURCES/
+ rpmbuild --define "_topdir $(RPMBUILD)" -ba contrib/fedora/ipsilon.spec
+ mv $(RPMBUILD)/RPMS/*/ipsilon-*.rpm dist/rpms/
+ mv $(RPMBUILD)/SRPMS/ipsilon-*.src.rpm dist/srpms/
+ rm -rf $(RPMBUILD)