Получение ошибки "sudo: команда не найдена" в конвейерах bitbucket - PullRequest
0 голосов
/ 27 марта 2019

В моем bitbucket-pipelines.yml файле у меня есть это:

  - step:
      image: python:3.7.2-stretch
      name: upload to s3
      script:
        - export S3_BUCKET="elasticbeanstalk-us-east-1-133233433288"
        - export VERSION_LABEL=$(cat VERSION_LABEL)
        - sudo apt-get install -y zip # required for packaging up the application
        - pip install boto3==1.3.0 # required for upload_to_s3.py
        - zip --exclude=*.git* -r /tmp/artifact.zip . # package up the application for deployment
        - python upload_to_s3.py # run the deployment script

Но когда я запускаю этот конвейер в Bitbucket, я получаю сообщение об ошибке:

+ sudo apt-get install -y zip
bash: sudo: command not found

Почему бы ему не знать, что означает sudo?Разве это не распространено на все машины Linux?

Ответы [ 2 ]

1 голос
/ 27 марта 2019

Ошибка «команда не найдена» печатается в stderr, когда он не находит двоичный файл в папках, сконфигурированных в env $ PATH

Сначала вам необходимо выяснить, существует ли он с:

find /usr/bin -name "sudo"

если вы найдете двоичный файл, попробуйте установить переменную PATH с помощью:

export PATH=$PATH:/usr/bin/ 

, затем попробуйте снова запустить sudo.

0 голосов
/ 27 марта 2019

Нет, sudo не везде доступно.

Но вам все равно не нужно беспокоиться об этом.Когда вы запускаете образ, вы root, так что вы можете просто запустить apt-get, не задумываясь о разрешениях.

...