ODI 12.2.1: SCM and Version Control

 

Before You Begin

Purpose

This tutorial covers using ApacheSubversion® for ODI software configuration management (SCM) and object version control.

(Apache, Apache Subversion, and the Apache feather logo are trademarks of The Apache Software Foundation. Subversion and the Apache Subversion logo are registered trademarks of The Apache Software Foundation.)

Time to Complete

Approximately 1 hour.

Background

Previous versions of ODI had an internal form of object version control. The internal versions were stored in the ODI Master Repositories. Starting with version 12.2.1, you can use an external tool for version control such as Subversion. This requires a separate repository. Subversion maintains its repository in the file system. It does not need a database for it. So Subversion's repository and ODI's repository have no connection. In the ODI repository, you configure Subversion connectivity by specifying the underlying Subversion repository URL.

Scenario

Subversion has already been installed for another project. ODI has already been installed for another project. This lab connects the two so that a data warehouse administrator can use Subversion for ODI SCM.

What Do You Need?

  • Software
    • Oracle Enterprise Linux (OEL) 6.4 or higher
    • Oracle Database 12c Release 1 Enterprise Edition (12.1.0.2) - including Oracle Big Data SQL-enabled external tables, Oracle Advanced Analytics, Oracle OLAP, Oracle Partitioning, Oracle Spatial and Graph, and more
    • Oracle Data Integrator (ODI) 12.2.1 or higher
    • Alternatively, the Oracle Data Integrator Getting Started Virtual Machine (the VM) contains all of the above pre-installed.
  • Hardware
    • At least 2 GB RAM for each target (database or ODI)
    • At least 6 GB RAM for the VM (if you are using that)

Prerequisites

Before starting this tutorial, you should:

  • Have at least 6 GB RAM available if you're using the Oracle Data Integrator Getting Started VM
  • Have access to or have installed the sample lab artifacts
  • Have attended ODI 12c training, [D82167GC10] Oracle Data Integrator 12c: Integration and Administration, or equivalent experience.

Typographic Conventions

These are the conventions used throughout this practice to indicate who types what.

  • Filename or /path/subdirectory/. Often you can navigate to a destination without having to type it.
  • Command or value that you type, such as gedit .bashrc. Be mindful of periods at the end of sentences that are not part of the command.
  • Click this such as or .
  • Some variable or <variable> as something you replace. Often prefixed with "my" such as <myName> or <myHost>.
  • A Menu Item or dialog Field Prompt or Tab name. For example, "click the Designer tab and select Models > New Model".
  • Generally a red rectangle in the graphics is not part of the original image, but added to draw your attention to an item.
 

1. Setup / Administration

The SVN repository and its http server should already be installed, configured, started, and available in the VM.

 

1.1 SVN Setup

  1. Open the web browser and go to http://localhost/svn/svnrepository. Enter User Name: odiuser1 and Password: oracle.

    alt desc

    Click to continue. You should see the following success message with the version displayed.

    alt desc
  2. If the URL does not work in the previous step, then run the following commands as root to (re)start the httpd server:

    
     [OS]$ su - root 
     [OS]# service httpd restart 
     Stopping httpd:             [ OK ]
     Starting httpd:             [ OK ]    
     [OS]# exit  
     [OS]$
    		    

    Retry the previous step 1 to see if Subversion works now.

  3. OPTIONAL: After class, you can find out more about Subversion by clicking the logo: S logo.

Subversion is configured and started.

 

1.2 ODI Subversion Connectivity Setup

Choose a Version Control Application for ODI Studio.

  1. If ODI Studio is not started, then start it and Connect to Repository. If you are asked for a wallet password, enter welcome1.

    Connect to Repository
  2. Connect to Login Name: ODI LCM Trunk. (This is the main login for these series of labs.)

    ODI Login

    Click to continue.

  3. On the main menu bar, go to Team > Select Versioning Application.

    alt desc
  4. Select Subversion and click .

    alt desc

    In this environment, there is only one choice for a version application. You could use others.

  5. Click in the Confirmation dialog to disable Legacy Version Control System.

    alt desc

ODI Studio will now use SVN as the team versioning application.

 

