import { createRequire } from 'module'; const require = createRequire(import.meta.url); const https = require('https'); async function generateJitConfig(fullName, id) { return new Promise((resolve, reject) => { const request = https.request({ method: "POST", host: 'api.github.com', port: "443", headers: { "Accept": "application/vnd.github+json", "X-GitHub-Api-Version": "2022-11-28", "Authorization": `Bearer ${process.env["GITHUB_TOKEN"]}`, "User-Agent": "awslambda" }, path: `/repos/${fullName}/actions/runners/generate-jitconfig`, }, (response) => { let data = ''; response.on('data', (chunk) => { data += chunk; }); response.on('end', () => { try { resolve(JSON.parse(data)); } catch (err) { reject(new Error(err)); } }); } ); request.on('error', err => { reject(new Error(err)); }); request.write(JSON.stringify({ "name": `${id}`, "runner_group_id": 1, "labels": ["self-hosted", "X64", "Linux"], "work_folder": "work" })); request.end(); }) }