# CircleCI Runner

# Overview

Since most of the development for your CircleCI pipeline happens locally, it's important to be able to run your CircleCI jobs on your local machine. Commandeer allows you to run your jobs from a GUI so you can get a faster feedback while developing your CircleCI jobs.

CircleCI runner at it's glory

# CircleCI Config File

Amongst other settings, your CircleCI config file has your jobs and workflows. It's usually located at .circleci/config.yml in the root of your project. Here is the link to the full spec of a config file. And here is an example of a typical CircleCI configuration file:

version: 2.1
orbs:
  node: circleci/node@1.1.6
jobs:
  build:
    docker:
      - image: circleci/node:10.15.2
    working_directory: ~/project
    steps:
      - run: echo 'Building your project' # <- the steps for your job

In the nutshell, your config file consists of some configuration options at the top. Here, we define the version and that we're using the nodejs orb. You can describe your jobs under the jobs key. In our example, we define a single job called build. The build job will be executed by CircleCI by default when we run this configuration.

# Editing Your CircleCI files

Commandeer allows you to choose or create your CircleCI configuration file. Once the file is chosen or created, you're all set to run it. You can make edits to your file from the editor pane. If you have multiple files in your CircleCI configuration, you can click on any file in the side navigation and edit each file as well.

# Running CircleCI Jobs

Clicking on the Run button runs your CircleCI configuration. In our example, it'll run the build job by default. You'll see the terminal output on the right as the run is happening. Once the run is complete you'll see the summary of your run above the output.

CircleCI runner results

You can also expand the Run Individual Jobs panel and run each individual job.

Choosing an individual job to run

# Configuring CircleCI

By default, all you need to start is to select your CircleCI file. If you need further customizations, CircleCI has a set of configuration options to apply to the run. All of which can be customized from the settings panel. You can also access CircleCI settings from your account screen.

CircleCI settings, environment variables, volumes, oh my!

# Copy Terminal Commands

Commandeer lets you copy the command for your run into your terminal. There are multiple variations of terminal commands. Feel free to choose between each variation and copy it to your clipboard by clicking the Copy To Clipboard button.

Switching Terminal command variant and copying the command

# Sharing CircleCI configuration

Clicking on the Share button from the code edit panel allows you to share your code with your colleagues over email, Slack, or SMS.

Sharing your CircleCI configuration

# Conclusion

Being able to run your job locally is key to being productive when working on your build pipeline. It lets you debug issues quickly while developing new pipeline jobs and steps. If you would like to write, test, or run your jobs locally, Commandeer will get you going in no time. It's simple to use and fully customizable for more advanced use-cases. Have fun with running some jobs locally 🙌