A Python-based tool for tracking Oracle database object DDL with git
Project description
Oracle Object Tracker
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. [required]
--password TEXT The Oracle database password to connect
with. [required]
--hostname TEXT The Oracle database hostname to connect to.
[required]
--service-name TEXT The Oracle database service name to connect
to. [required]
--port INTEGER The Oracle database port to connect to.
[required]
--schema TEXT The schema to export objects for, may be
specified more than once. Defaults to the
database username. [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
Built Distribution
File details
Details for the file oracle_object_tracker-0.0.9.tar.gz
.
File metadata
- Download URL: oracle_object_tracker-0.0.9.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73b7a0faa7286c583dbc48ec96b770c2ce2a87890d6904826be59d8ea7e77ee7 |
|
MD5 | 5bcadb7269c9888652b06c49cc37a151 |
|
BLAKE2b-256 | 35786bcb91527a6656393400dde86b44a62b7bce14449e582d6296e6f0555243 |
File details
Details for the file oracle_object_tracker-0.0.9-py3-none-any.whl
.
File metadata
- Download URL: oracle_object_tracker-0.0.9-py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | af49ecbbd9164c8668af2658392120d3c02264022ea78d6ab805b27a05ebaea1 |
|
MD5 | 81b54f5146fc36cc05abf9993bb10514 |
|
BLAKE2b-256 | fae823488db3566fc3bcefba170c31a0fd7ed17e216e83fe987881fa99be6a1d |