As part of migrating m3api to Wikimedia GitLab, I’m currently working on porting the CI from GitHub Actions to GitLab CI. Some of the repositories (m3api-botpassword, later also m3api-oauth2) run tests against the Beta Cluster, and currently I’m running into issues there. When trying to use a WMCS runner (via tags: [ "wmcs" ]), the build fails with a “Connection refused” error:
TypeError: fetch failed at node:internal/deps/undici/undici:12618:11 at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async NodeSession.internalGet (file:///builds/repos/m3api/tmp-m3api-botpassword/node_modules/m3api/fetch.js:34:20) at async NodeSession.request (file:///builds/repos/m3api/tmp-m3api-botpassword/node_modules/m3api/core.js:561:28) at async NodeSession.requestAndContinue (file:///builds/repos/m3api/tmp-m3api-botpassword/node_modules/m3api/core.js:625:21) at async NodeSession.getToken (file:///builds/repos/m3api/tmp-m3api-botpassword/node_modules/m3api/core.js:706:22) at async NodeSession.request (file:///builds/repos/m3api/tmp-m3api-botpassword/node_modules/m3api/combine.js:28:4) at async login (file:///builds/repos/m3api/tmp-m3api-botpassword/index.js:109:19) at async Context.<anonymous> (file:///builds/repos/m3api/tmp-m3api-botpassword/test/integration/index.test.js:86:24) Caused by: Error: connect ECONNREFUSED 172.16.3.164:443 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1555:16)
@bd808 says this is probably because the GitLab runners are firewalled off from the rest of Cloud VPS, yet they still have a DNS setup that returns private IP addresses (the 172.16.3.164 above).
(FTR, trying to use non-WMCS runners fails with a different error – some kind of HTML being returned rather than JSON – which I haven’t investigated yet, but that’s not in scope for this task.)