Commit Graph

43 Commits

Author SHA1 Message Date
Tim Abbott 0378c43dc6 update-deployment: Move Schema change detected to post-receive.
Since update-deployment is run on the host being deployed to and only
has access to a recent clone of the git repository, it doesn't
necessarily have the old refs available for reverts.

(imported from commit 3652f58a7b165c805822bf6d8a4f0792c629e28e)
2013-06-04 18:42:00 -04:00
Tim Abbott 8d40864c8b Include the commit that was deployed in deployment finished notices.
With our currently rather slow deploys, this helps with the confusing
case where 2 deploys happen in quick succession and the second is
blocked by the lock.

(imported from commit 5a8bd449ecbe0825838faf72099b67f94db7797a)
2013-05-31 17:01:34 -04:00
Tim Abbott 05f943395b post-receive: Send a notification when deployment process completes.
This is a little hackish in that I'm using humbug-send rather than
importing humbug_git_config.py to get the API keys and all, but this
was quick to do and I think it's valuable for us to have this output
on our deploys.

(imported from commit 24d7954d04aadeff77ea9cdb76fdc8be055f3ac5)
2013-05-30 16:42:14 -04:00
Zev Benjamin 4cd9abdf10 Fix post-receive to work with new update-deployment
update-deployment now expects the ref name to already be relative to
origin

(imported from commit 0a1792119dd2565c2413acbca25e0fe370f09bf8)
2013-05-29 13:53:41 -04:00
Zev Benjamin 6824c94b7e [manual] Remove dependence on /home/humbug/humbug git checkout on app frontends
Modified files need to be copied into the right place.  The checkout
on git.humbughq.com also needs to be updated.

(imported from commit dbe9e05a0512e1f59c7819dd8d44c2c4e9c83bcf)
2013-05-29 12:00:03 -04:00
Keegan McAllister e8aec9d009 post-receive: Don't actually update servers on push to test-post-receive
Fixes #924.

(imported from commit 85789b39ef2665901c8a7c9560ef072d80d5e24d)
2013-03-18 17:21:13 -04:00
Keegan McAllister 5f33298bf4 [manual] tools: Move check_output into a shared file
We leave the stuff under api/ alone for now, since we need to be able to ship
it as a standalone thing.

tools/post-receive wasn't using the function anyway.

For push to master: Push this commit, update post-receive per instructions at
the top of that file, then push the rest of the branch to confirm that the hook
still works.

No manual instructions for prod.

(imported from commit 9bcbe14c08d15eda47d82f0b702bad33e217a074)
2013-02-20 16:02:30 -05:00
Keegan McAllister 75704ad1e8 Consistently use #!/usr/bin/env python
At Ksplice we used /usr/bin/python because we shipped dependencies as Debian /
Red Hat packages, which would be installed against the system Python.  We were
also very careful to use only Python 2.3 features so that even old system
Python would still work.

None of that is true at Humbug.  We expect users to install dependencies
themselves, so it's more likely that the Python in $PATH is correct.  On OS X
in particular, it's common to have five broken Python installs and there's no
expectation that /usr/bin/python is the right one.

The files which aren't marked executable are not interesting to run as scripts,
so we just remove the line there.  (In general it's common to have libraries
that can also be executed, to run test cases or whatever, but that's not the
case here.)

(imported from commit 437d4aee2c6e66601ad3334eefd50749cce2eca6)
2013-02-20 16:02:30 -05:00
Tim Abbott cdedb85934 Fix post-receive hook arguments issues and document the setup.
(imported from commit 0440cbc97337b8dd9f92bbbd428a069f79df400a)
2013-02-20 11:10:45 -05:00
Tim Abbott 3bc083ab0d post-receive: Remove unused imports.
(imported from commit 492b5a4a3a883022984d45d0d0934e7fe10a6f31)
2013-02-19 16:23:47 -05:00
Tim Abbott 4caafd66ce Rewrite git hook for distribution and document it.
(imported from commit c3238bc5b5e29727cddb43bc55ab418326226acd)
2013-02-19 09:17:06 -05:00
Tim Abbott 8ee139f9be post-receive: Get rid of the sleep(1) before sending Humbugs.
This code is no longer needed now that we send the Humbug _before_
restarting the server.

(imported from commit c281ac7db55ad2801d2da43d4aca5583ad48de93)
2013-02-19 08:52:15 -05:00
Keegan McAllister 401f591ab7 [manual] post-receive: Remove handling of refs/heads/hunt
Deployment steps: See comment at the top of tools/post-receive.
Will do this when the commit hits master.

(imported from commit 8e096609fca618ed82bfbee43bae701daaf49261)
2013-02-08 13:33:28 -05:00
Tim Abbott 6893cce9dc post-receive: Deploy to hunt server automatically.
(imported from commit ac3c0ea31aaa213f2b20dac2f67ab1a8a861ee3a)
2013-01-17 22:08:39 -05:00
Keegan McAllister 9125489c20 Rename class HumbugAPI to Client
(imported from commit 4270f31fc5febcd9c444d0d133a1dad3860618f0)
2012-12-03 15:54:54 -05:00
Keegan McAllister bd7b7adb6b Rename api.common to humbug
Fixes #482.

(imported from commit 1bd6a7fd993d8d5e225e0311c288dbce0c369a40)
2012-12-03 15:54:54 -05:00
Tim Abbott 411a7f6b4f [manual] send_message: Rename recipient/stream fields to 'to'.
This commit changes APIs and requires and update of all zephyr
mirroring bots to deploy properly.

