deploydb package

Submodules

deploydb.db module

class deploydb.db.Database(creds: deploydb.model.DbCreds)[source]

Bases: object

Represents a database connection

connect(db_name='master')[source]

deploydb.model module

class deploydb.model.Config(*, local_path: str, https_url: str = None, ssh_url: str = None, target_branch: str, db_creds: deploydb.model.DbCreds)[source]

Bases: pydantic.main.BaseModel

db_creds: deploydb.model.DbCreds
https_url: Optional[str]
local_path: str
ssh_url: Optional[str]
target_branch: str
class deploydb.model.DbCreds(*, driver: str, server: str, user: str, passw: str, default_db: str)[source]

Bases: pydantic.main.BaseModel

default_db: str
driver: str
passw: str
server: str
user: str

deploydb.script module

deploydb.utils module

Module contents

Top-level package for deploydb.

class deploydb.Base(config)[source]

Bases: object

Check and validate configuration.

class deploydb.Listener(config, *, ssh_path='~/.ssh/id_rsa', changelog_path='changelog.csv', err_path='errors.csv')[source]

Bases: deploydb.Base

policy(file)[source]

Determine if the script be able to execute ?

sync(loop=False, sleep=15, max_retry=3)[source]

Handles changes and deploys to your server automatically.

Args:

loop (bool, optional): creates infinite loop to handle changes. Defaults to False. sleep (int, optional): determines how many seconds will run. Defaults to 15. max_retry (int, optional): if any error occurs how many times will retry. Defaults to 3.

class deploydb.RepoGenerator(*, config, export_path, includes=[], excludes=[], err_file_path='errors.csv')[source]

Bases: deploydb.Base

It will create your database object’s script that you need.

Args:

config (Any): config file or a dict. export_path (str): where the exported files locate includes (list, optional): default takes all databases from the given credential. excludes (list, optional): exclude databases from the given credential. err_file_path (str, optional): where the errors locate. Defaults to “errors.csv”.

Example:

from deploydb import RepoGenerator

scripter = RepoGenerator(

config=”config.json”, export_path=”path-to-export”, includes=[], excludes=[]

) scripter.run()

run()[source]