Skip to main content

A Python-based tool for tracking Oracle database object DDL with git

Project description

Oracle Object Tracker

oracle-object-tracker-ci Supported Python Versions PyPI version PyPI Downloads

Install package

You can install oracle-object-tracker from source.

Option 1 - from PyPi

# Create the virtual environment
python3 -m venv .venv

# Activate the virtual environment
. .venv/bin/activate

pip install oracle-object-tracker

Option 2 - from source - for development

git clone https://github.com/TruckCab/oracle-object-tracker.git

cd oracle-object-tracker

# Create the virtual environment
python3 -m venv .venv

# Activate the virtual environment
. .venv/bin/activate

# Upgrade pip, setuptools, and wheel
pip install --upgrade pip setuptools wheel

# Install Sidewinder-DB - in editable mode with dev dependencies
pip install --editable .[dev]

Note

For the following commands - if you running from source and using --editable mode (for development purposes) - you will need to set the PYTHONPATH environment variable as follows:

export PYTHONPATH=$(pwd)/src

Usage

Help

oracle-object-tracker --help
Usage: oracle-object-tracker [OPTIONS]

Options:
  --version / --no-version        Prints the Oracle Object Tracker version and
                                  exits.  [required]
  --username TEXT                 The Oracle database username to connect
                                  with.  [default: truck_cab; required]
  --password TEXT                 The Oracle database password to connect
                                  with.  [required]
  --hostname TEXT                 The Oracle database hostname to connect to.
                                  [default: oracle.truckcab.us; required]
  --service-name TEXT             The Oracle database service name to connect
                                  to.  [default:
                                  tcmpdb.sub10220134282.tcmvcn1.oraclevcn.com;
                                  required]
  --port INTEGER                  The Oracle database port to connect to.
                                  [default: 1521; required]
  --schema TEXT                   The schema to export objects for, may be
                                  specified more than once.  Defaults to the
                                  database username.  [default: TRUCK_CAB;
                                  required]
  --object-type TEXT              The object types to export.  [default:
                                  CLUSTER, DATABASE LINK, FUNCTION, INDEX,
                                  JAVA SOURCE, JOB, MATERIALIZED VIEW,
                                  MATERIALIZED VIEW LOG, PACKAGE, PACKAGE
                                  BODY, PROCEDURE, SEQUENCE, SYNONYM, TABLE,
                                  TRIGGER, TYPE, TYPE BODY, VIEW; required]
  --object-name-include-pattern TEXT
                                  The regexp pattern to use to filter object
                                  names to include in the export.  [default:
                                  .*; required]
  --object-name-exclude-pattern TEXT
                                  The regexp pattern to use to filter object
                                  names to exclude in the export.
  --output-directory TEXT         The path to the output directory - may be
                                  relative or absolute.  [default: /var/folder
                                  s/c8/b5pj7nzx627_9tbw374v3r1h0000gn/T/output
                                  ; required]
  --overwrite BOOLEAN             Controls whether to overwrite any existing
                                  DDL export files in the output path.
                                  [default: False; required]
  --git-repo TEXT                 Allows you to specify a git repository to
                                  push the output files to.  The repository
                                  must be accessible via SSH. Example:
                                  git@github.com:some-org/some-repo.git See: h
                                  ttps://docs.github.com/en/authentication/con
                                  necting-to-github-with-ssh/adding-a-new-ssh-
                                  key-to-your-github-account for more
                                  information on setting up SSH keys for
                                  GitHub.
  --git-branch TEXT               Specify the git branch to push to - if the
                                  --git-repo arg is used.  [default: main]
  --log-level TEXT                The logging level to use for the
                                  application.  [default: INFO; required]
  --help                          Show this message and exit.

Handy development commands

Version management

Bump the version of the application - (you must have installed from source with the [dev] extras)
bumpver update --patch

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oracle_object_tracker-0.0.5.tar.gz (9.0 kB view hashes)

Uploaded Source

Built Distribution

oracle_object_tracker-0.0.5-py3-none-any.whl (8.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page