Introduction to authoring orbs
Quick start
Orbs take reusable configuration and package it in a way that can be published to the Orb Registry and imported into multiple configuration files. If you manage multiple, similar projects, consider abstracting out your config with orbs.
Before authoring an orb, it is recommended that you become familiar with the CircleCI config and authoring parameterized reusable config elements pages.
Orbs consist of three main elements:
Practice with inline orbs. Inline orbs can be defined within a single config file for testing.
Orb authors automatically agree to the CircleCI Code Sharing Terms of Service. All publicly published orbs are made available on the Orb Registry under the MIT License agreement. For more information, see Orb Licensing. |
Once an orb is created it cannot be deleted. Orbs are SemVer compliant, and each published version is immutable. Publicly released orbs are potential dependencies for other projects. Therefore, allowing orb deletion would make users susceptible to unexpected loss of functionality. |
Getting started
Orb CLI
To begin creating orbs, you will need to set up the CircleCI CLI on your local machine, with a personal access token. For a full list of orb-related commands inside the CircleCI CLI, visit CircleCI CLI help.
Permissions matrix
Orb CLI commands are scoped to different user permission levels, set by your VCS. You are the owner of your own organization. If you are authoring or publishing orbs for a namespace owned by another organization, you may require assistance from your organization admin:
Orb Command | Permission Scope |
---|---|
| Owner |
| Owner |
| Owner |
| Member |
| Owner |
Register a namespace
Every organization registered on CircleCI is able to claim one unique namespace. This includes your personal organization and any organization you are a member of. As each organization or user account is limited to a single namespace, in order to register the namespace for an organization you must be the owner of the organization.
Enter the following command to claim your namespace, if you have not yet claimed one:
circleci namespace create <name> --org-id <your-organization-id>
Next steps
-
Continue on to the Orb Authoring Process guide for information on developing your orb.
-
Alternatively, to find out more about orbs read the Orb Concepts page.