Code Monkey home page Code Monkey logo

local-ci's Introduction

Buy license key 30 day free preview Platform: macOS Requires CircleCI®

Debug entire CircleCI® workflows locally, with Bash access and caching between jobs.

All in your local, no pushing commits and waiting. Not affiliated with CircleCI®.

Local CI Demo

Run Jobs Locally

Running job

Debugging

Get Bash access to the running job by clicking 'Local CI debugging':

Bash in a running job

When the job exits, you'll still have Bash access to the job.

Restore And Save Cache

Run jobs faster when you cache dependencies.

Local CI supports the native restore_cache and save_cache values:

Editor with restore cache

Run The Whole Workflow

You can even run jobs that depend on other jobs, because this persists the workspace between jobs:

Persisting to the workspace

CI jobs can fail because of wrong dependency versions, or flaky combinations of events.

You'll get local Bash access to jobs, so you'll usually be able to see what's wrong and fix it.

Thanks to CirleCI-Public/cirlceci-cli and mikefarah/yq, which this uses.

CircleCI® is a registered trademark of Circle Internet Services, Inc.

Dynamic Configs

You can run most dynamic configs with Local CI.

Find out in seconds whether the setup is right, all in your local.

License Key

Local CI requires a license key for $20 per month.

But first you'll get a free 30-day preview, no credit card needed.

Requirements

CircleCI®, macOS, Docker

If you don't have a CircleCI® account, you can get started with CircleCI® for free.

A .circleci/config.yml file should be somewhere in the VS Code workspace, using the 2.x configuration.

If there's more than one .circleci/config.yml file, click the gear icon to select which one to use:

Selecting config file

Privacy

You can opt out of all telemetry by adding this to your VS Code settings.json:

"telemetry.telemetryLevel": "off"

If you haven't opted out, here are the telemetry events sent via VS Code telemetry.

If you haven't entered a license key, like during the free preview, the only interaction this extension has with Local CI's site is if you optionally enter your email on first activating this extension.

It does interact with CircleCI® and Docker to process and run the jobs.

But the jobs still only run locally.

Local CI has no server that runs jobs, so the site has no knowledge of the jobs or any data from them.

If you have entered a license key, it only sends to the Local CI site a GET request with the license key and a SHA-256 hash of your VS Code machineId.

This is to verify that the license key is only used on 1 machine.

Here's an example machineId: b068aef3da6acff9c9bf4f129135ffd56adbfa294aeb8117c7264164c1a277d4

And that machineId is hashed with SHA-256 before sending it in the GET request.

Feel free to look at the source code for how Local CI works.

When To Use

Local CI won't replace the CircleCI® service, it's a debugging tool to use with it.

If you think CI will pass, it'll probably be faster to simply push a commit and let CI run.

Local CI is not for making deployments.

License

GPL v2 or later

local-ci's People

Contributors

dependabot[bot] avatar kienstra avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.