DbFlow
Deployment framework for Oracle APEX Applications
Install / Use
/learn @MaikMichel/DbFlowREADME
Deployment framework for Oracle Database Applications
<a href='https://github.com/maikmichel/dbflow/releases'><img src='https://img.shields.io/github/v/release/maikmichel/dbflow?color=%23FDD835&label=version&style=for-the-badge'></a> <a href='https://github.com/maikmichel/dbflow/blob/main/LICENSE'><img src='https://img.shields.io/github/license/maikmichel/dbflow?style=for-the-badge'></a>
</div><div align='center'>
Quick Links
<a href='https://maikmichel.github.io/dbFlow/'><img src='https://img.shields.io/badge/DOCS-gray?style=for-the-badge'></a> <a href='https://maikmichel.github.io/dbFlow/start/'><img src='https://img.shields.io/badge/GETTING STARTED-blue?style=for-the-badge'></a> <a href='https://github.com/MaikMichel/dbFlow/blob/master/CHANGELOG.md'><img src='https://img.shields.io/badge/CHANGELOG-green?style=for-the-badge'></a>
</div><br/>
dbFlow is a deployment tool / framework for database driven applications in the oracle environment, mainly in the area of Oracle APEX. With dbFlow you can create and deploy multi-layered applications. dbFLow is powered by Git and can build a deployment / patch from different commit states, which can then be rolled out to different target instances.
Features
- Create an Oracle Database / APEX Project per command line
- Install dependent features like Logger, utPLSQL, teplsql, ...
- Use a fully customizable deployment flow based on Git Flow
- Configure your project dependencies
- Generate and process changelogs
- Create and test nightlybuilds
- Build artifacts / patches based on Git diffs
- Deploy patches to target instances
- Copy configuration to other instances
- Generate Test deployments as Insert Scripts
Generate project "demo"

Install project "demo"

<a href='https://marketplace.visualstudio.com/items?itemName=MaikMichel.dbflow'><img src='docs/images/dbflux.png' width="100px" align="right"></a>
Works best with dbFLux dbFlux
<br/></br> </br>With that in place you get the ability to
- compile SQL or PLSQL based on folder structure
- compile all used schemas
- execute tests based on folder structure
- minify and upload JavaScript to your APEX Application
- minify and upload CSS to your Application
- Export APEX Applications
- Export REST Modules
- Export DB Schema or Objects
- Export Static Application Files
- Create and Upload binary files for reporting (AOP)
- Many small development improvements
Getting Started
With a One-Liner
# Without parameter current directory is used
curl -sS https://raw.githubusercontent.com/MaikMichel/dbFlow/master/install.sh | bash
# Add targetfolder as parameter
curl -sS https://raw.githubusercontent.com/MaikMichel/dbFlow/master/install.sh | bash -s <targetfolder>
Manual
- create a git repositoy
- add dbFlow as
.dbFlowsubmodule to your project
Generate project and setup install to database
- run
.dbFlow/setup.sh --generate <project_name> - answer some question based on your requirements
- Review files, generated for you and make some adjustments
- after that just run
.dbFlow/setup.sh --install
# create a folder for your project and change directory into
$ mkdir demo && cd demo
# init your project with git
$ git init
# clone dbFlow as submodule
$ git submodule add https://github.com/MaikMichel/dbFlow.git .dbFlow
# generate and switch to your development branch
$ git checkout -b develop
# generate project structure
$ .dbFlow/setup.sh --generate <project_name>
# after processing the wizard steps, just install
$ .dbFlow/setup.sh --install
Documentation
Frequently Asked Question
Git creates wrong filenames and dbFlow can't copy / rsync them in a right manner
- This is a git problem and you can turn it off by using following option:
$ git config --global core.quotepath off
Related Skills
tmux
347.2kRemote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
diffs
347.2kUse the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
terraform-provider-genesyscloud
Terraform Provider Genesyscloud
blogwatcher
347.2kMonitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.
