Я написал пакет python для работы, который я первоначально опубликовал в PYPI. Все работало отлично, я мог установить и использовать все модули, которые я написал. Все было хорошо. Через несколько минут я понял, что в пакете может быть конфиденциальная информация, поэтому неопубликованная, глупая я / новая глупость разработчика.
Затем я решил, что самым простым способом будет взять файл tar.gz
- - генерируется в папке dist
при запуске python3 setup.py sdist bdist_wheel
- и добавляет это в частное репозиторий github моей компании.
Я добавил файл, зафиксировал, а затем попытался выполнить следующую команду:
pip install git+ssh://git@github.com/company_github/my_repo.git@commithash
И получите следующее сообщение об ошибке:
ERROR: Command errored out with exit status 1:
command: /Users/me/opt/anaconda3/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/78/bn32jmyx0350cdp7cc_3t2ym0000gn/T/pip-req-build-qqbm6_ox/setup.py'"'"'; __file__='"'"'/private/var/folders/78/bn32jmyx0350cdp7cc_3t2ym0000gn/T/pip-req-build-qqbm6_ox/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/78/bn32jmyx0350cdp7cc_3t2ym0000gn/T/pip-req-build-qqbm6_ox/pip-egg-info
cwd: /private/var/folders/78/bn32jmyx0350cdp7cc_3t2ym0000gn/T/pip-req-build-qqbm6_ox/
Complete output (5 lines):
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/me/opt/anaconda3/lib/python3.7/tokenize.py", line 447, in open
buffer = _builtin_open(filename, 'rb')
FileNotFoundError: [Errno 2] No such file or directory: '/private/var/folders/78/bn32jmyx0350cdp7cc_3t2ym0000gn/T/pip-req-build-qqbm6_ox/setup.py'
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
Что именно я делаю неправильно? Нужно ли добавлять файл setup.py
в ту же папку, где находится мой файл tar.gz
? Или есть что-то, что мне нужно сделать с файлом требований -> невозможно установить, пока не будут установлены все зависимости?
Можно ли напрямую pip install
тарболить? Я тоже сделал это,
pip install https://github.com/company_github/my_repo/my_package.tar.gz
, но получил ERROR: HTTP error 404
, сказав, что файл не найден.
Любая помощь или направление высоко ценится!
РЕДАКТИРОВАТЬ:
Вот структура файла:
.
├── CF_dev_emr_cluster.yaml
├── DeepAR\ Model\ Input\ Check\ (json).ipynb
├── __init__.py
├── anomaly
│ ├── MAD.py
│ └── __init__.py
├── batch_transform
│ ├── batch_transform.py
│ ├── generic_batch_transform.py
│ ├── get_time_series_as_rows.py
│ └── post_batch_transform.py
├── dev_env
│ ├── CF_dev_emr_cluster_m5d.yaml
│ ├── CF_dev_emr_cluster_r5d.yaml
│ └── new_cluster_v2.sh
├── digital_logging.py
├── hive_table_checker
│ ├── __init__.py
│ └── hive_table_checker.py
├── metadata_io
│ ├── README.md
│ ├── __init__.py
│ ├── manage_metadata.py
│ ├── model_record_example.py
│ └── tests
│ ├── __init__.py
│ └── test_manage_metadata.py
├── parquet_converter
│ ├── CF_parquet_emr_cluster_m5d.yaml
│ ├── DAGs
│ │ ├── monthly_parquet_convert_v1.5.py
│ │ ├── monthly_parquet_convert_v1.6.py
│ │ └── utils
│ │ └── check_partitions.py
│ ├── __init__.py
│ ├── dist_parquet_converter.sh
│ ├── dist_parquet_copy.sh
│ ├── dist_spark_parquet_converter.sh
│ ├── parquet_config.json
│ ├── parquet_converter.py
│ ├── parquet_emr_connection_update.sh
│ ├── parquet_final_copy.sh
│ ├── parquet_start_stack.sh
│ ├── patef_schema.json
│ ├── ptef_schema.json
│ └── readme.md
├── pyspark_visualizer
│ └── visualizer.py
├── readme.md
├── setup.py
├── testfile.txt
└── tests
├── __init__.py
├── airflow_testing
│ ├── __init__.py
│ └── dag_test
│ ├── __init__\ 3.py
│ ├── __init__.py
│ ├── test_dag_pytest\ 2.py
│ └── test_dag_pytest.py
├── config.py
└── test_airflow_dags.py
13 directories, 49 files