跳转到主要内容

Lab Manager SOAP API的命令行界面

项目描述

概述

Labmanager Shell是Lab Manager的SOAP API的命令行界面。它目前仅支持Lab Manager的外部API。

命令

每个命令都有文档,并通过帮助命令提供,该命令可以接受单个参数、命令名称或无参数。如果没有提供参数,则将显示所有现有命令。例如

(lmsh) help

Documented commands (type help <topic>):
========================================
checkout  delete  deploy  list  machines  show  undeploy

还有有限数量的自动补全,主要是自动补全命令和子命令。自动补全如配置ID等将需要查询Lab Manager服务器,这将花费大量时间进行自动补全。

以下是一些现有命令的示例。

列出库和工作空间中的所有机器

(lmsh) list
  id   |              name              | deployed |    type    |      owner
=======+================================+==========+============+================
191    | TestServerOne                  | False    | workspace  | testowner1
289    | TestServerTwo                  | True     | workspace  | testowner2
1393   | TestServerThree                | False    | library    | testowner2

显示配置ID为289的所有机器(用于查看机器的IP地址)

(lmsh) machines 289
 id  |  name  |   internal    |        MAC        | memory | config
=====+========+===============+===================+========+=======
9601 | web1   | 172.10.10.100 | 00:50:56:0b:0e:01 | 1024   | 289
9602 | web2   | 172.10.10.101 | 00:50:56:0b:0e:02 | 1024   | 289
9603 | web3   | 172.10.10.102 | 00:50:56:0b:0e:03 | 1024   | 289
9604 | db1    | 172.10.10.103 | 00:50:56:0b:0e:04 | 4096   | 289

部署/取消部署配置

(lmsh) undeploy 289
Undeploying config...
(lmsh) deploy unfenced 289
Deploying config...
(lmsh)

用于脚本的单个命令

您也可以在不需要进入交互式shell的情况下运行单个命令

[user@machine ~]$ lmsh machines 289
 id  |  name  |   internal    |        MAC        | memory | config
=====+========+===============+===================+========+=======
9601 | web1   | 172.10.10.100 | 00:50:56:0b:0e:01 | 1024   | 289
9602 | web2   | 172.10.10.101 | 00:50:56:0b:0e:02 | 1024   | 289
9603 | web3   | 172.10.10.102 | 00:50:56:0b:0e:03 | 1024   | 289
9604 | db1    | 172.10.10.103 | 00:50:56:0b:0e:04 | 4096   | 289

这允许您通过命令行/bash以编程方式取消部署所有现有配置

for id in $(lmsh list workspace | grep '^[0-9]' | cut -d' ' -f 1)
do
    lmsh undeploy $id
done

尽管对于更复杂的使用,您可能只需直接在Python中使用labmanager.api模块。

配置

您可以通过命令行或rc文件指定配置值。例如,以下

$ lmsh --hostname=mylabmanager.com --username=myusername \
    --organization=myorg --workspace=myworkspace

等同于以下

$ cat > ~/.lmshrc
[default]
hostname=mylabmanager.com
username=myusername
organization=myorg
workspace=myworkspace

$ lmsh

请注意,上述配置位于默认部分。您可以在您的 ~/.lmshrc 中定义多个部分,然后使用 --section 选项指定要加载哪些配置选项。

您还可以在配置文件中指定密码选项。如果配置文件中没有密码选项,则在运行 lmsh 时将提示您输入密码。

$ lmsh
password:
(lmsh)

命令行选项与 RC 选项合并,因此命令行选项将覆盖配置值。如果您想在 ~/.lmshrc 文件中设置 您的 默认值,这非常有用。例如,运行此命令(假设您有上述配置文件在 ~/.lmshrc 中)

$ lmsh --workspace=alternate_workspace

首先加载 ~/.lmshrc,然后将工作区值从 myworkspace 更改为 alternate_workspace。最终结果是,从 ~/.lmshrc 文件加载 hostnameusernameorganization,从命令行指定的值加载 workspace 值。

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

lmsh-0.1.4.tar.gz (9.3 kB 查看哈希值)

上传时间

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面