The mission of The Ops Platform is to help every development team easily create their own unique developer experiences (see: DevEx or DX) by making DevOps automation accessible to everyone.
The Ops Platform is a set of tools which will allow anyone to automate complex or repetitive development tasks in the form of Commands or Workflows which can then easily be distributed to other developers as an "Op" via The Ops CLI.
In the Ops Platform, a Command is a unit level operation, such as "Create one m5.xlarge EC2 instance", while a Workflow is a chain of Commands that tackles larger tasks, such as "Create a new production environment" or "Setup a new Kubernetes cluster".
Once you have created a Command or Workflow, you can then turn it into an Op. Ops can easily be shared with your team members so that they can also benefit from the automation.
🚀Sign up: ❯ npm install -g @cto.ai/ops && ops account:signup
🏃Try it out: ❯ ops run @cto.ai/hello-world
🔍See what's available: ❯ ops search
📩Invite your team ❯ ops team:create -n my-team && ops team:invite
👉Join our Slack Community to get help or share your ideas.
📧If you have questions - email us anytime!
Or, check out this getting started video...
Every user that joins The Ops Platform automatically has a personal team, which is chosen by their username (@username). Adding other users to your personal team is optional. You may prefer to use this as a personal workspace where you can privately test out ideas for Commands and Workflows before sharing them on other teams. Any user can create additional teams (as long as they use a unique team name) and invite users to this new team.
This allows team members who join the same workspace to:
The Ops CLI (@cto.ai/ops) is the primary method that you will use for creating, building, publishing and running Ops.
Commands can be written in any language, but we specifically built The Ops SDK (@cto.ai/sdk) in JavaScript to make it easy for everyone. The SDK also helps you create a interactive experience and unlock valuable platform features such as:
Workflows are written in YAML and follow a syntax that is very common to most CI/CD environments, making them very simple to configure. This makes it easy to use existing commands and combine them into multiple steps of a workflow.
Check out our Getting Started guide for more details on how to get started.
To find Ops in the public registry run:
ops search
To find Ops in your team registry run:
ops list
Running an Op which has been published publicly is as simple as running:
ops run @cto.ai/hello-world
Note the @team/name
syntax which executes from the global registry namespace. The @team
represents the team and name
is the name of the public Op on the team. This allows you to run an Op published by another team on the platform.
If you have published the Op privately to your team, you can omit the @team
, like so:
ops run hello-world
If this is the first time that you are running this Op, it will automatically be synchronized to your system.
Once this happens you will then be able to run the Op offline if it does not require external API calls and you do not delete the images associated with the Op. When running an Op, it may prompt you for input or interact with your local and/or remote systems in order to help you complete the task for which it was built.
Any repository or source code can become an Op if the following 2 files are added:
ops.yml
Dockerfile
These files can be created by the user, or through The Ops CLI by running:
ops init
and selecting one of the templates in the dropdown menu (i.e. Command or Workflow). Details on the contents of these files can be found on the Ops Reference page.
Great question. Currently, we're focused on supporting Ops on your local system however we have some exciting things coming up in our roadmap...
In the near future, API Access Tokens, with restrictions, can be requested from the CTO.ai website to pass into ops account:signin
to trigger Ops to run on behalf of a member of that team. This will enable the Ops to be triggered inside of other toolsets, such as a CI/CD pipeline, or allow people to trigger Ops inside of cloud based machines in their infrastructure. This means you will also be able to trigger an Op from system events that may happen outside of CTO.ai.
The possibilities are endless.
Use the Ops CLI to:
The SDK is an optional Node.js package that accelerates the Command development process and enables integration with extended features of The Ops Platform. It includes two modules, ux and sdk:
const { ux, sdk } = require("@cto.ai/sdk")
The ux module is a collection of command-line utilities that help you build your own professional Node.js CLI in no time. It includes the following components:
The sdk module is a set of tools that allow you to: