Housekeeper
Store, tag, fetch, and archive files with ease 🗃
Housekeeper is a tool that aims to provide:
- a backend for storing versioned bundles of files
- different interfaces (Python, CLI, REST) for fetching files based on tags
- a way to backup and retrieve bundles from long-term storage
Installation
Housekeeper written in Python 3.6+ and is available on the Python Package Index (PyPI).
poetry install
If you would like to install the latest development version:
git clone https://github.com/Clinical-Genomics/housekeeper
cd housekeeper
poetry install
Contributing
Housekeeper is using GitHub flow branching model as described in our development manual.
Documentation
Command line interface
Config file
Housekeeper supports a basic YAML config. The following options are supported:
---
database: mysql+pymysql://userName:passWord@domain.com/database
root: /path/to/root/dir
The root option is used to store files within the Housekeeper context.
Command: init
Setup (or reset) the database. It will simply setup all the tables in the database. You can reset an existing database by using the --reset option.
housekeeper --database "sqlite:///hk.sqlite3" init
Success! New tables: bundle, file, file_tag_link, tag, version
Command: include
Include (hard-link) all files of an existing bundle version into Housekeeper and the root path.
housekeeper myBundle
This will only work if the bundle only has a single version which can be "imported". If you want to import a specific version of a bundle you can use the --version option.
Command: delete files
Delete files that are not on disk anymore like his:
housekeeper delete files --tag fastq --notondisk
Remove all bam files before a certain date:
housekeeper delete files --tag bam --before 2017-06-15
Remove fastq files from a flowcell:
housekeeper delete files --tag fastq --tag H0HKKALXX
It'll always ask for confirmation, unless you add --yes:
housekeeper delete files --bundle sillyfish --yes
If you do not provide a --tag or --bundle, essentially deleting everything, the function will not let you do that.
Release files for housekeeper 4.13.18
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| housekeeper-4.13.18.tar.gz | 45.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| housekeeper-4.13.18-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 79.9 kB
Release files / housekeeper-4.13.18.tar.gz
| Download URL | housekeeper-4.13.18.tar.gz |
|---|---|
| Size | 45.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8d1b5330180117380497ce072c35341448eaa12a12665a5be45891f07c94f9aa
|
|
BLAKE2b-256 checksum How to use checksums |
be22681b495a06496de9cf0df933d912d981ea7cb3a80048af62e6057eee1d50
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.4.1 CPython/3.12.13 Linux/6.17.0-1022-azure
|
Release files / housekeeper-4.13.18-py3-none-any.whl
| Download URL | housekeeper-4.13.18-py3-none-any.whl |
|---|---|
| Size | 34.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5b8c368ee15d20e3e2a94c33cf1b00a5582ed4f21f6228f4b57417cd6a17b705
|
|
BLAKE2b-256 checksum How to use checksums |
818746c62ee66706783184c7d2042085b01cf15cb2d20691a1e36f21c7b9a95b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.4.1 CPython/3.12.13 Linux/6.17.0-1022-azure
|