Ошибка `bash: line 136: /usr/bin/mvn: No such file or directory` указывает на то, что скрипт не может найти или выполнить команду `mvn`. Возможно, проблема связана с тем, что Maven не установлен в указанном вами пути или он установлен в другом месте. Рассмотрим несколько шагов для устранения вашей проблемы:
1. **Проверьте наличие Maven на GitLab Runner**:
Если у вас есть доступ к GitLab Runner, выполните следующую команду в терминале для проверки наличия Maven и его версии:
```bash
which mvn
mvn --version
```
2. **Установите Maven**:
Если Maven не установлен, вам нужно его установить. Например, для Ubuntu это можно сделать с помощью:
```bash
sudo apt update
sudo apt install maven
```
3. **Используйте образ Docker с предустановленным Maven**:
Если ваш GitLab Runner использует Docker, вы можете указать используемый образ с предустановленным Maven. Например, добавьте следующее в ваш `.gitlab-ci.yml`:
```yaml
image: maven:3.8.5-jdk-11
```
Таким образом, вам не придется беспокоиться о настройках PATH или установке Maven на хосте.
4. **Убедитесь в правильности тега**:
Удостоверьтесь, что Runner, на который вы ссылаетесь с помощью тега `shell`, действительно установлен и настроен. Возможно, стоит попробовать использовать другой Runner или проверить, что все необходимые зависимости для этого Runner доступны.
5. **Логи и отладка**:
Попробуйте добавить дополнительные логи в ваш скрипт, чтобы отладить проблему. Например:
```yaml
- echo "Checking which mvn is being used"
- which mvn
- echo "Checking mvn version"
- mvn --version
```
6. **Конфликтующие версии**:
Убедитесь, что у вас нет конфликтующих установленных версий Maven (например, в `/usr/bin` и `/usr/local/bin`). Это может вызывать несоответствия при попытке запуска `mvn`.
7. **Перезапуск GitLab Runner**:
В случае, если ошибка периодическая и появляется из-за каких-либо временных проблем, попробуйте перезапустить GitLab Runner:
```bash
sudo gitlab-runner restart
```
Если после проверки всех этих шагов проблема не будет решена, то вероятно, стоит углубиться в логи GitLab Runner для выявления более детальных причин или обратиться к сообществу за помощью.