Сборка Heroku завершилась неудачно во время выполнения задачи 'nodeSetup' с ошибкой «Не удалось перейти по символической ссылке» - PullRequest
0 голосов
/ 13 апреля 2019

В первый раз, когда я создаю приложение на heroku, все работает нормально, но все последующие развертывания терпят неудачу во время процесса сборки во время задачи nodeSetup gradle с этой ошибкой

Failed to capture fingerprint of output files for task ':nodeSetup' property 'nodeDir' during up-to-date check.
       > Could not list contents of '/tmp/build_f8eae163382a61b2896d7be434b4dc58/.gradle/nodejs/node-v8.12.0-linux-x64/bin/npm'. Couldn't follow symbolic link.

Мне нужно создать новыйПроект heroku каждый раз, когда я хочу развернуть это.Так что это работает только в первый раз.Даже если я очищаю кэш с помощью ./gradlew clean, во время сборки происходит сбой, потому что он не очищает папку .gradle

. Если я ввожу SSH в проект и вручную запускаю ./gradlew build, он работает без проблем.,Ошибка происходит только во время процесса сборки heroku (из пакета сборки)

Я использую https://github.com/srs/gradle-node-plugin, чтобы использовать веб-пакет для интерфейса в проекте https://github.com/zhcet-amu/zhcet-web.

Iдумаю, с подобными проблемами сталкивались многие люди.Это может быть связано с кэшированием каталога и попыткой доступа к несуществующему при втором развертывании?

Это полный журнал сборки

-----> Gradle app detected
-----> Spring Boot detected
-----> Installing JDK 1.8... done
-----> Building Gradle app...
-----> executing ./gradlew build -x test
       > Task :bootBuildInfo
       > Task :compileKotlin
       > Task :nodeSetup FAILED

       FAILURE: Build failed with an exception.

       * What went wrong:
       Failed to capture fingerprint of output files for task ':nodeSetup' property 'nodeDir' during up-to-date check.
       > Could not list contents of '/tmp/build_f8eae163382a61b2896d7be434b4dc58/.gradle/nodejs/node-v8.12.0-linux-x64/bin/npm'. Couldn't follow symbolic link.

       * Try:
       Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

       * Get more help at https://help.gradle.org

       BUILD FAILED in 27s
       3 actionable tasks: 3 executed
 !     ERROR: Failed to run Gradle!
       We're sorry this build is failing. If you can't find the issue in application
       code, please submit a ticket so we can help: https://help.heroku.com
       You can also try reverting to the previous version of the buildpack by running:
       $ heroku buildpacks:set https://github.com/heroku/heroku-buildpack-gradle#previous-version

       Thanks,
       Heroku
 !     Push rejected, failed to compile Gradle app.
 !     Push failed

Лично мне все равнокэшируется или нет, и восстановление занимает больше времени, поскольку в настоящее время развертывания даже не работают.Я бы с удовольствием послал пиарщик, если бы руководствовался указаниями относительно того, что нужно сделать здесь, но сейчас, есть ли какой-нибудь способ, который я могу сделать?

Я ищу что-нибудь, что может либо дать мне понятькэш перед началом сборки, или настройте команду сборки для другой задачи gradle, или что-нибудь еще, что может помочь

1 Ответ

1 голос
/ 15 апреля 2019

Часть проблемы заключается в том, что gradle-node-plugin создает символические ссылки с абсолютными путями.Вероятно, он должен создавать относительные пути.

В любом случае я открыл PR в пакете сборки Gradle, чтобы исключить этот каталог из кэша .Как только это выпущено, эта проблема должна исчезнуть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...