Launchr is a CLI action runner that executes actions inside short-lived local containers.
Actions are defined in action.yaml files, which are automatically discovered in the filesystem.
They can be placed anywhere that makes sense semantically. You can find action examples here and in the documentation.
Launchr has a plugin system that allows to extend its functionality. See core plugins, compose and documentation.
Build launchr from source locally. Build dependencies:
go >=1.20, see installation guidemake
Build the launchr tool:
make
bin/launchr --helpThe documentation for launchr usage can be found in docs.
If you face any issues with launchr:
- Open an issue in the repo.
- Share the app version with
launchr --version
Build dependencies:
go >=1.20, see installation guidemake
Global installation
Install launchr globally:
make install
launchr --versionThe tool will be installed in $GOPATH/bin which is usually ~/go/bin.
If GOPATH env variable is not available, make sure you have it in ~/.bashrc or ~/.zhrc:
export GOPATH=`go env GOPATH`
export PATH=$PATH:$GOPATH/binLocal installation
The tool can be built and run locally:
make
bin/launchr --versionThe launchr can be built with a make to bin directory:
makeIt is also supported to make a build to use with dlv for debug:
make DEBUG=1Useful make commands:
- Fetch dependencies -
make deps - Test the code -
make test - Lint the code -
make lint
- Install goreleaser
- Create an Access token on GitHub
- Create a tag, build a release and push
git tag -a v0.0.0 -m "Release notes" export GITHUB_TOKEN="[TOKEN]" goreleaser release --clean