Skip to content

Commit eabaa64

Browse files
authored
Merge branch 'master' into bump-golang.org/x/oauth2-v0.30.0
Signed-off-by: Junya Okabe <86868255+Okabe-Junya@users.noreply.github.com>
2 parents 35249d4 + c4e7533 commit eabaa64

140 files changed

Lines changed: 2427 additions & 2974 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/build.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ on:
1313
- 'feat/*'
1414

1515
env:
16-
GO_VERSION: 1.24.1
16+
GO_VERSION: 1.25.0
1717
NODE_VERSION: 18.12.0
1818
HELM_VERSION: 3.8.2
1919

.github/workflows/gen.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
1313
- name: Generate code
1414
# NOTE: Keep this container image as same as defined in Makefile
15-
uses: docker://ghcr.io/pipe-cd/codegen@sha256:3aa25a5abafe40419861ce1f1667580d4274e144370d03ce9f1d00e9b391d7fd #v0.52.0-135-gcefd641
15+
uses: docker://ghcr.io/pipe-cd/codegen@sha256:0a2f9805e50f5c6efb7771171ddf291251bf349c2e8627fbf59c3535eacbbee0 # v0.53.0-10-g64742f7
1616
with:
1717
entrypoint: ./tool/codegen/codegen.sh
1818
args: /github/workspace

.github/workflows/lint.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ on:
77
pull_request:
88
branches:
99
- master
10-
- 'release-v*'
11-
- 'feat/*'
10+
- "release-v*"
11+
- "feat/*"
1212

1313
env:
14-
GO_VERSION: 1.24.1
14+
GO_VERSION: 1.25.0
1515
NODE_VERSION: 18.12.0
16-
GOLANGCI_LINT_VERSION: v1.64.7
16+
GOLANGCI_LINT_VERSION: v2.4.0
1717
HELM_VERSION: 3.17.3
1818

1919
jobs:
@@ -38,13 +38,13 @@ jobs:
3838
steps:
3939
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4040
- name: golangci-lint
41-
uses: reviewdog/action-golangci-lint@f3dc5fadcaff5d8da3574b129a58db433171b1a8 #v2.1.3
41+
uses: reviewdog/action-golangci-lint@f9bba13753278f6a73b27a56a3ffb1bfda90ed71 #v2.8.0
4242
with:
4343
workdir: ${{ matrix.module }}
4444
go_version: ${{ env.GO_VERSION }}
4545
golangci_lint_version: ${{ env.GOLANGCI_LINT_VERSION }}
4646
golangci_lint_flags: --config ${{ github.workspace }}/.golangci.yml
47-
fail_on_error: true # this option is deprecated on v2.7.0, but we use v2.1.3, so it's still available
47+
fail_level: error
4848

4949
# This job is used to check if the go linting is completed successfully
5050
# It is used to set as required check for the branch protection rules

.github/workflows/publish_binary.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ on:
66
- 'v*'
77

88
env:
9-
GO_VERSION: 1.24.1
9+
GO_VERSION: 1.25.0
1010

1111
jobs:
1212
gh_release:

.github/workflows/publish_pipedv1_exp.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ on:
1010
permissions: {}
1111

1212
env:
13-
GO_VERSION: 1.24.1
13+
GO_VERSION: 1.25.0
1414
GHCR: ghcr.io
1515
GCR: gcr.io
1616
HELM_VERSION: 3.8.2

.golangci.yml

Lines changed: 81 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,86 +1,100 @@
1-
run:
2-
timeout: 15m
3-
1+
version: "2"
42
linters:
5-
disable-all: true
3+
default: none
64
enable:
7-
- gofmt
85
- depguard
96
- gocritic
107
- goheader
11-
- goimports
12-
- gosimple
138
- ineffassign
149
- misspell
1510
- prealloc
1611
- staticcheck
17-
- stylecheck
18-
- typecheck
1912
- unconvert
2013
- unparam
2114
# TODO: Enable these linters
2215
# - errcheck
2316
# - goerr113
2417
# - gosec
2518

26-
issues:
27-
exclude-files:
28-
- ^.*\.(pb|y)\.go$
29-
exclude-dirs:
30-
- "vendor$"
31-
- "pkg/app/piped/executor/analysis/mannwhitney"
32-
# Relative path of "pkg/app/pipedv1/plugin/analysis/executestage/mannwhitney"
33-
- "executestage/mannwhitney"
34-
exclude-rules:
35-
- linters:
36-
- staticcheck
37-
text: "SA1019"
38-
39-
output:
40-
sort-results: true
41-
42-
linters-settings:
43-
depguard:
44-
rules:
45-
main:
46-
deny:
47-
- pkg: "sync/atomic"
48-
desc: "Use go.uber.org/atomic instead of sync/atomic."
49-
- pkg: "io/ioutil"
50-
desc: "Use corresponding 'os' or 'io' functions instead."
51-
pipedv1:
52-
files:
53-
- "**/pkg/app/pipedv1/**/*.go"
54-
deny:
55-
- pkg: "github.com/pipe-cd/pipecd/pkg/config$"
56-
desc: "Use github.com/pipe-cd/pipecd/pkg/configv1 instead."
57-
plugin:
58-
files:
59-
- "**/pkg/app/pipedv1/plugin/**/*.go"
60-
deny:
61-
- pkg: "^github.com/pipe-cd/pipecd/(?!pkg/app/pipedv1/plugin).*"
62-
desc: "Use github.com/pipe-cd/piped-plugin-sdk-go instead."
63-
gocritic:
64-
disabled-checks:
65-
- appendAssign
66-
goimports:
67-
local-prefixes: github.com/pipe-cd/pipecd
68-
goheader:
69-
values:
70-
regexp:
71-
any-year: \d{4} # the year of copyright means the first published year, so it can be any year.
72-
# template does not contains the comment indicator '//' or '/*' '*/'
73-
template: |-
74-
Copyright {{any-year}} The PipeCD Authors.
19+
settings:
20+
depguard:
21+
rules:
22+
main:
23+
deny:
24+
- pkg: "sync/atomic"
25+
desc: "Use go.uber.org/atomic instead of sync/atomic."
26+
- pkg: "io/ioutil"
27+
desc: "Use corresponding 'os' or 'io' functions instead."
28+
pipedv1:
29+
files:
30+
- "**/pkg/app/pipedv1/**/*.go"
31+
deny:
32+
- pkg: "github.com/pipe-cd/pipecd/pkg/config$"
33+
desc: "Use github.com/pipe-cd/pipecd/pkg/configv1 instead."
34+
plugin:
35+
files:
36+
- "**/pkg/app/pipedv1/plugin/**/*.go"
37+
deny:
38+
- pkg: "^github.com/pipe-cd/pipecd/(?!pkg/app/pipedv1/plugin).*"
39+
desc: "Use github.com/pipe-cd/piped-plugin-sdk-go instead."
40+
gocritic:
41+
disabled-checks:
42+
- appendAssign
43+
goheader:
44+
values:
45+
regexp:
46+
any-year: \d{4} # the year of copyright means the first published year, so it can be any year.
47+
# template does not contains the comment indicator '//' or '/*' '*/'
48+
template: |-
49+
Copyright {{any-year}} The PipeCD Authors.
7550
76-
Licensed under the Apache License, Version 2.0 (the "License");
77-
you may not use this file except in compliance with the License.
78-
You may obtain a copy of the License at
51+
Licensed under the Apache License, Version 2.0 (the "License");
52+
you may not use this file except in compliance with the License.
53+
You may obtain a copy of the License at
7954
80-
http://www.apache.org/licenses/LICENSE-2.0
55+
http://www.apache.org/licenses/LICENSE-2.0
8156
82-
Unless required by applicable law or agreed to in writing, software
83-
distributed under the License is distributed on an "AS IS" BASIS,
84-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
85-
See the License for the specific language governing permissions and
86-
limitations under the License.
57+
Unless required by applicable law or agreed to in writing, software
58+
distributed under the License is distributed on an "AS IS" BASIS,
59+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
60+
See the License for the specific language governing permissions and
61+
limitations under the License.
62+
exclusions:
63+
generated: lax
64+
presets:
65+
- comments
66+
- common-false-positives
67+
- legacy
68+
- std-error-handling
69+
rules:
70+
- linters:
71+
- staticcheck
72+
text: SA1019
73+
paths:
74+
- ^.*\.(pb|y)\.go$
75+
- vendor$
76+
- pkg/app/piped/executor/analysis/mannwhitney
77+
# Relative path of "pkg/app/pipedv1/plugin/analysis/executestage/mannwhitney"
78+
- executestage/mannwhitney
79+
- third_party$
80+
- builtin$
81+
- examples$
82+
formatters:
83+
enable:
84+
- gofmt
85+
- goimports
86+
settings:
87+
goimports:
88+
local-prefixes:
89+
- github.com/pipe-cd/pipecd
90+
exclusions:
91+
generated: lax
92+
paths:
93+
- ^.*\.(pb|y)\.go$
94+
- vendor$
95+
- pkg/app/piped/executor/analysis/mannwhitney
96+
# Relative path of "pkg/app/pipedv1/plugin/analysis/executestage/mannwhitney"
97+
- executestage/mannwhitney
98+
- third_party$
99+
- builtin$
100+
- examples$

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ lint: lint/go lint/web lint/helm
200200

201201
.PHONY: lint/go
202202
lint/go: FIX ?= false
203-
lint/go: VERSION ?= sha256:c2f5e6aaa7f89e7ab49f6bd45d8ce4ee5a030b132a5fbcac68b7959914a5a890 # golangci/golangci-lint:v1.64.7
203+
lint/go: VERSION ?= sha256:91460846c43b3de53eb77e968b17363e8747e6f3fc190575b52be60c49446e23 # golangci/golangci-lint:v2.4.0
204204
lint/go: FLAGS ?= --rm -e GOCACHE=/repo/.cache/go-build -e GOLANGCI_LINT_CACHE=/repo/.cache/golangci-lint -v ${PWD}:/repo -it
205205
lint/go: MODULES ?= $(shell find . -name go.mod | while read -r dir; do dirname "$$dir"; done | paste -sd, -) # comma separated list of modules. eg: MODULES=.,pkg/plugin/sdk
206206
lint/go:
@@ -252,7 +252,7 @@ update/copyright:
252252
.PHONY: gen/code
253253
gen/code:
254254
# NOTE: Keep this container image as same as defined in .github/workflows/gen.yml
255-
docker run --rm -v ${PWD}:/repo -it --entrypoint ./tool/codegen/codegen.sh ghcr.io/pipe-cd/codegen@sha256:3aa25a5abafe40419861ce1f1667580d4274e144370d03ce9f1d00e9b391d7fd /repo # v0.52.0-135-gcefd641
255+
docker run --rm -v ${PWD}:/repo -it --entrypoint ./tool/codegen/codegen.sh ghcr.io/pipe-cd/codegen@sha256:0a2f9805e50f5c6efb7771171ddf291251bf349c2e8627fbf59c3535eacbbee0 /repo # v0.53.0-10-g64742f7
256256

257257
.PHONY: gen/test-tls
258258
gen/test-tls:

RELEASES.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
# Releases
22
This document explains the process to release new versions.
33

