From 569c28402d0781779b52a73342e64b6eadb74fb5 Mon Sep 17 00:00:00 2001 From: Harphuna <86975697+Hakunasc11@users.noreply.github.com> Date: Mon, 30 May 2022 13:54:13 +0200 Subject: [PATCH] Delete README.md --- README.md | 182 ------------------------------------------------------ 1 file changed, 182 deletions(-) delete mode 100644 README.md diff --git a/README.md b/README.md deleted file mode 100644 index 3b0da7b..0000000 --- a/README.md +++ /dev/null @@ -1,182 +0,0 @@ -# setup-go - -[![build-test](https://github.com/actions/setup-go/actions/workflows/workflow.yml/badge.svg)](https://github.com/actions/setup-go/actions/workflows/workflow.yml) -[![Validate 'setup-go'](https://github.com/actions/setup-go/actions/workflows/versions.yml/badge.svg)](https://github.com/actions/setup-go/actions/workflows/versions.yml) - -This action sets up a go environment for use in actions by: - -- Optionally downloading and caching a version of Go by version and adding to `PATH`. -- Registering problem matchers for error output. - -# V3 - -The V3 edition of the action offers: - -- Adds `GOBIN` to the `PATH` -- Proxy support -- Check latest version -- Caching packages dependencies -- Bug Fixes (including issues around version matching and semver) - -The action will first check the local cache for a version match. If a version is not found locally, it will pull it from the `main` branch of the [go-versions](https://github.com/actions/go-versions/blob/main/versions-manifest.json) repository. On miss or failure, it will fall back to downloading directly from [go dist](https://storage.googleapis.com/golang). To change the default behavior, please use the [check-latest input](#check-latest-version). - -**Note:** The `setup-go` action uses executable binaries which are built by Golang side. The action does not build golang from source code. - -Matching by [semver spec](https://github.com/npm/node-semver): - -```yaml -steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '^1.13.1' # The Go version to download (if necessary) and use. - - run: go version -``` - -```yaml -steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '>=1.17.0' - - run: go version -``` - -Matching an unstable pre-release: - -```yaml -steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '1.18.0-rc.1' # The Go version to download (if necessary) and use. - - run: go version -``` - -```yaml -steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '1.16.0-beta.1' # The Go version to download (if necessary) and use. - - run: go version -``` - -# Usage - -See [action.yml](action.yml) - -## Basic - -```yaml -steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '1.16.1' # The Go version to download (if necessary) and use. - - run: go run hello.go -``` - - -## Check latest version - -The `check-latest` flag defaults to `false`. Use the default or set `check-latest` to `false` if you prefer stability and if you want to ensure a specific Go version is always used. - -If `check-latest` is set to `true`, the action first checks if the cached version is the latest one. If the locally cached version is not the most up-to-date, a Go version will then be downloaded. Set `check-latest` to `true` if you want the most up-to-date Go version to always be used. - -> Setting `check-latest` to `true` has performance implications as downloading Go versions is slower than using cached versions. - -```yaml -steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '1.14' - check-latest: true - - run: go run hello.go -``` -## Caching dependency files and build outputs: - -The action has a built-in functionality for caching and restoring go modules and build outputs. It uses [actions/cache](https://github.com/actions/cache) under the hood but requires less configuration settings. The `cache` input is optional, and caching is turned off by default. - -The action defaults to search for the dependency file - go.sum in the repository root, and uses its hash as a part of the cache key. Use `cache-dependency-path` input for cases when multiple dependency files are used, or they are located in different subdirectories. - -**Caching without specifying dependency file path** -```yaml -steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '1.17' - check-latest: true - cache: true - - run: go run hello.go -``` - -**Caching in monorepos** -```yaml -steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '1.17' - check-latest: true - cache: true - cache-dependency-path: subdir/go.sum - - run: go run hello.go - ``` -## Getting go version from the go.mod file - -The `go-version-file` input accepts a path to a `go.mod` file containing the version of Go to be used by a project. As the `go.mod` file contains only major and minor (e.g. 1.18) tags, the action will search for the latest available patch version sequentially in the runner's directory with the cached tools, in the [version-manifest.json](https://github.com/actions/go-versions/blob/main/versions-manifest.json) file or at the go servers. - -If both the `go-version` and the `go-version-file` inputs are provided then the `go-version` input is used. -> The action will search for the `go.mod` file relative to the repository root - -```yaml -steps: -- uses: actions/checkout@v3 -- uses: actions/setup-go@v3 - with: - go-version-file: 'path/to/go.mod' -- run: go version -``` - -## Matrix testing - -```yaml -jobs: - build: - runs-on: ubuntu-latest - strategy: - matrix: - go: [ '1.14', '1.13' ] - name: Go ${{ matrix.go }} sample - steps: - - uses: actions/checkout@v3 - - name: Setup go - uses: actions/setup-go@v3 - with: - go-version: ${{ matrix.go }} - - run: go run hello.go -``` - -### Supported version syntax - -The `go-version` input supports the following syntax: - -- Specific versions: `1.15`, `1.16.1`, `1.17.0-rc.2`, `1.16.0-beta.1` -- SemVer's version range syntax: `^1.13.1`, `>=1.18.0-rc.1` - -For more information about semantic versioning, please refer to [semver](https://github.com/npm/node-semver) documentation. - -# License - -The scripts and documentation in this project are released under the [MIT License](LICENSE) - -# Contributions - -Contributions are welcome! See [Contributor's Guide](docs/contributors.md) - -## Code of Conduct - -:wave: Be nice. See [our code of conduct](CONDUCT)