Eu tenho meu dockerfile
FROM git.corp.com:4567/some/python:3.11-slim
RUN apt update; \
apt install pipx -y; \
pipx install poetry; \
pipx ensurepath; \
chmod a +rx /root/.local/bin/poetry; \
ln -s /root/.local/bin/poetry /usr/bin/poetry; \
e meu palco jenkins
stage('Test') {
agent {
dockerfile{
filename 'Dockerfile.build'
args "-v $WORKSPACE:/app"
reuseNode true
}
}
steps {
sh """
ls -l poetry
poetry install --no-root -E tests -E mypy -E lint
PYTHONPATH="$PWD/src" pytest
"""
}
}
Por que recebo esta mensagem?
script.sh.copy: 3: poetry: Permission denied
Eu alterei as permissões usandochmod a +rx
ls -l poetry
a saída se parece com isso
lrwxrwxrwx 1 root root 23 Apr 11 10:02 /usr/bin/poetry -> /root/.local/bin/poetry
Eu sei que o Jenkins passa os argumentos -u 1000:1000 para o comando docker run, mas o chmod não deveria corrigir isso?