Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to commit on Github and automatically mark done on Basecamp?

I have a GitHub account and Basecamp account. I have already setup my GitHub to use Basecamp service hook by selecting Service Hooks Menu and select basecamp. Fill all required form and get the setup work properly identified by green color.

Now, I have to-do list at my Basecamp account, but I don't know how to interact between GitHub commit comment and Basecamp to-do list.

For example, I commit my code by commenting fixing to-do list #123. But on Basecamp, I can't find to-do list ID (ex:#123) like common project management that I use before. I also can't find a documentation about it.

Can someone help me with this?

like image 966
Habibillah Avatar asked Oct 26 '12 18:10

Habibillah


People also ask

How do I check in on GitHub?

It simply means to upload code to the master branch so that an admin can check and update the project. Similarly, to check-out means to download the code from master repo.


2 Answers

I don't think that's possible with the existing github-basecamp integration (the one in the predefined service hooks). So, in short: if I'm correct, it cannot be done the way you can close github issues, which you also seem to be referring.

So basically you'd need to do some coding of your own. You have two main choices.

  1. You can enable a webhook in your github service hooks, have that do a POST request to an url of your choice, and have a script at that url use basecamp API to update the list. The todolists api seems quite simple: you should read a commit message coming in the POST request, and do a "update todolist" request with "completed": true.

  2. Another alternative is to interact with Basecamp API from your local repo. There seems to be some existing tool called gitcamp, made by someone, to help with that - however as the api is quite simple, as well as your requirement, you could do your stuff with a custom script installed as a hook, and possibly with more ease.

like image 192
eis Avatar answered Oct 10 '22 19:10

eis


I have send a same question to both github and basecamp support and bellow they answer.

Basecamp Support:

Sorry about that confusion with the GitHub integration! At the moment, that integration only brings in the commits you make into the Progress page and recaps. Here's the code behind that integration so you can get a better idea of the guts of that service hook:

https://github.com/github/github-services/blob/master/services/basecamp.rb

If you have any other questions, just let me know and I'll be happy to help. And have an awesome Sunday!

Chase Clemons
37signals CustomerCare

Github Support:

The Basecamp hook is for the new Basecamp system, and only adds to a project's event log. There is a Basecamp Classic hook for the older Basecamp system. It looks like that hook only creates Basecamp messages. It doesn't look like anyone has written any Basecamp to-do integration with GitHub at this time. Our 3rd party hooks are contributed by other users because we don't actually use any of those services (Basecamp included). You're welcome to contribute to them:

https://github.com/github/github-services

So it's clear at the moment (when I write this), what we commit and push into Github repository just automatically show on Basecamp Progress page.

like image 29
Habibillah Avatar answered Oct 10 '22 19:10

Habibillah