State Tool is the Command Line Interface for accessing ActiveState Platform functionality. It is a cross-platform tool written in Go supporting Windows, Linux and Mac. We're working on extending support to more versions and distributions in tandem with the Platform (feel free to let us know if you have issues in your favorite OS).
State Tool helps with mananging the package dependencies of a language runtime, for the languages supported by the ActiveState Platform (Dynamic Open Source Languages like Python, Perl and Tcl). It functions as a package manager (of sorts, more development is ongoing in this area) and a virtual environment for developers that isolates their project environment and allows easy switching between different projects on the same machine. Additional neat developer features of State Tool includes cross-platform scripting and support for secrets. State Tool also has functionality to support deployment of the language runtimes (supported by ActiveState like CEs or Custom Runtimes created by the users on the Platform) into environments like VMs and containers used in CI/CD systems.
State Tool has a stated goal of "Replacing the Makefile". We're making progress, and always open for new ideas/suggestions/issue reports and code contributions.
In your favourite terminal:
sh <(curl -q https://platform.activestate.com/dl/cli/install.sh)
In Powershell with Administrator privileges:
IEX(New-Object Net.WebClient).downloadString('https://platform.activestate.com/dl/cli/install.ps1')
For usage information please refer to the State Tool Documentation.
- Go 1.16 or above
First run state run install-deps
followed by state run preprocess
if you are building for the first time.
- Building:
state run build
- The built executable will be stored in the
build
directory - If you modified assets or switched branches, you need to re-run
state run preprocess
first
- The built executable will be stored in the
- Testing:
- Unit tests*:
state run test
- Integration tests:
state run integration-tests
- Unit tests*: