Я создал пакет Python, похожий на следующий.Пакет в основном используется для запуска этапов в конвейере jenkins внутри док-контейнера.Поэтому я создал репозиторий в github и создал файл dockerfile с шагом клонирования репозитория и выполнил установку pip для этого пакета.Затем я создал образ docker.
jenkins_pipeline_pkg/
| - jenkins_pipeline_pkg/
| - __init__.py
| - config/
| - config.yaml
| - scripts/
| - pre_build.py
| - build.py
| - setup.py
Я выполнил pip-установку пакета внутри контейнера Docker, который я создал с помощью файла Docker.Setup.py выглядит следующим образом.
#!/usr/bin/env python
from setuptools import setup
setup(name='jenkins_pipeline_pkg',
version='0.1',
description='Scripts for jenkins pipeline',
url='<private repo url>',
author='<name>',
author_email='<email>',
packages=['jenkins_pipeline_pkg'],
zip_safe=False,
entry_points={
'console_scripts': [
'pre-build = jenkins_pipeline_pkg.pre_build:main',
'build = jenkins_pipeline_pkg.build:main',],
}
)
Я запустил pip install для пакета.Он установил исполняемый файл, указанный в entry_points в ~/.local/bin
.Затем я попытался выполнить исполняемый файл из любого другого места, не переходя в каталог ~/.local/bin
(просто скажите, что я выполнил из / home / user).А также bash auto complete не показывает команду предварительной сборки.Я не знаю, что мне здесь не хватает.