8000 GitHub - launchrctl/launchr: Launchr is a versatile CLI action runner that executes tasks defined in local or embeded yaml files across multiple runtimes. It supports arguments, options, automatic action discovery, and seamless extensibility via plugins
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Launchr is a versatile CLI action runner that executes tasks defined in local or embeded yaml files across multiple runtimes. It supports arguments, options, automatic action discovery, and seamless extensibility via plugins

License

Notifications You must be signed in to change notification settings

launchrctl/launchr

Repository files navigation

Launchr

Launchr is a versatile CLI action runner that executes tasks defined in local or embeded yaml files across multiple runtimes:

  • Short-lived container (docker or kubernetes)
  • Shell (host)
  • Golang (as plugin)

It supports:

  • Arguments and options
  • Automatic action discovery
  • Automatic path-based naming of local actions
  • Seamless extensibility via a plugin system

Actions are defined in action.yaml files:

  • either on local filesystem: Useful for project-specific actions
  • or embeded as plugin: Useful for common and shared actions

You can find action examples here and in the documentation.

Launchr has a plugin system that allows to extend its functionality. See core plugins, official plugins and documentation.

Table of contents

Usage

Build launchr from source locally. Build dependencies:

  1. go >=1.24, see installation guide
  2. make

Build the launchr tool:

make
bin/launchr --help

The documentation for launchr usage can be found in docs.

If you face any issues with launchr:

  1. Open an issue in the repo.
  2. Share the app version with launchr --version

Installation

Installation from source

Build dependencies:

  1. go >=1.24, see installation guide
  2. make

Global installation

Install launchr globally:

make install
launchr --version

The 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/bin

Local installation

The tool can be built and run locally:

make
bin/launchr --version

Development

The launchr can be built with a make to bin directory:

make

It is also supported to make a build to use with dlv for debug:

make DEBUG=1

Useful make commands:

  1. Fetch dependencies - make deps
  2. Test the code - make test
  3. Lint the code - make lint

Publishing a new release

  • Create a new Github release from UI
  • Github Action will compile new binaries using goreleaser and attach them to release

About

Launchr is a versatile CLI action runner that executes tasks defined in local or embeded yaml files across multiple runtimes. It supports arguments, options, automatic action discovery, and seamless extensibility via plugins

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 5

Languages

0