Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
4ea30aa
chore: bump k8s to 1.28 (#548)
davidjumani Dec 5, 2023
2f0d239
codegen/collector: Increase timeout like in skv2 for go 1.21 (#549)
Jan 29, 2024
5693efe
Support validation again snapshot - consistent order of reporter outp…
sheidkamp Feb 20, 2024
9495e89
in-memory resource client: support expression selector (#551)
jenshu May 22, 2024
ebf2447
chore: bump k8s to 1.29 (#552)
davidjumani May 24, 2024
ba36348
make snapshots json marshallable
jbohanon May 28, 2024
095fc42
closing backtick
jbohanon May 28, 2024
4f41196
Merge main into jbohanon/json-snapshots
soloio-bulldozer[bot] May 28, 2024
33fd541
Merge branch 'main' into jbohanon/json-snapshots
jbohanon May 28, 2024
66898d6
Merge branch 'jbohanon/json-snapshots' of ssh://github.com/solo-io/so…
jbohanon May 28, 2024
71d6278
codegen
jbohanon May 28, 2024
e950c4d
add changelog
jbohanon May 28, 2024
c7d074b
revert goofy proto changes
jbohanon May 28, 2024
9898b43
Adding changelog file to new location
May 28, 2024
5fe70e9
Deleting changelog file from old location
May 28, 2024
d93c329
Merge pull request #554 from solo-io/jbohanon/json-snapshots
jbohanon May 28, 2024
ecc4f32
Add option to disable kubebuilder markers (#555)
arianaw66 Jun 14, 2024
ffe0eaa
Revert "implement json.Marshaler in snapshot templates"
arianaw66 Jun 17, 2024
d423848
Don't delete old changelog
arianaw66 Jun 17, 2024
f690f68
Oops :facepalm:
arianaw66 Jun 17, 2024
24097fa
Don't delete old changelog
arianaw66 Jun 17, 2024
218c77d
changelog
arianaw66 Jun 17, 2024
1baf6de
Revert "implement json.Marshaler in snapshot templates"
sam-heilbron Jun 17, 2024
f03f859
k8s 1.31/go1.23 (#560)
Sep 11, 2024
95038fc
Add RemoveMatches in snapshot template (#558)
davidjumani Sep 17, 2024
7f2c40c
Fix duplicate definition of predicate (#563)
davidjumani Sep 19, 2024
6caea09
Makefile: Fix the install-protoc target (#565)
timflannagan Sep 20, 2024
57e43a2
Update template_funcs.go (#567)
sheidkamp Nov 14, 2024
8a3fda8
Update template_funcs.go (#567)
sheidkamp Nov 14, 2024
33c0501
Move changelog
sheidkamp Nov 18, 2024
6aa3511
Merge main into 0.33.x-gen-doc-links
soloio-bulldozer[bot] Nov 18, 2024
3ef41db
Rerun ci
sheidkamp Nov 18, 2024
8bdd1df
Merge branch '0.33.x-gen-doc-links' of ssh://github.com/solo-io/solo-…
sheidkamp Nov 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 35 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -67,17 +67,46 @@ update-all: mod-download update-deps update-code-generator
mod-download:
go mod download all

.PHONY: install-tools
install-tools: update-deps install-protoc

.PHONY: update-deps
update-deps:
mkdir -p $(DEPSGOBIN)
go install github.com/solo-io/protoc-gen-ext
go install github.com/solo-io/protoc-gen-openapi@v0.1.1
go install github.com/solo-io/protoc-gen-ext@v0.0.18
go install github.com/solo-io/protoc-gen-openapi@v0.2.4
go install golang.org/x/tools/cmd/goimports
go install github.com/golang/protobuf/protoc-gen-go
go install github.com/envoyproxy/protoc-gen-validate
go install github.com/golang/protobuf/protoc-gen-go@v1.5.4
go install github.com/envoyproxy/protoc-gen-validate@v1.0.4
go install github.com/golang/mock/gomock
go install github.com/golang/mock/mockgen

# proto compiler installation
# no explicit arm build, but x86_64 build works on arm macs
PROTOC_VERSION:=3.6.1
PROTOC_URL:=https://github.com/protocolbuffers/protobuf/releases/download/v${PROTOC_VERSION}/protoc-${PROTOC_VERSION}
.PHONY: install-protoc
install-protoc:
mkdir -p $(DEPSGOBIN)
if [ $(shell ${DEPSGOBIN}/protoc --version | grep -c ${PROTOC_VERSION}) -ne 0 ]; then \
echo expected protoc version ${PROTOC_VERSION} already installed ;\
else \
if [ "$(shell uname)" = "Darwin" ]; then \
echo "downloading protoc for osx" ;\
wget $(PROTOC_URL)-osx-x86_64.zip -O $(DEPSGOBIN)/protoc-${PROTOC_VERSION}.zip ;\
elif [ "$(shell uname -m)" = "aarch64" ]; then \
echo "downloading protoc for linux aarch64" ;\
wget $(PROTOC_URL)-linux-aarch_64.zip -O $(DEPSGOBIN)/protoc-${PROTOC_VERSION}.zip ;\
else \
echo "downloading protoc for linux x86-64" ;\
wget $(PROTOC_URL)-linux-x86_64.zip -O $(DEPSGOBIN)/protoc-${PROTOC_VERSION}.zip ;\
fi ;\
unzip $(DEPSGOBIN)/protoc-${PROTOC_VERSION}.zip -d $(DEPSGOBIN)/protoc-${PROTOC_VERSION} ;\
mv $(DEPSGOBIN)/protoc-${PROTOC_VERSION}/bin/protoc $(DEPSGOBIN)/protoc ;\
chmod +x $(DEPSGOBIN)/protoc ;\
rm -rf $(DEPSGOBIN)/protoc-${PROTOC_VERSION} $(DEPSGOBIN)/protoc-${PROTOC_VERSION}.zip ;\
fi

.PHONY: update-code-generator
update-code-generator:
chmod +x $(shell go list -f '{{ .Dir }}' -m k8s.io/code-generator)/generate-groups.sh
Expand Down Expand Up @@ -144,7 +173,7 @@ verify-envoy-protos:
# Tests
#----------------------------------------------------------------------------------

GINKGO_VERSION := 2.5.0
GINKGO_VERSION ?= $(shell echo $(shell go list -m github.com/onsi/ginkgo/v2) | cut -d' ' -f2)
GINKGO_ENV ?= GOLANG_PROTOBUF_REGISTRATION_CONFLICT=ignore ACK_GINKGO_DEPRECATIONS=$(GINKGO_VERSION)
GINKGO_FLAGS ?= -v -tags=purego -compilers=4 --randomize-all --trace -progress -race
GINKGO_REPORT_FLAGS ?= --json-report=test-report.json --junit-report=junit.xml -output-dir=$(OUTPUT_DIR)
Expand All @@ -157,7 +186,7 @@ GINKGO_USER_FLAGS ?=

.PHONY: install-test-tools
install-test-tools:
go install github.com/onsi/ginkgo/v2/ginkgo@v$(GINKGO_VERSION)
go install github.com/onsi/ginkgo/v2/ginkgo@$(GINKGO_VERSION)

.PHONY: test
test: install-test-tools ## Run all tests, or only run the test package at {TEST_PKG} if it is specified
Expand Down
13 changes: 10 additions & 3 deletions api/v1/generate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,26 @@ SOLO_KIT=${ROOT}/solo-kit
IN=${SOLO_KIT}/api/v1/
VENDOR_ROOT=vendor_any/github.com

# Scripts are a legacy component of our CI, and ideally would be converted to go code,
# since the functionality is available in code-generator/collector/compiler.go
# However, since this library is rarely modified, we do not want to make sweeping changes to the code generation step.
# To improve the debuggability of these scripts, we include some identifier so that we can more easily triage issues.
SCRIPT_ID="api/v1/generate.sh"

TEMP_DIR=$(mktemp -d)
cleanup() {
echo ">> Removing ${TEMP_DIR}"
rm -rf ${TEMP_DIR}
}
trap "cleanup" EXIT SIGINT
trap "cleanup ${SCRIPT_ID}" EXIT SIGINT

echo ">> Temporary output directory ${TEMP_DIR}"
echo ">> Invoking ${SCRIPT_ID}: temporary output directory ${TEMP_DIR}"

IMPORTS="\
-I=${IN} \
-I=${ROOT} \
-I=${VENDOR_ROOT}/solo-io/protoc-gen-ext"
-I=${VENDOR_ROOT}/solo-io/protoc-gen-ext \
-I=${VENDOR_ROOT}/solo-io/protoc-gen-ext/external"

GO_FLAG="--go_out=${TEMP_DIR}"
HASH_FLAG="--ext_out=${TEMP_DIR}"
Expand Down
6 changes: 6 additions & 0 deletions changelog/v0.33.2/no-external-links.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
changelog:
- type: FIX
issueLink: https://github.com/solo-io/solo-projects/issues/6768
resolvesIssue: false
description: >-
Update protobuf processing to no longer render links to locally hosted external API docs, as they are being removed.
50 changes: 50 additions & 0 deletions changelog/v0.34.0/bump-k8s-128.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
changelog:
- type: BREAKING_CHANGE
description: >
Bump dependencies to support Kubernetes 1.28
issueLink: https://github.com/solo-io/gloo/issues/8515
resolvesIssue: false
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: api
dependencyTag: v0.28.3
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: apiextensions-apiserver
dependencyTag: v0.28.3
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: apimachinery
dependencyTag: v0.28.3
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: client-go
dependencyTag: v0.28.3
- type: DEPENDENCY_BUMP
dependencyOwner: sigs.k8s.io
dependencyRepo: code-generator
dependencyTag: v0.28.3
- type: DEPENDENCY_BUMP
dependencyOwner: envoyproxy
dependencyRepo: go-control-plane
dependencyTag: v0.11.1-0.20230524094728-9239064ad72f
- type: DEPENDENCY_BUMP
dependencyOwner: onsi
dependencyRepo: ginkgo/v2
dependencyTag: v2.11.0
- type: DEPENDENCY_BUMP
dependencyOwner: onsi
dependencyRepo: gomega
dependencyTag: v1.27.10
- type: DEPENDENCY_BUMP
dependencyOwner: solo-io
dependencyRepo: go-utils
dependencyTag: v0.24.8
- type: DEPENDENCY_BUMP
dependencyOwner: solo-io
dependencyRepo: k8s-utils
dependencyTag: v0.6.0
- type: DEPENDENCY_BUMP
dependencyOwner: solo-io
dependencyRepo: cloud-builders
dependencyTag: v0.8.0
5 changes: 5 additions & 0 deletions changelog/v0.34.1/go-1.21.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
changelog:
- type: NON_USER_FACING
issueLink: https://github.com/solo-io/gloo-mesh-enterprise/issues/11090
description: Bump time before declaring a deadlock when processing proto imports to 15s instead of 5s.
resolvesIssue: false
9 changes: 9 additions & 0 deletions changelog/v0.34.2/consistent-validation-output.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
changelog:
- type: NON_USER_FACING
description: >
Updated reporter validation:
* Added ValidateSeparateWarnings to return warnings separately from errors
* Added ValidateSeparateWarningsAndErrors to provide a single method to validate and return warnings and errors separately to keep a consistent interface even if warnings will always be `nil`
* Updated all Valdiation to return errors and warnings in a consistent order
issueLink: https://github.com/solo-io/gloo/issues/8931
resolvesIssue: false
5 changes: 5 additions & 0 deletions changelog/v0.34.3/mem-client-expression-selector.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
changelog:
- type: FIX
issueLink: https://github.com/solo-io/solo-kit/issues/553
description: >-
Add support for ExpressionSelector in memory ResourceClient.
54 changes: 54 additions & 0 deletions changelog/v0.35.0/bump-k8s-129.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
changelog:
- type: BREAKING_CHANGE
description: >
Bump dependencies to support Kubernetes 1.29
issueLink: https://github.com/solo-io/gloo/issues/8978
resolvesIssue: false
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: api
dependencyTag: v0.29.2
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: apiextensions-apiserver
dependencyTag: v0.29.2
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: apimachinery
dependencyTag: v0.29.2
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: client-go
dependencyTag: v0.29.2
- type: DEPENDENCY_BUMP
dependencyOwner: sigs.k8s.io
dependencyRepo: code-generator
dependencyTag: v0.29.2
- type: DEPENDENCY_BUMP
dependencyOwner: envoyproxy
dependencyRepo: go-control-plane
dependencyTag: v0.11.1
- type: DEPENDENCY_BUMP
dependencyOwner: envoyproxy
dependencyRepo: protoc-gen-validate
dependencyTag: v1.0.2
- type: DEPENDENCY_BUMP
dependencyOwner: onsi
dependencyRepo: ginkgo/v2
dependencyTag: v2.14.0
- type: DEPENDENCY_BUMP
dependencyOwner: onsi
dependencyRepo: gomega
dependencyTag: v1.30.0
- type: DEPENDENCY_BUMP
dependencyOwner: go.uber.org
dependencyRepo: zap
dependencyTag: v1.26.0
- type: DEPENDENCY_BUMP
dependencyOwner: solo-io
dependencyRepo: k8s-utils
dependencyTag: v0.7.2
- type: DEPENDENCY_BUMP
dependencyOwner: solo-io
dependencyRepo: cloud-builders
dependencyTag: v0.9.1
6 changes: 6 additions & 0 deletions changelog/v0.35.1/json-apisnapshot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
changelog:
- type: NEW_FEATURE
issueLink: https://github.com/solo-io/gloo/issues/6494
resolvesIssue: false
description: >-
Added code to template for ApiSnapshot that implements JsonMarshaler
11 changes: 11 additions & 0 deletions changelog/v0.35.2/disable-kube-markers.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
changelog:
- type: NEW_FEATURE
issueLink: https://github.com/solo-io/gloo-mesh-enterprise/issues/17005
resolvesIssue: false
description: |
Adds support for disabling kubebuilder markers and validations to omit them from the generated OpenAPI schema.
- type: DEPENDENCY_BUMP
description: Updates protoc-gen-openapi to v0.2.4
dependencyOwner: solo-io
dependencyRepo: protoc-gen-openapi
dependencyTag: v0.2.4
8 changes: 8 additions & 0 deletions changelog/v0.35.3/revert-json-apisnapshot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
changelog:
- type: FIX
issueLink: https://github.com/solo-io/gloo-mesh-enterprise/issues/16010
resolvesIssue: false
description: |
Reverts the change in https://github.com/solo-io/solo-kit/pull/554 (released in v0.35.1) that implemented json.Marshaler in snapshot templates.
That change was unused (the initial issue was resolved without it).
However, when pulled into the https://github.com/solo-io/gloo repo to get the subsequent change, it resulted in test failures; reverting to fix the tests.
90 changes: 90 additions & 0 deletions changelog/v0.36.0/9683-go-k8s-upgrade.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
changelog:
- type: BREAKING_CHANGE
description: >
Bump dependencies to support Kubernetes 1.31
issueLink: https://github.com/solo-io/gloo/issues/9683
resolvesIssue: false
- type: DEPENDENCY_BUMP
dependencyOwner: envoyproxy
dependencyRepo: go-control-plane
dependencyTag: v0.12.0
- type: DEPENDENCY_BUMP
dependencyOwner: envoyproxy
dependencyRepo: protoc-gen-validate
dependencyTag: v1.0.4
- type: DEPENDENCY_BUMP
dependencyOwner: golang
dependencyRepo: protobuf
dependencyTag: v1.5.4
- type: DEPENDENCY_BUMP
dependencyOwner: iancoleman
dependencyRepo: strcase
dependencyTag: v0.3.0
- type: DEPENDENCY_BUMP
dependencyOwner: onsi
dependencyRepo: ginkgo
dependencyTag: v2.19.0
- type: DEPENDENCY_BUMP
dependencyOwner: onsi
dependencyRepo: gomega
dependencyTag: v1.33.1
- type: DEPENDENCY_BUMP
dependencyOwner: solo-io
dependencyRepo: go-utils
dependencyTag: v0.26.0
- type: DEPENDENCY_BUMP
dependencyOwner: solo-io
dependencyRepo: k8s-utils
dependencyTag: v0.8.0
- type: DEPENDENCY_BUMP
dependencyOwner: golang
dependencyRepo: x/sync
dependencyTag: v0.8.0
- type: DEPENDENCY_BUMP
dependencyOwner: google
dependencyRepo: genproto/googleapis/apis
dependencyTag: v0.0.0-20240528184218-531527333157
- type: DEPENDENCY_BUMP
dependencyOwner: google
dependencyRepo: genproto/googleapis/rpc
dependencyTag: v0.0.0-20240701130421-f6361c86f094
- type: DEPENDENCY_BUMP
dependencyOwner: google
dependencyRepo: genproto/googleapis/rpc
dependencyTag: v0.0.0-20240701130421-f6361c86f094
- type: DEPENDENCY_BUMP
dependencyOwner: google
dependencyRepo: grpc
dependencyTag: v1.65.0
- type: DEPENDENCY_BUMP
dependencyOwner: google
dependencyRepo: protobuf
dependencyTag: v1.34.2
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: api
dependencyTag: v0.31.0
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: apiextensions-apiserver
dependencyTag: v0.31.0
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: apimachinery
dependencyTag: v0.31.0
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: client-go
dependencyTag: v0.31.0
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: code-generator
dependencyTag: v0.31.0
- type: DEPENDENCY_BUMP
dependencyOwner: k8s.io
dependencyRepo: utils
dependencyTag: v0.0.0-20240711033017-18e509b52bc8
- type: DEPENDENCY_BUMP
dependencyOwner: solo-io
dependencyRepo: cloud-builders
dependencyTag: v0.10.1
8 changes: 8 additions & 0 deletions changelog/v0.36.1/add-delete-ns-snapshot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
changelog:
- type: FIX
issueLink: https://github.com/solo-io/gloo/issues/9274
resolvesIssue: false
description: >-
Adds the `RemoveMatches` method in `snapshot_template.go` that removes all resources that match the given predicate.
Adds the ability for event loops to determine if the Syncer passed is a `SyncDecider` to determine if a sync is necessary.

6 changes: 6 additions & 0 deletions changelog/v0.36.1/fix-duplicate-predicate.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
changelog:
- type: FIX
issueLink: https://github.com/solo-io/gloo/issues/9274
resolvesIssue: false
description: Fixes the issue of multiple declarations of Predicate when multiple snapshots are generated

4 changes: 4 additions & 0 deletions changelog/v0.36.1/fix-protoc-target.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
changelog:
- type: NON_USER_FACING
description: >-
Fix the "install-protoc" Makefile target.
6 changes: 6 additions & 0 deletions changelog/v0.36.2/no-external-links.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
changelog:
- type: FIX
issueLink: https://github.com/solo-io/solo-projects/issues/6768
resolvesIssue: false
description: >-
Update protobuf processing to no longer render links to locally hosted external API docs, as they are being removed.
Loading