Skip to content

Commit

Permalink
From refs/heads/main 65abc21
Browse files Browse the repository at this point in the history
  • Loading branch information
juha-aiven committed Feb 12, 2024
1 parent e2d96a2 commit 6ea2424
Show file tree
Hide file tree
Showing 31 changed files with 16,771 additions and 991 deletions.
2 changes: 1 addition & 1 deletion .buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: ea6e31f2b2398d4bb88ad7355330754a
config: d9507886c909371988bacd0f6e337640
tags: 645f666f9bcd5a90fca523b33c5a78b7
18 changes: 8 additions & 10 deletions _sources/about.rst.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
About Rohmu
===========
#############
About Rohmu
#############

Features
--------

* Supported object storages: Azure, GCP, S3, Swift (OpenStack), local
file storage and SFTP.
* Supported compression algorithms: Snappy,
`zstd <https://github.com/facebook/zstd>`__ and
`lzma <https://docs.python.org/3/library/lzma.html>`__.
.. include:: ../README.rst
:start-after: start-include-features
:end-before: end-include-features

.. include:: ../README.rst
:start-after: start-include-links
61 changes: 61 additions & 0 deletions _sources/api__object_storage.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@


Azure
=====

.. autopydantic_model:: rohmu.object_storage.config.AzureObjectStorageConfig

.. autoclass:: rohmu.object_storage.azure.AzureTransfer
:members:


Google
======

.. autopydantic_model:: rohmu.object_storage.config.GoogleObjectStorageConfig

.. autoclass:: rohmu.object_storage.google.GoogleTransfer
:members:

.. autoclass:: rohmu.object_storage.google.MediaStreamUpload
:members:

.. autoclass:: rohmu.object_storage.google.MediaIoBaseDownloadWithByteRange
:members:


Local
=====

.. autopydantic_model:: rohmu.object_storage.config.LocalObjectStorageConfig

.. autoclass:: rohmu.object_storage.local.LocalTransfer
:members:


S3
==

.. autopydantic_model:: rohmu.object_storage.config.S3ObjectStorageConfig

.. autoclass:: rohmu.object_storage.s3.S3Transfer
:members:


SFTP
====

.. autopydantic_model:: rohmu.object_storage.config.SFTPObjectStorageConfig

.. autoclass:: rohmu.object_storage.sftp.SFTPTransfer
:members:


Swift
=====

.. autopydantic_model:: rohmu.object_storage.config.SwiftObjectStorageConfig

.. autoclass:: rohmu.object_storage.swift.SwiftTransfer
:members:

87 changes: 87 additions & 0 deletions _sources/autodoc.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
##########################
Python API Documentation
##########################

********
Common
********

.. autoclass:: rohmu.BaseTransfer

.. autofunction:: rohmu.get_class_for_notifier

.. autofunction:: rohmu.get_class_for_storage_driver

.. autofunction:: rohmu.get_class_for_transfer

.. autofunction:: rohmu.get_notifier

.. autofunction:: rohmu.get_transfer_from_model

.. autofunction:: rohmu.get_transfer_model

.. autofunction:: rohmu.get_transfer

.. autoclass:: rohmu.Notifier

.. autoclass:: rohmu.ProxyInfo

.. autodata:: rohmu.S3AddressingStyle

.. autoclass:: rohmu.StorageDriver

.. autoclass:: rohmu.StorageModel

***************
Delta Backups
***************

.. automodule:: rohmu.delta
:members:

.. automodule:: rohmu.delta.common
:members:

.. automodule:: rohmu.delta.snapshot
:members:

***********
Notifiers
***********

.. automodule:: rohmu.notifier
:members:

.. automodule:: rohmu.notifier.interface
:members:

HTTP Notifier
=============

.. automodule:: rohmu.notifier.http
:members:

Logger Notifier
===============

.. automodule:: rohmu.notifier.logger
:members:

Null Notifier
=============

.. automodule:: rohmu.notifier.null
:members:

*****************
Object Storages
*****************

.. include:: api__object_storage.rst

************
Exceptions
************

.. automodule:: rohmu.errors
:members:
31 changes: 11 additions & 20 deletions _sources/development.rst.txt
Original file line number Diff line number Diff line change
@@ -1,23 +1,14 @@
Development
============
#############
Development
#############

