Metadata-Version: 1.1
Name: django-b2
Version: 0.6.1
Summary: django backblaze b2 storage using b2sdk
Home-page: https://github.com/pyutil/django-b2
Author: Mirek Zvolský
Author-email: zvolsky@seznam.cz
License: MIT
Download-URL: https://github.com/pyutil/django-b2/archive/0.6.1.tar.gz
Description: =============================
        django-b2
        =============================
        
        .. image:: https://badge.fury.io/py/django-b2.svg
            :target: https://badge.fury.io/py/django-b2
        
        .. image:: https://travis-ci.org/pyutil/django-b2.svg?branch=master
            :target: https://travis-ci.org/pyutil/django-b2
        
        .. image:: https://codecov.io/gh/pyutil/django-b2/branch/master/graph/badge.svg
            :target: https://codecov.io/gh/pyutil/django-b2
        
        django backblaze b2 storage using b2sdk (b2sdk is official backblaze python library)
        
        Documentation
        -------------
        
        The full documentation is at https://django-b2.readthedocs.io.
        
        Quickstart
        ----------
        
        Install django-b2::
        
            pip install django-b2
        
        Add into your settings:
        
        .. code-block:: python
        
            MEDIA_URL = '/media/'
            DEFAULT_FILE_STORAGE = 'django_b2.storage.B2Storage'                 # if used without django-tenant-schemas
            # DEFAULT_FILE_STORAGE = 'django_b2.tenant_storage.TenantB2Storage'  # if used with django-tenant-schemas
            B2_APP_KEY_ID=000xxxxxxxxxxxx000000000n
            B2_APP_KEY=keyvalue
            B2_BUCKET_NAME=bucketname
            # optional, see Usage:
            MEDIA_ROOT = ..
            B2_LOCAL_MEDIA = ..  # "", "M", "L", "ML"
        
        Using outside of Django:
        
        .. code-block:: python
        
            from django_b2.backblaze_b2 import BackBlazeB2
            b2 = BackBlazeB2()
            b2.authorize("production", application_key_id, application_key)
            b2.set_bucket(bucket_name)
            with open(filename, 'rb') as f:
                b2.upload_file(filename, f)
            content = b2.download_file(filename)
            with open(filename2, 'wb') as f:
                f.write(content)
        
        
        Features
        --------
        
        - Django media storage (with storage.py) or general python access to BackBlaze B2 (without usage of storage.py).
        - Upload single file to B2 (call backblaze_b2.py as script; new in 0.2.0)
        - Backup a postgres database to B2 (use script pgtob2.sh; new in 0.2.0)
        - Optionally cache media files locally for immediate access or for long time faster access.
        
        Running Tests
        -------------
        
        Does the code actually work?
        
        ::
        
            source <YOURVIRTUALENV>/bin/activate
            (myenv) $ pip install -r requirements_test.txt
            (myenv) $ tox
        
        Credits
        -------
        
        Tools used in rendering this package:
        
        *  b2sdk_
        *  cookiecutter_
        *  `cookiecutter-djangopackage`_
        
        .. _b2sdk: https://github.com/Backblaze/b2-sdk-python
        .. _cookiecutter: https://github.com/audreyr/cookiecutter
        .. _`cookiecutter-djangopackage`: https://github.com/pydanny/cookiecutter-djangopackage
        
        
        
        
        History
        -------
        
        0.6.1 (2020-11-04)
        ++++++++++++++++++
        
        * B2Storage() initializes as the settings.DEFAULT_FILE_STORAGE if 'B2Storage' string is not inside
          can be used together with @override_settings(DEFAULT_FILE_STORAGE='django.core.files.storage.FileSystemStorage')
          see https://github.com/pyutil/django-b2/issues/4
        
        0.6.0 (2020-05-28)
        ++++++++++++++++++
        
        * lazy loading, to avoid running code during collectstatic,.. - https://github.com/pyutil/django-b2/issues/3
        
        0.5.5 (2020-05-24)
        ++++++++++++++++++
        
        * bugfix: upload on Windows, thx Same Weaver, https://github.com/pyutil/django-b2/issues/2
        * Linux abs filenames: leading "/" will be removed so we can use local abs names 1:1 to upload to b2 (in Windows: C:/.. is valid name)
        
        0.5.0 (2020-02-17)
        ++++++++++++++++++
        
        * can work with django-tenant schemas, tenant aware storage django_b2.tenant_storage.TenantB2Storage
        
        0.4.0 (2020-02-10)
        ++++++++++++++++++
        
        * older local media (see B2_LOCAL_MEDIA) can be cleared with management command b2_clear_local_media
        * B2_LOCAL_CACHE setting renamed to B2_LOCAL_MEDIA, possible values changed to ="ML"
        
        0.3.0 (2020-02-08) - do not use
        +++++++++++++++++++++++++++++++
        
        * !! new B2_LOCAL_MEDIA setting was in 0.3.0 named incompatible as B2_LOCAL_CACHE="FM"
        * B2_LOCAL_MEDIA setting to make a local copy of files. So you can have local instances backuped on backblaze.
        * B2_LOCAL_MEDIA prevents failures if the django application want immediately reopen the file (imagekits creating thumbnails, Wagtail is an example)
        
        0.2.0 (2020-01-31)
        ++++++++++++++++++
        
        * backblaze_b2.py can be called as script to upload single file.
        * pgtob2.sh script to backup postgres database
        
        0.1.5 (2020-01-02)
        ++++++++++++++++++
        
        * No code change. Minor docs changes.
        
        0.1.4 (2020-01-02)
        ++++++++++++++++++
        
        * First release on PyPI.
        
Keywords: django-b2
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Django :: 1.11
Classifier: Framework :: Django :: 2.2
Classifier: Framework :: Django :: 3.0
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
