241d59be8d
* ci: test migration test from last released version to current branch * ci: fix typo * ci: remove hyphens * ci: checkout Build.SourceBranchName * ci: attempt to fix Build.SourceBranchName https://github.com/microsoft/azure-pipelines-tasks/issues/8793 * ci: fix duplicate variables entry * ci: fix quoting for docker jobs * ci: attempt to access branchName directly * ci: attempt to extract branch name via sed * ci: fix escaping for Build.SourceBranch * ci: different bash substitution * ci: replace /refs/pulls * ci: attempt to save previous branch as variable * ci: fix indent * ci: try compile-time variables for docker * ci: always use Build.SourceBranch * ci: use compile-time template expression * ci: use Build.SourceBranchName * ci: attempt to get branch name from System.PullRequest.SourceBranch |
||
---|---|---|
.github | ||
docs | ||
e2e | ||
helm | ||
lifecycle | ||
passbook | ||
proxy | ||
scripts | ||
.bumpversion.cfg | ||
.coveragerc | ||
.dockerignore | ||
.editorconfig | ||
.gitignore | ||
.isort.cfg | ||
.prospector.yaml | ||
.pylintrc | ||
Dockerfile | ||
LICENSE | ||
Makefile | ||
Pipfile | ||
Pipfile.lock | ||
README.md | ||
SECURITY.md | ||
azure-pipelines.yml | ||
docker-compose.yml | ||
docker.env.yml | ||
manage.py | ||
mkdocs.yml | ||
pyrightconfig.json | ||
pytest.ini | ||
setup.cfg | ||
static.Dockerfile | ||
swagger.yaml |
README.md
What is passbook?
passbook is an open-source Identity Provider focused on flexibility and versatility. You can use passbook in an existing environment to add support for new protocols. passbook is also a great solution for implementing signup/recovery/etc in your application, so you don't have to deal with it.
Installation
For small/test setups it is recommended to use docker-compose, see the documentation
For bigger setups, there is a Helm Chart in the helm/
directory. This is documented here
Screenshots
Development
To develop on passbook, you need a system with Python 3.7+ (3.8 is recommended). passbook uses pipenv for managing dependencies.
To get started, run
python3 -m pip install pipenv
git clone https://github.com/BeryJu/passbook.git
cd passbook
pipenv shell
pipenv sync -d
Since passbook uses PostgreSQL-specific fields, you also need a local PostgreSQL instance to develop. passbook also uses redis for caching and message queueing.
For these databases you can use Postgres.app and Redis.app on macOS or use it the docker-compose file in scripts/docker-compose.yml
.
To tell passbook about these databases, create a file in the project root called local.env.yml
with the following contents:
debug: true
postgresql:
user: postgres
log_level: debug
Security
See SECURITY.md