{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":24612415,"defaultBranch":"master","name":"ros_buildfarm","ownerLogin":"ros-infrastructure","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-09-29T20:48:14.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2328632?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1714663817.0","currentOid":""},"activityList":{"items":[{"before":"0e5793629abcf9333b0fa73f8b9fbd50fd704a6e","after":null,"ref":"refs/heads/revenge-of-jenkins-poll","pushedAt":"2024-05-02T15:30:17.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"ddbed65cd81c22dbba1e59e3b97a3325374bcc17","after":"7fa41d24ee02ac85bb631abca951b0c2af3023e6","ref":"refs/heads/master","pushedAt":"2024-05-02T15:29:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Avoid jenkinsapi trying to fetch all jobs. (#1045)\n\n* Use lazy argument to prevent an initial \"poll\" of Jenkins jobs.\r\n\r\nBy default the jenkinsapi Jenkins class will trigger an eager loading of\r\nall Jenkins jobs via the API. Our Jenkins server buckles under the\r\nweight of this and so we do not want to do this until we need to and\r\nideally future changes will replace unfiltered polling completely.\r\n\r\n* Avoid triggering spurious HTTP request of all jenkins jobs.\r\n\r\nThere's a malinteraction with the jenkinsapi library and Python\r\nconvention which has been causing extremely large HTTP requests whenever\r\nthe truthiness of an instance of the Jenkins class is tested.\r\n\r\nJenkins defines a `__len__` method which is used to determine\r\ntruthiness. But this method triggers a fetch of every job on our Jenkins\r\nhost which can take 2 - 5 minutes to return due to the sheer volume of\r\njobs.\r\n\r\nBy avoiding this in favor of an explicit check whether jenkins is an\r\ninstance of the JenkinsProxy class we can save taking a really big\r\nruntime hit and cut down on spurious failures due to timeouts.\r\n\r\n* Whitespace.","shortMessageHtmlLink":"Avoid jenkinsapi trying to fetch all jobs. (#1045)"}},{"before":"5ecbe8f60dcd5ba3fb2d3fa5b9c9c8d8fda7b46c","after":"0e5793629abcf9333b0fa73f8b9fbd50fd704a6e","ref":"refs/heads/revenge-of-jenkins-poll","pushedAt":"2024-04-29T22:33:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Whitespace.","shortMessageHtmlLink":"Whitespace."}},{"before":"60131b74ff234867821a51c4fa83263e60d64763","after":"5ecbe8f60dcd5ba3fb2d3fa5b9c9c8d8fda7b46c","ref":"refs/heads/revenge-of-jenkins-poll","pushedAt":"2024-04-27T04:48:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Avoid triggering spurious HTTP request of all jenkins jobs.\n\nThere's a malinteraction with the jenkinsapi library and Python\nconvention which has been causing extremely large HTTP requests whenever\nthe truthiness of an instance of the Jenkins class is tested.\n\nJenkins defines a `__len__` method which is used to determine\ntruthiness. But this method triggers a fetch of every job on our Jenkins\nhost which can take 2 - 5 minutes to return due to the sheer volume of\njobs.\n\nBy avoiding this in favor of an explicit check whether jenkins is an\ninstance of the JenkinsProxy class we can save taking a really big\nruntime hit and cut down on spurious failures due to timeouts.","shortMessageHtmlLink":"Avoid triggering spurious HTTP request of all jenkins jobs."}},{"before":null,"after":"60131b74ff234867821a51c4fa83263e60d64763","ref":"refs/heads/revenge-of-jenkins-poll","pushedAt":"2024-04-27T00:29:59.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Avoid triggering spurious HTTP request of all jenkins jobs.\n\nThere's a malinteraction with the jenkinsapi library and Python\nconvention which has been causing extremely large HTTP requests whenever\nthe truthiness of an instance of the Jenkins class is tested.\n\nJenkins defines a `__len__` method which is used to determine\ntruthiness. But this method triggers a fetch of every job on our Jenkins\nhost which can take 2 - 5 minutes to return due to the sheer volume of\njobs.\n\nBy avoiding this in favor of an explicit check whether jenkins is an\ninstance of the JenkinsProxy class we can save taking a really big\nruntime hit and cut down on spurious failures due to timeouts.","shortMessageHtmlLink":"Avoid triggering spurious HTTP request of all jenkins jobs."}},{"before":"31a64420317665062783f53245f1783b775522ce","after":"24ad6e29bf44e4ebf30717eeadbe70ad2e8cfa6d","ref":"refs/heads/avoid-jenkins-poll","pushedAt":"2024-04-26T17:43:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Revert \"Change more jenkins is/is not False checks to jenkins is/is not None.\"\n\nEverything is more broken from this so work will be requried to find out\nwhere this Jenkins object is coming from.\n\nThis reverts commit 31a64420317665062783f53245f1783b775522ce.","shortMessageHtmlLink":"Revert \"Change more jenkins is/is not False checks to jenkins is/is n…"}},{"before":"e935e5ea6f87526394a4ec2ea345723562a55b2a","after":"31a64420317665062783f53245f1783b775522ce","ref":"refs/heads/avoid-jenkins-poll","pushedAt":"2024-04-26T17:28:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Change more jenkins is/is not False checks to jenkins is/is not None.","shortMessageHtmlLink":"Change more jenkins is/is not False checks to jenkins is/is not None."}},{"before":"073619ca4e9eae14e08b2b7363e51d1710c2d290","after":"e935e5ea6f87526394a4ec2ea345723562a55b2a","ref":"refs/heads/avoid-jenkins-poll","pushedAt":"2024-04-26T16:03:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Use None consistently as sigil value for no Jenkins connection.\n\nThe ros_buildfarm pipeline has branching behavior whenever being run on\na workstation, in which case it connects to Jenkins via HTTP, and in a\nbuild farm job , in which case it emits Groovy scripts to make the\nequivalent changes.\n\nIn order to avoid hitting heavyweight API endpoints for presence\nqueries, always check whether the jenkins API client is `None` rather\nthan different paths checking for for it to be False or None.\n\nPreviously these false-y values were interchangable but not in this\nformulation.\n\nAnother alternative would be to make all checks:\n`not isinstance(Jenkins)`\nwhich would keep the versatility without trying to check the truthiness,\nand thus length of the Jenkins object, avoiding the heavyweight API\ncall.","shortMessageHtmlLink":"Use None consistently as sigil value for no Jenkins connection."}},{"before":null,"after":"073619ca4e9eae14e08b2b7363e51d1710c2d290","ref":"refs/heads/avoid-jenkins-poll","pushedAt":"2024-04-23T20:05:56.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Test jenkins is None explicitly.\n\nThere's a malinteraction with the jenkinsapi library and Python\nconvention which has been causing extremely large HTTP requests whenever\nthe truthiness of an instance of the Jenkins class is tested.\n\nJenkins defines a `__len__` method which is used to determine\ntruthiness. But this method triggers a fetch of every job on our Jenkins\nhost which can take 2 - 5 minutes to return due to the sheer volume of\njobs.\n\nBy avoiding this in favor of an explicit check of `is False` or `is\nNone` as appropriate we can save taking a really big runtime hit and cut\ndown on spurious failures due to timeouts.","shortMessageHtmlLink":"Test jenkins is None explicitly."}},{"before":"b93bbc658243f8c24ee68d53d004545e173319e9","after":null,"ref":"refs/heads/clalancette/deploy-all-rosdoc2","pushedAt":"2024-04-23T17:35:44.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"7ad8967b95aa096ab5d337522c9f0350c6c3a54d","after":"ddbed65cd81c22dbba1e59e3b97a3325374bcc17","ref":"refs/heads/master","pushedAt":"2024-04-23T17:35:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"},"commit":{"message":"Make sure to call generate_doc_maintenance_jobs.py for rosdoc2. (#1043)\n\nSo that when we run generate_all_jobs.py, we can properly\r\ndeploy rosdoc2 jobs.\r\n\r\nSigned-off-by: Chris Lalancette ","shortMessageHtmlLink":"Make sure to call generate_doc_maintenance_jobs.py for rosdoc2. (#1043)"}},{"before":"d786b3382dfa0fa475a4667528ae760c59f2cd00","after":"b93bbc658243f8c24ee68d53d004545e173319e9","ref":"refs/heads/clalancette/deploy-all-rosdoc2","pushedAt":"2024-04-23T16:12:10.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"clalancette","name":"Chris Lalancette","path":"/clalancette","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/163000?s=80&v=4"},"commit":{"message":"Make sure to call generate_doc_maintenance_jobs.py for rosdoc2.\n\nSo that when we run generate_all_jobs.py, we can properly\ndeploy rosdoc2 jobs.\n\nSigned-off-by: Chris Lalancette ","shortMessageHtmlLink":"Make sure to call generate_doc_maintenance_jobs.py for rosdoc2."}},{"before":null,"after":"d786b3382dfa0fa475a4667528ae760c59f2cd00","ref":"refs/heads/clalancette/deploy-all-rosdoc2","pushedAt":"2024-04-23T16:10:33.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"clalancette","name":"Chris Lalancette","path":"/clalancette","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/163000?s=80&v=4"},"commit":{"message":"Make sure to call generate_doc_maintenance_jobs.py for rosdoc2.\n\nSo that when we run generate_all_jobs.py, we can properly\ndeploy rosdoc2 jobs.\n\nSigned-off-by: Chris Lalancette ","shortMessageHtmlLink":"Make sure to call generate_doc_maintenance_jobs.py for rosdoc2."}},{"before":"0c1d4a53b221a851ddcc3a6dfec131d88b4fe4e5","after":null,"ref":"refs/heads/rosdoc2_jobs","pushedAt":"2024-04-20T05:05:47.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"46b39ede3d3cfdfdbedb6434d688a28fb516136c","after":null,"ref":"refs/heads/nuclearsandwich/rehash-task-only","pushedAt":"2024-04-20T05:05:44.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"64cc18ab570cc3b8382cb814fb0fa5bf36608b4f","after":null,"ref":"refs/heads/nuclearsandwich/revert-test","pushedAt":"2024-04-20T05:05:42.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"be9e8832e120088caf0b12fef3bc20403ff0d4df","after":null,"ref":"refs/heads/pin_setuptools","pushedAt":"2024-04-20T05:05:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"93d9e8a5bca7500383fc0a2ebad53a10c0c55472","after":null,"ref":"refs/heads/nuclearsandwich/upstream-rosdistro","pushedAt":"2024-04-20T05:00:04.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"ec4dcfa63f9a3f0e9d20930785b95a54871a5baf","after":null,"ref":"refs/heads/nuclearsandwich/trigger-reconfigure-hotfix","pushedAt":"2024-04-20T04:56:22.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"30287ff14d3b42ad3e2a120670b684e92146b7d2","after":null,"ref":"refs/heads/staging","pushedAt":"2024-04-20T04:56:14.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"e88ee648f995c6674499b2591543bedb2745a9a0","after":null,"ref":"refs/heads/nuclearsandwich/devel-task-ros-workspace","pushedAt":"2024-04-20T04:56:11.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"84b85182b2d4967cb5add544937fda81b380a78e","after":null,"ref":"refs/heads/rocky","pushedAt":"2024-04-20T04:55:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"bb50f273b9168f00dc27cca8a783bceca163686c","after":null,"ref":"refs/heads/Crola1702/fix-pytest-rerunfailures","pushedAt":"2024-04-20T04:54:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"d88abf06ff5b7eb33ef3a4fd620ac579ea4f6eb7","after":null,"ref":"refs/heads/nuclearsandwich/uid-override","pushedAt":"2024-04-20T04:54:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"7d467e83605790cc3c2069b12c6a289807c4297c","after":null,"ref":"refs/heads/revert-1026-marcoag/Rpr_noble_pip_fix","pushedAt":"2024-04-20T04:54:35.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"5a84de6dca52ce3ee73a5eb5693d2b5a5231767c","after":null,"ref":"refs/heads/nuclearsandwich/fix-rosdoc2-build","pushedAt":"2024-04-20T04:54:31.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"2a23971ec8f6d722150fe542e8627442c6a93a3f","after":null,"ref":"refs/heads/nuclearsandwich/copy-rosdoc2","pushedAt":"2024-04-20T04:54:29.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"72ba499a5e3b0d21affb2171587c6d0dbb02fdab","after":null,"ref":"refs/heads/add-jammy-rosdoc2-jorb","pushedAt":"2024-04-20T04:54:21.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nuclearsandwich","name":"Steven! Ragnarök","path":"/nuclearsandwich","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/358882?s=80&v=4"}},{"before":"d8afd23dcf1fadfc1ad2b6e875cdb4ae6bc1ed0f","after":null,"ref":"refs/heads/tfoote-drop-python2-ci","pushedAt":"2024-04-19T22:27:01.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tfoote","name":"Tully Foote","path":"/tfoote","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/447804?s=80&v=4"}},{"before":"2237bb8998b5aaef2e1d66225477f9a14781efb4","after":null,"ref":"refs/heads/flake8_class_newline","pushedAt":"2024-04-19T19:33:18.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"cottsay","name":"Scott K Logan","path":"/cottsay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1144588?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEP_R7FAA","startCursor":null,"endCursor":null}},"title":"Activity · ros-infrastructure/ros_buildfarm"}