| Summary: | improve workflow for accepting contributions from github | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [ECD] Orion | Reporter: | Susan McCourt <susan> | ||||
| Component: | Client | Assignee: | Szymon Brandys <Szymon.Brandys> | ||||
| Status: | RESOLVED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | P3 | CC: | edyta.przymus, grant_gayed, mamacdon, Szymon.Brandys, tomasz.zarna | ||||
| Version: | 0.4 | ||||||
| Target Milestone: | 1.0 M1 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows 7 | ||||||
| Whiteboard: | gsoc2012 | ||||||
| Bug Depends on: | 368433, 369297, 369603, 369604, 369605 | ||||||
| Bug Blocks: | |||||||
| Attachments: |
|
||||||
|
Description
Susan McCourt
the blocking bugs suggest interim improvements to make the current workflow a bit easier the biggest PITA right now is figuring out how to get from github->commit id to a branch I can see in Orion. If we can fix that problem somehow I would be less grumpy right now (In reply to comment #0) > One quickie we could do is add a command to the repo page on the remote that > says "open commit"...you paste in the commit id and it opens the commit page on > the right thing. Then I don't have to know the branch, which can be really > helpful. I thought about the same before I look at the bug :) It makes sense. I'll try to add it ASAP. Szymon and I talked about what could easily be done for 0.4. 1. implement an "open commit command" 2. user can choose this command from an existing clone, or they can just choose it in the "Remotes" heading (unspecified remote) 3. the command parameters are a URL for the repo and the commit id (maybe extra credit is to parse a github commit link to get both parameters). URL is prefilled in if command is chosen from an existing remote Now the contributor just pastes in the github commit link (as today). Committer can paste into the "open commit" slideout. OR...cooler... a greasemonkey script on the bugzilla side invokes the slideout by using the provided github commit id and our command syntax/URL binding stuff to do it: Something like... orion.eclipse.org/repository.html#,acceptContribution=https://github.com/user/orion.client/commit/someID I'm taking the bug. For .4 I added "Open Commit" dialog and a Greasmonkey script to open a commit from GitHub. I'll continue working on that in .5. (In reply to comment #6) > For .4 I added "Open Commit" dialog and a Greasmonkey script to open a commit > from GitHub. I'll continue working on that in .5. This has already saved me time. And yesterday I was able to find a reference to a commit SHA in a bug and open it to refer to a very old fix that would have been hard to find otherwise. One of the part of solution of this bug is a possibility to send from Orion ask for review to someone. I created such a command. I attached how it looks like - the button and the message. I implemented also the server part, and I really would appreciate any commands and remarks about it, because I didn't write a lot of server code yet. These are commits: Server: https://github.com/edytaprzymus/orion.server/commit/0f55dd9bae19ba8340d32457fb9e852a114847ee Client: https://github.com/edytaprzymus/orion.client/commit/c5e0ebfb4ffe8777edcc74e15c72d35ab5c38ebb Please consider the code written in GitCommitHandlerV1 servlet. Please be aware that to test this feature you need to configure your localhost to be able to send emails. Created attachment 218953 [details]
Notification command
I guess you gave me it to review by mistake. 1. The code does not compile. I had to add the dependency to javax.mail.glassfish 2. When I navigate through repositories, repository page I see lots of POST /gitapi/commit with response 500 in the firebug console 3. Git Log does not work at all 4. I was able to see the commit page only via clicking commit link on the tag list (repository page) 5. When I send notification, I has not confirmation that it was really sent I haven't looked at the code yet, but noticed this in GitCommitHandlerV1 line 424 --> System.out.println(email); https://github.com/edytaprzymus/orion.client/commit/2fd5f8d9b5ec0f10540d2f4d05c392cd1d060608 https://github.com/edytaprzymus/orion.server/commit/ea5324333ab5a3a0f8e8b469621a24afb220774a New commit: -Szymon's remarks fixed -Changed the input data of the command - now, you have to put user login, so whole thing is safer, because cannot work as a spam generator. I wrote all this code and have the rights to contribute it to Eclipse under the eclipse.org web site terms of use. I wrote all this code and have the rights to contribute it to Eclipse under the eclipse.org web site terms of use. I gave it another try. In the mail sent to the reviewer the url is wrong. The mails says: Please visit http://localhost:8080//git/pullRequest.html#git://github.com/edytaprzymus/orion.client_902dfa2214dfaf86e144e4be48d6e275686f4ced to get the code. There is a redundant slash before /git/pullRequest and clicking it ends up with 404. The client side looks good in general. We need to refactor the server part though. All pull request related code should be in git bundles and this code should just call UserEmailUtil to send notifications. I think that we do not need EmailNotificationServlet, we could just use GitServlet to handle http calls for pull requests. The server side commit is messy. EmailNotificationServlet and /useremailnotification from plugin.xml in configurator are not used and can be removed. I fixed the server side and pushed. I also fixed all remaining issues in the client commit and released it. Marking the bug FIXED and please open new bugs for new or remaining issues. |