Terraform-aws-github-runner: Не удалось увеличить масштаб лямбда

Созданный на 17 нояб. 2020  ·  17Комментарии  ·  Источник: philips-labs/terraform-aws-github-runner

Привет. У меня ошибка увеличения лямбда после настройки вашего модуля.
Журналы Cloudwatch ниже:

ERROR   Invoke Error    
{
    "errorType": "Error",
    "errorMessage": "Failed handling SQS event",
    "stack": [
        "Error: Failed handling SQS event",
        "    at _homogeneousError (/var/runtime/CallbackContext.js:12:12)",
        "    at postError (/var/runtime/CallbackContext.js:29:54)",
        "    at callback (/var/runtime/CallbackContext.js:41:7)",
        "    at /var/runtime/CallbackContext.js:104:16",
        "    at /var/task/index.js:16834:16",
        "    at Generator.throw (<anonymous>)",
        "    at rejected (/var/task/index.js:16816:65)",
        "    at processTicksAndRejections (internal/process/task_queues.js:97:5)"
    ]
}

ERROR RequestError [HttpError]: Resource not accessible by integration at /var/task/index.js:15124:23 at processTicksAndRejections (internal/process/task_queues.js:97:5) { status: 403, headers: { 'access-control-allow-origin': '*', 'access-control-expose-headers': 'ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, Deprecation, Sunset', connection: 'close', 'content-encoding': 'gzip', 'content-security-policy': "default-src 'none'", 'content-type': 'application/json; charset=utf-8', date: 'Tue, 17 Nov 2020 17:51:47 GMT', 'referrer-policy': 'origin-when-cross-origin, strict-origin-when-cross-origin', server: 'GitHub.com', status: '403 Forbidden', 'strict-transport-security': 'max-age=31536000; includeSubdomains; preload', 'transfer-encoding': 'chunked', vary: 'Accept-Encoding, Accept, X-Requested-With', 'x-content-type-options': 'nosniff', 'x-frame-options': 'deny', 'x-github-media-type': 'github.v3; format=json', 'x-github-request-id': '93DE:E7C5:957F272:AC944E7:5FB40DB3', 'x-ratelimit-limit': '5600', 'x-ratelimit-remaining': '5598', 'x-ratelimit-reset': '1605639047', 'x-ratelimit-used': '2', 'x-xss-protection': '1; mode=block' }, request: { method: 'GET', url: 'https://api.github.com/repos/RaketaApp/packer-base-ami/actions/runs?status=queued', headers: { accept: 'application/vnd.github.v3+json', 'user-agent': 'octokit-rest.js/18.0.6 octokit-core.js/3.1.1 Node.js/12.18.4 (linux; x64)', authorization: 'token [REDACTED]' }, request: { hook: [Function: bound bound register] } }, documentation_url: 'https://docs.github.com/rest/reference/actions#list-workflow-runs-for-a-repository' }

documentation question

Самый полезный комментарий

@npalm да, это проблема с разрешением. Я исправил проблему, предоставив доступ для автономных бегунов ( чтение и запись ) в организации. В документации ничего не сказано о разрешении бегуна.

Все 17 Комментарий

У меня была такая же ошибка, попробуйте дать приложению права в группе Действия.

@adrianmiron Вы исправили это?

та же проблема +1

@npalm Не могли бы вы мне помочь?

@adrianmiron Я попробовал группу действий, но проблема не

Я не осознаю проблему. Лямбда с увеличением масштаба извлекает сообщение из очереди, а затем проверяет, есть ли еще задания в очереди. Если да, то это масштабирование. Лямбда с увеличением срабатывает для сообщений, находящихся в очереди в течение 30 секунд. Сообщение об ошибке указывает, что лямбда не разрешено вызывать API.

Пожалуйста, можете ли вы проверить, настроено ли ваше приложение GitHub в соответствии с документацией. Поскольку срабатывает ваша масштабируемая лямбда, кажется, что приложение установлено для репо, в противном случае событие не должно быть получено. Таким образом, наиболее лигично выглядит то, что разрешения установлены неправильно.

