Document toolboxDocument toolbox

Git Commit in Bulk Using MettleCI Command Shell and Git

When you have a large DataStage project which you wish to get under Git version control it would be onerous to have to commit each individual artefact using the MettleCI Workbench individually. A much more efficient approach to use the MettleCI Command Line Interface. This procedure requires your computer to have both a Git client and the MettleCI Command Line Interface installed. The primary input to the process is a whole-of-Project 'archive' ISX files for each Project you wish to import into Git.

Installing the MettleCI Command Shell

See the MettleCI Command Shell installation documentation

Initial commit procedure

  1. Ensure the DataStage project ISX file(s) you wish to commit are available on your machine.

  2. Use your Git client to clone the remote Git repository you will be checking into.  Ensure the current branch is master.

  3. Check whether the cloned Git repository has a datastage directory at the root. If this doesn't exist create it now. This folder is mandatory in order for MettleCI's automated deployment function to operate correctly.

  4. Check whether the cloned Git repository has a filesystem directory at the root. If this doesn't exist create it now. This folder is mandatory in order for MettleCI's automated deployment function to operate correctly.

  5. Navigate to the command shell folder and locate the mettleci.cmd file.

  6. Run the command shell by executing either the mettleci or mettleci.cmd from the command line. This will start an interactive session, the current working directory does not matter.

  7. Run the isx cut command to split the project ISX file(s) into a temporary directory, this step can be repeated multiple times if there is more than one ISX for a given project. Documentation of this command can be found here.

  8. The cut ISX files will be dumped into your temporary directory in the following directory structure <ISX source engine name>/<ISX source project name>/<category name - recursive>/<Job Name>.isx

  9. Copy all ISX files and directories from within the <source ISX project name> directory to the datastage directory of  your cloned Git repository.  The final Git repository directory structure should match datastage/<category name - recursive>/<job name>.isx

  10. Use Git to add, commit and push all changes.  Atlassian's Git tutorial provides a good summary of how to do this.

  11. Verify the commit is visible in your Git repository against the Master branch.

This procedure will generate ISX files which, although fully functional in all other respects, will not support the preview of the DataStage Job canvas by the MettleCI Job Visualisation Plugin for Atlassian Bitbucket.  Depending on the number of projects you need to complete, this process can easily be scripted, if required.

Once all production assets have been checked in, we recommend that you Tag this particular revision in case you need to quickly refer to it later in your DevOps-for-DataStage or DataStage Upgrade initiative. You can tag your Git repository revision using the Git command line or, in most cases, your Git repository’s user interface.





© 2015-2024 Data Migrators Pty Ltd.