Skip to main content

Keep your passwords behind the firewall

Project description

TeamVault

TeamVault is an open-source web-based shared password manager for behind-the-firewall installation. It requires Python 3.8+ and PostgreSQL (with the unaccent extension).

Installation

apt-get install libffi-dev libldap2-dev libpq-dev libsasl2-dev python3.X-dev postgresql-contrib
pip install teamvault
teamvault setup
vim /etc/teamvault.conf
# note that the teamvault database user will need SUPERUSER privileges
# during this step in order to activate the unaccent extension
teamvault upgrade
teamvault plumbing createsuperuser
teamvault run

Update

pip install --upgrade teamvault
teamvault upgrade

Development

Install Postgres and create a database and superuser for TeamVault to use, for example by starting a Docker container:

docker run --rm --detach --publish=5432:5432 --name teamvault-postgres -e POSTGRES_USER=teamvault -e POSTGRES_PASSWORD=teamvault postgres:latest

To compile all JS & SCSS files, you'll need to install all required packages via bun (or yarn/npm) with node >= v18.

Use bun/yarn/npm run serve to start a dev server.

Now create a virtual environment to install and configure TeamVault in:

pipenv install
pipenv shell
pip install -e .
export TEAMVAULT_CONFIG_FILE=teamvault.cfg
teamvault setup
vim teamvault.cfg  # base_url = http://localhost:8000
                   # session_cookie_secure = False
                   # database config as needed
teamvault upgrade
teamvault plumbing createsuperuser
teamvault run

Now open http://localhost:8000

If you have problems with server terminating use NPM istead of Bun

Scheduled background jobs

We use huey to run background jobs. This requires you to run a second process, in parallel to TeamVault itself. You can launch it via manage.py:

teamvault run_huey

Release process

  1. Install the "build" and "twine" packages via pip
  2. Bump the version in teamvault/__version__.py
  3. Update CHANGELOG.md with the new version and current date
  4. Make a release commit with the changes made above
  5. Push the commit
  6. Run ./build.sh to create a new package
  7. Sign and push the artifacts to PyPI (twine upload -s dist/*)
  8. Add a new GitHub release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

teamvault-1.0.0rc5.tar.gz (20.8 MB view details)

Uploaded Source

Built Distribution

teamvault-1.0.0rc5-py3-none-any.whl (20.8 MB view details)

Uploaded Python 3

File details

Details for the file teamvault-1.0.0rc5.tar.gz.

File metadata

  • Download URL: teamvault-1.0.0rc5.tar.gz
  • Upload date:
  • Size: 20.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for teamvault-1.0.0rc5.tar.gz
Algorithm Hash digest
SHA256 edca13ab41924f935ac9a2150af3631dfe4123f99bd2c7863f00f10b13890ee5
MD5 456444f0e8329bc4ad8e5f4f46398d0b
BLAKE2b-256 b4f96f67e8898f0422a59695afb51901717afe5ac73e8e2fda71e8f6f25bbff7

See more details on using hashes here.

File details

Details for the file teamvault-1.0.0rc5-py3-none-any.whl.

File metadata

  • Download URL: teamvault-1.0.0rc5-py3-none-any.whl
  • Upload date:
  • Size: 20.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for teamvault-1.0.0rc5-py3-none-any.whl
Algorithm Hash digest
SHA256 567c003fb9af7af0e4b0a61a0cbd08c73e3dd6b8c5999328dba74fee5121cceb
MD5 5faad66f122b032de44157217012a0b4
BLAKE2b-256 79b7ec1969d2a36e5370cc18cce8869c4843eade72e4b0b2b6df053bc372ab35

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page