Installation
Iact3 can be installed as a Python package, downloaded as a standalone binary, or used through the Docker-based GitHub Action.
Requirements
- Python 3.7 or later for the Python package.
- Python 3.8 or later when building the standalone binary with PyInstaller.
- Alibaba Cloud credentials with permission to call ROS and the services used by the template under test.
Install from PyPI
pip install alibabacloud-ros-iact3
Verify that the console entry point is available:
iact3 --version
iact3 --help
Use a standalone binary
Pre-built binaries are published on the project Releases page for Linux amd64, macOS arm64, and Windows amd64.
Download the archive for your platform, unpack it, and run the iact3 binary
directly. The binary includes the Python runtime and package dependencies.
Build a standalone binary
python -m pip install --upgrade pip
pip install ".[binary]"
python build.py
The generated binary is written to dist/iact3 on Linux and macOS, or
dist/iact3.exe on Windows.
Configure credentials
Iact3 uses Alibaba Cloud credentials from the same locations used by the Alibaba Cloud SDK and Aliyun CLI. The supported sources are:
- Aliyun CLI default configuration file:
~/.aliyun/config.json - Environment variables:
ALIBABA_CLOUD_ACCESS_KEY_IDandALIBABA_CLOUD_ACCESS_KEY_SECRET - The ini file referenced by
ALIBABA_CLOUD_CREDENTIALS_FILE - Alibaba Cloud SDK credential files:
~/.alibabacloud/credentials.inior~/.aliyun/credentials.ini
For project-specific CLI runs, pass --profile to select the Aliyun CLI
profile name:
iact3 --profile default test run
Use the GitHub Action
The repository includes a Docker action. It is useful for ROS template
repositories that want to validate changed templates or run deployment tests
when a matching .iact3 configuration exists.
- name: Test templates
uses: aliyun/alibabacloud-ros-tool-iact3@master
with:
templates: "templates/ecs.yml iact3-config/templates/ecs.iact3.yml"
access_key_id: ${{ secrets.ACCESS_KEY_ID }}
access_key_secret: ${{ secrets.ACCESS_KEY_SECRET }}
type: "test"
See the GitHub Action example for details.