Compare commits

..
5 Commits
Author SHA1 Message Date
CrazyMax 0e7950faac Update CHANGELOG 2020-11-30 01:04:35 +01:00
09ce14113d fix: Set GORELEASER_CURRENT_TAG (#259)
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2020-11-30 00:00:15 +00:00
50de962f84 Upload artifact example (#257)
* docs: Upload artifact example (#254)

* Fix README

* Typo

Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2020-11-29 23:57:19 +00:00
a61bc075fd feat: Container based developer flow (#258)
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2020-11-22 22:34:12 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
d19982d4d2 chore(deps): bump @actions/tool-cache from 1.6.0 to 1.6.1 (#256)
Bumps [@actions/tool-cache](https://github.com/actions/toolkit/tree/HEAD/packages/tool-cache) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/actions/toolkit/releases)
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/tool-cache/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/tool-cache)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-11-18 19:08:40 +00:00
13 changed files with 205 additions and 44 deletions
+1
View File
@@ -0,0 +1 @@
node_modules
+35 -5
View File
@@ -24,7 +24,7 @@ jobs:
- windows-latest
version:
- latest
- v0.117.0
- v0.145.0
steps:
-
name: Checkout
@@ -35,7 +35,7 @@ jobs:
name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.14
go-version: 1.15
-
name: Check
uses: ./
@@ -56,7 +56,7 @@ jobs:
matrix:
version:
- latest
- v0.117.0
- v0.145.0
steps:
-
name: Checkout
@@ -67,7 +67,7 @@ jobs:
name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.14
go-version: 1.15
-
name: GoReleaser
uses: ./
@@ -99,7 +99,7 @@ jobs:
name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.14
go-version: 1.15
-
name: Import GPG key
id: import_gpg
@@ -123,3 +123,33 @@ jobs:
args: -f .goreleaser-signing.yml release --skip-publish --rm-dist
env:
GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }}
upload-artifact:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
-
name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.15
-
name: Check
uses: ./
with:
args: check --debug
-
name: GoReleaser
uses: ./
with:
args: release --skip-publish --rm-dist
-
name: Upload assets
uses: actions/upload-artifact@v2
with:
name: myapp
path: dist/*
-30
View File
@@ -1,30 +0,0 @@
name: pre-checkin
on:
push:
paths-ignore:
- '**.md'
pull_request:
paths-ignore:
- '**.md'
jobs:
pre-checkin:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v2
-
name: Install
run: yarn install
-
name: Pre-checkin
run: yarn run pre-checkin
-
name: Check for uncommitted changes
run: |
if [[ `git status --porcelain` ]]; then
git status --porcelain
echo "::warning::Found changes. Please run 'yarn run pre-checkin' and push"
fi
+15
View File
@@ -12,6 +12,21 @@ on:
- '**.md'
jobs:
test-containerized:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
-
name: Validate
run: docker buildx bake validate
-
name: Test
run: docker buildx bake test
test:
runs-on: ${{ matrix.os }}
strategy:
+7
View File
@@ -1,5 +1,12 @@
# Changelog
## 2.4.0 (2020/11/30)
* Set GORELEASER_CURRENT_TAG (#259)
* Container based developer flow (#258)
* Upload artifact example (#257)
* Bump @actions/tool-cache from 1.6.0 to 1.6.1 (#256)
## 2.3.0 (2020/11/06)
* Add install-only option for using goreleaser in user scripts (#252)
+46
View File
@@ -0,0 +1,46 @@
#syntax=docker/dockerfile:1.1-experimental
FROM node:12 AS deps
WORKDIR /src
COPY package.json yarn.lock ./
RUN --mount=type=cache,target=/usr/local/share/.cache/yarn \
yarn install
FROM scratch AS update-yarn
COPY --from=deps /src/yarn.lock /
FROM deps AS validate-yarn
COPY .git .git
RUN status=$(git status --porcelain -- yarn.lock); if [ -n "$status" ]; then echo $status; exit 1; fi
FROM deps AS base
COPY . .
FROM base AS build
RUN yarn build
FROM deps AS test
ARG TARGETOS
ARG TARGETARCH
ENV RUNNER_TEMP=/tmp/github_runner
ENV RUNNER_TOOL_CACHE=/tmp/github_tool_cache
COPY . .
RUN yarn run test
FROM base AS run-format
RUN yarn run format
FROM scratch AS format
COPY --from=run-format /src/src/*.ts /src/
FROM base AS validate-format
RUN yarn run format-check
FROM scratch AS dist
COPY --from=build /src/dist/ /dist/
FROM build AS validate-build
RUN status=$(git status --porcelain -- dist); if [ -n "$status" ]; then echo $status; exit 1; fi
FROM base AS dev
ENTRYPOINT ["bash"]
+38 -1
View File
@@ -19,11 +19,13 @@ ___
* [Workflow](#workflow)
* [Run on new tag](#run-on-new-tag)
* [Signing](#signing)
* [Upload artifacts](#upload-artifacts)
* [Install Only](#install-only)
* [Customizing](#customizing)
* [inputs](#inputs)
* [environment variables](#environment-variables)
* [Limitation](#limitation)
* [Development](#development)
* [License](#license)
## Usage
@@ -50,7 +52,7 @@ jobs:
name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.14
go-version: 1.15
-
name: Run GoReleaser
uses: goreleaser/goreleaser-action@v2
@@ -121,6 +123,28 @@ signs:
args: ["--batch", "-u", "{{ .Env.GPG_FINGERPRINT }}", "--output", "${signature}", "--detach-sign", "${artifact}"]
```
### Upload artifacts
For some events like pull request or schedule you might want to store the artifacts somewhere for testing
purpose. You can do that with the [actions/upload-artifact](https://github.com/actions/upload-artifact) action:
```yaml
-
name: Run GoReleaser
uses: goreleaser/goreleaser-action@v2
with:
version: latest
args: release --rm-dist
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
name: Upload assets
uses: actions/upload-artifact@v2
with:
name: myapp
path: dist/*
```
### Install Only
```yaml
@@ -178,6 +202,19 @@ secret named `GH_PAT`, the step will look like this:
GITHUB_TOKEN: ${{ secrets.GH_PAT }}
```
## Development
```
# format code and build javascript artifacts
docker buildx bake pre-checkin
# validate all code has correctly formatted and built
docker buildx bake validate
# run tests
docker buildx bake test
```
## License
MIT. See `LICENSE` for more details.
Generated Vendored
+1
View File
@@ -378,6 +378,7 @@ function run() {
}
}
core.info('🏃 Running GoReleaser...');
process.env.GORELEASER_CURRENT_TAG = tag;
yield exec.exec(`${goreleaser} ${args}${snapshot}`);
}
catch (error) {
+53
View File
@@ -0,0 +1,53 @@
group "default" {
targets = ["build"]
}
group "pre-checkin" {
targets = ["update-yarn", "format", "build"]
}
group "validate" {
targets = ["validate-format", "validate-build", "validate-yarn"]
}
target "dockerfile" {
dockerfile = "Dockerfile.dev"
}
target "update-yarn" {
inherits = ["dockerfile"]
target = "update-yarn"
output = ["."]
}
target "build" {
inherits = ["dockerfile"]
target = "dist"
output = ["."]
}
target "test" {
inherits = ["dockerfile"]
target = "test"
}
target "format" {
inherits = ["dockerfile"]
target = "format"
output = ["."]
}
target "validate-format" {
inherits = ["dockerfile"]
target = "validate-format"
}
target "validate-build" {
inherits = ["dockerfile"]
target = "validate-build"
}
target "validate-yarn" {
inherits = ["dockerfile"]
target = "validate-yarn"
}
+1 -1
View File
@@ -1,3 +1,3 @@
module github.com/goreleaser/goreleaser-action
go 1.14
go 1.15
+1 -1
View File
@@ -24,7 +24,7 @@
"@actions/core": "^1.2.6",
"@actions/exec": "^1.0.4",
"@actions/http-client": "^1.0.9",
"@actions/tool-cache": "^1.6.0"
"@actions/tool-cache": "^1.6.1"
},
"devDependencies": {
"@types/jest": "^26.0.14",
+1
View File
@@ -44,6 +44,7 @@ async function run(): Promise<void> {
}
core.info('🏃 Running GoReleaser...');
process.env.GORELEASER_CURRENT_TAG = tag;
await exec.exec(`${goreleaser} ${args}${snapshot}`);
} catch (error) {
core.setFailed(error.message);
+6 -6
View File
@@ -2,7 +2,7 @@
# yarn lockfile v1
"@actions/core@^1.2.3", "@actions/core@^1.2.6":
"@actions/core@^1.2.6":
version "1.2.6"
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.2.6.tgz#a78d49f41a4def18e88ce47c2cac615d5694bf09"
integrity sha512-ZQYitnqiyBc3D+k7LsgSBmMDVkOVidaagDG7j3fOym77jNunWRuYx7VSHa9GNfFZh+zh61xsCjRj4JxMZlDqTA==
@@ -26,12 +26,12 @@
resolved "https://registry.yarnpkg.com/@actions/io/-/io-1.0.2.tgz#2f614b6e69ce14d191180451eb38e6576a6e6b27"
integrity sha512-J8KuFqVPr3p6U8W93DOXlXW6zFvrQAJANdS+vw0YhusLIq+bszW8zmK2Fh1C2kDPX8FMvwIl1OUcFgvJoXLbAg==
"@actions/tool-cache@^1.6.0":
version "1.6.0"
resolved "https://registry.yarnpkg.com/@actions/tool-cache/-/tool-cache-1.6.0.tgz#5b425db2d642df65dd0d6bcec0d84dcdbca3f80d"
integrity sha512-+fyEBImPD3m5I0o6DflCO0NHY180LPoX8Lo6y4Iez+V17kO8kfkH0VHxb8mUdmD6hn9dWA9Ch1JA20fXoIYUeQ==
"@actions/tool-cache@^1.6.1":
version "1.6.1"
resolved "https://registry.yarnpkg.com/@actions/tool-cache/-/tool-cache-1.6.1.tgz#5e199f7bfd9863eb2b0d467cd70751ef8042ec40"
integrity sha512-F+vwEDwfqcHMKuSkj79pihOnsAMv23EkG76nMpc82UsnXwyQdyEsktGxrB0SNtm7pRqTXEIOoAPTgrSQclXYTg==
dependencies:
"@actions/core" "^1.2.3"
"@actions/core" "^1.2.6"
"@actions/exec" "^1.0.0"
"@actions/http-client" "^1.0.8"
"@actions/io" "^1.0.1"