Локальные зависимости requireert.txt для сервера Bluemix - PullRequest
0 голосов
/ 04 июня 2018

Я хочу загрузить флеш-сервер в bluemix.Структура моего проекта примерно такая:

  • Классы
    • functions.py
  • Watson
    • bot.py
  • needs.txt
  • runtime.txt
  • Procfile
  • manifest.yml

myBot.py имеет эту зависимость:

from classes import functions

Я пытался включить его в манифест, используя такие вещи, как:
./classes или ./classes/functions

но ямне не повезло, он все время говорит, что модуль не найден или что-то вроде pip.exceptions.InstallationError: недопустимое требование: './classes/functions'

Я не знаю, как добавить зависимость

manifest.yml

---
applications:
- name: chatbotstest
  random-route: true
  memory: 256M

Procfile (файл, который я использую для запуска приложения)

web: python watson/bot.py

, когда я печатаю свой sys.path, я получаю это:

    ['..', '/home/vcap/app/watson', '/home/vcap/deps/0/python/lib/python36.zip', '/home/vcap/deps/0/py
e/vcap/deps/0/python/lib/python3.6/lib-dynload', '/home/vcap/deps/0/python/lib/python3.6/site-packages', '/home/vcap/deps/0/python/lib/python3.6/site-
-py3.6.egg', '/home/vcap/deps/0/python/lib/python3.6/site-packages/pip-9.0.1-py3.6.egg']

Я попытался добавить родительский файл папки в мой скрипт, используя

Большое спасибо за вашу помощь !!!

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

Большое спасибо, это, наконец, сработало для меня, ответ, на который вы указали, дал мне решение, большое спасибо еще раз!

currentdir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
parentdir = os.path.dirname(currentdir)
sys.path.insert(0,parentdir)
0 голосов
/ 04 июня 2018

Вам не нужно включать его в файл манифеста.Весь каталог приложения и его подкаталоги загружаются как часть команды push.После этого можно ссылаться на файл, как показано.

Импортирует файл в текущем каталоге:

import myfile

Это должно работать для вашего functions.py:

from classes import functions
...