1.3 SVN Connectivity Setup

  1. If needed, connect to ODI LCM Trunk again.

  2. On the main menu bar, go to Team > Subversion > Edit Connection.

    alt desc
  3. In the SVN Connection dialog, set the following options:

    • Authentication Type: Http Basic Authentication
    • SVN URL: http://localhost/svn/svnrepository
    • User: odiuser1
    • Password: oracle (non-display)
    alt desc

    Click .

  4. Go to Team > Subversion > Configure.

    alt desc
    1. Click Create Default Project Structure.
    2. Config SVN
    3. Set SVN Project Name: ODI_BETA and add Comments that it is the trunk of the svn project where ODI artifacts are maintained.
    4. Project Name

      Generally speaking, the Comments or Description in SVN is mandatory. Click .

    5. Set ODI_BETA for the SVN project name, select Trunk. Select VCS Key. Click . Enter New VCS Key: oracle123 twice.
    6. Enter VCS Key

      Click on Enter VCS Key dialog. (VCS stands for "Version Control System.") Click on the Configure dialog.

The SVN configuration is done and it can be used for creating ODI artifacts versions. (There is no "Test" button.) You may be prompted to disconnect from the repository for the changes to take effect. Reconnect to the ODI LCM repository before continuing with the steps in this OBE.

You should now have SVN connectivity set up.

 

2. Checkin / Checkout ODI artifacts in SVN

During the lifecycle of an ODI object (folder, datastore, package, most any kind of object), you may add, view, save, compare, change, restore, and delete versions of that object.

 

2.1 Adding ODI artifacts to SVN

  1. On the Designer tab, expand [+] Projects > Demo > Sales Administration Demo > Mappings.

    Right-click Load TRG_SALES and select Version > Subversion > Add to VCS.

    Add to VCS
  2. A dialog is opened showing that the parent objects for the mapping are also going to be added to VCS.

    Set Comments as something similar to, "This is the initial state."

    Add ODI Objects

    Click .

  3. Click on the success Information dialog.

    Success

You have added a version of an object to the SVN.

 

2.2 Adding All Non-Versioned Objects to Subversion

This will be done in two waves: the first wave is adding most of the objects, but we will pretend that the last four objects did not exist yet. The second wave we will pretend happened some time later after four new objects are created and now need to be versioned.

  1. On the main menu bar, go to Team > Subversion > Add Non-versioned Objects.

    alt desc
  2. In the Add ODI Objects to Subversion dialog, deselect the last four entries, and set Comments as something similar to,
    "I deselected the last four entries."

    Add all but 4

    Click (this may take a while).

  3. Click on the success Information dialog.

    Success
  4. Repeat step 2.2.1 again. Only the four objects that were not added earlier appear in the list.

    Add some Comments: and click to add them to SVN.

    alt desc

    Click on the success Information dialog.

You have added a version of ALL objects to the SVN.

 

2.3 Viewing Version History

  1. On the Designer tab, expand [+] Models > ODI_DEMO > Sales Administration > TRG_CUSTOMER. Right-click TRG_CUSTOMER and select Version > Subversion > Version History.

    Version History
  2. Expand Version Search Criteria, and then make sure that Trunk and Date Range are selected as Search Criteria.

    Vers History

    Click . The Date Range is assumed to be today.

  3. The object versions available in the Subversion repository are listed in the dialog.

    Inspect different columns in the table to the version attributes.

    History

    Columns are Version, Action, Path, Date, SVN User, ODI User, Comments, and Copy Source. Your values for Version, and of course Date, will be different from what is shown.

  4. Select the entry from the list and click Compare (side-by-side dots) to compare the Subversion version with repository object.

    alt desc
  5. A dialog would be shown saying, "No difference found."

    No difference

    Click on the Information dialog. Close the Version History tab.

You have viewed version history. In initial (trivial) cases, that may be no history of differences.

 