Requirements
------------
.. include:: ../README.rst
:start-after: start-include-requirements
:end-before: end-include-requirements

Rohmu requires Python >= 3.8. For Python library dependencies, have a
look at
`requirements.txt <https://github.com/aiven/rohmu/blob/main/requirements.txt>`__.
.. include:: ../README.rst
:start-after: start-include-building-the-package
:end-before: end-include-building-the-package


Building the package
--------------------

To build an installation package for your distribution, go to the root
directory of a Rohmu Git checkout and run:

Fedora::

sudo make fedora-dev-setup
make rpm

This will produce a ``.rpm`` package usually into ``rpm/RPMS/noarch/``.
.. include:: ../README.rst
:start-after: start-include-links
86 changes: 21 additions & 65 deletions _sources/index.rst.txt
Original file line number Diff line number Diff line change
@@ -1,72 +1,28 @@
Rohmu
=======
#######
Rohmu
#######

|BuildStatus|
.. include:: toc.rst

.. |BuildStatus| image:: https://github.com/aiven/rohmu/actions/workflows/build.yml/badge.svg?branch=main
:target: https://github.com/aiven/rohmu/actions
:alt: Build Status
.. include:: ../README.rst
:start-after: start-include-intro
:end-before: end-include-intro

``Rohmu`` is a Python library for building backup tools for databases
providing functionality for compression, encryption and transferring
data between the database and an object storage. Rohmu supports main
public clouds such as GCP, AWS and Azure for backup storage. Rohmu is
used in various backup tools such as
`PGHoard <https://github.com/aiven/pghoard>`__ for PostgreSQL,
`MyHoard <https://github.com/aiven/myhoard>`__ for MySQL and
`Astacus <https://github.com/aiven/astacus>`__ for M3, ClickHouse and
other databases.
.. include:: ../README.rst
:start-after: start-include-license
:end-before: end-include-license

.. include:: ../README.rst
:start-after: start-include-trademarks-and-credits
:end-before: end-include-trademarks-and-credits

.. toctree::
:maxdepth: 2
:caption: Contents
:glob:
:hidden:
.. include:: ../README.rst
:start-after: start-include-contact
:end-before: end-include-contact

about
usage
development
.. include:: ../README.rst
:start-after: start-include-copyright
:end-before: end-include-copyright

License
=======

Rohmu is licensed under the Apache license, version 2.0. Full license
text is available in the `LICENSE <LICENSE>`__ file.

Please note that the project explicitly does not require a CLA
(Contributor License Agreement) from its contributors.

Trademarks
==========

PostgreSQL, MySQL, M3 and ClickHouse are trademarks and property of
their respective owners. All product and service names used in this
website are for identification purposes only and do not imply
endorsement.

Credits
=======

Rohmu was created by and is maintained by `Aiven
<https://aiven.io>`__.

Rohmu was originally a part of `PGHoard
<https://github.com/aiven/pghoard>`__ but was later extracted to its
own GitHub project.

The Rohmu logo was created by `@evche-aiven
<https://github.com/evche-aiven>`__.

Contact
=======

Bug reports and patches are very welcome, please post them as GitHub
issues and pull requests at https://github.com/aiven/rohmu . To report
any possible vulnerabilities or other serious issues please see our
`security <SECURITY.md>`__ policy.

Copyright
=========

Copyright (C) 2022 Aiven Ltd and contributors to the Rohmu project.
.. include:: ../README.rst
:start-after: start-include-links
9 changes: 9 additions & 0 deletions _sources/toc.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.. toctree::
:maxdepth: 2
:caption: Contents
:hidden:

autodoc
about
usage
development
13 changes: 9 additions & 4 deletions _sources/usage.rst.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
Usage example
=============
#######
Usage
#######

For real-world usage you can have a look at `how Rohmu is used in
PGHoard <https://github.com/aiven/pghoard/blob/main/pghoard/basebackup.py>`__.
.. include:: ../README.rst
:start-after: start-include-usage
:end-before: end-include-usage

.. include:: ../README.rst
:start-after: start-include-links
Loading

0 comments on commit 6ea2424

Please sign in to comment.