The following folder structure is recommended for Source Control (SVN, GIT, TFVC, CVS etc). You can follow a different structure than this, but you will need the * Source Directory properties at the FlexDeploy project level to make sure the files are processed correctly. For example, if you put Java code in a different folder, just update the EBS Java Root Source Directory property on your project to the folder name where you are storing Java files.

See below some examples of Source Control folder structure and FlexDeploy project organization. These are just some of the recommendations, as there are numerous combinations possible.

Note that each FlexDeploy project typically deploys customizations to one EBS TOP. You could have files in FlexDeploy Project that deploy to multiple EBS TOP but that would require updating various properties manually.


Source Control StructureFlexDeploy Project Setup

This is most common Source Control Folder structure. There is a folder for custom top and sub-folders for types of files.

  • Option 1
    • Project - XXHR
    • You can create a FlexDeploy Project named XXHR and point it's source configurations to the XXHR folder in the Source Control Repository. All files populated in this FlexDeploy project will look like /cp_sql/my.sql, /import/my.ldt.
    • Developers can create Packages with files they are interested in and deploy to various environments.
    • As always, files can also be added to be pulled from EBS instead of Source Control Repository.



  • Option 2 (Not Recommended)
    • Application - XXHR
    • Project(s) - XXHR1, XXHR2...
    • You can create FlexDeploy Application named XXHR with and multiple projects under it to include specific set of files or folder. You will still point this project to XXHR folder in Source Control Repository. Only part of the files populated in this FlexDeploy project  and they will look like /cp_sql/my.sql, /import/my.ldt.
      • You can control files or folders populated in project by using Project File Includes and Project File Excludes property on Project.
    • Developers can create Package with files they are interested in and deploy to various environments.
    • As always, files can also be added to be pulled from EBS instead of Source Control Repository.
    • This is not a recommended option as the Source Control Structure does not match FlexDeploy project setup, but there are not technical limitations here.


In this Source Control setup we have created one folder for each extension which will contain files developed for that specific extension. It is important to note that the folder structure under each extension has folders like cp_sql, sql, import, workflows, publisher etc. to identify specific files. The workflows folder can hold both wft and wfx files.

Each extension folder will be used to create new FlexDeploy project.

Application - XXAP

  • Option 3
    • one project and override the TARGET_LOCATION parameter scripts. This is very similar to Option 1 above.


  • Option 4
    • Multiple projects like Extension1, Extension2, Extension3
    • The files in each are different, so this is a fine approach.
  • Create a FlexDeploy Application named XXAP with and multiple projects under it, one for each Extension folder.
  • Point the source for each FlexDeploy project to a specific Extension folder in the Source Control Repository.
  • Files populated in FlexDeploy project will look like /cp_sql/my.sql, /import/my.ldt.
  • Developers can create Packages with files they are interested in and deploy to various environments.
  • Packages will be deployed from various projects. They can be managed as a unit with a release.
  • As always, files can also be added to be pulled from EBS instead of Source Control Repository.