2.4 Saving Updates to SVN

  1. On the Designer tab, expand [+] Models > ODI_DEMO > Sales Administration > TRG_CUSTOMER > Attributes. Right-click Attributes and add any New Attribute, for example, Email.

    add attriubute

    Save diskette the attribute. Close the tab.

  2. Right-click TRG_CUSTOMER and select Version > Subversion > Create VCS Version.

    Create VCS Version
  3. Add Comments. You do not need to add name/date of change as that is included automatically.

    alt desc

    Click .

  4. An Information dialog is shown notifying the successful operation.

    Success

    Click .

  5. View the version history again by right-clicking Models > ODI_DEMO > Sales Administration > TRG_CUSTOMER and select Version > Subversion > Version History.

    Version History
  6. Make sure that the Trunk checkbox is selected. Click .

    Multiple versions of the object are shown in the version history. (Scroll horizontally to see them all, especially the comments.)

    alt desc

    Close the Version History tab.

You have saved object changes to SVN.

 

2.5 Comparing SVN Objects and Comparing Objects

  1. Open the Version History Dialog by expanding [+] Models > ODI_DEMO > Sales Administration > TRG_CUSTOMER, right-click TRG_CUSTOMER, and select Version > Subversion > Version History.

    Version History

    Click .

  2. Hold [Ctrl] and select the two version entries.

    Click the Compare icon (side-by-side dots) and select Compare Selected Versions.

    Compare Versions
  3. The Version Compare Results window is opened showing the difference between the two object versions.

    alt desc

    Note the attribute you added at the end, in green.

  4. Click the Coloring and Filtering icon (3 lines). Deselect the Unchanged (white) filter for both Object and Field. This would now show only the difference between the two objects.

    alt desc

    You can further narrow the difference if you are interested in only additions or deletions. You can also change the colors used for a given status (for example, if you are red/green colorblind).

    Click in Display Options.

  5. Inspect the differences by expanding [+] the nodes.

    Compare Results

    Notice the two version numbers selected (in this case 224 and 228, your numbers may be different) are shown at the top of the columns. Close the Version Compare Results tab.

  6. Open Version History again (step #1) and select only one entry, the top (earliest) one. Click Compare (side-by-side dots) to compare the SVN version with the current (latest) object in the repository.

    Compare w/Repo Obj

    Your version numbers may vary from what is shown in this example.

  7. Click the Coloring and Filtering icon (3 lines) and uncheck Unchanged (white) checkbox to see only the modified attributes.

    Display Options

    Notice the right-hand column at the top used to have a Version number, now it simply says, "Repository Object." Close the Version Compare Results tab.

You have compared versions of objects to each other and compared an object to the current repository object.

 

2.6 Restoring from Subversion

There are two flavors of restore: Without Merge and With Merge. They are pretty similar right up until the last step.

WITHOUT MERGE:

  1. On the Designer tab, expand [+] Models > ODI_DEMO > Sales Administration >  TRG_CUSTOMER. Right-click TRG_CUSTOMER and select Version > Subversion > Restore from VCS.

    Restore from VCS
  2. Click Select Version in the Restore Object from Subversion Repository dialog.

    alt desc

    This will populate the empty Version box.

  3. Select the oldest version from the Version Selection dialog.

    Version Selection

    Click . Note that hovering over a truncated field (such as Date) displays the whole field (in this case, with hh:mm:ss).

  4. Now that the Version: field is populated, click .

    Click OK
  5. The Import Report is shown for successfully importing the object from repository. Open the TRG_CUSTOMER datastore, expand Attributes, and verify that your newly added column (Email) is not present anymore. (You may have to Refresh (circle arrows) to clear out the column from the Designer > Models tab.)

    Import Report

    the Import Report.

WITH MERGE:

  1. Perform Step #1-2 again and select the newest version this time, which has the newly-added attribute.

    Newest

    Click .

  2. Select Restore with Merge.

    Restore with Merge

    Click .

  3. The difference in the repository object and Subversion object is shown in the Compare Results tab.

    alt desc

    Notice that it is showing the missing attributes in the repository copy of the object which is present in VCS copy.

  4. Click Perform Merge (2 green arrows w/?) to open the Merge Results window below.

    Merge window

    Scroll down (or filter) to see the conflicts marked with a red x on the Attribute icon (red x).

  5. In Merge Results, click Edit Repository Object (pencil) to open the corresponding datastore. In TRG_CUSTOMER, click Add (green plus) and make changes as needed.

    alt desc

    Save diskette it. Close all of the Version tabs.

You have done a restore from Subversion both with and without a merge (manual resolution).

 

2.7 Restoring Deleted Objects

  1. On the Designer tab, right-click Models > ODI_Demo and select Version > Subversion > Create VCS Version.

    Create Version menu
  2. Add Comments.

    Create version w/comments

    On the Create Version dialog, click . On the Information dialog, click .

  3. Delete Models > ODI_DEMO > Sales Administration > TRG_SALES.

    alt desc

    On the Confirmation dialog, click to remove TRG_SALES.

  4. Repeat steps 1 and 2 again (Create Version, Add Comments).

    Version w/Delete

    Notice TRG_SALES is missing from the Designer Models, and is so noted in the Action as Deleted. Click twice.

  5. On the main menu bar, go to Team > Subversion > Restore Deleted Object.

    Restore Deleted Objs
  6. Select an appropriate date range (defaults to today, which is fine).

    alt desc

    Click .

  7. Select the TRG_SALES entry to restore and click the Restore object icon (disk w/arrow).

    alt desc

    If the Import Report looks okay and says that TRG_SALES has been imported successfully, the report, then the Restore Deleted dialog.

  8. Click Refresh (circle arrows) and verify that the deleted datastore TRG_SALES has reappeared in the list of Models.

    alt desc

You have restored a deleted object.

You have checked in and checked out ODI objects in SVN.

 

3. Branch and Label Management

A quick overview of versioning terminology might be helpful:

  • Tag and label corresponds to same thing. A tag/label is applied a particular version of a set of objects/files so that the same set of objects versions can be retrieved from SVN system using this tag. For example, Tag T1 is created for file A version 21 and file B version 51. So whenever you retrieve files for Tag T1 you will always get A v21 and B v51.
  • A branch is created from a tag so that so that any changes made on the branch are isolated within the branch.

The following diagram illustrates the versions, tags and branch for a file in a trunk and branch:

SCM Overview
 

3.1 Creating Tags

There are three kinds of tags: full, partial, and branch from tags.

  1. Create a full tag as follows:

    1. On the main menu bar, go to Team > Subversion > Create Full Tag.
      main menu bar
    2. Set Tag name as Full Label 1.0 and comment.
      Full Tag

      Click . (This may take a while.) Click in the success Information dialog.

  2. Create a partial tag as follows:

    1. On the main menu bar, go to Team > Subversion > Create Partial Tag.
      main menu bar
    2. Drag and drop Version Control Folder under Projects > Beta and the Version Control folder under Models on the left side of Objects to be Added. It automatically brings in all the dependent objects.
    3. Set Tag name as Partial Label VCS and comment.
      Partial Tag

      Click . Click in the success Information dialog.

  3. Create a branch from tag as follows:

    1. On the main menu bar, go to Team > Subversion > Create Branch from Tag.
      main menu bar
    2. Set the Branch name as DevBranch and comment, select the Partial Label VCS tag.
      Branch from Tag

      Click . Click in the success Information dialog.

You have created three kinds of tags: full, partial, and branch from.

 

3.2 Viewing Version Tree

  1. On the Designer tab, expand [+] Models > ODI_DEMO > Sales Administration > TRG_CUSTOMER, then right-click TRG_CUSTOMER and and select Version > Subversion > Version Tree.

    alt desc

    The Version Tree editor is opened showing different version, tags, and branches for the object from Subversion.

    Version tree

    You have to scroll pretty far horizontally to see everything. Notice the Thumbnail in the top left corner for fast scrolling.

  2. Click different versions to view the version attributes. (Your numbers may vary.)

    alt desc

    Rectangles are versions, ovals are actions. Yellow oval means Action=Added, White oval means Action=Modified.

  3. Select two version nodes and click Compare (side-by-side dots) to compare the versions.

    alt desc
    alt desc

    Close the Version Compare Results tab, leave TAB_TRG_CUSTOMER.xml open.

  4. Select a single version node and click Compare (side-by-side dots) to compare it with Repository Object.

    alt desc
    alt desc

    Close the Version Compare Results tab, leave TAB_TRG_CUSTOMER.xml open.

  5. Click the Filter (funnel) to filter out nodes based on date range.

    Version Tree Filter

    Click .

  6. Click Refresh (circle arrows) to refresh and see the full version tree again. Close the TAB_TRG_CUSTOMER.xml tab.

You have explored the version tree.

 

3.3 Configuring ODI Repository for SVN Branch

  1. From the main menu bar, select ODI > Disconnect. Then Connect to Repository, to the blank repository using Studio Login ODI LCM Branch.

    Wallet signin

    The User/Password should be pre-populated. Click . (If you are ever prompted for the Wallet password, it is welcome1.)

  2. Select Subversion as the Versioning Application, configure Connection URL/User/Password, and Settings Work/Merge area. This was covered in all of Topic 1.2 and Topics 1.3.1 through 1.3.3. Studio will remember many of the values as defaults from the previous Repository configuration.

  3. Go to Team > Subversion > Configure.

    alt desc
  4. Set the following configuration values:

    1. Subversion Project Name: ODI_BETA.
    2. Select Branch radio button and select the branch DevBranch from drop down.
    3. Select VCS Key. Click . Enter New VCS Key as oracle123 twice. Click .
    alt desc

    Note: You can also create a new branch from a tag by clicking .

    Click . You are required to then reconnect in order for the changes to take effect.

You have configured the SVN repository for a branch.

 

3.4 Populating Repository from VCS

  1. From the main menu bar, go to Team > Subversion > Populate Repository from Branch/Trunk.

    alt desc

    This is still using the new repository ODI LCM Branch from the previous topic 3.3.

  2. Click on the confirmation dialog.

    alt desc

    As it warns you, this could take a while. the Import Report if it looks successful.

  3. On the Designer tab, click Refresh (circle arrows) and verify that the Sales Administration Demo mappings and models are populated in Studio.

    Refresh Designer

You have populated an empty repository from VCS.

 

3.5 Performing Branch Merge

  1. Still using the new repository login ODI LCM Branch from the previous topic 3.3, make following changes:

    1. Duplicate Models > ODI_DEMO > Sales Administration > TRG_CUSTOMER datastore.
      Duplicate MOVIE

      Click in the Confirmation dialog.

    2. Add a New Attribute to the Models > ODI_DEMO > Sales Administration > TRG_CUSTOMER datastore.
      Add AWARDS col

      Save diskette and close the datastore.

    3. Open Projects > Demo > Sales Administration Demo > Mappings > Load TRG_CUSTOMER and edit the Target Expression SRC_CUSTOMER.CUSTID + 1 to be SRC_CUSTOMER.CUSTID + 2. (Any trivial change to the mapping is the goal.)
      Change ID to +1

      Save diskette and close the mapping.

  2. Right-click Designer > Models > ODI_DEMO and select Version > Subversion > Create VCS Version.

    alt desc

    Add a Comment.

    alt desc

    Click twice.

  3. Similarly, create a version of Projects > Demo too.

    alt desc

    Add a Comment.

    alt desc

    Click twice.

  4. Log out (ODI > Disconnect) and log in (Connect to Repository) with ODI LCM Trunk main Login Name for trunk.

    alt desc

    Click .

  5. On the main menu bar, go to Team > Subversion > Create Full Tag.

    Main menu

    Name the full tag Full Label 2.0. Add Comments.

    Create full tag

    Click . (This may take a while.) Click again.

  6. On the main menu bar, go to Team > Subversion > Merge.

    main menu

    Select Merge Type: Branch radio button, and select the branch Source: DevBranch from drop down.

    alt desc

    The default Merge Name (with date/time suffix) is fine. Click . If the Merge Summary looks successful, click .

  7. Merge is performed and the Merge Summary is shown. Examine the conflicts in the objects that are modified in the branch.

    Merge Summary
  8. Close Merge Summary page and the Merge Results editor is shown with the Merge Objects list. Select Merge Object Filter as Conflict to view only the conflicted objects.

    Merge Results
  9. Select the datastore TRG_CUSTOMER and click Fix Merge Conflict (2 arrows?) which will open the Merge Conflict Resolution tab with the differences between the two objects.

    Fix Conflict Conflict Resolution
  10. Inspect the differences and click Edit repository object (Pencil) which will open the datastore to make changes.

    Edit datastore

    Currently the editor is opened in readonly mode.

  11. Notice the red X indicator (red x) next to the datastore in the navigation tree. Open the datastore for editing. Add/modify the datastore based upon the differences: remove the Gender attribute, then save the datastore.

  12. Click on the green check (green check) to mark the object as resolved/fixed.

    Click check

    After you click it, it will go from green to gray.

  13. Go back to the Merge Object Selection tab. Notice the Mark Object Merged column. The datastore is marked as resolved.

    alt desc
  14. Resolve conflicts in Load TRG_CUSTOMER: Change Target expression for CUST_ID attribute to SRC_CUSTOMER.CUSTID + 2. Mark them as resolved.

    All Resolved
  15. Mark all other object as resolved by Selecting All objects (check boxes) and click Save All (diskettes).

    alt desc

    Close the Merge Results tab.

You have completed a branch merge.

 

3.6 Viewing Merge Summary

You automatically get to see the Summary report of the last merge you just did, this option shows you merges that may have happened before that.

  1. Go to Team > Subversion > Merge Summary.

    alt desc
  2. Accept the defaults. (There is currently only one merge to choose from.)

    alt desc

    Click .

  3. Inspect the Merge Summary reports available by changing the Merge Status filters (All, Completed, In Progress) on the previous dialog.

    alt desc

    If any objects are In Progress, then the whole merge is In Progress. Click .

You have viewed the merge summaries.

You have created tags, viewed version trees, made branches, and merged them.

 

4. Release Management

You will create, view, apply, and roll back archives and patches.

 

4.1 Creating Deployment Archives

There are several kinds of Deployment Archives: Full, Selected, and from VCS tags.

  1. Create a Full Repository Archive:

    1. From the main menu bar, go to Team > Deployment Archives > Create From Repository > Full Repository.
      main menu
    2. Set Deployment Archive Name, Folder Path, and Description.
    3. Set Export Key as oracle123 twice.
      Create DA from Full

      Click on Create dialog. (This takes a long time, approx 5 minutes. Get coffee.) Click on Success dialog.

  2. Selected Objects from Repository:

    1. From the main menu bar, go to Team > Deployment Archives > Create From Repository > Selected Objects.
      main menu
    2. Set Deployment Archive Name, Folder Path, and Description.
    3. Set Export Key as oracle123 twice.
    4. Drag and drop Project Version Control into the Objects to be added dialog.
      Create DA from Selected

      Click on Create dialog. Click on Success dialog.

    5. Repeat Step 4.1.2.a. through 4.1.2.c. while selecting only a couple of mappings to create a Patch Deployment Archive. MAKE SURE you select Patch Deployment Archive (not Initial as the default).
      alt desc

      Click on Create dialog. Click on Success dialog.

    6. Check the file structure you created so far.
      
       [OS]$ cd ~/Documents/ 
       [OS]$ ll 
       total 12208
       -rw-r-----. 1 oracle oinstall 5931861 Feb  6 21:44 EXEC_my_full_archive.zip
       -rw-r-----. 1 oracle oinstall     530 Feb  6 22:04 EXEC_my_patch_archive.zip
       -rw-r-----. 1 oracle oinstall     523 Feb  6 21:33 EXEC_my_selective_archive.zip   
       -rw-r-----. 1 oracle oinstall 6341439 Feb  6 21:44 my_full_archive.zip
       -rw-r-----. 1 oracle oinstall  105352 Feb  6 22:04 my_patch_archive.zip
       -rw-r-----. 1 oracle oinstall  105344 Feb  6 21:33 my_selective_archive.zip
       [OS]$ 
      		    

      You can put them anywhere, this is just an example.

  3. From VCS tag:

    1. On the main menu bar, go to Team > Deployment Archives > Create from VCS Label.
    2. Set Deployment Archive Name, Folder Path, VCS label, and Description.
    3. Set export key as oracle123.
    DA from VCS

    Click . Click on Success dialog. A Deployment Archive is created with the objects present in the VCS tag/label.

You have created multiple kinds of deployment archives (zip files) and stored them in /Documents.

 

4.2 Viewing Available Deployment Archives

  1. On the main menu bar, go to Team > Deployment Archives > View Details.

    main menu
  2. Set the Folder Path where the Deployment Archives were created.

    DA details

    You cannot type the Folder Path, you must use Browse (magnify Glass).

  3. View various Initial and Patch deployment archives.

    View DA

    Click twice.

You have viewed initial and patch deployment archives (zip files) from /Documents.

 

4.3 Applying Initial Deployment Archive

  1. On the main menu toolbar, do ODI > Disconnect, then Connect to Repository, then switch to Login for ODI LCM Production. (The User/Password should be pre-populated, but if not, then use SUPERVISOR/welcome1.)

    Switch logins

    The production repositories are not supposed to be connected to SVN. SVN configuration is allowed only for development repositories.

  2. On the main menu bar, go to Team > Deployment Archives > Initialize Deployment Repository.

    alt desc

    If the options are grayed out, then you must not have picked the PRODUCTION repository.

  3. Set the path to the folder /home/oracle/Documents (or wherever you put them).

    alt desc

    You cannot type the Folder Path, you must use Browse (magnify Glass).

  4. Select deployment my_selective_archive and click .

    Deployment Archives

    Q: "Why EXEC_ prefixes?"
    A: ODI has two types of work repositories: development and execution. Development repositores can hold all kinds of artifacts that developers create, such as mappings, datastores, packages, and so on. Execution repositories are strictly for production environments where modifying objects is not allowed. So in an execution repository, only scenarios and loadplans are allowed to reside, which are the executable objects in ODI. So here EXEC_ archives contain only the executable artifacts and is for the execution repository where design-time objects cannot reside.

  5. Enter the Export Key of oracle123.

    alt desc

    The export key is what is used for the import operation... Click on Success dialog.

You have deployed a production initial archive.

 

4.4 Applying Patch Deployment Archive

  1. On the main menu bar, go to Team > Deployment Archives > Patch Deployment Repository.

    main menu
  2. Set the Path to the folder /home/oracle/Documents (or wherever you put them), and select my_patch_archive patch deployment.
    (See the discussion on step 4.3.4 for the difference between my_patch_archive and EXEC_my_patch_archive.)

    Select Create Rollback Deployment Archive, set the Rollback DA Path where rollback deployment archive zip is to be created.

    Patch DA

    Click .

  3. Enter the Export Key of oracle123.

    Export Key

    Click on Success dialog.

You have deployed a production patch archive.

 

4.5 Viewing Applied Patches

  1. On the main menu bar, go to Team > Deployment Archives > Inventory.

    Menu Team DA Inventory
  2. The list of patch and full Deployment Archives are listed in the tables.

    Inventory

    Click .

You have viewed the patches and deployment archives that have been applied to the production repository.

 

4.6 Rollback a Patch

  1. On the main menu bar, go to Team > Deployment Archives > Rollback.

    main menu
  2. Set the following parameters:

    1. Set Deployment Archive Folder Path: to /home/oracle/Documents (or wherever you put them).
    2. Select a rollback Deployment Archive. Click .
    3. Enter the Export Key of oracle123.
    Rollback Archive

    Click .

You have rolled back a patch archive to the previous state.

You have managed the creation, release, rollout, and rollback of deployment archives.

 

Want to Learn More?

In this Oracle By Example (OBE) tutorial, you learned how to:

  • Perform the initial setup and administration of Apache Subversion (SVN) and ODI
  • Check objects in and out of SVN, add, delete, and restore objects
  • Configure branch and label management
  • Manage releases of software

Resources

Conceptual or procedural Help topics relevant to the topic of this tutorial:

Credits

As always, a team effort. This is a partial list of the team:

  • Lead Curriculum Developer: Ayush Ganeriwal
  • Other Contributors: Steve Friedberg, Julien Testut, Alex Kotopoulis