Statistics
| Branch: | Tag: | Revision:

root / snf-pithos-app / README @ c72c19e4

History | View | Annotate | Download (6.1 kB)

1 dfb1fafa Antony Chazapis
README
2 dfb1fafa Antony Chazapis
======
3 dfb1fafa Antony Chazapis
4 dfb1fafa Antony Chazapis
Pithos is a file storage service, built by GRNET using Django (https://www.djangoproject.com/).
5 dfb1fafa Antony Chazapis
Learn more about Pithos at: http://code.grnet.gr/projects/pithos
6 dfb1fafa Antony Chazapis
7 dfb1fafa Antony Chazapis
Consult COPYRIGHT for licensing information.
8 dfb1fafa Antony Chazapis
9 dfb1fafa Antony Chazapis
About Pithos application
10 dfb1fafa Antony Chazapis
------------------------
11 dfb1fafa Antony Chazapis
12 dfb1fafa Antony Chazapis
This package contains the Django application that implements the Pithos v2 API. It depends on the Pithos backend, which does the actual data and metadata operations.
13 dfb1fafa Antony Chazapis
14 dfb1fafa Antony Chazapis
How to run
15 dfb1fafa Antony Chazapis
----------
16 dfb1fafa Antony Chazapis
17 dfb1fafa Antony Chazapis
Use snf-webproject to run Pithos automatically.
18 dfb1fafa Antony Chazapis
19 dfb1fafa Antony Chazapis
To use Pithos in a custom Django project, just add ``pithos.api`` to ``INSTALLED_APPS``.
20 dfb1fafa Antony Chazapis
21 2c04b1dd Antony Chazapis
Pithos has been tested with SQLite and PostgreSQL backend databases. When using PostgreSQL, ensure that the has been created with the appropriate encoding and collation::
22 2c04b1dd Antony Chazapis
23 2c04b1dd Antony Chazapis
    CREATE DATABASE pithos WITH ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' TEMPLATE=template0;
24 2c04b1dd Antony Chazapis
25 dfb1fafa Antony Chazapis
Settings
26 dfb1fafa Antony Chazapis
--------
27 dfb1fafa Antony Chazapis
28 dfb1fafa Antony Chazapis
Configure in ``settings.py`` or a ``.conf`` file in ``/etc/synnefo`` if using snf-webproject.
29 dfb1fafa Antony Chazapis
30 56f3c759 Sofia Papagiannaki
===============================  ================================================================   ============================================================
31 56f3c759 Sofia Papagiannaki
Name                             Default value                                                      Description
32 56f3c759 Sofia Papagiannaki
===============================  ================================================================   ============================================================
33 4ab620b6 Christos Stavrakakis
ASTAKOS_URL                      \https://<astakos.host>/                                           Astakos Authentication URL
34 56f3c759 Sofia Papagiannaki
PITHOS_ASTAKOS_COOKIE_NAME       _pithos2_a                                                         Cookie name to retrieve fallback token
35 dfb1fafa Antony Chazapis
PITHOS_BACKEND_DB_MODULE         pithos.backends.lib.sqlalchemy
36 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_DB_CONNECTION     sqlite:////tmp/pithos-backend.db                                   SQLAlchemy database connection string
37 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_BLOCK_MODULE      pithos.backends.lib.hashfile
38 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_BLOCK_PATH        /tmp/pithos-data/                                                  Map and block storage path
39 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_BLOCK_UMASK       0o022                                                              Map and block storage umask
40 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_QUEUE_MODULE      None                                                               Use ``pithos.backends.lib.rabbitmq`` to enable
41 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_QUEUE_HOSTS       None                                                               Format like [``amqp://guest:guest@localhost:5672``
42 4cfccdd2 Sofia Papagiannaki
PITHOS_BACKEND_QUEUE_EXCHANGE    pithos
43 c72c19e4 Sofia Papagiannaki
PITHOS_BACKEND_ACCOUNT_QUOTA     50 GB (50 * 1024 ** 3)                                             Default account quota (set to 0 to disable control)
44 c72c19e4 Sofia Papagiannaki
PITHOS_BACKEND_CONTAINER_QUOTA   0                                                                  Default container quota (set to 0 to disable control - default disabled)
45 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_VERSIONING        auto                                                               Default versioning policy for containers
46 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_FREE_VERSIONING   True                                                               Default versioning debit policy (default free)
47 61c5b615 Sofia Papagiannaki
PITHOS_BACKEND_POOL_SIZE         5                                                                  Default backend pool size
48 591e1df0 Sofia Papagiannaki
PITHOS_UPDATE_MD5                False                                                               Update object checksums
49 56f3c759 Sofia Papagiannaki
PITHOS_SERVICE_TOKEN             ''                                                                 Service token acquired by the identity provider (astakos)
50 56f3c759 Sofia Papagiannaki
PITHOS_RADOS_STORAGE             False                                                              Enables or disables secondary Pithos storage on RADOS
51 56f3c759 Sofia Papagiannaki
PITHOS_RADOS_POOL_BLOCKS         None                                                               RADOS pool to be used for block storage
52 56f3c759 Sofia Papagiannaki
PITHOS_RADOS_POOL_MAPS           None                                                               RADOS pool to be used for maps storage
53 56f3c759 Sofia Papagiannaki
PITHOS_TRANSLATE_UUIDS           False                                                              Enables a ui compatibility layer for the introduction of UUIDs in identity management.
54 56f3c759 Sofia Papagiannaki
PITHOS_PROXY_USER_SERVICES       True                                                               Whether to proxy user feedback and catalog services
55 56f3c759 Sofia Papagiannaki
PITHOS_USER_CATALOG_URL          \https://<astakos.host>/user_catalogs/                             Astakos User Catalog URL
56 56f3c759 Sofia Papagiannaki
PITHOS_USER_FEEDBACK_URL         \https://<astakos.host>/feedback/                                  Astakos User Feedback URL
57 56f3c759 Sofia Papagiannaki
PITHOS_USER_LOGIN_URL            \https://<astakos.host>/login/                                     Astakos User Login URL
58 56f3c759 Sofia Papagiannaki
PITHOS_USE_QUOTAHOLDER           True                                                               Enable quotaholder
59 56f3c759 Sofia Papagiannaki
PITHOS_QUOTAHOLDER_URL           ''                                                                 Quotaholder URL
60 56f3c759 Sofia Papagiannaki
PITHOS_QUOTAHOLDER_TOKEN         ''                                                                 Quotaholder token
61 4a105ce2 Sofia Papagiannaki
PITHOS_PUBLIC_URL_SECURITY       16                                                                 How many random bytes to use for constructing the URL of Pithos public files
62 4a105ce2 Sofia Papagiannaki
PITHOS_PUBLIC_URL_ALPHABET       '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'   The alphabet to use for constructing the URL of Pithos public files
63 56f3c759 Sofia Papagiannaki
===============================  ================================================================   ============================================================
64 dfb1fafa Antony Chazapis
65 b3155065 Antony Chazapis
To update checksums asynchronously, enable the queue, install snf-pithos-tools and use ``pithos-dispatcher``::
66 b3155065 Antony Chazapis
67 8d9a3fbd Antony Chazapis
    pithos-dispatcher --exchange=pithos --key=pithos.object --callback=pithos.api.dispatch.update_md5
68 b3155065 Antony Chazapis
69 a74ba506 Sofia Papagiannaki
To send sharing notifications::
70 a74ba506 Sofia Papagiannaki
71 a74ba506 Sofia Papagiannaki
    pithos-dispatcher --exchange=pithos --key=pithos.sharing --callback=pithos.api.dispatch.send_sharing_notification
72 a74ba506 Sofia Papagiannaki
73 dfb1fafa Antony Chazapis
Administrator functions
74 dfb1fafa Antony Chazapis
-----------------------
75 dfb1fafa Antony Chazapis
76 dfb1fafa Antony Chazapis
Available as extensions to Django's command-line management utility:
77 dfb1fafa Antony Chazapis
78 dfb1fafa Antony Chazapis
============  ======================
79 dfb1fafa Antony Chazapis
Name          Description
80 dfb1fafa Antony Chazapis
============  ======================
81 dfb1fafa Antony Chazapis
storagequota  Get/set a user's quota
82 dfb1fafa Antony Chazapis
============  ======================
83 dfb1fafa Antony Chazapis