Git Product home page Git Product logo

gerrit-eca-plugin's Introduction

gerrit-eca-plugin

A Gerrit plugin for controlling pushes to eclipse.org repositories.

Provides an implementation of Gerrit 3.2's CommitValidationListener interface that imposes the following restrictions:

  • A project committer can push a commit on behalf of themselves or any other project committer
  • A project committer can push a commit on behalf of a contributor if:
    • The contributor has a valid ECA at the time of the push; and
    • The commit message contains a "Signed-off-by:" statement with credentials matching those of the commit author
  • A contributor can push a commit if:
    • They have a valid ECA at the time of the push;
    • The commit's author credentials match the user identity;
    • The commit message contains a "Signed-off-by:" statement with credentials matching those of the commit author

An individual is assumed to be a committer if they have PUSH access to the Gerrit project (repository).

An individual is assumed to have a ECA on file if they are a member of the ECA group (currently hardcoded; a future version will make this configurable).

For more information, please see ECA in the Ecipse Wiki.

Troubleshooting

Push that should otherwise be accepted is being rejected:

  • They may be pushing more than one commit. Compare the commit id from the error message with that of the commit; do they match?

Individual is a committer, but is being rejected:

  • Is the email address they're committing with the same as the email address in LDAP?
  • Does the corresponding project group have push access on the Gerrit repository?

Individual is not a committer, but has a ECA and is being reject:

  • Is the email address they're committing with the same as the email address in LDAP?
  • Is the individual in the "Has ECA" LDAP group?
  • Is the ECA associated with the right user id?

gerrit-eca-plugin's People

Contributors

autumnfound avatar chrisguindon avatar davido avatar eclipsewebmaster avatar fredg02 avatar mbarbero avatar spearce avatar tbm avatar waynebeaton 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.