Как исправить ошибку конфликтующего исходного пароля? - PullRequest
0 голосов
/ 05 мая 2020

Я пытаюсь настроить gitlab CI / CD.

1 из скриптов, которые я использую:

sshpass -p $PRIVATE_KEY ssh -p $PORT -o StrictHostKeyChecking=no $USER@$SERVER01 "cd /var/www/html/app && export HISTIGNORE='*sudo -S*' && echo "$PRIVATE_KEY" | ( sudo -S -k git fetch && sudo -S -k git pull )"

как видите, я пытаюсь обновить приложение на моем сервере.

К вашему сведению, я уже установил переменные на странице настроек gitlab CI / CD.

Но когда задание выполняется, оно всегда возвращает это сообщение об ошибке:

Conflicting password source
 Usage: sshpass [-f|-d|-p|-e] [-hV] command parameters
    -f filename   Take password to use from file
    -d number     Use number as file descriptor for getting password
    -p password   Provide password as argument (security unwise)
    -e            Password is passed as env-var "SSHPASS"
    With no parameters - password will be taken from stdin
    -P prompt     Which string should sshpass search for to detect a password prompt
    -v            Be verbose about what you're doing
    -h            Show help (this screen)
    -V            Print version information
 At most one of -f, -d, -p or -e should be used

Я уже погуглил, но не нашел подсказки.

Любая подсказка была бы очень признательна.

1 Ответ

0 голосов
/ 06 мая 2020

Наконец-то я нашел решение.

Итак, приведенная выше команда работала для ветки master, но не сработала для develop, зная этот шаблон, я проверил настройки переменных, затем узнал что я включил флаг Protect variable, флаг говорит: Export variable to pipelines running on protected branches and tags only.

Поскольку develop не является защищенной веткой, я думал, что значения переменных не были переданы в конвейер.

Итак, я снял этот флаг для всех переменных, и наконец он заработал.

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