Artifact / File server - makes it easy to track customer deliveries or just a place to dump important files.
- Files can be stored on the server either as single files or in bundles.
- The same file is not stored twice, content is tracked by their sha1 sums.
- Archive file list can be viewed.
- Text/code files can be viewed with syntax highlighting.
- Each file or bundle can be marked as delivered to a specific customer.
- Each file or bundle has threaded comments.
- The version control system origin of each file can be stored.
- Search functionality.
python setup.py develop
( Recommended to use virtualenv )
SQLite:
- Verify that sqlalchemy.url in development.ini looks something like: sqlite:///%(here)s/artifakt.sqlite
MySQL:
-
Enable mysqlclient in setup.py before running it.
-
Create a new database named 'artifaktdb' in mysql
-
Use the following command: CREATE DATABASE artifaktdb CHARACTER SET utf8;
-
initialize_artifakt_db development.ini
-
pserve development.ini
Some important settings to look at before running Artifakt.
- There are some hardcoded security strings in artifakt/artifakt.yaml. You should update them in a production setup.
artifakt.storage
: This points to the directory where all artifacts are stored.hosts
: The address of the server.port
: The port of the server.
mail.host
: The smtp host namemail.port
: The smtp portmail.queue_path
: Path to a directory where queued emails are storedmail.default_sender
: Sender address of emails from the system
To actually send the mails qp
must be run periodically.
It's possible to upload files to the server using HTTP POST from the command line or from another service. To make this easier there is a python script available for doing that at artifakt/utils/artifakt_upload.py.