Git Product home page Git Product logo

rebazer's People

Contributors

alig01 avatar beatngu13 avatar creepow avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar jakobherdt avatar martin-v avatar mergify[bot] avatar modulo11 avatar rebazer avatar soffietto avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

rebazer soffietto

rebazer's Issues

Change merge message from "Branch merged by ReBaZer" to include more infos

Prviously, a merge message looked like

Merged in fix/not-selected-combo-box (pull request #723)

Fix combobox selection according to specification

Approved-by: Johannes Dillmann <[email protected]>

which contained information about the branch name and pull request number. That information is in the current version of the merge message missing. Can we readd it to something like (suggestions):

Merged in fix/not-selected-combo-box (pull request #723) by ReBaZer

Support multiple repositories

ReBaZerConfig should be adapted such that multiple repositories can be defined. Therefore, we should also change how the external configuration takes place. For instance, Spring Boot also supports YAML:

rebazer:
   user: service_user
   pass: dont_use_this_pass_at_home
   team: your_company
   workspace: ./rebazer-workspace
   repos:
       - foo
       - bar
       - baz

Proper handling of external PRs

Before PR#99 rebazer crashed when trying to checkout an external PRs branch which does not exist in our origin repository. We should discuss how we want to handle this within rebazer:

  • Ignore the handling of external PRs
  • Don't try to rebase external PRs, but merge if conditions are met
  • ...

Clean up logs

First, we should adapt the log level globally. For instance, processing a repo or a pull request should be on DEBUG level.
Second, we should use parameterized messages via the SLF4J API.

BitbucketConnector.getLastPage returns wrong values

It didn't return the last commit, because it don't uses the last page. Fix: Get the actual last page, not just the last of 10 or increase the number of commits in json to display all.

Addon: Fix the misleading name of the method, e.g. getParentIdOfFirstCommitInBranch.

Replace deprecated basic auth

During compile-time these warnings are shown:

[WARNING] GithubConnector.java:[25,35] basicAuthorization(java.lang.String,java.lang.String) in org.springframework.boot.web.client.RestTemplateBuilder has been deprecated
[WARNING] BitbucketConnector.java:[27,49] basicAuthorization(java.lang.String,java.lang.String) in org.springframework.boot.web.client.RestTemplateBuilder has been deprecated
[WARNING] BitbucketConnector.java:[29,43] basicAuthorization(java.lang.String,java.lang.String) in org.springframework.boot.web.client.RestTemplateBuilder has been deprecated

Make rebazer work with no builds

When no builds have been configured (yet), let the rebazer still work just when someone approved it. There were some ideas flying around how to implement it (e.g. is there a special result when asking for build status, ... ).

However this may result in that there will be no changes on some hosts if there is no build, thus the logic for merging would need refactoring.

Fix Warning: IOException while Travis build

[WARNING] unable to get access token for Google Container Registry, configuration for building image will not contain RegistryAuth for GCR
java.io.IOException: Error code 404 trying to get security access token from Compute Engine metadata for the default service account. This may be because the virtual machine instance does not have permission scopes specified.

Cause is probably that on the travis build vm image contains some magic ENV variables or GCR build tools. This triggers the automatic support of the GCR in the docker plugin.

Logging to slack?

Do we want to logging informations in a separate slack channel?

https://github.com/maricn/logback-slack-appender
https://github.com/wpic/logback-slack-appender

Current log locks like:

...
Dec  1 17:11:59 rebazer rebazer[6507]: 2017-12-01 17:11:59.598  INFO 6509 --- [taskScheduler-1] o.r.rebazer.service.BitbucketService     : Processing PR976 ( feature/generic-launcher -> develop )
Dec  1 17:11:59 rebazer rebazer[6507]: 2017-12-01 17:11:59.819  INFO 6509 --- [taskScheduler-1] o.r.rebazer.service.BitbucketService     : Waiting for green builds on PR976 ( feature/generic-launcher -> develop )
Dec  1 17:11:59 rebazer rebazer[6507]: 2017-12-01 17:11:59.819  INFO 6509 --- [taskScheduler-1] o.r.rebazer.service.BitbucketService     : Processing PR977 ( feature/RET-1107-robust-rmi -> develop )
Dec  1 17:12:00 rebazer rebazer[6507]: 2017-12-01 17:12:00.500  INFO 6509 --- [taskScheduler-1] o.r.rebazer.service.BitbucketService     : Waiting for rebase on PR977 ( feature/RET-1107-robust-rmi -> develop )
Dec  1 17:12:00 rebazer rebazer[6507]: 2017-12-01 17:12:00.500  INFO 6509 --- [taskScheduler-1] o.retest.rebazer.service.RebaseService   : rebase PR977 ( feature/RET-1107-robust-rmi -> develop )
...

Do not merged unrebased PRs

Should not happen:

[retest/rebazer] Feature/better exception handling (#47)
Rebase failed, this pull request needs some manual love ...

[retest/rebazer] Feature/better exception handling (#47)
@roesslerj approved this pull request.

[retest/rebazer] Feature/better exception handling (#47)
Merged #47 into develop.

Merge after one approval or after approval of all reviewers?

As default I like one approval, but sometimes I want explicit that all approver must review the code.

I suggest implementing a support of '@ALL' in the title of a pull request. Benefits:

  • It's visible in the overview of pull requests
  • Simple to implement
  • Works with all type of git hosting platforms

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.