4+
> NOTE: From v0.54.0, while plugin-arch piped (aka. pipedv1) reaches alpha status, the pipe-cd/pipecd release tab change from only PipeCD release to be multi modules releases. PipeCD and plugins releases are both available at the [release tab](https://github.com/pipe-cd/pipecd/releases).
5+
6+
# PipeCD releases
7+
48
## Versioning
59
Versions are expressed as `vX.Y.Z`;
610

@@ -133,3 +137,65 @@ This may also contain some minor features, but ensure that it does NOT contain a
133137
3. Write them to the body area.
134138
5. **Select `Set as a pre-release`**, not `Set as the latest release`.
135139
4. Push `Publish Release`.
140+
141+
## Pipedv1 releases (experimental)
142+
143+
Currently, pipedv1 is in experimental (aplha) status, so the release is done by maintainers team.
144+
145+
Pipedv1 releases is done by [publish_pipedv1_exp github actions](https://github.com/pipe-cd/pipecd/blob/master/.github/workflows/publish_pipedv1_exp.yaml).
146+
147+
### Inputs
148+
149+
| Name | Description | Required | Example |
150+
|------------|-----------------------------------------------|:--------:|:-------------:|
151+
| version | The version of the pipedv1 to release. | yes | v1.0.0-rc0 |
152+
153+
154+
# Plugins releases
155+
156+
Piped's plugins are versioned independently from PipeCD. This means that the plugin version is not related to the PipeCD version.
157+
158+
NOTE: Plugin releases mentioned in this document are only plugins maintained by the maintainers team. For community plugins, please refer to the [community plugin's repository](https://github.com/pipe-cd/community-plugins) for release information.
159+
160+
## Versioning
161+
162+
Piped's plugins version follow semantic versioning (same as PipeCD).
163+
164+
## Release Cycle
165+
166+
There is no release cycle for plugins. Maintainers team will release new versions of plugins when there are new features or bug fixes.
167+
168+
## Cut a new release
169+
170+
Plugins releases is done by [plugin_release github actions](https://github.com/pipe-cd/pipecd/blob/master/.github/workflows/plugin_release.yaml).
171+
172+
### Inputs
173+
174+
| Name | Description | Required | Example |
175+
|------------|-----------------------------------------------|:--------:|:-------------:|
176+
| version | The version of the plugin to release. | yes | v0.1.0 |
177+
| path | The path of the plugin to release. | yes | pkg/app/pipedv1/plugin/kubernetes |
178+
179+
# Piped plugin SDK releases
180+
181+
> NOTE: Release for piped plugin SDK is available at [piped-plugin-sdk-go repo](https://github.com/pipe-cd/piped-plugin-sdk-go/releases).
182+
183+
## Versioning
184+
185+
The piped plugin SDK are versioned independently from [PipeCD](https://github.com/pipe-cd/pipecd). This means that the plugin version is not related to the PipeCD version.
186+
187+
The piped plugin SDK version follow semantic versioning (same as PipeCD).
188+
189+
## Release Cycle
190+
191+
There is no release cycle for piped plugin SDK. Maintainers team will release new versions when there are new features or bug fixes.
192+
193+
## Cut a new release
194+
195+
Piped plugin SDK releases is done by [release sdk github actions](https://github.com/pipe-cd/piped-plugin-sdk-go/blob/main/.github/workflows/release.yaml).
196+
197+
### Inputs
198+
199+
| Name | Description | Required | Example |
200+
|------------|-----------------------------------------------|:--------:|:-------------:|
201+
| version | The version of the piped plugin SDK to release. | yes | v0.1.0 |

cmd/helloworld/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# syntax=docker/dockerfile:1
2-
FROM --platform=$BUILDPLATFORM golang:1.24.1 AS builder
2+
FROM --platform=$BUILDPLATFORM golang:1.25.0 AS builder
33

44
ARG TARGETOS
55
ARG TARGETARCH

cmd/launcher/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# syntax=docker/dockerfile:1
2-
FROM --platform=$BUILDPLATFORM golang:1.24.1 AS builder
2+
FROM --platform=$BUILDPLATFORM golang:1.25.0 AS builder
33

44
ARG TARGETOS
55
ARG TARGETARCH

0 commit comments

Comments
 (0)