OCI CLI In A venv Of Its Own
The Oracle Cloud Infrastructure CLI pinned in /opt/oci-cli, a virtual environment apart from the system Python, linked into the PATH. No package exists; the documented installs are a script piped into bash or pip into the system Python. The live test runs pip check and an API call, and asserts the system Python cannot import the SDK. Original role, live-tested on Rocky Linux 10.
Verification
Live-testedReally 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-19 · podman 4.9.3 · ansible 2.21.4 · how we verify
Documentation
oci-cli
The Oracle Cloud Infrastructure CLI 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 installs are a script or pip. EL 10
carries no oci-cli. Oracle's installer script pipes into bash; pip is the
other route, and pip install into the system Python ties the SDK's
cryptography, requests and friends to whatever the OS ships. This role
puts the CLI and the SDK in /opt/oci-cli, a venv apart from the system
Python: an OS update cannot break them, and they cannot break the OS. The
live test asserts import oci fails in /usr/bin/python3.
Pinned, and checked for consistency. oci_cli_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
oci_cli_pip_extra_args a requirements file with hashes and
--require-hashes, or a private index.
Proven to run. oci os ns get with no ~/.oci/config fails at
configuration - after the whole tree loaded.
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