Skip to content
This repository has been archived by the owner on Jun 11, 2024. It is now read-only.

Provide pluggable way to integrate with any CI or code review system #143

Open
lencioni opened this issue Sep 6, 2016 · 2 comments
Open

Comments

@lencioni
Copy link
Contributor

lencioni commented Sep 6, 2016

We want happo to be as easy to set up as possible. People use all different kinds of CI systems (e.g. Jenkins, Travis CI, CircleCI) and code review systems (e.g. Gerrit, GitHub, GitHub Enterprise, GitLab, BitBucket). I think it makes sense to enable plugins to be written to easily set up Happo to interface with any CI system or code review system.

I think this should be sequenced after we rewrite in JavaScript (#81). Plugins could be npm packages in the form of happo-plugin-travis-ci and happo-plugin-github.

cc: @kesne

@trotzig
Copy link
Contributor

trotzig commented Sep 11, 2016

One idea that would get this going sooner without being blocked on transferring to a node project is to expose a few scripts that you can use.

happo travis-ci
happo jenkins-ci

etc.

@trotzig
Copy link
Contributor

trotzig commented Nov 22, 2016

Just a thought: If we decide to implement this as npm modules, and allow users to plug them in using .importjs.js, we should make sure that plugins are explicitly imported and used/instantiated:

const HappoPluginTravisCI = require('happo-plugin-travis-ci');

module.exports = {
  plugins: [
    new HappoPluginTravisCI(),
  ]
};

I've seen others include plugins through string reference only (e.g. http://eslint.org/docs/developer-guide/working-with-plugins) and I find it too implicit.

@lencioni lencioni changed the title Provide pluggable way to integration with any CI or code review system Provide pluggable way to integrate with any CI or code review system Dec 19, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants