Author: |
Camptocamp,Odoo Community Association (OCA) |
License: |
AGPL-3 |
Branch: |
12.0 |
Repository: |
avoinsystems/odoo-cloud-platform |
Dependencies: |
base_attachment_object_storage |
Languages: |
Python (293, 89.3%),
and
reStructuredText (35, 10.7%) |
Other branches: |
10.0,
11.0,
11.0-avoinsystems,
12.0-avoinsystems,
13.0,
13.0-avoinsystems,
13.0-fix-bucket-name-format,
13.0-redis-by-url,
14.0,
15.0,
9.0,
merge-branch-1305-master,
merge-branch-1955-12.0-04330cea,
merge-branch-1955-12.0-b19bf503,
merge-branch-1955-13_initialize_branch_v12-06a09553,
merge-branch-2176-11.0.0,
merge-branch-2176-11.0.1,
merge-branch-2176-11.0.3,
merge-branch-2176-11.1.0,
merge-branch-2176-11.2.0,
merge-branch-2176-master,
merge-branch-2221-fix-swift-14021d9d,
merge-branch-2221-ovh-56-qty-received-scenario-8d7505aa,
merge-branch-2221-update_submodules_for_travis-9fd09271,
merge-branch-2258-12.1.1,
merge-branch-2258-12.1.2,
merge-branch-2258-add_odoo_cloud_platform-3acc3ca7,
merge-branch-2258-master,
merge-branch-2477-12.0.0.1.0,
merge-branch-2477-12.0.1.0.0,
merge-branch-2477-master-266b01e9,
merge-branch-559-gste-44-89edcceb,
and
merge-branch-559-gste-44-b88ff338 |
Other repositories: |
ERPLibre/odoo-cloud-platform,
GSLabIt/odoo-cloud-platform,
MjAbuz/odoo-cloud-platform,
NCS-75/odoo-cloud-platform,
PCatinean/odoo-cloud-platform,
RL-OtherApps/odoo-cloud-platform,
TelmoSenseFly/odoo-cloud-platform,
Tonow-c2c/odoo-cloud-platform,
Wiserby/odoo-cloud-platform,
acarmisc/odoo-cloud-platform,
acsone/odoo-cloud-platform,
agrista/odoo-cloud-platform,
akretion/odoo-cloud-platform,
ap-wtioit/odoo-cloud-platform,
asiellb/odoo-cloud-platform,
camptocamp/odoo-cloud-platform,
celm1990/odoo-cloud-platform,
cialuo/odoo-cloud-platform,
difra/odoo-cloud-platform,
exosoftware/c2c-odoo-cloud-platform,
grindtildeath/odoo-cloud-platform,
guewen/odoo-cloud-platform,
gurneyalex/odoo-cloud-platform,
hibou-io/camptocamp-cloud-platform,
ircodoo/odoo-cloud-platform,
itsalgeria/odoo-cloud-platform,
junariltd/odoo-cloud-platform,
leemannd/odoo-cloud-platform,
loftwah/odoo-cloud-platform,
modoolar/odoo-cloud-platform,
mohamed-helmy/odoo-cloud-platform,
mudismud/odoo-cloud-platform,
oondeo/odoo-cloud-platform,
p-tombez/odoo-cloud-platform,
pasgou/odoo-cloud-platform,
paulpwo/odoo-cloud-platform,
royalline1/odoo-cloud-platform,
sadeqamin/odoo-cloud-platform,
sbidoul/odoo-cloud-platform,
sebalix/odoo-cloud-platform,
sebastienbeau/odoo-cloud-platform,
simahawk/odoo-cloud-platform,
sm2x/odoo-cloud-platform,
smussie/odoo-cloud-platform,
suningwz/odoo-cloud-platform,
tate11/odoo-cloud-platform,
tirix/odoo-cloud-platform,
tschanzt/odoo-cloud-platform,
ursais/odoo-cloud-platform-1,
vidtsin/odoo-cloud-platform,
vrenaville/odoo-cloud-platform,
wahello/odoo-cloud-platform,
xuanox/odoo-cloud-platform,
yvaucher/odoo-cloud-platform,
and
zakiuu/odoo-cloud-platform |
<h1 class="title">Attachments on Swift storage</h1>
<p>This addon enable storing attachments (documents and assets) on OpenStack Object Storage (Swift)</p>
<a name="configuration"></a>
<h2>Configuration</h2>
<p>Activate Swift storage:</p>
<ul class="simple">
<li>Create or set the system parameter with the key <code>ir_attachment.location</code> with the following value <code>swift</code>.</li>
</ul>
<p>Configure accesses with environment variables:</p>
<ul class="simple">
<li><code>SWIFT_AUTH_URL</code> : URL of the Swift server</li>
<li><code>SWIFT_TENANT_NAME</code> : <strong>!</strong> DEPRECATED <strong>!</strong> Use <code>SWIFT_PROJECT_NAME</code> instead</li>
<li><code>SWIFT_PROJECT_NAME</code></li>
<li><code>SWIFT_ACCOUNT</code></li>
<li><code>SWIFT_PASSWORD</code></li>
<li><code>SWIFT_REGION_NAME</code> : optional region</li>
<li><code>SWIFT_WRITE_CONTAINER</code> : Name of the container to use in the store (created if not existing)</li>
</ul>
<p>Read-only mode:</p>
<p>The container name and the key are stored in the attachment. So if you change the
<code>SWIFT_WRITE_CONTAINER</code> or the <code>ir_attachment.location</code>, the existing attachments
will still be read on their former container. But as soon as they are written over
or new attachments are created, they will be created on the new container or on
the other location (db or filesystem). This is a convenient way to be able to
read the production attachments on a replication (since you have the
credentials) without any risk to alter the production data.</p>
<p>This addon must be added in the server wide addons with (<code>--load</code> option):</p>
<p><code>--load=web,attachment_swift</code></p>
<p>The System Parameter <code>ir_attachment.storage.force.database</code> can be customized to
force storage of files in the database. See the documentation of the module
<code>base_attachment_object_storage</code>.</p>
<a name="python-dependencies"></a>
<h2>Python Dependencies</h2>
<p>This module needs the python-swiftclient and the python-keystoneclient (For auth v3.0) to work.
The python-keystoneclient needs the linux package build-essential and python-dev to install properly.</p>
<p>The python-swiftclient can be used from the command line, useful to test:</p>
<pre>
<code lang="sh">export AUTH_VERSION=3.0
export OS_USERNAME={SWIFT_ACCOUNT}
export OS_PASSWORD={SWIFT_PASSWORD}
export OS_PROJECT_NAME={SWIFT_PROJECT_NAME}
export OS_REGION_NAME={SWIFT_REGION_NAME}
export OS_AUTH_URL=https://auth.cloud.ovh.net/v3
swift stat</code>
</pre>
<p>More information at
<a class="reference external" href="https://docs.openstack.org/python-swiftclient/latest/cli/index.html#swift-usage">https://docs.openstack.org/python-swiftclient/latest/cli/index.html#swift-usage</a></p>