1
0
mirror of https://github.com/go-task/task.git synced 2024-12-14 10:52:43 +02:00
task/docs/installation.md
per1234 a2c58415cf Update docs for new arduino/setup-task action repository
The GitHub Actions action for installing Task has graduated from its original home in the experimental `arduino/action`
repository with a move to a dedicated permanent repository at `arduino/setup-task`. This move was accompanied by
significant upgrades to the project infrastructure to facilitate its maintenance and quality assurance.

A 1.0.0 release has been made and a `v1` ref that will track all releases in the major version 1 series. I have updated
the example snippet to use this `v1 ref because this will cause the user's workflows to use stable release versions of
the action while also benefiting from ongoing development to the action at each patch or minor release up until such time
as a new major release is made. At this time the user will be given the opportunity to evaluate whether any changes to
the workflow are required by the breaking change to the action that triggered the major release before manually updating
the major ref in the workflows (e.g., `uses: arduino/setup-task@v2`).
2021-05-20 02:40:09 -07:00

3.3 KiB

Installation

Task offers many installation methods. Check out the available methods below.

Package Managers

Homebrew

If you're on macOS or Linux and have Homebrew installed, getting Task is as simple as running:

brew install go-task/tap/go-task

Snap

Task is available in Snapcraft, but keep in mind that your Linux distribution should allow classic confinement for Snaps to Task work right:

sudo snap install task --classic

Scoop

If you're on Windows and have Scoop installed, use extras bucket to install Task like:

scoop bucket add extras
scoop install task

This installation method is community owned. After a new release of Task, it may take some time until it's available on Scoop.

AUR

If you're on Arch Linux you can install Task from AUR using your favorite package manager such as yay, pacaur or yaourt:

yay -S taskfile-git

This installation method is community owned, but since it's -git version of the package, it's always latest available version based on the Git repository.

Get The Binary

Binary

You can download the binary from the releases page on GitHub and add to your $PATH.

DEB and RPM packages are also available.

The task_checksums.txt file contains the SHA-256 checksum for each file.

Install Script

We also have an install script which is very useful in scenarios like CI. Many thanks to GoDownloader for enabling the easy generation of this script.

# For Default Installation to ./bin with debug logging
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d

# For Installation To /usr/local/bin for userwide access with debug logging
# May require sudo sh
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b /usr/local/bin

This method will download the binary on the local ./bin directory by default.

GitHub Actions

If you want to install Task in GitHub Actions you can try using this action by the Arduino team:

- name: Install Task
  uses: arduino/setup-task@v1

This installation method is community owned.

Build From Source

Go Modules

First, make sure you have Go properly installed and setup.

You can easily install the latest release globally by running:

go install github.com/go-task/task/v3/cmd/task@latest

Or you can install into another directory:

env GOBIN=/bin go install github.com/go-task/task/v3/cmd/task@latest

If using Go 1.15 or earlier, instead use:

env GO111MODULE=on go get -u github.com/go-task/task/v3/cmd/task@latest

For CI environments we recommend using the Install Script instead, which is faster and more stable, since it'll just download the latest released binary.