Tencent CloudLive-testedreceipt

Tencent Cloud CLI In A venv Of Its Own

The Tencent Cloud CLI (tccli) pinned in /opt/tccli, a virtual environment apart from the system Python. No package exists; pip into the system Python is the documented install. The live test runs pip check, calls the API with a SecretId that is not one and expects Tencent's AuthFailure.SecretIdNotFound, and asserts the system Python cannot import it. Original role, live-tested on Rocky Linux 10.

ansibleCloud Toolingtencentcloud

Verification

Live-tested

Really deployed to a container sandbox, proven idempotent (a second run changes nothing), verified against the role’s assertions, then torn down.

Conformance

  • Static validation (yamllint · ansible-lint)

Provenance

  • SHA-256 checksum
  • Signature (pending)

Functional

  • Live-tested - applied, verified, destroyed

Last verified 2026-09-20 · podman 4.9.3 · ansible 2.21.4 · how we verify

Documentation

tccli

The Tencent Cloud CLI (tccli) on EL 10, pinned to a version, in a virtual environment of its own with a link in the PATH. Original role for EL 10, live-tested with podman on Rocky Linux 10.

There is no package; the documented install is pip. EL 10 carries no tccli, and pip install into the system Python ties the CLI's dependencies to whatever the OS ships. This role puts the CLI in /opt/tccli, a venv apart from the system Python: an OS update cannot break it, and it cannot break the OS. The live test asserts import tccli fails in /usr/bin/python3.

Pinned, and checked for consistency. tccli_version is what gets installed; the live test runs pip check inside the venv and expects no broken requirements.

pip verifies nothing beyond TLS. The index is PyPI over HTTPS; there is no signature to check. For a byte-for-byte pin, give tccli_pip_extra_args a requirements file with hashes and --require-hashes, or a private index.

Proven to run. The live test calls tccli cvm DescribeRegions without usable credentials and expects "AuthFailure.SecretIdNotFound" - the whole tree loaded and the Tencent Cloud client ran.

Without a key it never leaves the host. tccli with no SecretId stops at "secretId is invalid" before any request; the live test gives it a SecretId that is not one through TENCENTCLOUD_SECRET_ID and expects the API's AuthFailure.SecretIdNotFound, which proves the client reached Tencent Cloud and was refused there. Keys, region and output format are per user (tccli configure, or the TENCENTCLOUD_* variables).

License

Commercial - IaC Bazaar EULA. (c) IaC Bazaar.

Usage code & full reference need an account

The complete copy-paste usage, the full input/output reference, and operational notes are free with an account - shown here and bundled in the download. Sign in and this section fills in.

  • Variables
  • Test