Waseem Daher
ca351f3ddc
Ask user to reload Humbug after running sync-subscriptions.
...
(imported from commit d374d5b8eefd4240b8b11f83080fcdf2ff3cadaf)
2012-11-15 10:40:10 -05:00
Jessica McKellar
c571c997b3
If a zwrite fails, retry unauthenticated and warn the user.
...
(imported from commit a8a516d59f4af72ed2eaebb6bfa65e2f359fc2a6)
2012-11-14 17:38:42 -05:00
Tim Abbott
7514390190
zephyr_mirror: Don't use the /mit symlink for use on systems without automounters.
...
(imported from commit b376e6da6c971d887f2d75194a8ed0d3adaddfea)
2012-11-14 15:03:49 -05:00
Tim Abbott
e182bfcb98
zephyr_mirror: Don't try subscribing to an empty stream list.
...
(imported from commit c8155459b768dd1fc192246c1f584abb30a7bc02)
2012-11-14 15:03:49 -05:00
Tim Abbott
1a5f0648c5
zephyr_mirror: Don't send fullname data to server.
...
(imported from commit 743d0109f422fea5c4642e83448cd179f4e60827)
2012-11-14 15:03:49 -05:00
Keegan McAllister
e42097a723
gcal-bot: Get API key from ~/.humbug-api-key
...
(imported from commit 63d63ad0d299c300d28de61069ada8ea2c8eb839)
2012-11-14 10:38:36 -05:00
Keegan McAllister
11cdc959e6
gcal-bot: Fix sys.path for new location under api/bots/
...
(imported from commit 9f5b90d5e0cd2134f2f0210980ad49fd8062a9c4)
2012-11-14 10:38:36 -05:00
Zev Benjamin
1a4f97a874
zephyr_mirror: forward messages in test mode if the site is not the default one
...
(imported from commit 7d504a6d555866f12f1657b522b4e6eb380c64a3)
2012-11-13 20:22:37 -05:00
Zev Benjamin
73daa73887
Unify huddles and personals into private messages on the send path
...
Personals are now just private messages between two people (which
sometimes manifests as a private message with one recipient). The
new message type on the send path is 'private'. Note that the receive
path still has 'personal' and 'huddle' message types.
(imported from commit 97a438ef5c0b3db4eb3e6db674ea38a081265dd3)
2012-11-13 15:40:53 -05:00
Zev Benjamin
8a76560970
Use a JSON array for recipients in send_message
...
(imported from commit e2184f92b708cc2e8ef3e9ae79ee4241c0aa12a1)
2012-11-13 15:40:53 -05:00
Tim Abbott
4c2d56c10b
zephyr_mirror: Extend logging on subscribe failures.
...
(imported from commit ce54549a74935bb95cb68dd1e6db2a3eec6166c5)
2012-11-13 12:47:59 -05:00
Tim Abbott
dd07236eec
zephyr_mirror: Tweak linewrapping algorithm.
...
(imported from commit 1165a7680251f6bb365f44a60612fffe0fbbae42)
2012-11-13 12:43:37 -05:00
Tim Abbott
defaeb935e
zephyr_mirror: Use python logging module.
...
(imported from commit 3cd9506d46eb56fbd5a48c789160a45846332633)
2012-11-13 12:43:14 -05:00
Tim Abbott
c38587191e
zephyr_mirror: Support whitespace-only zephyr instances.
...
Previously messages sent to zephyr instance " " wouldn't be forwarded
zephyr=>humbug because the target instance is the null instance; I
learned this when we got a few tracebacks in the zephyr_mirror log, so
clearly this does happen.
(imported from commit 08bd7470e75ac6af24ac83696b6cf68d70654664)
2012-11-09 17:32:15 -05:00
Tim Abbott
2735c8410e
zephyr_mirror: Catch IOError from zephyr.init().
...
(imported from commit d657fede53ee3754e76edf66b10bef09ad1f9577)
2012-11-09 16:56:14 -05:00
Tim Abbott
35fbf350ae
Fix sending to cross-realm Zephyr users.
...
(imported from commit 1eebf286e149aa1242d6d26096003eb696fb18f2)
2012-11-09 16:56:13 -05:00
Tim Abbott
c3c3045e3d
zephyr_mirror: Forward messages sent to the empty instance more clearly.
...
(imported from commit 1fb5e4f8ce9941b3ca89688821d325d7ae49aee5)
2012-11-08 17:48:15 -05:00
Tim Abbott
8d27bcbad7
zephyr_mirror: Add a test mode that just prints messages.
...
This is useful for trying out new versions of the forwarding code
while the mirroring bot is still running in production.
(imported from commit bcdaf91fed55ac0974b1efe31dd13ed006b6fd06)
2012-11-08 17:48:15 -05:00
Tim Abbott
ef065d112f
check-mirroring: Move some prints to be conditional on "verbose".
...
(imported from commit 90db591f5fc3e4d1f830ed16bca9380a3a9dddd3)
2012-11-08 13:47:02 -05:00
Tim Abbott
6aad2946a1
check-mirroring: Make root_path and option (with new default).
...
(imported from commit df15d089f234bfe5373fc3fed95eb2f3b3ee42b2)
2012-11-08 13:34:32 -05:00
Tim Abbott
f3cdfd2e4d
check-mirroring: Don't fail when messages get reordered.
...
This happens sometimes (especially when our server is restarting), and
isn't a _real_ problem -- it's much more important that we have a
completely reliable test that we can put a Nagios alert against.
(imported from commit 0add0b3dfc5447307014bbb9137366bd7141ade0)
2012-11-08 13:34:29 -05:00
Tim Abbott
1dba0c0344
zephyr_mirror: Support subscribing to non-ascii Zephyr classes.
...
(imported from commit 85437f09c4738df11208e623db566a9409e501a3)
2012-11-07 16:42:06 -05:00
Keegan McAllister
3db339da35
zephyr_mirror: Don't open /dev/null to disable logging
...
(imported from commit 804e627d6d70bbf2ae1ee2f467b79ed0582ced0f)
2012-11-07 16:36:40 -05:00
Keegan McAllister
6329bb0a46
zephyr_mirror: Always pass a tuple to string %
...
(imported from commit 64a59e23c3aa3fceb350ed348812258c90ff09da)
2012-11-07 16:36:36 -05:00
Tim Abbott
d3066a46d3
The empty string shouldn't be a valid stream name.
...
(imported from commit 1fa878d7d51d3c3444ac75edf08b32f886683964)
2012-11-07 15:42:32 -05:00
Tim Abbott
1c1519109a
zephyr_mirror: Use zephyr's bulk subscription functionality.
...
Previously we were spending 15 seconds on linerva (and more like 2.5
minutes on the not-yet-operational zmirror.humbughq.com) to subscribe
to all of our streams.
(imported from commit c36cb1c26868f142683d9c92d4875fcd4931886e)
2012-11-07 15:37:55 -05:00
Tim Abbott
43b9510abd
zephyr_mirror: Eliminate the confusing "subs" global.
...
zephyr.Subscriptions() is a singleton class, intended to be accessed
as it is used.
(imported from commit f76c1b1129adb19ba96ed17f441492edf859a748)
2012-11-07 15:37:55 -05:00
Tim Abbott
4b2d45e9a9
zephyr_mirror: Fix missing api key file error message.
...
(imported from commit 3efe7fb8b2d593418c37dbab9389a8df9c27d003)
2012-11-07 15:37:55 -05:00
Tim Abbott
c945d60d16
zephyr_mirror: Make the logging options require the log path as an argument.
...
This is for supporting running the mirroring bot on a server without
AFS.
(imported from commit 400bf32f17aca984fa40c3b1222893214497eaa0)
2012-11-07 15:37:55 -05:00
Tim Abbott
6caf52867f
zephyr_mirror: Use os.path.join for constructing the root_path.
...
(imported from commit d894ab68430e42233a7aa6b289f01e790f8c8586)
2012-11-07 15:37:46 -05:00
Tim Abbott
1e50224ca2
zephyr_mirror: Add option to change the root path.
...
This is relevant for running not out of AFS on Linerva.
(imported from commit 28549830c99ad5a52349fbcc9e53dcb3c5ef25a1)
2012-11-07 15:35:26 -05:00
Keegan McAllister
f6fe157d3d
check-mirroring: Get the max_message_id from get_profile()
...
(imported from commit 95f457b91563a92eee24c4487c00abe7132b4ff8)
2012-11-07 15:34:44 -05:00
Jessica McKellar
c29eede9d0
For now, allow all characters in stream names.
...
We've had multiple requests from MIT zephyr users to allow
non-alphanumeric stream names, and we haven't decided what we want to
allow, so for now allow everything.
Note that the web client and mirror script limit stream names to 30
characters, which is our database limit.
(imported from commit 2acb5ee04e5ee7c40031ac831e12d09d04bbb2e6)
2012-11-07 15:12:03 -05:00
Tim Abbott
0489154cd7
zephyr_mirror: don't crash when the zephyr server returns SERVNAK errors.
...
Zephyr has this great property where a small fraction of the time, the
Zephyr server rejects your attempt to subscribe to something for no
particular reason, returning a "SERVNAK" error.
(imported from commit 6d5ed033d46d77a5b02539a816453724740f8fb0)
2012-11-07 13:56:21 -05:00
Tim Abbott
2bdc02a10f
feedback-bot: Only forward messages sent directly to feedback@.
...
(imported from commit 4a4d1e4a3ba00deb929647f7f35f2982c2b4add6)
2012-11-06 16:59:28 -05:00
Tim Abbott
db0a064c80
Bots: Send messages through staging.humbughq.com.
...
(imported from commit d9859bfe5f5b3b7c5efa5ef930d6cfaa5c0d1fc2)
2012-11-06 16:59:28 -05:00
Tim Abbott
66640aefc6
zephyr_mirror: Remove remaining AFS reads when restarting automatically.
...
This does introduce a small security issue, in that a shell with
expired AFS tokens on the machine running the mirroring script will be
able to read the Humbug API key using /proc/pid/environ. I think this
is fine -- you can steal the API key from a running process using
ptrace anyway.
(imported from commit c6fdb798294fb32d640823b409f3e46274ca01f4)
2012-11-06 15:10:11 -05:00
Tim Abbott
45057fbf5d
zephyr_mirror: Zev's proposed fix to latest linewrapping problem.
...
(imported from commit 90fc4774e10255d0237a37b8af753059a66efb2d)
2012-11-06 11:31:37 -05:00
Tim Abbott
ff85226fee
zephyr_mirror: Add support for importing as a library.
...
(imported from commit 91dc7e8fae89ba8ade8dd98b747a25b46fca13e7)
2012-11-06 11:31:37 -05:00
Tim Abbott
a728f7936d
zephyr_mirror: Speed up retrying the restart process.
...
(imported from commit 7f7a2aaa8a7f872180400f57ad09c065ea2ababa)
2012-11-05 18:39:02 -05:00
Tim Abbott
a70fc5c5c1
zephyr_mirror: Also linewrap with extremely long strings.
...
(imported from commit cffa80f283fdac341942beb56ada9013cb8f7c39)
2012-11-05 18:39:02 -05:00
Tim Abbott
42e94b2684
zephyr_mirror: Only strip trailing whitespace.
...
(imported from commit f349778200e0c2fb410e5e2644c82ba4105f3634)
2012-11-05 18:39:02 -05:00
Tim Abbott
77bb41b3dd
zephyr_mirror: Improve different-paragraph detection algorithm.
...
(imported from commit 789651dd5b9af58bbc0e59a64dd565f06585134d)
2012-11-05 18:39:02 -05:00
Tim Abbott
403b728d3c
zephyr_mirror: Make paragraph break detection a bit less aggressive.
...
Because in the zephyr world, people often manually linewrap their
zephyrs, we need to relax the algorithm's assumption that every line
was wrapped to the same linewrapping threshhold. Otherwise messages
that look like this:
aaaaa aaaaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaa aaaaa
aaaaa aaaaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaa aaaaa aaaaa aaaaaa
aaaaa aaaaa aaaaa aaaaaaaaaa aaaaa aaaaa aaaaa aaaaa
might be treated as a paragraph break, even though that was unlikely
to have been the sender's intention.
(imported from commit e1144da2a3efc3241a8f15b0f19fea2ea6684254)
2012-11-05 18:39:02 -05:00
Tim Abbott
ee953c03fb
zephyr_mirror: Fix name of MIT Zephyr realm.
...
(imported from commit 2c4d269fee673171fcbacbd865135d266489559d)
2012-11-05 18:39:02 -05:00
Tim Abbott
07c190d94b
zephyr_mirror: Fix syncing instances of class message.
...
(imported from commit dfbbce336145ef6233eab27120a1ccefda055b13)
2012-11-05 18:39:02 -05:00
Tim Abbott
7ac10e626c
zephyr_mirror: Use SIGTERM to try to kill children.
...
It's generally best to first try killing with SIGTERM, and if we fail
to kill the child, we'll end up trying to kill them with SIGKILL
anyway when the new zephyr_mirror process starts up,
(imported from commit cfee2dd5f809f6e38d90a09be82719a8660d8377)
2012-11-05 18:39:02 -05:00
Tim Abbott
129c069a4a
zephyr_mirror: Use better line unwrapping algorithm.
...
(imported from commit e58ad67e98a9f2ec672162f955e49883d2dd3ab8)
2012-11-05 18:39:02 -05:00
Tim Abbott
15689a5158
zephyr_mirror: Encode the content as utf-8 before sending to zwrite.
...
(imported from commit 8bc578701a99f98eb5cc3e179fef696514da0066)
2012-11-05 10:20:40 -05:00
Zev Benjamin
2e69150790
zephyr_mirror: do case-insensitive compare when checking for instanced personals
...
Users were seeing "[-i PERSONAL]" prepended to mirrored zephyrs.
(imported from commit 82f1c93705f4000607ad8fd733c9fb5045619b10)
2012-11-05 00:48:00 -05:00
Tim Abbott
c68fb1f5ae
zephyr_mirror: Don't try to forward Humbug cross-realm messages to Zephyr.
...
(imported from commit b14174d79c88dcaec57207cd8467aa14d9cf02ba)
2012-11-04 06:50:52 -05:00
Tim Abbott
54ce5be16d
zephyr_mirror: Comment subject truncation.
...
(imported from commit eb292b47d74388d9c0065661c8b6fef9ab6f3554)
2012-11-04 06:50:52 -05:00
Tim Abbott
c783a52384
zephyr_mirror: Fix handling of cross-realm Zephyr users.
...
(imported from commit c3739bcd383e73ef7f5347f0665e990a0d121a47)
2012-11-04 06:50:52 -05:00
Tim Abbott
eaf69717c1
zephyr_mirror: Small logic fix in add_humbug_subscriptions.
...
(imported from commit bbcb7710310186612a8e7661a20b8b6558614758)
2012-11-04 06:50:52 -05:00
Tim Abbott
e112db6702
zephyr_mirror: Clean up old mirroring duplicate suppression.
...
(imported from commit ada8b4747d329da8b84acc8d3ff4fa2a4d653938)
2012-11-04 06:50:52 -05:00
Tim Abbott
b69201455c
zephyr_mirror: Parse zsig/body in its own function.
...
(imported from commit b692fa692d24d79f797852acffa0472d68930c88)
2012-11-04 06:50:52 -05:00
Tim Abbott
cf92525270
zephyr_mirror: Don't force-lower-case instance names.
...
(imported from commit 5b9b450ae7666a9c74704a7bd494c57a47578fe7)
2012-11-04 06:50:51 -05:00
Tim Abbott
ad6cc113a3
zephyr_mirror: Reduce code dupliation in process_notice.
...
(imported from commit f0d371cfcd3f4f5443dea5dc8f96f53df160d179)
2012-11-04 06:50:51 -05:00
Tim Abbott
942a9fd661
zephyr_mirror: Clean up send_humbug() interface.
...
(imported from commit 76d53e83eacedead2dabbf921e240afc4e4d09db)
2012-11-04 06:50:51 -05:00
Tim Abbott
f077cb81f0
zephyr_mirror: Remove an unnecessary username parsing.
...
(imported from commit 56c27a6cd923f13e23b70914f85dd73661e27651)
2012-11-04 06:50:51 -05:00
Tim Abbott
e0a71e7d6c
zephyr_mirror: Use a function to compute Zephyr usernames.
...
(imported from commit 73c066944942169d5a37fada110ed95aa2c10c94)
2012-11-04 06:50:51 -05:00
Tim Abbott
fb4e45e644
zephyr_mirror: Rename humbug_username to to_humbug_username.
...
(imported from commit 764673b9ccf2f58f88e1d6eec173a1c49ac15cad)
2012-11-04 06:50:51 -05:00
Tim Abbott
53f75affe7
zephyr_mirror: Use %me% rather than guessing the current Zephyr user.
...
(imported from commit 8c04581c4327a44515b9ce1b938c69675964c6c0)
2012-11-04 06:50:51 -05:00
Tim Abbott
97722d5eb3
zephyr_mirror: Don't let a single bad message break humbug=>zephyr forwarding.
...
(imported from commit 9b20f5e9c661fe0850c119309f4fe6f2c5d40679)
2012-11-02 14:15:46 -04:00
Tim Abbott
86ef645444
zephyr_mirror: Shell out to zwrite instead of using python-zephyr to send.
...
This eliminates the problems with python-zephyr not being able to
handle non-ascii characters in instances and class names.
(imported from commit c9f295cb18bc5043cd8efecbe6996ff373f66c9a)
2012-11-02 14:15:46 -04:00
Tim Abbott
2b7007fc1b
Use the empty string rendered in blue as the zsig loop avoidance token.
...
(imported from commit 10610b25b006f85b6557592ce73899381b520e3b)
2012-11-02 13:49:30 -04:00
Tim Abbott
6d8a6ebeab
zephyr_mirror: Support the empty string in blue as our loop detection technique.
...
(imported from commit 4f9c77df7479bfa485dac381514ee2c591ce09ef)
2012-11-02 13:49:29 -04:00
Tim Abbott
dc0bc84d4d
Add copyright notice to zephyr mirroring bots.
...
(imported from commit f3d27a032a461cf3eb92822feee3f8e790d630dd)
2012-11-02 13:49:29 -04:00
Tim Abbott
68e96c0617
humbug_trac: Don't send some updates without a comment.
...
(imported from commit 2cf5e8c2fc1cefcbfe440b2e29d89b78f19205e6)
2012-11-02 10:50:59 -04:00
Tim Abbott
f3646d9c56
humbug_trac: Remove redundant 'Trac ' in subjects.
...
(imported from commit 309b477963cd0d3cca06eef2a685b1143c144455)
2012-10-31 14:06:35 -04:00
Tim Abbott
1fc6248725
humbug_trac: Try to compress the rest of the changes.
...
(imported from commit a7bdf3cb8243d43837705d4c9eb00d5e6d75d4b5)
2012-10-31 14:06:35 -04:00
Tim Abbott
a75348cb71
Include the trac summary in the Humbug subject.
...
(imported from commit 23298d8455e2b0e8c4947f2d2e76874b66a8e28c)
2012-10-31 14:06:35 -04:00
Tim Abbott
0cb9a8321b
zephyr_mirror: Append our elements to the start of sys.path.
...
(imported from commit 674848bcac71d5bd28549f14a5da0f72c6c59d69)
2012-10-31 14:06:35 -04:00
Tim Abbott
205ad41a22
zephyr_mirror: More reliable killing of other zephyr_mirror processes.
...
(imported from commit ae00299114a74ebd582aec835ffd5f8127d8f55f)
2012-10-30 16:59:25 -04:00
Tim Abbott
0267275cfd
Move trac bot to the trac stream.
...
(imported from commit 7c05062d73d6bd4de4b9329f1f2b7baa705c9d2b)
2012-10-30 16:59:25 -04:00
Keegan McAllister
5be42f128e
zephyr_mirror: Remove 'continue' at the end of a loop
...
(imported from commit 5d6143828f1a6946b67ae23342c0bc2185ebee07)
2012-10-29 23:21:00 -04:00
Keegan McAllister
1e079f1994
zephyr_mirror: Use a set for current_zephyr_subs
...
(imported from commit 2736ea13dac7d3b5914eac27ed92ddacafd6ee8e)
2012-10-29 23:21:00 -04:00
Tim Abbott
36eab0e874
zephyr_mirror: Clean up some code duplication.
...
(imported from commit ab21fc28d167d6f74e9d93aa8a7ccb252b5664c2)
2012-10-29 18:57:54 -04:00
Tim Abbott
13d3fd46e5
zephyr_mirror: Set subject to personal if it is empty.
...
(imported from commit c843199287ab693f9f325ca0216cee59f8accdb3)
2012-10-29 18:25:03 -04:00
Tim Abbott
db5aaec6de
Improvements to .zephyrs.subs parsing.
...
(imported from commit b1ddbf4416f4b04201a66409bdc48a469801b9de)
2012-10-29 18:25:02 -04:00
Tim Abbott
f9672a34f2
zephyr_mirror: Fix unicode decoding issues.
...
(imported from commit b8c15fca2f691d23260ec025ad471815a7ab41b0)
2012-10-29 17:30:06 -04:00
Tim Abbott
874bee9655
Fix auto-restart functionality with new paths.
...
(imported from commit cbaf31a194c92a3683249f38f2949259d05d0921)
2012-10-29 17:30:06 -04:00
Tim Abbott
5aadd74f0c
Add tabbott/extra to the tabbott-stamp users.
...
(imported from commit 378fa53fa8d2f237c8366969ff8a3efb0dee961a)
2012-10-29 14:34:28 -04:00
Tim Abbott
e486be909e
zephyr_mirror: Clean up sys.path computations.
...
(imported from commit 7a58c4aae017b67b8b03ba1f4a0286d29381a5b1)
2012-10-29 14:34:28 -04:00
Tim Abbott
20e08a04f7
Change the location where stamp files are looked for.
...
(imported from commit 15aec12195f5650df0b603ebe8ad9f38fc29d8e1)
2012-10-29 14:13:13 -04:00
Tim Abbott
9fce18d9ff
zephyr_mirror: Suppress help for options users shouldn't use.
...
(imported from commit 62dc96147f2d4a706ff2570653ce3ad727d56967)
2012-10-29 14:13:13 -04:00
Tim Abbott
6b0f5d899f
Hardcode logging path for zephyrs.
...
(imported from commit c40fc9b67cae201cd2e94033257fb5f43602a5f2)
2012-10-29 14:13:13 -04:00
Tim Abbott
a5fc33a738
zephyr_mirror: Stop importing mit_subs_list.py.
...
(imported from commit 15e1eb1eabfa8db335f99b067dc4f4eecc00f639)
2012-10-29 13:58:05 -04:00
Tim Abbott
24a6e039cb
zephyr_mirror: Add option to just sync subscriptions.
...
(imported from commit 56951bb2bb62a8549593d2a33e883e66147d59a9)
2012-10-29 13:19:41 -04:00
Keegan McAllister
b88df2cf8e
Change default site in API clients
...
(imported from commit 185cf8e27cb6ecd1cd8ccca834d30ca0de2236b8)
2012-10-27 11:38:15 -04:00
Tim Abbott
7a19875c37
trac-bot: Show summary in tickets.
...
(imported from commit fdf48c0e6cd0c7a94d7ddb1f982d2398381e310a)
2012-10-26 14:15:27 -04:00
Tim Abbott
e8b54fc138
feedbact-bot: send feedback messages sent by non-MIT users too.
...
(imported from commit 00eb1f99af751665d036d25ea31da3dbfdf327a4)
2012-10-26 10:42:54 -04:00
Tim Abbott
2931346c5e
Kill duplicate zephyr mirror processes on startup.
...
(imported from commit 52db0c911e5d60a54eb43c5c075709c02e75da63)
2012-10-25 17:41:08 -04:00
Keegan McAllister
0ff7cb650f
Remove unused imports
...
(imported from commit eb576627ff72e57fee0e3a4c357f51ad74cd6c86)
2012-10-25 15:22:18 -04:00
Tim Abbott
1cb32fad7f
Move our various bots into api/bots/.
...
(imported from commit f5803441b9b84872b942dff8e1c0ad1100788bcd)
2012-10-25 13:53:34 -04:00
Tim Abbott
221cfc7717
Add feedback@humbughq.com forwarding bot.
...
(imported from commit 219909bd06025e3778f162321628781e2e3e2c94)
2012-10-25 13:53:33 -04:00