(imported from commit 2672d2d07269379f7a865644aaeb6796d54183e1)
2012-11-15 15:30:06 -05:00
Tim Abbott b01407bd75 Move push notifications to a consistent subject.
(imported from commit 3b4acb39bbf564625e3c009f4f875da596a7a7ac)
2012-11-09 16:56:13 -05:00
Tim Abbott 97ce892e8d post-receive: Send via the staging server.
(imported from commit a876c7990219b1f317ae39aeeee48b98c5ec941c)
2012-11-08 12:55:57 -05:00
Tim Abbott 33b9a9e8b4 post-receive: Add support for deploying to staging server.
After this commit, we're tracking two branches: "master" and "prod".
Pushed to "prod" deploy to production, while pushes to "master" deploy
to the staging server.

(imported from commit 6ce429a1d6f606fb6136341dc393d93fd1228a21)
2012-11-06 14:12:18 -05:00
Keegan McAllister 1b54e41eb6 Document procedure for deploying changes to post-receive
(imported from commit 1207f02f74fe45581ea166234fa08e554f89722b)
2012-11-02 14:57:38 -04:00
Keegan McAllister 6ab646cd53 post-receive: Deploy to the new server
Eventually this should go to the staging server, and we'll have a separate
process to migrate changes from there to production.

(imported from commit 2a712758844524fdf2f23f798baf6b607d056b9a)
2012-10-27 11:39:03 -04:00
Keegan McAllister d0db047035 post-receive: Send the bot message before killing the server
Otherwise the server isn't running when we try to send.

(imported from commit a5ed6ef2111d426c44914c607444dc09b2e33b59)
2012-10-18 10:47:28 -04:00
Keegan McAllister bd8a4cb4ab post-receive: Use a different subject name for each push
(imported from commit 983c34faa52bec9a7af4d26a326bbb8cc4a08bea)
2012-10-17 01:11:33 -04:00
Keegan McAllister 2c9830ac5b post-receive: Truncate long commit subjects
(imported from commit 9d4b04cb4000d6f03d31ecdd5106ca53ba96c152)
2012-10-17 01:11:33 -04:00
Keegan McAllister 110a7afec5 post-receive: Conspicuously display commits removed by a push -f
(imported from commit 6ed7810c2f20e5f7ac618b31880142ca7da63419)
2012-10-17 01:11:33 -04:00
Keegan McAllister 94bc4dae2a post-receive: Use Gravatars in bot message
(imported from commit 7e662173653aed98d47e5204900947bfb12be96c)
2012-10-17 01:11:33 -04:00
Keegan McAllister e843427e6c post-receive: Split into update_deployment and send_bot_message
(imported from commit 3e89cb21cf4aa192f6a31457fd91aa5f52e6baa8)
2012-10-17 01:01:19 -04:00
Keegan McAllister b3c029472a post-receive: Include an abbrev sha1 in the message
(imported from commit 97eea18bb4426270d085e398680f1db8028235db)
2012-10-11 11:49:24 -04:00
Tim Abbott ac3f4393ff Rename instance to subject.
(imported from commit 6b4693da03f106448c137cf81cf9801cac44f2b8)
2012-10-10 18:01:39 -04:00
Tim Abbott 08e832e093 Change send_message to accept a stream, not a class.
(imported from commit 0f58de2502bec227f5f33e44692d03f2f28d6f63)
2012-10-10 17:48:17 -04:00
Tim Abbott 44e9e4cebf Rename Recipient.CLASS to Recipient.STREAM.
(imported from commit a530194163f7260c73921137fa1ff671f14516f6)
2012-10-10 17:47:13 -04:00
Keegan McAllister c9623ee370 post-receive: Include author names
(imported from commit 7914f47364d014bd17115db7defd0cc634f4ac60)
2012-10-04 17:37:18 -04:00
Keegan McAllister bfa24d75b6 post-receive: Send test-post-receive pushes to class test
(imported from commit 8f187464a4d82da071ffed79abf33ea05b999b95)
2012-10-04 17:37:18 -04:00
Keegan McAllister 6784e8cbf4 post-receive: Style branch name
(imported from commit 33f075095c163f8954dac104cd5d39e9171a99d2)
2012-10-03 18:08:36 -04:00
Keegan McAllister 3848d79f10 post-receive: Print commits in top-down chronological order
(imported from commit 952c4e0d4488cd41a02d75bc890fceacbb9f6273)
2012-10-03 18:07:35 -04:00
Tim Abbott 303bc7c6b8 post-receive: Sleep a bit to give the Humbug server time to restart.
(imported from commit 95e9e7110dcca19347e3cb3952ac18960b500586)
2012-10-03 17:01:15 -04:00
Keegan McAllister 901b87dd77 post-receive: Loop over all pushed refs
(imported from commit 7f101732b3e521b9ef4a41204e0dbbba67f035f5)
2012-10-03 15:20:20 -04:00
Tim Abbott e53dbbd756 Fix post-receive hook's API postings.
(imported from commit 98021d3ee5e84b533e17ec741538be60925b4e87)
2012-10-03 14:48:51 -04:00
Tim Abbott d5d3694451 Update post-receive hook to send messages via the API.
(imported from commit 81f4c9e55c44f19208c42d9a8e8db33ce44b02ac)
2012-10-03 14:32:05 -04:00
Tim Abbott 1e60511bf6 post-receive: Do deployments over ssh to app.humbughq.com.
(imported from commit cec99b18a7e686243e64d69d1882edc6354c5c9a)
2012-09-17 11:47:20 -04:00
Tim Abbott 71dd5aed0a Update automated deployment code.
Will warn about schema changes based on '[schema]' appearing anywhere
in the commit message.

(imported from commit 0092f12c1a2dad3f909ec1934c162776d72263b4)
2012-08-31 14:44:36 -04:00
Tim Abbott 260e646abc Add continuous integration automation scripts.
(imported from commit 61fc5fa1540732b0d1ad02faa95724cc6e2699c0)
2012-08-31 13:53:56 -04:00