GithubActions CI: как найти файл внутри виртуальной машины Windows?
У меня сбой сборки, потому что он не находит какой-то конкретный файл по определенному пути. Возможно, этот файл находится просто в другом каталоге SDK (из-за наличия новой версии), поэтому я просто хочу найти его во всемC:
привод.
Однако, если я выполню следующий шаг в моем рабочем процессе GithubActions:
- name: dir
run: |
c: && cd \ && dir /s TheFileNameThatILookFor.SomeExtension
Потом рабочий процесс зависает! Он продолжает выполняться вечно и никогда не заканчивается. (Доказательство.)
Как тогда найти конкретные файлы?
UPDATE: после 5 часов процесс CI был прерван (возможно, с помощью некоторого набора тайм - аута по инфраструктуре GithubActions), а затем я мог видеть выход изdir /s
, если ты можешь подождать, просто сделай это. Если нет, вы можете попробовать то, что предлагает @Samira в своем ответе, но IME не всегда работает (например, если я попытаюсь найти файл с длинным именем, он не найдет его: журнал, который это доказывает, но в других случаях это сработало) и это все равно довольно долго, 40 минут! но не дольше 5 часов...
1 ответ
Вы можете воспользоваться тем фактом, что bash, доступный для всех платформ, поставляется вместе с набором удобных инструментов в PATH
.
Вместо того dir
, попробуйте поэкспериментировать с find - это все еще займет некоторое время (пример ниже занял ~40 минут), но вы будете использовать инструмент, предназначенный для этой задачи.
Пример:
- run: find /c/ -name "*.targets"