OpenMake Mojo® aligns the sharing of operational tasks between developers and production control teams. It creates a centralized process for defining the steps required for building, testing and deploying software. By integrating with internally developed scripts and best of breed commercial and open source tools, Mojo lets your teams jointly define the logic and scheduling of your software builds and deploys with centralized reports and trend analysis. Mojo supports Continuous Integration and distributes the workload of your build, test and deploy steps across multiple machines and diverse operating systems. Mojo centralizes logs from all processes that it manages and provides trend analysis for popular testing and static code analysis tools. It can be enhanced to support a dynamic DevOps process using OpenMake Meister and OpenMake Release Engineer. Mojo is easy to configure, with new projects taking as little as 10 minutes to define and execute. With the added efficiency of server pooling and centralized configuration management, Mojo offers a truly enterprise DevOps solution.
Easy-to-Configure Continuous Integration
With Mojo, you start with your existing operational scripts, add calls to your external tools…and you’re on your way. You can execute operational tasks on a schedule, based on version control triggers, or define your own custom criteria. Mojo enables you to quickly configure complex operational activities to automate the complete process of building code, executing testing, and deploying binaries. These activities are called in a single job stream with all logs and reports centralized for on-demand and self-service access. Most of our customers report that Mojo takes less than 10 minutes to configure per project—and fast setup means accelerated benefits for your team.
Best-of-Breed Tool Plug-ins
Mojo has a broad collection of built-in tool integration and plug-ins, including integration with scripted languages such as Ant, Maven, Python and Make. With support for all popular open source and commercial source control systems, commonly used static code analysis and testing tools, and scripted deploy processes, getting your operational processes staged and ready for use is easy. Plus, if there's a tool that is not supported out of the box, writing your own integration is a snap—no Java or other coding is required.
Smart Processing of Operational Tasks
Mojo allows you to define complex steps within your operational job stream with conditional logic and step dependencies. This allows you to carefully define if-else processing to prevent the execution of a given step if the prior step fails. Your deployment steps can be prevented if your testing step fails. This level of conditional logic allows you to define job streams to address your unique DevOps needs.
Streamlined Hand-Offs and Intra-Team Coordination
Simplify the hand-off of operational tasks between your Development teams and IT Operations using Mojo’s promotional model. Job streams, also called workflows, can be defined as public or private with security based on designated users and groups. Developers can define a private workflow, and promote it to public status where only the IT operations team can have access. This allows the developers to define the workflow, but lets the IT operations team execute the workflow for testing or production processing.
Self-Service Logs and Trend Reports
All activities executed in your operational job stream are captured and reported on by Mojo. Build logs, testing reports, and static code analysis results are all managed in a central location for easy access and self-service. In addition, Mojo generates trend reports showing the health of your operational tasks over time and providing management with insight as to the success or fail frequency of each process by application team.
Reusable and Standardized Operational Logic
With Mojo, you can define a set of operational tasks that can be reused by multiple teams. One set of activities can call a standardized set of activities, providing a method for standardizing particular processes that all teams must execute to be compliant for a test or production release.
Centralized Management of Environment Variables and Machine Configurations
When executing an operational job stream, each step in your process may need to update server configurations and environment variables. Mojo allows you to deliver those configurations on a global basis—i.e., for all machines used in the job stream—or uniquely for each server used by a single step in the job stream. This level of control allows you the highest level of flexibility in defining the unique configurations for your build, testing and deployment activities.
Mojo can be connected to as many Remote Agents as needed to support Distributed Builds, Test and Deployments. Remote Agents are managed by Mojo using Server Pooling and Cluster Management.