Thanks for putting this together, it's really useful. I've been experiencing a couple of (what I imagine are) permission errors related to the GitHub App configuration. Are there some additional permissions that need to be granted beyond those stated below?
default_permissions:
contents: :write
metadata: :read
2023-03-05T18:53:26.8384989Z RequestError [HttpError]: Resource not accessible by integration
2023-03-05T18:53:26.8387986Z at /home/runner/work/_actions/actions/github-script/v6/dist/index.js:6803:21
2023-03-05T18:53:26.8388365Z at processTicksAndRejections (node:internal/process/task_queues:96:5)
2023-03-05T18:53:26.8388932Z at async eval (eval at callAsyncFunction (/home/runner/work/_actions/actions/github-script/v6/dist/index.js:15099:16), <anonymous>:13:26)
2023-03-05T18:53:26.8389463Z at async main (/home/runner/work/_actions/actions/github-script/v6/dist/index.js:15198:20) {
2023-03-05T18:53:26.8389745Z status: 403,
2023-03-05T18:53:26.8389922Z response: {
2023-03-05T18:53:26.8390378Z url: 'https://api.github.com/repos/GoodhandSolutions/terraform-snowflake-playground/check-runs/11775549491',
2023-03-05T18:53:26.8391081Z status: 403,
2023-03-05T18:53:26.8391282Z headers: {
2023-03-05T18:53:26.8391572Z 'access-control-allow-origin': '*',
2023-03-05T18:53:26.8392544Z 'access-control-expose-headers': 'ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset',
2023-03-05T18:53:26.8393279Z connection: 'close',
2023-03-05T18:53:26.8393538Z 'content-encoding': 'gzip',
2023-03-05T18:53:26.8393865Z 'content-security-policy': "default-src 'none'",
2023-03-05T18:53:26.8394227Z 'content-type': 'application/json; charset=utf-8',
2023-03-05T18:53:26.8394548Z date: 'Sun, 05 Mar 2023 18:53:26 GMT',
2023-03-05T18:53:26.8394962Z 'referrer-policy': 'origin-when-cross-origin, strict-origin-when-cross-origin',
2023-03-05T18:53:26.8395324Z server: 'GitHub.com',
2023-03-05T18:53:26.8395714Z 'strict-transport-security': 'max-age=31536000; includeSubdomains; preload',
2023-03-05T18:53:26.8396063Z 'transfer-encoding': 'chunked',
2023-03-05T18:53:26.8396408Z vary: 'Accept-Encoding, Accept, X-Requested-With',
2023-03-05T18:53:26.8396746Z 'x-content-type-options': 'nosniff',
2023-03-05T18:53:26.8397024Z 'x-frame-options': 'deny',
2023-03-05T18:53:26.8397350Z 'x-github-api-version-selected': '2022-11-28',
2023-03-05T18:53:26.8397678Z 'x-github-media-type': 'github.v3',
2023-03-05T18:53:26.8398039Z 'x-github-request-id': '86C4:60B2:2DCE608:5F0BA85:6404E526',
2023-03-05T18:53:26.8398348Z 'x-ratelimit-limit': '1000',
2023-03-05T18:53:26.8398628Z 'x-ratelimit-remaining': '980',
2023-03-05T18:53:26.8398911Z 'x-ratelimit-reset': '1678044246',
2023-03-05T18:53:26.8399189Z 'x-ratelimit-resource': 'core',
2023-03-05T18:53:26.8399470Z 'x-ratelimit-used': '20',
2023-03-05T18:53:26.8400037Z 'x-xss-protection': '0'
2023-03-05T18:53:26.8400235Z },
2023-03-05T18:53:26.8400407Z data: {
2023-03-05T18:53:26.8400810Z message: 'Resource not accessible by integration',
2023-03-05T18:53:26.8403050Z documentation_url: 'https://docs.github.com/rest/reference/checks#update-a-check-run'
2023-03-05T18:53:26.8403371Z }
2023-03-05T18:53:26.8403527Z },
2023-03-05T18:53:26.8403684Z request: {
2023-03-05T18:53:26.8403938Z method: 'PATCH',
2023-03-05T18:53:26.8404396Z url: 'https://api.github.com/repos/GoodhandSolutions/terraform-snowflake-playground/check-runs/11775549491',
2023-03-05T18:53:26.8404722Z headers: {
2023-03-05T18:53:26.8405028Z accept: 'application/vnd.github.-preview+json',
2023-03-05T18:53:26.8405475Z 'user-agent': 'actions/github-script octokit-core.js/3.6.0 Node.js/16.16.0 (linux; x64)',
2023-03-05T18:53:26.8405836Z authorization: 'token [REDACTED]',
2023-03-05T18:53:26.8406169Z 'content-type': 'application/json; charset=utf-8'
2023-03-05T18:53:26.8406411Z },
2023-03-05T18:53:26.8406688Z body: '{"status":"completed","conclusion":"success"}',
2023-03-05T18:53:26.8407009Z request: { agent: [Agent], hook: [Function: bound bound register] }
2023-03-05T18:53:26.8407248Z }
2023-03-05T18:53:26.8407404Z }
2023-03-05T18:53:26.8437830Z ##[error]Unhandled error: HttpError: Resource not accessible by integration
PS. I think the action versions need to be updated to prevent warnings being raised about the Node version. I can raise a PR for that.