@ manoj-k-deepr Из моих исследований той же ошибки выяснилось, что это проблемы с разрешениями приложения github (которое на самом деле выполняет запрос к действиям репо. Я помню, что перебрал лямбда -> приложение github дело 5 раз и не тут то было.

Поделитесь принтскрином с разрешениями на организацию / репо, и я сравню утром.

@npalm да, это проблема с разрешением. Я исправил проблему, предоставив доступ для автономных бегунов ( чтение и запись ) в организации. В документации ничего не сказано о разрешении бегуна.

Возникла проблема с разрешениями приложения Github. @npalm Можете ли вы обновить документацию и указать, какие разрешения требуются приложению

@mkryva Отлично, у вас все заработало. Я оставлю вопрос открытым, чтобы мы могли обновить документы. Всегда приветствуются пиарщики по улучшению документации!

После обновления разрешений происходит сбой со следующей ошибкой:

ERROR AuthFailure.ServiceLinkedRoleCreationNotPermitted: The provided credentials do not have permission to create the service-linked role for EC2 Spot Instances.

UPD: Похоже, причина была в том, что «Вы достигли квоты на максимальное количество запросов спотового флота для этой учетной записи».

масштабирование лямбда не работает для меня, даже после последней фиксации (ghes) исправления @mcaulifn


DEBUG   https://enterprise.github.custom.com/api/v3

ERROR   RequestError [HttpError]: request to https://enterprise.github.custom.com/api/v3/app/installations/22/access_tokens 
failed, reason: connect ETIMEDOUT 192.168.1.1:443
    at /var/task/index.js:2797:11
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
    at async getInstallationAuthentication (/var/task/index.js:266:7) {
  status: 500,
  headers: {},
  request: {
    method: 'POST',
    url: 'https://enterprise.github.custom.com/api/v3/app/installations/22/access_tokens',
    headers: {
      accept: 'application/vnd.github.antiope-preview+json,application/vnd.github.machine-man-preview+json',
      'user-agent': 'octokit-request.js/5.4.12 Node.js/12.19.0 (linux; x64)',
      authorization: 'bearer [REDACTED]',
      'content-length': 0
    }
  }
}

ERROR RequestError [HttpError]: request to https://enterprise.github.custom.com/api/v3/app/installations/22/access_tokens failed, 
reason: connect ETIMEDOUT 192.168.1.1:443 at /var/task/index.js:2797:11 at processTicksAndRejections 
(internal/process/task_queues.js:97:5) at async getInstallationAuthentication (/var/task/index.js:266:7) 
{ status: 500, headers: {}, request: { 
    method: 'POST', url: 'https://enterprise.github.custom.com/api/v3/app/installations/22/access_tokens', 
    headers: { accept: 'application/vnd.github.antiope-preview+json,application/vnd.github.machine-man-preview+json', 
    'user-agent': 'octokit-request.js/5.4.12 Node.js/12.19.0 (linux; x64)', authorization: 'bearer [REDACTED]', 
    'content-length': 0 } } }



ERROR   Invoke Error    
{
    "errorType": "Error",
    "errorMessage": "Failed handling SQS event",
    "stack": [
        "Error: Failed handling SQS event",
        "    at _homogeneousError (/var/runtime/CallbackContext.js:12:12)",
        "    at postError (/var/runtime/CallbackContext.js:29:54)",
        "    at callback (/var/runtime/CallbackContext.js:41:7)",
        "    at /var/runtime/CallbackContext.js:104:16",
        "    at /var/task/index.js:50911:16",
        "    at Generator.throw (<anonymous>)",
        "    at rejected (/var/task/index.js:50893:65)",
        "    at processTicksAndRejections (internal/process/task_queues.js:97:5)"
    ]
}

@buamod вы используете GHES? Верно? Чтобы быть уверенным, вы перестроили лямбду и убедились, что она используется?

ETIMEDOUT предполагает, что GHES не ответил. Вы за прокси?

@buamod вы используете GHES? Верно? Чтобы быть уверенным, вы перестроили лямбду и убедились, что она используется?

Я развернул последние лямбда-выражения коммитов, я собрал их с помощью команд docker из сценария Ci / build.sh.

ETIMEDOUT предполагает, что GHES не ответил. Вы за прокси?

Может быть прокси, которого я не знаю. Скажем, есть прокси, как мне это передать?

Требования к прокси

Была ли эта страница полезной?
0 / 5 - 0 рейтинги