2015-10-29 5 views
0

В проекте mule у меня есть компонент скрипта Python, которому необходимо получить доступ к файлу cert.pem.Mule: Доступ к файловому ресурсу из компонента скрипта Python в CloudHub

В AnyPointStudio я поместил его в папку ./src/main/resources/. Когда я создаю Mule Deployable Archive, он попадает в папку ./target/classes/.

Какой путь я должен указать для доступа к этому файлу.

Я пытался

path = 'cert.pem' 

## And ## 

cwd = os.getcwd() 
path = os.path.join(cwd, 'classes','cert.pem') 
path = os.path.join(cwd, 'target','classes','cert.pem') 
path = os.path.join(cwd, 'src','main', 'resources','cert.pem') 

Ни одна из которых работы.
Любые советы?

Вопрос: В CloudHub простые print() операторы в сценарии .py не регистрируются, я пробовал log("message"), но это вызвало исключение. Есть идеи?

ответ

0

Я не знаю python, но файл должен быть доступен только в classpath. Итак, все в src/main/resources будет доступно на пути к классам. Так что 'src/main/resources/cert.pem' следует называть только как «cert.pem»

0

Итак, по крайней мере с Python путь к классам не совпадает с пути к каталогу. Но в конце концов я выяснил, как получить путь к классам, используя переменную env MULE_HOME.

base = os.path.join(os.getenv('MULE_HOME'), 'apps', 'your-app-name', 'classes') 

Тогда вы можете получить CERTFILE так:

certfile = os.path.join(base, 'cert.pem') 

 Смежные вопросы

  • Нет связанных вопросов^_^