.eggs
*.egg_info
build
-debian
-dist
tmp
+# Manual integration test:
+# 0. python setup.py sdist rotate --keep=1 --match .tar.gz
+# 1. docker build -name arvados:pam_test .
+# 2. docker run -it arvados:pam_test
+# 3. container# edit /etc/pam.d/login # set api host and shell VM name
+# 4. container# useradd testusername
+# 5. container# login # enter username and token
+
FROM debian:wheezy
RUN apt-get update
RUN apt-get -qy dist-upgrade
RUN apt-get -qy install libcurl4-gnutls-dev python2.7-dev
RUN pip install --upgrade setuptools
RUN pip install python-pam
-ADD . /pam
-WORKDIR /pam
-RUN ./setup.py sdist
-RUN pip install dist/arvados-pam-*.tar.gz
-COPY examples/pam-auth-update_arvados /usr/share/pam-configs/arvados
+ADD dist /dist
+RUN pip install /dist/arvados-pam-*.tar.gz
RUN DEBIAN_FRONTEND=noninteractive pam-auth-update arvados --remove unix
CMD rsyslogd & tail -F /var/log/auth.log & bash
include README.rst
+include lib/libpam_arvados.py
+include pam-configs/arvados
--- /dev/null
+case "$TARGET" in
+ debian* | ubuntu*)
+ fpm_depends+=('libpam-python')
+ ;;
+ *)
+ echo >&2 "ERROR: $PACKAGE: pam_python.so dependency unavailable in $TARGET."
+ return 1
+ ;;
+esac
+
+case "$FORMAT" in
+ deb)
+ fpm_args+=('--deb-recommends=rsyslog')
+ ;;
+esac
+
+fpm_args+=('--config-files=examples/pam-auth-update_arvados')
--- /dev/null
+from arvados_pam import *
-# 1. Install in /usr/share/pam-configs/arvados
-# 2. Run `pam-auth-update arvados`
+# 1. Change "api.example" to your ARVADOS_API_HOST
+# 2. Change "shell.example" to this host's hostname
+# (as it appears in the Arvados virtual_machines list)
+# 3. Install in /usr/share/pam-configs/arvados
+# 4. Run `pam-auth-update arvados`
Name: Arvados authentication
Default: yes
tagger = egg_info_cmd.egg_info
try:
import gittaggers
- if subprocess.check_call(['git', 'log', '-n1']):
- tagger = gittaggers.EggInfoFromGit
+ tagger = gittaggers.EggInfoFromGit
except (ImportError, OSError):
pass
],
scripts=[
],
+ data_files=[
+ ('/usr/share/pam-configs', ['pam-configs/arvados']),
+ ('/lib/security', ['lib/libpam_arvados.py']),
+ ],
install_requires=[
'arvados-python-client>=0.1.20150801000000',
],