Compare commits

...
6 Commits
Author SHA1 Message Date
Carlos Alexandro Becker 14c857869c ci: update workflow and .goreleaser.yml
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-06-04 21:55:22 -03:00
Carlos Alexandro Becker 216295ec78 docs: update 2024-06-03 22:56:43 -03:00
Carlos Alexandro Becker f86c9c37ec docs: update 2024-06-03 22:56:04 -03:00
Carlos Alexandro Becker 9b0b610e34 gen
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-05-28 09:50:41 -03:00
Carlos Alexandro Becker 2d86541f03 fix: more changes
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-05-26 14:58:02 -03:00
Carlos Alexandro Becker fea4ca2b14 feat!: use "~> v2" as default
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-05-26 14:39:26 -03:00
12 changed files with 52 additions and 28 deletions
+8 -8
View File
@@ -48,7 +48,7 @@ jobs:
uses: ./ uses: ./
with: with:
version: ${{ matrix.version }} version: ${{ matrix.version }}
args: check --debug args: check --verbose
workdir: ./test workdir: ./test
- -
name: GoReleaser name: GoReleaser
@@ -59,7 +59,7 @@ jobs:
with: with:
distribution: ${{ matrix.distribution }} distribution: ${{ matrix.distribution }}
version: ${{ matrix.version }} version: ${{ matrix.version }}
args: release --skip-publish --clean --snapshot args: release --skip=publish --clean --snapshot
workdir: ./test workdir: ./test
install-only: install-only:
@@ -96,7 +96,7 @@ jobs:
name: Check name: Check
if: ${{ !(github.event_name == 'pull_request' && matrix.distribution == 'goreleaser-pro') }} if: ${{ !(github.event_name == 'pull_request' && matrix.distribution == 'goreleaser-pro') }}
run: | run: |
goreleaser check --debug goreleaser check --verbose
signing: signing:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
@@ -131,7 +131,7 @@ jobs:
uses: ./ uses: ./
with: with:
version: latest version: latest
args: -f .goreleaser-signing.yml check --debug args: -f .goreleaser-signing.yml check --verbose
workdir: ./test workdir: ./test
env: env:
GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }} GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }}
@@ -140,7 +140,7 @@ jobs:
uses: ./ uses: ./
with: with:
version: latest version: latest
args: -f .goreleaser-signing.yml release --skip-publish --clean --snapshot args: -f .goreleaser-signing.yml release --skip=publish --clean --snapshot
workdir: ./test workdir: ./test
env: env:
GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }} GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }}
@@ -162,13 +162,13 @@ jobs:
name: Check name: Check
uses: ./ uses: ./
with: with:
args: check --debug args: check --verbose
workdir: ./test workdir: ./test
- -
name: GoReleaser name: GoReleaser
uses: ./ uses: ./
with: with:
args: release --skip-publish --clean --snapshot args: release --skip=publish --clean --snapshot
workdir: ./test workdir: ./test
- -
name: Upload assets name: Upload assets
@@ -194,7 +194,7 @@ jobs:
name: GoReleaser name: GoReleaser
uses: ./ uses: ./
with: with:
args: release --config .goreleaser-dist.yml --skip-publish --clean --snapshot args: release --config .goreleaser-dist.yml --skip=publish --clean --snapshot
workdir: ./test workdir: ./test
- -
name: Check dist name: Check dist
+13 -13
View File
@@ -59,15 +59,15 @@ jobs:
fetch-depth: 0 fetch-depth: 0
- -
name: Set up Go name: Set up Go
uses: actions/setup-go@v4 uses: actions/setup-go@v5
- -
name: Run GoReleaser name: Run GoReleaser
uses: goreleaser/goreleaser-action@v5 uses: goreleaser/goreleaser-action@v6
with: with:
# either 'goreleaser' (default) or 'goreleaser-pro' # either 'goreleaser' (default) or 'goreleaser-pro'
distribution: goreleaser distribution: goreleaser
# 'latest', 'nightly', or a semver # 'latest', 'nightly', or a semver
version: '~> v1' version: '~> v2'
args: release --clean args: release --clean
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -93,10 +93,10 @@ Or with a condition on GoReleaser step:
```yaml ```yaml
- -
name: Run GoReleaser name: Run GoReleaser
uses: goreleaser/goreleaser-action@v5 uses: goreleaser/goreleaser-action@v6
if: startsWith(github.ref, 'refs/tags/') if: startsWith(github.ref, 'refs/tags/')
with: with:
version: '~> v1' version: '~> v2'
args: release --clean args: release --clean
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -119,9 +119,9 @@ the [Import GPG](https://github.com/crazy-max/ghaction-import-gpg) GitHub Action
passphrase: ${{ secrets.PASSPHRASE }} passphrase: ${{ secrets.PASSPHRASE }}
- -
name: Run GoReleaser name: Run GoReleaser
uses: goreleaser/goreleaser-action@v5 uses: goreleaser/goreleaser-action@v6
with: with:
version: '~> v1' version: '~> v2'
args: release --clean args: release --clean
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -144,9 +144,9 @@ purpose. You can do that with the [actions/upload-artifact](https://github.com/a
```yaml ```yaml
- -
name: Run GoReleaser name: Run GoReleaser
uses: goreleaser/goreleaser-action@v5 uses: goreleaser/goreleaser-action@v6
with: with:
version: '~> v1' version: '~> v2'
args: release --clean args: release --clean
workdir: myfolder workdir: myfolder
env: env:
@@ -165,7 +165,7 @@ purpose. You can do that with the [actions/upload-artifact](https://github.com/a
steps: steps:
- -
name: Install GoReleaser name: Install GoReleaser
uses: goreleaser/goreleaser-action@v5 uses: goreleaser/goreleaser-action@v6
with: with:
install-only: true install-only: true
- -
@@ -182,7 +182,7 @@ Following inputs can be used as `step.with` keys
| Name | Type | Default | Description | | Name | Type | Default | Description |
|------------------|---------|--------------|------------------------------------------------------------------| |------------------|---------|--------------|------------------------------------------------------------------|
| `distribution` | String | `goreleaser` | GoReleaser distribution, either `goreleaser` or `goreleaser-pro` | | `distribution` | String | `goreleaser` | GoReleaser distribution, either `goreleaser` or `goreleaser-pro` |
| `version`**¹** | String | `~> v1` | GoReleaser version | | `version`**¹** | String | `~> v2` | GoReleaser version |
| `args` | String | | Arguments to pass to GoReleaser | | `args` | String | | Arguments to pass to GoReleaser |
| `workdir` | String | `.` | Working directory (below repository root) | | `workdir` | String | `.` | Working directory (below repository root) |
| `install-only` | Bool | `false` | Just install GoReleaser | | `install-only` | Bool | `false` | Just install GoReleaser |
@@ -219,9 +219,9 @@ secret named `GH_PAT`, the step will look like this:
```yaml ```yaml
- -
name: Run GoReleaser name: Run GoReleaser
uses: goreleaser/goreleaser-action@v5 uses: goreleaser/goreleaser-action@v6
with: with:
version: '~> v1' version: '~> v2'
args: release --clean args: release --clean
env: env:
GITHUB_TOKEN: ${{ secrets.GH_PAT }} GITHUB_TOKEN: ${{ secrets.GH_PAT }}
+12
View File
@@ -44,6 +44,18 @@ describe('getRelease', () => {
expect(release?.tag_name).not.toEqual(''); expect(release?.tag_name).not.toEqual('');
}); });
it('returns latest v2 GoReleaser Pro GitHub release', async () => {
const release = await github.getRelease('goreleaser-pro', '~> v2');
expect(release).not.toBeNull();
expect(release?.tag_name).not.toEqual('');
});
it('returns latest v2 GoReleaser GitHub release', async () => {
const release = await github.getRelease('goreleaser', '~> v2');
expect(release).not.toBeNull();
expect(release?.tag_name).not.toEqual('');
});
it('returns nightly GoReleaser GitHub release', async () => { it('returns nightly GoReleaser GitHub release', async () => {
const release = await github.getRelease('goreleaser', 'nightly'); const release = await github.getRelease('goreleaser', 'nightly');
expect(release).not.toBeNull(); expect(release).not.toBeNull();
+10
View File
@@ -28,6 +28,16 @@ describe('install', () => {
expect(fs.existsSync(bin)).toBe(true); expect(fs.existsSync(bin)).toBe(true);
}, 100000); }, 100000);
it('acquires latest v2 version of GoReleaser', async () => {
const bin = await goreleaser.install('goreleaser', '~> v2');
expect(fs.existsSync(bin)).toBe(true);
}, 100000);
it('acquires latest v2 version of GoReleaser Pro', async () => {
const bin = await goreleaser.install('goreleaser-pro', '~> v2');
expect(fs.existsSync(bin)).toBe(true);
}, 100000);
it('acquires latest version of GoReleaser Pro', async () => { it('acquires latest version of GoReleaser Pro', async () => {
const bin = await goreleaser.install('goreleaser-pro', 'latest'); const bin = await goreleaser.install('goreleaser-pro', 'latest');
expect(fs.existsSync(bin)).toBe(true); expect(fs.existsSync(bin)).toBe(true);
+1 -1
View File
@@ -13,7 +13,7 @@ inputs:
required: false required: false
version: version:
description: 'GoReleaser version' description: 'GoReleaser version'
default: '~> v1' default: '~> v2'
required: false required: false
args: args:
description: 'Arguments to pass to GoReleaser' description: 'Arguments to pass to GoReleaser'
Generated Vendored
+1 -1
View File
File diff suppressed because one or more lines are too long
Generated Vendored
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -15,7 +15,7 @@ export interface Inputs {
export async function getInputs(): Promise<Inputs> { export async function getInputs(): Promise<Inputs> {
return { return {
distribution: core.getInput('distribution') || 'goreleaser', distribution: core.getInput('distribution') || 'goreleaser',
version: core.getInput('version') || '~> v1', version: core.getInput('version') || '~> v2',
args: core.getInput('args'), args: core.getInput('args'),
workdir: core.getInput('workdir') || '.', workdir: core.getInput('workdir') || '.',
installOnly: core.getBooleanInput('install-only') installOnly: core.getBooleanInput('install-only')
+2 -3
View File
@@ -8,10 +8,9 @@ export interface GitHubRelease {
} }
export const getRelease = async (distribution: string, version: string): Promise<GitHubRelease> => { export const getRelease = async (distribution: string, version: string): Promise<GitHubRelease> => {
// TODO: change this to ~> v2 on a future major, once goreleaser v2 is out
if (version === 'latest') { if (version === 'latest') {
core.warning("You are using 'latest' as default version. Will lock to '~> v1'."); core.warning("You are using 'latest' as default version. Will lock to '~> v2'.");
return getReleaseTag(distribution, '~> v1'); return getReleaseTag(distribution, '~> v2');
} }
return getReleaseTag(distribution, version); return getReleaseTag(distribution, version);
}; };
+1
View File
@@ -1,3 +1,4 @@
version: 2
env: env:
- GO111MODULE=on - GO111MODULE=on
+1
View File
@@ -1,3 +1,4 @@
version: 2
env: env:
- GO111MODULE=on - GO111MODULE=on
+1
View File
@@ -1,3 +1,4 @@
version: 2
env: env:
- GO111MODULE=on - GO111MODULE=on