app.py
Код: Выделить всё
import sys
#print(sys.argv)
print("Yes I am inside the program")
for file in sys.argv:
print(file)
Код: Выделить всё
FROM python:3.12.7-alpine
WORKDIR /app
COPY app.py .
ENTRYPOINT ["python","app.py"]
этапы:
Код: Выделить всё
build image:
stage: build
image: docker:stable
services:
- name: docker:dind
alias: thedockerhost
variables:
# Tell docker CLI how to talk to Docker daemon; see
# https://docs.gitlab.com/ee/ci/docker/using_docker_build.html#use-docker-in-docker-executor
DOCKER_HOST: tcp://thedockerhost:2375/
# Use the overlayfs driver for improved performance:
DOCKER_DRIVER: overlay2
DOCKER_TLS_CERTDIR: ""
script:
# Download bash:
- apk add --no-cache bash python3
- echo "$CI_REGISTRY_USER"
- echo "$CI_REGISTRY_PASSWORD"
- docker login -u -p
gitlab.ilts.com:5050
- docker build -t gitlab.ilts.com:5050/group/project2/pythonapp .
- docker push gitlab.ilts.com:5050/group/project2/pythonapp
- docker logout
В project2, где у меня есть собственный образ, доступный в реестре контейнеров GitLab, я пытаюсь использовать его и предоставить входные данные в виде имен файлов.
p>
.gitlab-ci.yml проекта2.
Код: Выделить всё
build:
image: gitlab.ilts.com:5050/group/pythonapp:latest
before_script:
- echo "setting environment"
- apk update && apk add git
- git --version
script:
- echo "Creating Tag"
- git switch $CI_COMMIT_REF_NAME
- LAST_VER=$(git tag --list | sort -V | tail -n1)
- echo "$LAST_VER"
- FILES_CHANGED=$(git diff --name-only HEAD v1.0.0)
- echo "$FILES_CHANGED"
- python --version
- python app.py hi.sql yes.sql hello.sql
ВЫВОД:
Код: Выделить всё
Yes I am inside the program
app.py
sh
-c
if [ -x /usr/local/bin/bash ]; then
exec /usr/local/bin/bash
elif [ -x /usr/bin/bash ]; then
exec /usr/bin/bash
elif [ -x /bin/bash ]; then
exec /bin/bash
elif [ -x /usr/local/bin/sh ]; then
exec /usr/local/bin/sh
elif [ -x /usr/bin/sh ]; then
exec /usr/bin/sh
elif [ -x /bin/sh ]; then
exec /bin/sh
elif [ -x /busybox/sh ]; then
exec /busybox/sh
else
echo shell not found
exit 1
fi
Подробнее здесь: https://stackoverflow.com/questions/790 ... ab-pipelin