Giter Site home page Giter Site logo

peril's Introduction

The centralized Danger server, freeing Danger from running on CI. ๐Ÿ‘

Want to understand what the plan is? Consult the VISION.md


I want to run Peril for my org

OK, I made a quick tutorial for running a private Peril against your org.

I want to hack on Peril!

Ace, great, cool. So, it's a bit of a process. I'm not sure if this will get easier in time. It's a complex app. You can find out more here

Code Overview

There are three files where the magic happens:

This is an reasonably tested project, there's a lot in places where the code isn't going to change much now so they're slowly getting covered.

Exposing Peril to the public

In order to support danger.systems features, there is an ENV var "PUBLIC_FACING_API" that when truthy will expose an extra API route.

  • GET /api/v1/pr/dsl?owner=danger&repo=peril&number=14

    This will return the DSL JSON for a specific Pull Request. Supports JSONP.

Peril Settings

The "settings" section of the JSON file is how you can configure peril at a global level. It looks something like this:

{
  "settings": {
    "modules": ["danger-plugin-yarn", "danger-plugin-spellcheck"],
    "env_vars": ["MY_CUSTOM_ENV_VAR"]
  }
  ...
}

The full DSL is available inside this file.

Plugins / Modules

Right now you can add Danger plugins by adding a key modules with an array of string inside the settings object of your database.

These will be added to your install via yarn add [plugins] at heroku build-time. This means that to update your modules you will need to ship a new commit to heroku. I'd recommend this gist's technique.

Env Vars

You might want to expose specific ENV VARs to your Dangerfiles, this will take the values from your process.env and put them on peril.env inside the Dangerfiles.

peril's People

Contributors

orta avatar greenkeeper[bot] avatar maximeheckel avatar leonhartx avatar bdotdub avatar flovilmart avatar krausefx avatar mxstbr avatar felipesabino avatar danpalmer avatar ashfurrow avatar barbosa avatar izakp avatar macklinu avatar nsfmc avatar kimar avatar m1guelpf avatar sd10 avatar vitaly-t avatar duck8823 avatar

Watchers

Izaak Schroeder avatar James Cloos 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.