Skip to main content

GreenLake Activate CLI

The purpose of this is to help manage devices in HPE GreenLake Activate with an easy to use CLI interface. This tool uses the available API calls that HPE GreenLake Activate exposes for manging devices

Features

  • Query Activate inventory by:
    • device name
    • mac address
    • serial number
    • folder name
    • folder id
    • provisioning rules
  • Move devices between folders
  • Create folders in Activate
  • Create provisioning rules for folders (WIP)
  • Generate CLI commands for allowlist entries (WIP)

Requirements

  • Python 3.12 or newer
  • An HPE GreenLake Activate API credential
  • Network access to activate.arubanetworks.com

Installation

I recommend installing this package with uv. Install uv if it is not already available.

Installing uv on Linux/Mac:

curl -LsSf https://astral.sh/uv/install.sh | sh

Installing uv on Windows:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

To install the latest published package as a global command:

uv tool install greenlake-activate-cli

Verify the installation:

glcli --version

To upgrade or remove the installed CLI:

uv tool upgrade greenlake-activate-cli
uv tool uninstall greenlake-activate-cli

Install With Python and pip

Creating a virtual environment and installing the package:

python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install --upgrade pip
python3 -m pip install greenlake-activate-cli

The glcli command is then available from the venv:

glcli --version

Configuration

Run the CLI glcli configure command.

glcli configure

You will be prompted to enter (paste) in your GreenLake Activate API token. This text is hidden.

This command is essentially doing this:

mkdir -p ~/.config/greenlake-activate-cli
printf 'CREDENTIAL_1=your_api_key_here\n' \
	> ~/.config/greenlake-activate-cli/.env
chmod 600 ~/.config/greenlake-activate-cli/.env

Alternatively, you can set the environment variable manually:

export CREDENTIAL_1="your_api_key_here"

Credential sources are checked in this order:

  1. A non-empty CREDENTIAL_1 environment variable.
  2. $XDG_CONFIG_HOME/greenlake-activate-cli/.env, when XDG_CONFIG_HOME is set.
  3. ~/.config/greenlake-activate-cli/.env.
  4. .env in the current directory, retained for development and backward compatibility.

The configuration file format is:

CREDENTIAL_1=<your_api_key_here>

Usage

Query inventory by serial number:

glcli query serial PHWLKAS02 PHWLKAS03

Query inventory by MAC address:

glcli query mac aa:bb:cc:00:11:22 dd:ee:ff:33:44:55

Query inventory by folder ID or folder name:

glcli query folder 5297450
glcli query folder SiteA-South

Query provisioning rules for one folder by ID or name:

glcli query rule folder-id 63111131
glcli query rule folder-name Northwest

Move a device by serial number or MAC address:

glcli move PHWLKAS02 SiteA-South
glcli move aa:bb:cc:00:11:22 5297450

Move multiple devices from a file:

glcli move serials serials.csv SiteA-South
glcli move macs mac_addresses.csv 5297450

Create a new folder in Activate:

glcli create folder Jake_test2

Serial numbers and MAC addresses can also be loaded from CSV or newline-delimited files:

glcli query serial --file serials.csv
glcli query mac --file mac_addresses.csv

Use --verbose for diagnostic logging:

glcli --verbose query serial PHWLKAS02

Exit codes are 0 for a complete result, 1 when no devices are returned, and 2 when at least one requested identifier is missing.

Troubleshooting

When in doubt, restart your shell.

The installation with uv installs this package in an isolated environment and makes glcli available to run from any directory. If uv reports that its tool directory is not on your PATH, run:

uv tool update-shell

To run the tests for development:

uv run pytest

References

Metadata

Release files for greenlake-activate-cli 0.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for greenlake-activate-cli 0.5.1
File Size Uploaded
greenlake_activate_cli-0.5.1.tar.gz 17.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for greenlake-activate-cli 0.5.1
File Interpreter ABI Platform
greenlake_activate_cli-0.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 31.5 kB

Release files / greenlake_activate_cli-0.5.1.tar.gz

Download URL greenlake_activate_cli-0.5.1.tar.gz
Size 17.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c9bc5b532b3308bec6693847fb3dbc614e279d68ff0c8a1b9333d1dbcee387ce
BLAKE2b-256 checksum
How to use checksums
9f0bd26ba268717e871d753c2a6534cc515720a83b28a2471266c6ae3974394a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / greenlake_activate_cli-0.5.1-py3-none-any.whl

Download URL greenlake_activate_cli-0.5.1-py3-none-any.whl
Size 14.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3e8073b8e059259c767ba6ecfc5f6fa5e247be88a7fdb0655edf32fcf13355c1
BLAKE2b-256 checksum
How to use checksums
bc0ad76c2b582eaa606dc891fee02832bc603f98bc76446e73714f8329df9de8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.6.1

2 release files

0.6.0

2 release files

This release

0.5.1 This release

2 release files

0.5.0

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page