LoginSignup
1
1

More than 5 years have passed since last update.

SoftLayer APIパッケージのPyPI版とGitHub版の違い

Last updated at Posted at 2015-01-19

SoftLayer CLIを含むSoftLayer APIのパッケージは、リリース版がPyPIから、開発版がGitHubから提供されています。

GitHub版では、CLIがモジュールごとのファイルではなくてコマンド毎のファイルになるなど、ライブラリの構成が変わっています。機能を追加したり管理したりしやすくするためでしょう。
また、GitHub版の方が開発版で新しいはずなのですが、バージョン番号が古くなっていたりします。謎です。

PyPI版

インストール

$ sudo pip install softlayer

バージョン表示

$ sl --version
v3.3.1

Usage

$ sl <module> [<args>...]

ファイル

$ ls -l CLI/modules/
total 544
-rw-r--r--@ 1 user  staff    356 Nov  3 23:14 __init__.py
-rw-r--r--@ 1 user  staff   5679 Nov  3 23:14 cdn.py
-rw-r--r--@ 1 user  staff   6459 Nov  3 23:14 config.py
-rwxr-xr-x@ 1 user  staff  10400 Nov  3 23:14 dns.py*
-rw-r--r--@ 1 user  staff    925 Nov  3 23:14 filters.py
-rwxr-xr-x@ 1 user  staff  14813 Nov  3 23:14 firewall.py*
-rw-r--r--@ 1 user  staff   5193 Nov  3 23:14 globalip.py
-rw-r--r--@ 1 user  staff    908 Nov  3 23:14 help.py
-rw-r--r--@ 1 user  staff   5913 Nov  3 23:14 image.py
-rw-r--r--@ 1 user  staff   6057 Nov  3 23:14 iscsi.py
-rwxr-xr-x@ 1 user  staff  20026 Nov  3 23:14 loadbal.py*
-rw-r--r--@ 1 user  staff  16126 Nov  3 23:14 messaging.py
-rw-r--r--@ 1 user  staff   6261 Nov  3 23:14 metadata.py
-rw-r--r--@ 1 user  staff   1484 Nov  3 23:14 nas.py
-rw-r--r--@ 1 user  staff   3376 Nov  3 23:14 rwhois.py
-rw-r--r--@ 1 user  staff  39683 Nov  3 23:14 server.py
-rw-r--r--@ 1 user  staff   4582 Nov  3 23:14 snapshot.py
-rw-r--r--@ 1 user  staff   4757 Nov  3 23:14 sshkey.py
-rwxr-xr-x@ 1 user  staff   5185 Nov  3 23:14 ssl.py*
-rw-r--r--@ 1 user  staff   9760 Nov  3 23:14 subnet.py
-rw-r--r--@ 1 user  staff   1240 Nov  3 23:14 summary.py
-rw-r--r--@ 1 user  staff   8155 Nov  3 23:14 ticket.py
-rw-r--r--@ 1 user  staff   5015 Nov  3 23:14 vlan.py
-rwxr-xr-x@ 1 user  staff  42295 Nov  3 23:14 vs.py*

GitHub版

インストール

$ sudo pip install git+git://github.com/softlayer/softlayer-python.git

バージョン表示

$ sl --version
SoftLayer Command-line Client, version v3.3.0

Usage

$ sl [OPTIONS] COMMAND [ARGS]...

ファイル

$ ls -l CLI/
total 136
-rw-r--r--   1 user  staff   215 Jan 14 05:04 __init__.py
drwxr-xr-x   6 user  staff   204 Jan 14 05:04 billing/
-rw-r--r--   1 user  staff  2449 Jan 14 05:04 call_api.py
drwxr-xr-x  10 user  staff   340 Jan 14 05:04 cdn/
drwxr-xr-x   5 user  staff   170 Jan 14 05:04 config/
-rw-r--r--   1 user  staff  6463 Jan 14 05:04 core.py
drwxr-xr-x  12 user  staff   408 Jan 14 05:04 dns/
-rw-r--r--   1 user  staff  4202 Jan 14 05:04 environment.py
-rw-r--r--   1 user  staff  1289 Jan 14 05:04 exceptions.py
drwxr-xr-x   8 user  staff   272 Jan 14 05:04 firewall/
-rw-r--r--   1 user  staff  9540 Jan 14 05:04 formatting.py
drwxr-xr-x   8 user  staff   272 Jan 14 05:04 globalip/
-rw-r--r--   1 user  staff  1390 Jan 14 05:04 helpers.py
drwxr-xr-x   8 user  staff   272 Jan 14 05:04 image/
drwxr-xr-x   7 user  staff   238 Jan 14 05:04 iscsi/
drwxr-xr-x  19 user  staff   646 Jan 14 05:04 loadbal/
-rw-r--r--   1 user  staff  2402 Jan 14 05:04 metadata.py
drwxr-xr-x  20 user  staff   680 Jan 14 05:04 mq/
drwxr-xr-x   5 user  staff   170 Jan 14 05:04 nas/
-rw-r--r--   1 user  staff  9675 Jan 14 05:04 routes.py
drwxr-xr-x   5 user  staff   170 Jan 14 05:04 rwhois/
drwxr-xr-x  16 user  staff   544 Jan 14 05:04 server/
drwxr-xr-x   8 user  staff   272 Jan 14 05:04 snapshot/
drwxr-xr-x   8 user  staff   272 Jan 14 05:04 sshkey/
drwxr-xr-x   8 user  staff   272 Jan 14 05:04 ssl/
drwxr-xr-x   8 user  staff   272 Jan 14 05:04 subnet/
-rw-r--r--   1 user  staff  1282 Jan 14 05:04 summary.py
-rw-r--r--   1 user  staff  1937 Jan 14 05:04 template.py
drwxr-xr-x   9 user  staff   306 Jan 14 05:04 ticket/
drwxr-xr-x  17 user  staff   578 Jan 14 05:04 virt/
drwxr-xr-x   5 user  staff   170 Jan 14 05:04 vlan/

それぞれのフォルダの下に、モジュールごとのコマンドに対応したファイルがあります。例えばsl vs listであれば、CLI/virt/list.pyというファイルが対応しています。
CLI/routes.pyにインポートされるモジュールが記載されているので、モジュールを追加する際はこのファイルを編集します。

$ ls -l CLI/virt/
total 144
-rw-r--r--  1 user  staff   1124 Jan 14 05:04 __init__.py
-rw-r--r--  1 user  staff    652 Jan 14 05:04 cancel.py
-rw-r--r--  1 user  staff   1330 Jan 14 05:04 capture.py
-rw-r--r--  1 user  staff  10393 Jan 14 05:04 create.py
-rw-r--r--  1 user  staff   3383 Jan 14 05:04 create_options.py
-rw-r--r--  1 user  staff    705 Jan 14 05:04 credentials.py
-rw-r--r--  1 user  staff   4426 Jan 14 05:04 detail.py
-rw-r--r--  1 user  staff   3556 Jan 14 05:04 dns.py
-rw-r--r--  1 user  staff   1562 Jan 14 05:04 edit.py
-rw-r--r--  1 user  staff   2589 Jan 14 05:04 list.py
-rw-r--r--  1 user  staff    787 Jan 14 05:04 network.py
-rw-r--r--  1 user  staff   3379 Jan 14 05:04 power.py
-rw-r--r--  1 user  staff    665 Jan 14 05:04 ready.py
-rw-r--r--  1 user  staff   1129 Jan 14 05:04 reload.py
-rw-r--r--  1 user  staff   1505 Jan 14 05:04 upgrade.py
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1