Oracle ACMP and Subversion - Best Practice
Oracle ACMP and Subversion - Best Practice
Oracle ACMP and Subversion - Best Practice
Agenda
Customization Manager
Patch Manager
Setup Manager
Patch Manager
Setup Manager
Enforce dependencies among related data Bundle discrete extracts into complex, reusable packages Reduce time to propagate setups to other instances Enable customers to run their own custom extracts/loads
ACMP Architecture
Agent
R12
OEM 11g
Agent AMP ACMP
R12
V4.0
Agent
11i
In this Section
Best Practice using Subversion together with ACMP
Subversion Structure Main Development Area Code Releases Packaging Branching Readme
Subversion Structure
Requirement
Develop 3 CEMLIs, one for Payables, another for Inventory and a third for Service
Code Releases
As the code development goes on, we will reach a stage to release a code set Code releases are transferred into the release folder (just a synonym for tag)
use
Packaging
Whereas Code Packaging can be performed from any place, the default is the release tree To keep the package definition as static as possible, we suggest to reuse the user name field as release identifier and adapt the command accordingly
Release requested
Modified Command
10
Branching
To use when you continue with certain development without disturbing the main path (trunc) Such an area could also act for bug fixing for Release 1, whereas Release 2 is already in development (continued in trunc) Branches are parallel to trunc, and can be merged back into trunc when needed
Branch Identifier in between
11
use
12
13
Readme
It is suggested to create a readme and place it inside your package (txt and html types are automatically recognized by ACMP for copy only) The default path should be readme or just a . Use a template to cover the main sections, such as
Pre Installation Tasks Installation Tasks Post Installation Tasks
Pre defined content will guide the developers to complete it quickly If certain documents are related to this development, additional links pointing to such documents can be helpful too
14
15
Readme Handling
A readme file as part of the patch
16
Code Rules
There are a number of code rules to follow, otherwise adpatch will not accept the patch as a whole Such code rules are usually header information (like adpatch instructions) and closing lines (like an exit; in sql files) ACMP runs a built-in file checker every time you package your custom files. This will also help validating in advance. The $Header$ tag will be recognized, but only the version number will be changed. Therefore you need to enter the correct $Header$ line. Additionally, the Subversion tag $Id$ can be added to derive the version info during check-in In case of binaries the file name has to match exactly
See ACMP User Guide Chapter 3-4
17
Thank You!
Volker Eckardt
e-business consulting
[email protected] www.cp-ebusiness.com