Cloudify python脚本插件如何使用软件包?

2024-06-16 13:42:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在cloudify上运行python脚本,为此我使用了脚本插件。 现在我已经成功地运行了脚本,但是在导入它需要的python包时失败了。 有没有办法在cloudify manager的python环境中安装这些软件包?。我的蓝图是这样的:

tosca_definitions_version: cloudify_dsl_1_3

imports:
    - http://www.getcloudify.org/spec/cloudify/5.0.0/types.yaml

inputs:
    input1:
        description: description1
    input2:
        description: description2
        type: string

node_templates:
    node_name:
        type: cloudify.nodes.SoftwareComponent
        interfaces:
            cloudify.interfaces.lifecycle:
                start:
                    implementation: scripts/python_script.py
                    executor: central_deployment_agent
                    inputs:
                        input1: { get_input: input1 }
                        input2: { get_input: input2 }

我需要的导入在python_script.py的begining中:

import ssh
import bottle
import paramiko

ssh是我在脚本文件夹中编写的一个文件,作为blueprint包的一部分上传到cloudify。 Cloudify找不到ssh,我不知道如何确保瓶子和paramiko安装在Cloudify上


Tags: pyimport脚本nodeinputgettypescript
1条回答
网友
1楼 · 发布于 2024-06-16 13:42:56

您不需要手动将任何内容安装到辅助环境中。 我假设您正试图在远程机器上执行一些SSH命令。 我提议如下。。。 选项1 使用ready终端插件Terminal plugin 下面是一个例子Terminal plugin example

选项2 构建一个包含所有依赖项的旅行车存档,并将其作为插件上载到Cloudify Manager

  1. 您可以使用模板Plugin template
  2. 在setup.py中填充插件代码和依赖项
  3. 造货车
  4. 上传给经理

要建造货车,您需要安装docker:

  1. 从准备好的DockerfileDocker files for Wagon builder生成docker。 您需要选择与Cloudify正在运行的操作系统相匹配的操作系统。Cloudify 5.1使用Python 3.6,因此centos_7_py3将是默认选项。py2py3构建器将提供与Python 2.7和3.6兼容的插件,这些插件可以在新旧Cloudify版本上工作
  2. 运行Docker并为其提供插件源所在的目录-它将构建一个wgn文件 所有这些都在README.mdWagon builders readme中进行了描述

相关问题 更多 >