{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":899771,"defaultBranch":"master","name":"Tron","ownerLogin":"Yelp","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2010-09-09T20:54:04.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/49071?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726589149.0","currentOid":""},"activityList":{"items":[{"before":"e65aef5fd938f4f53c2c663f61e788e249577d12","after":"13bbc75f90fb639c53171191e842b0290dc26ff9","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-19T14:17:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Remove unnecessary list call","shortMessageHtmlLink":"Remove unnecessary list call"}},{"before":"84f4148f4fdeb91ab1c9dc48136b8d45a94cc135","after":"e65aef5fd938f4f53c2c663f61e788e249577d12","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-18T16:06:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Remove deprecated itest. Rename some variables to make things a bit clearer.","shortMessageHtmlLink":"Remove deprecated itest. Rename some variables to make things a bit c…"}},{"before":"389601b97706bf8149eea18568d93da1e9e34ae9","after":"84f4148f4fdeb91ab1c9dc48136b8d45a94cc135","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-18T15:49:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Remove shelve key test since we no longer save mcp_state or state_metadata","shortMessageHtmlLink":"Remove shelve key test since we no longer save mcp_state or state_met…"}},{"before":"871aa60c7d179d4f31b33f9c1d03a0c9d2b97e28","after":"389601b97706bf8149eea18568d93da1e9e34ae9","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-18T14:12:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Comment cleanup. Add cleanup TODOs for TRON-2293. Rename val in dynamodb_state_store to something a little more explanatory now that we have 2 versions","shortMessageHtmlLink":"Comment cleanup. Add cleanup TODOs for TRON-2293. Rename val in dynam…"}},{"before":"bfc4f6625cd187aef26b8443bc8dc6b39f5a22b5","after":"871aa60c7d179d4f31b33f9c1d03a0c9d2b97e28","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-17T20:53:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Fix isinstance check for Action to_json","shortMessageHtmlLink":"Fix isinstance check for Action to_json"}},{"before":"f38f24c54e462927320c72b53a9575299fc9b80b","after":"bfc4f6625cd187aef26b8443bc8dc6b39f5a22b5","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-17T19:39:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Try itest validation without mcp_state","shortMessageHtmlLink":"Try itest validation without mcp_state"}},{"before":"32d5df09bf926dac981a4f05c4410bac6fc56ba6","after":"f38f24c54e462927320c72b53a9575299fc9b80b","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-17T16:56:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Return these","shortMessageHtmlLink":"Return these"}},{"before":"fda8c2fabf171e6e0121b11a307550521cf21d61","after":"32d5df09bf926dac981a4f05c4410bac6fc56ba6","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-17T16:22:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Remove old comments. Delete mcp state metadata.","shortMessageHtmlLink":"Remove old comments. Delete mcp state metadata."}},{"before":"42fd9eab3cfd48fed72a745c89b73fec283a5b58","after":"fda8c2fabf171e6e0121b11a307550521cf21d61","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-17T16:11:55.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Resolve conflict","shortMessageHtmlLink":"Resolve conflict"}},{"before":null,"after":"42fd9eab3cfd48fed72a745c89b73fec283a5b58","ref":"refs/heads/u/kkasp/TRON-2237-write-json-state","pushedAt":"2024-09-17T16:05:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"KaspariK","name":"Kevin Kaspari","path":"/KaspariK","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/44184488?s=80&v=4"},"commit":{"message":"Add types to DynamoDB restore flow. Add Persistable abstract class and to_json methods for classes in DynamoDB restore flow. Write an additional attribute to DynamoDB to capture non-pickled state_data.","shortMessageHtmlLink":"Add types to DynamoDB restore flow. Add Persistable abstract class an…"}},{"before":"f7a7b7e062a32f3afcd3db735255ab06f192f3d2","after":"3c64a6eab392696dafb5f6ee226e746e32777cfb","ref":"refs/heads/master","pushedAt":"2024-09-17T15:26:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"nemacysts","name":"Luis Pérez","path":"/nemacysts","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1012432?s=80&v=4"},"commit":{"message":"Released 2.5.0 via make release","shortMessageHtmlLink":"Released 2.5.0 via make release"}},{"before":"b6205dbb8a3a17ab7a13a4362a3f681cc33dfc7f","after":"f7a7b7e062a32f3afcd3db735255ab06f192f3d2","ref":"refs/heads/master","pushedAt":"2024-09-16T16:03:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"nemacysts","name":"Luis Pérez","path":"/nemacysts","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1012432?s=80&v=4"},"commit":{"message":"Attempt to batch config loading for deployments (#996)\n\nRight now we make at most 2N calls to the Tron API during config\r\ndeployments: N to get the current configs and at most N if all services\r\nhave changes.\r\n\r\nTo start, I'd like to reduce this to N by allowing GET /api/config to\r\nreturn all the configs so that the only requests needed are POSTs for\r\nchanged configs.\r\n\r\nDepending on how this goes, we can look into batching up the POSTs so\r\nthat we can also do that in a single request.\r\n\r\nIn terms of speed, it looks like loading all the configs from pnw-prod\r\n(on my devbox) with this new behavior takes ~3s - which isn't great, but\r\nthere's a decent bit of file IO going on here :(","shortMessageHtmlLink":"Attempt to batch config loading for deployments (#996)"}},{"before":null,"after":"ebd28cac615f14fb9b7b3dc9e6b44d76b57fa743","ref":"refs/heads/luisp/TRON-2063-batch-api-calls","pushedAt":"2024-09-09T22:09:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"nemacysts","name":"Luis Pérez","path":"/nemacysts","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1012432?s=80&v=4"},"commit":{"message":"Attempt to batch config loading for deployments\n\nRight now we make at most 2N calls to the Tron API during config\ndeployments: N to get the current configs and at most N if all services\nhave changes.\n\nTo start, I'd like to reduce this to N by allowing GET /api/config to\nreturn all the configs so that the only requests needed are POSTs for\nchanged configs.\n\nDepending on how this goes, we can look into batching up the POSTs so\nthat we can also do that in a single request.\n\nIn terms of speed, it looks like loading all the configs from pnw-prod\n(on my devbox) with this new behavior takes ~3s - which isn't great, but\nthere's a decent bit of file IO going on here :(","shortMessageHtmlLink":"Attempt to batch config loading for deployments"}},{"before":"d1db4c441ff86aa1484bbc5f8920fac4f8f97ce3","after":"b6205dbb8a3a17ab7a13a4362a3f681cc33dfc7f","ref":"refs/heads/master","pushedAt":"2024-09-09T19:24:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"Released 2.4.2 via make release","shortMessageHtmlLink":"Released 2.4.2 via make release"}},{"before":"ff41e0dea0903b39f44df9d69f548ae5cee4aa68","after":"d1db4c441ff86aa1484bbc5f8920fac4f8f97ce3","ref":"refs/heads/master","pushedAt":"2024-09-09T18:29:53.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"Merge pull request #995 from Yelp/u/cuza/making-non-retryable-exit-code-accept-negative-numbers\n\nFix negative value check for non-retryable exit codes in Kubernetes configuration","shortMessageHtmlLink":"Merge pull request #995 from Yelp/u/cuza/making-non-retryable-exit-co…"}},{"before":"4951fb4ef433d649e6dc93c01cbc2b72548c6251","after":"ea050e9b4c55dcb6856a0f2935dfaf55758adc71","ref":"refs/heads/u/cuza/making-non-retryable-exit-code-accept-negative-numbers","pushedAt":"2024-09-05T21:15:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"Fix negative value check for non-retryable exit codes in Kubernetes configuration","shortMessageHtmlLink":"Fix negative value check for non-retryable exit codes in Kubernetes c…"}},{"before":null,"after":"4951fb4ef433d649e6dc93c01cbc2b72548c6251","ref":"refs/heads/u/cuza/making-non-retryable-exit-code-accept-negative-numbers","pushedAt":"2024-09-05T20:58:54.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"Fix negative value check for non-retryable exit codes in Kubernetes configuration","shortMessageHtmlLink":"Fix negative value check for non-retryable exit codes in Kubernetes c…"}},{"before":"2d76d0565566b575df1f317c9da95436f054db28","after":"ff41e0dea0903b39f44df9d69f548ae5cee4aa68","ref":"refs/heads/master","pushedAt":"2024-09-03T18:25:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"nemacysts","name":"Luis Pérez","path":"/nemacysts","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1012432?s=80&v=4"},"commit":{"message":"Released 2.4.1 via make release","shortMessageHtmlLink":"Released 2.4.1 via make release"}},{"before":"7f83bfd110395be542c69728e1d5f6351b9eb8d2","after":"2d76d0565566b575df1f317c9da95436f054db28","ref":"refs/heads/master","pushedAt":"2024-08-30T17:23:25.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"EvanKrall","name":"Evan Krall","path":"/EvanKrall","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/233961?s=80&v=4"},"commit":{"message":"Merge pull request #994 from Yelp/StefanoChiodino-patch-1\n\nUpdate tronweb.less","shortMessageHtmlLink":"Merge pull request #994 from Yelp/StefanoChiodino-patch-1"}},{"before":null,"after":"3a47633c080a5efa5f1a19e4f5a26c9b3f967454","ref":"refs/heads/StefanoChiodino-patch-1","pushedAt":"2024-08-30T15:34:02.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"StefanoChiodino","name":"Stefano","path":"/StefanoChiodino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1428893?s=80&v=4"},"commit":{"message":"Update tronweb.less","shortMessageHtmlLink":"Update tronweb.less"}},{"before":"2d17df35e6c46549752ff8d6038d4e602a87be76","after":"7f83bfd110395be542c69728e1d5f6351b9eb8d2","ref":"refs/heads/master","pushedAt":"2024-08-28T16:19:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"nemacysts","name":"Luis Pérez","path":"/nemacysts","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1012432?s=80&v=4"},"commit":{"message":"Released 2.4.0 via make release","shortMessageHtmlLink":"Released 2.4.0 via make release"}},{"before":"d51984ef27faf1d743881a8c578f02e1ddd60c72","after":"2d17df35e6c46549752ff8d6038d4e602a87be76","ref":"refs/heads/master","pushedAt":"2024-08-28T16:18:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"nemacysts","name":"Luis Pérez","path":"/nemacysts","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1012432?s=80&v=4"},"commit":{"message":"TRON-2208: Add toggle in tron config to disable retries on LOST k8s jobs (#988)\n\nGiven that \"LOST\" means Tron has lost track of a pod it already thought it had started for a job, attempting to retry/start a replacement can be dangerous for non-idempotent jobs. In the current state, these will consume retries, but with some of our EKS migration methods, LOST tasks are more likely. Therefore, we should have a way to temporarily pause retries on these.\r\n\r\n## Related Issues\r\n- TRON-2208: Add toggle in Tron config to disable retries on LOST k8s jobs","shortMessageHtmlLink":"TRON-2208: Add toggle in tron config to disable retries on LOST k8s j…"}},{"before":"f16b828b498cac48891b1d8c6a3f6bc4a9dc7671","after":"b9883a32559c61a79e817bbf6dd9438d801e0712","ref":"refs/heads/u/cuza/disable_retries_on_lost","pushedAt":"2024-08-27T01:01:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"Adding self.retries_remaining = 0 when we skip a non retryable job","shortMessageHtmlLink":"Adding self.retries_remaining = 0 when we skip a non retryable job"}},{"before":"fa00a349cdf9aa0e73a8381d7a3bd7e0eab0837d","after":"f16b828b498cac48891b1d8c6a3f6bc4a9dc7671","ref":"refs/heads/u/cuza/disable_retries_on_lost","pushedAt":"2024-08-19T15:35:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"Fixing tests","shortMessageHtmlLink":"Fixing tests"}},{"before":"b8e91c32c8f78e7b6788da98cd7f79e1d3b098c7","after":"fa00a349cdf9aa0e73a8381d7a3bd7e0eab0837d","ref":"refs/heads/u/cuza/disable_retries_on_lost","pushedAt":"2024-08-19T15:04:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"chore: Refactor non_retryable_exit_codes to use list instead of tuple","shortMessageHtmlLink":"chore: Refactor non_retryable_exit_codes to use list instead of tuple"}},{"before":"0cda7e523d89684e6b5199b42e7522034863a57c","after":"b8e91c32c8f78e7b6788da98cd7f79e1d3b098c7","ref":"refs/heads/u/cuza/disable_retries_on_lost","pushedAt":"2024-08-15T22:10:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"Update tron/core/actionrun.py\n\nCo-authored-by: Jen Patague ","shortMessageHtmlLink":"Update tron/core/actionrun.py"}},{"before":"dbd31da723cc81f561ea1231d211e447d059f0fd","after":"0cda7e523d89684e6b5199b42e7522034863a57c","ref":"refs/heads/u/cuza/disable_retries_on_lost","pushedAt":"2024-08-02T17:04:55.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"chore: Update .gitignore to include .fleet\n\nThe .gitignore file has been updated to include the .fleet directory. This ensures that the .fleet directory is ignored by Git and not tracked in the repository.","shortMessageHtmlLink":"chore: Update .gitignore to include .fleet"}},{"before":"6e2163e7a2c646dce676a0842238f447bb53de1e","after":"dbd31da723cc81f561ea1231d211e447d059f0fd","ref":"refs/heads/u/cuza/disable_retries_on_lost","pushedAt":"2024-08-02T16:56:36.000Z","pushType":"push","commitsCount":19,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"Merge remote-tracking branch 'origin/master' into u/cuza/disable_retries_on_lost\n\n* origin/master:\n Minor fix to help text for kubecontext param\n Support running on devbox too\n Support multiple clusters in sync_tron_from_k8s\n Released 2.3.0 via make release\n More type fixes for defaults\n Initialize KubernetesClusterRepository watcher_kubeconfig_paths the same as KubernetsCluster and correct typing\n Released 2.2.7 via make release\n Only show disable warning on tronctl disable (#990)\n Add validation to watcher_kubeconfig_paths too, and a minimal test\n Update tools/sync_tron_state_from_k8s.py\n Bump task_processing to get watcher_kubeconfig_paths change\n Support old_kubeconfig_paths\n Update sync_tron_from_k8s to match sanitized instance labels, cleanup comments\n Update sync to handle in-progress retries and don't tronctl yet; add unit tests\n TRON-2210: Add a tool that can sync from pod state to tron w/ tronctl\n\n# Conflicts:\n#\ttron/kubernetes.py","shortMessageHtmlLink":"Merge remote-tracking branch 'origin/master' into u/cuza/disable_retr…"}},{"before":"1ece1c63944d9dc46f19586a501acf03efdfe73b","after":"6e2163e7a2c646dce676a0842238f447bb53de1e","ref":"refs/heads/u/cuza/disable_retries_on_lost","pushedAt":"2024-08-02T16:52:45.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"chore: Refactor non_retryable_exit_codes in KubernetesCluster and KubernetesClusterRepository\n\nThe `non_retryable_exit_codes` attribute in the `KubernetesCluster` and `KubernetesClusterRepository` classes has been refactored to use a tuple of integers instead of a single integer. This change allows for more flexibility in specifying multiple exit codes that should not trigger auto-retries for Kubernetes tasks.","shortMessageHtmlLink":"chore: Refactor non_retryable_exit_codes in KubernetesCluster and Kub…"}},{"before":"34b98f426049da6de23d5d5a095788a47b08c89f","after":"1ece1c63944d9dc46f19586a501acf03efdfe73b","ref":"refs/heads/u/cuza/disable_retries_on_lost","pushedAt":"2024-07-31T22:13:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuza","name":"Dave Cuza","path":"/cuza","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10126324?s=80&v=4"},"commit":{"message":"chore: Update Kubernetes configuration to use non_retryable_exit_codes\n\nThe Kubernetes configuration has been updated to use the `non_retryable_exit_codes` option instead of `disable_retries_on_lost`. This change allows for more flexibility in specifying the exit codes that should not trigger auto-retries for Kubernetes tasks.","shortMessageHtmlLink":"chore: Update Kubernetes configuration to use non_retryable_exit_codes"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOVQxNDoxNzoxNC4wMDAwMDBazwAAAAS69HD0","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOVQxNDoxNzoxNC4wMDAwMDBazwAAAAS69HD0","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0zMVQyMjoxMzowMi4wMDAwMDBazwAAAASOiCms"}},"title":"Activity · Yelp/Tron"}