Development for Oracle APEX is performed using Application Builder and code is stored in database. So, this is different than traditional development environment where code is created on developer's workstation and checked into a Source Control System. You can take one of two approaches to automate promotion of APEX applications.

  1. Developers export an application as SQL file(s) and commit to Source Control System. The build in this case is a simple export of Source Control and packaging into a zipped artifact. 
  2. The application files (e.g. pages and components) can be built directly from Application Builder in a Development environment, bypassing a Source Control System all together. 

No matter the approach chosen, the build operation produces a zip file containing the application sql files, and the deploy operation deploys the application to the target APEX database.

FlexDeploy Oracle APEX plugin supports both modes described above. Plugin also supports exporting multiple applications from App Builder with the intention of placing them under source control, which means if you schedule to run this process periodically, you will have history of application changes in SCM.

In FlexDeploy 5.1.0.3 the Oracle APEX plugin has undergone a major overhaul, supporting a very rich set of use cases. As a result the changes are not backward compatible, and will cause refactor of any existing workflows, topology and projects.

Supported Versions

Key Features

Full Deployment vs. Partial Deployment

The FlexDeploy Oracle APEX plugin has support for both the Full Deployment and Partial Deployment models. With the Full Deployment model, an entire APEX application is built and deployed together. This is suitable for smaller applications and smaller development teams when changes can be easily coordinated as a whole. 

With the Partial Deployment model, developers can assemble individual pages and components into FlexDeploy packages, and deploy subsets of the application. This model works well for larger applications and larger development teams when coordinated deployments of the entire application is just not feasible. Within this model there is also an option to build all files in the application, which in effect produces the same result as a Full Deployment. So in effect the Partial Deployment model provides a hybrid approach which allows teams to build and deploy subsets of the application or the entire application on-demand, which is why Flexagon promotes the use of the Partial Deployment model for all teams. As your application or team grows, you will have the ability to adjust your process without any reconfiguration.

With either model you can choose whether to source your application from a Source Control Management system or from Application Builder in a development environment directly.

If you use Force Deploy option during deployment, entire application will be deleted and recreated, otherwise only individual components will be deployed.

If you plan to use partial deployment model, make sure to check Partial Deployments checkbox and select Oracle APEX as project type.

Plugin Operations

Best Practices

Following best practices are captured from references shown below.

References