MettleCI delivers its unique capabilities through a set of integrated components, some of which are optional:
...
Gliffy | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Relevant Components
...
Work Item Management Tool: A third-party system to organize units of work.
Git Platform: A collaborative platform for tracking changes in source code during software development.
CI/CD Build Tool: Tools that automate the creation, and the limited testing, of executable applications from source code.
MettleCI Workbench: A browser-based user interface which is served from a lightweight agent, typically (but not necessarily) installed on
yourthe Customer’s DataStage Engine tier.
MettleCI Build Utilities (Optional): A suite of Automated Build and Deployment utilities (for which we have yet to derive a collective noun!) whichCI/CD Build Agent: One or more utilities supplied by the Customer’s build tool vendor to permit the integration of third-party systems (such as MettleCI) with the build tool.
DataStage: Customer’s developmentinstance of Information Server, which may be deployed in any topology (SMP, Grid, HA) on any number of hosts.
MettleCI Command Line Interface (CLI): A suite of automated build and deployment utilities which provide a host of useful functionality to automated the deployment, testing, and execution of your DataStage solutions
. These functions are accessed using the, accessible using a command line,
or invoked by your preferred Build and Deployment tool. For Rapid DataStage Upgrades we ship Atlassian Bamboo, and provide access to our suite of components via Bamboo-plugin interfaces.- MettleCI Wallboard (Optional): a customisable dashboard for the live monitoring of MettleCI-related activity as well as other real-time information from your DevOps environment.
- MettleCI Scheduler (Optional): A means of automatically executing your DataStage solutions end-to-end without the need to manually maintain an execution schedule. This solution requires access to Information Governance Catalog which is used to derive an accurate, up-to-date dependancy graph of your DataStage jobs' functional relationships. This graph is then used to automatically author an optimal execution schedule which is then orchestrated by the MettleCI scheduler. Progress is monitored via the MettleCI scheduler's browser-based interface.
MettleCI Utilities
The Unit Test Harness and MettleCI Workbench are deployed to your DataStage Engine tier and are consequently supported on any DataStage Engine-supported platform - Linux, Unix, or Windows.
The MettleCI Build Utilities are distributed as JAR files, and as such are executable on any JVM-compatible platform, including Linux, Unix, and Windows.
The only time MettleCI needs access to a Windows environment is when the build compiling jobs, which is done by the Compile DataStage Project Command. This means your build system should employ at leat one agent/worker/whatever on a Windows host with a DataStage client installed. See the MettleCI For Rapid DataStage Upgrade - Technical Prerequisites and MettleCI For DevOps - Evaluation Technical Prerequisites for more details.
See also
either manually by a human or as part of a build plan executed by a Build tool.
MettleCI Unit Test Harness: An agent integrated into Customer’s DataStage Engine which selectively modifies DataStage job definitions at runtime to provide data interception and unit test execution capabilities.
Relationships
Work items in the user’s Work Item Management platform (Jira, ServiceNow, etc.) will be associated to Commits in the user’s Git platform (Bitbucket, GitHub, etc.) using capabilities native to those two platforms.
The MettleCI Workbench supports searching work items in supported Work Item Management platforms for including as references in Git commit messages.
The MettleCI Workbench will perform commits to the user’s Git platform.
The MettleCI Workbench will be invoked from the user’s DataStage Designer client and will receive updates from the MettleCI Unit Test Harness.
Commits to the user’s Git platform will trigger the invocation of a build pipeline in the user’s build platform.
Pipelines often begin by establishing the environments, resources, and preconditions required to execute an integration test or deployment.
Pipelines will need to perform scripted DataStage-related operations, such as export, import, compile, and test project assets.
A user’s build tool will use one or more build agents to perform activities on remote resources.
MettleCI provides a comprehensive command line interface which enables those build agents to perform DataStage-related operations.
MettleCI’s command line uses DataStage client libraries and tools to provide some of its capabilities.
The build pipeline will likely also orchestrate the execution of non-DataStage operations, such as functional test operations, for example.
These non-DataStage operations will also utilize build agents to manage the invocation of functionality…
…on systems providing access to the relevant testing capabilities.
Pipelines often need to perform clean up operations on completion, such as publishing artefacts and removing temporary resources created as a by-product of the build activity.