Skip to main content

VMware vCloud Director CLI

Project description

vcd-cli
=======

[![Stable Version](https://img.shields.io/pypi/v/vcd-cli.svg)](https://pypi.python.org/pypi/vcd-cli) [![Build Status](https://img.shields.io/travis/vmware/vcd-cli.svg?style=flat)](https://travis-ci.org/vmware/vcd-cli/)

Command Line Interface for VMware vCloud Director.

This project is under development, the commands and parameters might change over time. This README usually reflects the syntax of the latest version. More information about commands and usage can be found in the [vcd-cli wiki](https://github.com/vmware/vcd-cli/wiki).

`vcd-cli` uses [pyvcloud](https://github.com/vmware/pyvcloud "Title"), Python SDK for VMware vCloud Director.

Installation:
=============

In general, `vcd-cli` can be installed with:

``` shell
$ pip install --user vcd-cli
```

The module contains two commands:

- `vca` the current cli
- `vcd` the new cli under development

Validation:

``` shell
$ vca --version

vca-cli 19.0.1 (pyvcloud: 18.0.4.dev35)
```

```shell
$ vcd version

vcd-cli, VMware vCloud Director Command Line Interface, 19.0.1
```

See [vcd-cli wiki](https://github.com/vmware/vcd-cli/wiki) for additional installation details.


Usage:
======

The `--help` option provides a list of available commands and options.

Login:

When the *password* argument is omitted, `vca-cli` prompts the user for the password. By default `vca-cli` caches the password (encrypted) and automatically re-login when the token expires. Below are some examples:

```shell
# vCA
$ vca login 'email@company.com' --password 'p@$$w0rd' \
--instance 5a872845-6a7e-4e1d-b92a-99c45844417d \
--vdc vdc1

# vCHS
$ vca login 'email@company.com' --password 'p@$$w0rd' \
--host vchs.vmware.com

# vCloud Director
$ vca login 'email@company.com' --password 'p@$$w0rd' \
--host vcdhost.domain.com --org my-org

# vCloud Director with self-signed SSL certificate
$ vca -i login 'email@company.com' --password 'p@$$w0rd' \
--host vcdhost.domain.com --org my-org
```

Access to a virtual datacenter:

```
$ vca vdc info
Details of Virtual Data Center 'vdc1', profile 'od':
| Type | Name |
|-------------------+------------------------|
| gateway | gateway |
| network | default-routed-network |
| network | net-101 |
| vdcStorageProfile | SSD-Accelerated |
| vdcStorageProfile | Standard |
Compute capacity:
| Resource | Allocated | Limit | Reserved | Used | Overhead |
|-------------+-------------+---------+------------+--------+------------|
| CPU (MHz) | 0 | 130000 | 0 | 0 | 0 |
| Memory (MB) | 0 | 102400 | 0 | 0 | 0 |
Gateways:
| Name | External IPs | DHCP | Firewall | NAT | VPN | Networks | Syslog | Uplinks | Selected |
|---------+-------------------------------+--------+------------+-------+-------+---------------------------------+----------+--------------+------------|
| gateway | 107.189.88.182, 107.189.90.65 | On | Off | On | Off | net-101, default-routed-network | | d4p14v14-ext | * |
```

Logout:

```
$ vca logout
Logout successful for profile 'default'
```

Login with Session ID and SAML Support
---

We are currently developing integration with SAML for single-sign on. For vCloud Director
instances configured with SAML, login can be accomplished by specifying a valid session id or
using a browser in the same computer.

Login with a browser:

1. Using Google `chrome`, login to vCloud Director
2. On a command line, run the command:

```
$ vcd login vcd-host.vmware.com my-organization my_user_id --use-browser-session
my_user_id logged in, org: 'my-organization', vdc: 'my-vdc'
```

Login with a valid session id:

```
$ vcd login vcd-host.vmware.com my-organization my_user_id \
--session-id f02a273d48094bd4a5e04d7694ae30e6
my_user_id logged in, org: 'my-organization', vdc: 'my-vdc'
```

This feature can be combined with the new functionality for uploading and downloading
templates and iso files with `vcd-cli` for convenient file transfers in SAML enabled
vCloud Director instances.

vCloud Air Support
---

We are transitioning to a new `vcd-cli` tool that eventually will replace `vca-cli`. The new `vcd-cli` will continue to support vCloud Air.

To login to vCloud Air with the new `vcd-cli`:

- Locate the `vCloud Director API URL` link in the vCloud Air console, for example: `https://p1v17-vcd.vchs.vmware.com:443/cloud/org/20-162/`
- Identify the organization name at the end of the URL, `20-162` in the example.
- Use your email and password in the `login` command.

The general syntax of the `login` command is:

```shell
$ vcd login [OPTIONS] host organization user
```

Sample login to a vCA subscription service:

```shell
$ vcd login p1v17-vcd.vchs.vmware.com 20-162 'user@company.com' \
--password 'p@$$w0rd'
```

Sample login to a vCA on-demand service:

```shell
$ vcd login us-texas-1-14.vchs.vmware.com/api/compute ad96259e-2d36-44ad-9dd7-4586d45b43ca \
'user@company.com' --password 'p@$$w0rd'
```

Development
---

macOS:

```shell
$ git clone https://github.com/vmware/vcd-cli.git
$ cd vcd-cli
$ pip install oslo.utils cryptography
$ python setup.py develop
```



Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vcd-cli-19.0.7.dev14.tar.gz (69.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vcd_cli-19.0.7.dev14-py2.py3-none-any.whl (71.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file vcd-cli-19.0.7.dev14.tar.gz.

File metadata

File hashes

Hashes for vcd-cli-19.0.7.dev14.tar.gz
Algorithm Hash digest
SHA256 ea155cbbf19e5d2220ad9ba06e6dcbd83e65c40ed1e4d11fc558a17db9d643df
MD5 f83fbb2782efab96a80f488e4a74ef43
BLAKE2b-256 3a36c2b0360d9ac107cf38a7802d44a1d14265d18dfce839954d263cedfd11bb

See more details on using hashes here.

File details

Details for the file vcd_cli-19.0.7.dev14-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for vcd_cli-19.0.7.dev14-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 47958d2af962ab6de213fedbcf0750e5a7102355d7d880f009f551bf97bde04c
MD5 342cc84547af58661d44df5c21818524
BLAKE2b-256 225ebe8f43ec3b9b31a7f455ae8f5444dd27810a7c04408dced25bbb9c4d4717

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page