Я слежу за blogpost при передаче образов докеров из GitLab в AWS Fargate.В какой-то момент есть скрипт оболочки, вызываемый из gitlab-ci.yml для входа в систему с помощью aws cli.
Я пытался решить эту проблему, и в процессе я создал очень минимальный .gitlab-ci.yml для воспроизведения этой проблемы:
image: docker:latest
stages:
- test
build_test:
stage: test
image:
name: docker:latest
services:
- docker:dind
environment:
name: production
script:
- source script/deploy.sh
со сценарием оболочки ( script / deploy.sh ):
#!/bin/sh
echo "preparing python installation"
apk add --update python
echo "python installed"
Это дает следующий вывод на GitLab :
[...]
Running on runner-fa6cab46-project-11081405-concurrent-0 via runner-fa6cab46-srm-1551436016-4b73cd2c...
Cloning repository...
Cloning into '/builds/test-repo'...
Checking out 21d6f4dd as master...
Skipping Git submodules setup
$ source script/deploy.sh
/bin/sh: script/deploy.sh: line 2:
: not found
ERROR: Job failed: exit code 127
Согласно этому смежному вопросу , вероятно, на последнем или отдаленном изображении Docker нет оболочки или удара, но как я могу решить эту проблему?Я использую публичные бегуны на gitlab.