Невозможно установить приложение ACE Jira от Heroku - PullRequest
0 голосов
/ 03 апреля 2020

У меня настроено приложение Atlassian Connect, используя инструкции на сайте ACE BitBucket, , и я, как обычно, вручную развертывал свое приложение в экземплярах разработки с использованием туннелей ngrok. Приложение работает нормально, все страницы отображаются правильно, а само приложение выполняет то, что должно (в режиме разработки)

Теперь я пытаюсь использовать Heroku для своих рабочих развертываний, а приложение создает и развертывает только хорошо, без ошибок, показывая в heroku logs --tail. Я ясно вижу, что дескриптор atlassian-connect.json развернут по соответствующему URL-адресу в Heroku.

Однако, когда я пытаюсь использовать URL-адрес развернутого дескриптора в Heroku, чтобы установить мое приложение в одном из моих тестовых экземпляров Jira, Я получаю следующую ошибку в Jira:

The app host returned HTTP response code 503 when we tried to contact it during installation. Please try again later or contact the app vendor.

Это журналы, которые я получаю от Heroku, без каких-либо явных ошибок:

2020-04-03T04:51:11.256336+00:00 heroku[router]: at=info method=GET path="/atlassian-connect.json" host=example-app.herokuapp.com request_id=4676badf-c37f-4440-b017-1b1ec5f00023 fwd="18.234.32.227" dyno=web.1 connect=1ms service=4ms status=200 bytes=1354 protocol=https

2020-04-03T04:51:11.255764+00:00 app[web.1]: ::ffff:10.5.179.3 - - [03/Apr/2020:04:51:11 +0000] "GET /atlassian-connect.json HTTP/1.1" 200 905 "-" "Apache-HttpClient/4.5.12 (Java/1.8.0_242)"

Наконец, вот мой atlassian-connect.json file:

{
    "key": "example-app",
    "name": "Example App",
    "baseUrl": "{{localBaseUrl}}",
    "authentication": {
        "type": "jwt"
    },
    "lifecycle": {
        "installed": "installed"
    },
    "scopes": [
        "READ"
    ],
    "modules": {
        "jiraProjectPages": [
            {
                "key": "example-app-page-jira",
                "location": "system.top.navigation.bar",
                "name": {
                    "value": "Example app"
                },
                "url": "/example-app",
                "iconUrl": "{{localBaseUrl}}/images/example.svg",
                "conditions": [{
                    "condition": "user_is_logged_in"
                }]
            },
            {
                "key": "example-app-2-page-jira",
                "location": "system.top.navigation.bar",
                "name": {
                    "value": "Example app 2"
                },
                "url": "/example-app-2",
                "iconUrl": "{{localBaseUrl}}/images/example2.svg",
                "conditions": [{
                    "condition": "user_is_logged_in"
                }]
            }
        ]
    }
}

Вот что я пробовал до сих пор:

  • Определение маршрута для /installed в index.js, с кодом состояния 200, например:
app.get('/installed', (req, res) => {
        res.send('success');
    });
  • Обновление пакетов pg и sequelize
  • Загрузка дескриптора как частного приложения на Atlassian Marketplace и установка оттуда

Кажется, ничего не работает; Кто-нибудь есть какие-либо идеи, что вызывает эту ошибку?

1 Ответ

0 голосов
/ 05 апреля 2020

Оказывается, это была проблема, о которой я думал Я имел дело с, но на самом деле не имел.

Проблема заключалась в конечной точке /installed в конце; как вы можете видеть в дескрипторе, я определил конечную точку жизненного цикла как "installed" вместо "/installed", поэтому ответ так и не был получен.

Изменение этой строки на "/installed" исправило все.

...