Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge main into 3.x RC #1094

Merged
merged 80 commits into from
Jun 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
f648738
fix(ingress): bump kong/kong dependencies to fix incubator API group …
czeslavo Dec 8, 2023
2e53239
fix(migrations) correct issue with affinity indentation (#972)
wesleydutrads Dec 9, 2023
32d7a68
chore: release kong 2.32.2 (#973)
rainest Dec 11, 2023
e2f4d3a
fix(kong): add RBAC rules for listing namespaces when gateway API is …
pmalek Dec 13, 2023
8b6fd7d
chore: prepare kong v2.33.3 (#980)
pmalek Jan 4, 2024
b087f02
Add post-install warning to docs AIO values.yaml file (#981)
mheap Jan 9, 2024
d5e1c3c
tests: introduce golden tests in kong chart using chartsnap (#978)
czeslavo Jan 9, 2024
61c07d7
ingress: release 0.10.2 (#984)
pmalek Jan 16, 2024
5e7c7ce
feat(env) add support for envFrom (#987)
rainest Jan 19, 2024
d8e5998
feat(listens) support multiple addresses and IPv6 (#986)
rainest Jan 19, 2024
8577394
fix: explicitly define status port in controller container (#989)
czeslavo Jan 25, 2024
ad65c3c
chore(deps): bump golang.stackrox.io/kube-linter in /third_party (#988)
dependabot[bot] Jan 26, 2024
a8c3822
feat: add RBAC rules for KongVault (#992)
czeslavo Jan 29, 2024
6838b15
chore(deps): bump golang.stackrox.io/kube-linter in /third_party
dependabot[bot] Jan 29, 2024
a713ff4
Merge pull request #993 from Kong/dependabot/go_modules/third_party/g…
programmer04 Jan 29, 2024
703a3fc
fix(env) add missing envFrom render
rainest Jan 30, 2024
31b0fbe
fix version in Chart.yaml and regenerate golden
czeslavo Jan 31, 2024
95e4edd
fix(env) drop empty plugin defaults (#1002)
rainest Feb 8, 2024
cb44830
kong: add RBACs for KongLicense (#1006)
pmalek Feb 15, 2024
81eb594
ci: bump helm setup action (#1007)
pmalek Feb 19, 2024
6c1421b
feat: bump KIC to 3.1, update CRDs and bump Kong to 3.6 (#1011)
czeslavo Feb 19, 2024
06a2ede
ingress: prepare 0.11.0 (#1012)
pmalek Feb 19, 2024
6b3d1f6
Update timeout for .github/workflows/release-push.yaml (#998)
team-eng-enablement Feb 19, 2024
dfe039c
Update timeout for .github/workflows/release-pr.yaml (#997)
team-eng-enablement Feb 19, 2024
42f0634
fix: prevent controller status port from being scraped by Prometheus …
sgrzemski Feb 21, 2024
6269907
Update timeout for .github/workflows/master-mirrors-main.yaml (#996)
team-eng-enablement Feb 21, 2024
85d6682
ingress: bump kong/kong dependency, release 0.11.1 (#1013)
czeslavo Feb 21, 2024
ac23c03
tests: add ingress golden tests (#1014)
czeslavo Feb 22, 2024
91c66a5
feat(kong): add appProtocol as optional field to services ports (#1018)
gyenwahangelCA Feb 26, 2024
db470df
chore(ingress) release 0.12.0 (#1019)
rainest Feb 29, 2024
14d9187
chore(deps): bump azure/setup-helm from 4.0.0 to 4.1.0 (#1022)
dependabot[bot] Mar 1, 2024
468ea40
feat: add gateway-operator helm chart (#1020)
tao12345666333 Mar 7, 2024
6c7b36c
feat: Add conditions to automate the installation for CRDs. (#1025)
tao12345666333 Mar 8, 2024
a62daa7
feat(kgo): Allow custom requests and limits (#1026)
tao12345666333 Mar 8, 2024
bec0dca
kgo: fix webhook (#1029)
pmalek Mar 8, 2024
cb0328c
kgo: update RBAC rules in manager role (#1028)
pmalek Mar 8, 2024
9ffc6a1
feat(kgo): Allow users to modify startup parameters and env vars (#1027)
tao12345666333 Mar 8, 2024
35bd3b0
chore: release first kgo chart 0.0.1-alpha.1
tao12345666333 Mar 8, 2024
28b6215
feat(kgo): use emptyDir as /tmp (#1032)
tao12345666333 Mar 12, 2024
42e307a
fix(kgo): RBAC for AIGateway (#1035)
tao12345666333 Mar 14, 2024
832eb91
chore(operator) release 0.1.0 (#1036)
rainest Mar 15, 2024
77767fc
chore(kgo): sync kgo v1.2's CRDs (#1038)
tao12345666333 Mar 18, 2024
ecdbe0f
kgo: remove controllers related defaults (#1039)
pmalek Mar 18, 2024
e01fb1c
chore(kgo): fix kgo flags in comments (#1041)
pmalek Mar 19, 2024
994fec0
chore(deps): bump golang.stackrox.io/kube-linter from 0.6.7 to 0.6.8 …
dependabot[bot] Mar 19, 2024
df57d83
fix(kgo): add missing RBAC policy rules for cert-manager's Certificat…
pmalek Mar 19, 2024
0e8c4b5
fix(kgo): add missing cert-manager Certificate watch RBAC policy rule…
pmalek Mar 21, 2024
744df5f
kgo: unpin 1.2.0 and set the default tag to 1.2 (#1043)
pmalek Mar 21, 2024
e09fd7a
chore(RBAC) disable session conf secret if not set (#1033)
rainest Mar 29, 2024
0b1f635
feat(services) disable Service ports when servicePort=0
mithunkrb Apr 10, 2024
6906fa6
chore(docs) add missing changelog entries (#1050)
rainest Apr 10, 2024
7b2fb13
chore: pin chartsnap version to latest v0.3.1 (#1054)
czeslavo Apr 11, 2024
07ddc3d
feat(kgo): custom kubeRBACProxy image (#1047)
mfordjody Apr 11, 2024
b4a9c8d
chore(deps): bump azure/setup-helm from 4.1.0 to 4.2.0 (#1056)
dependabot[bot] Apr 16, 2024
76a8727
chore: update dep versions used in CI (#1059)
pmalek Apr 18, 2024
3604b7f
kgo: add args and provide current defaults via env (#1058)
pmalek Apr 18, 2024
3fdef5c
feat(kgo): add ability to specify probes (#1062)
pmalek Apr 29, 2024
90c5e8d
chore: make sure installed chartsnap version matches desired (#1064)
czeslavo Apr 30, 2024
e2ed787
chore: add kgo changelog (#1063)
pmalek Apr 30, 2024
035836a
feat(admission) add secret filter (#1061)
rainest May 8, 2024
fd9deb6
kgo: fix missing renderTpl (#1075)
pmalek May 29, 2024
40cb083
chore: update versions in CI (#1082)
pmalek Jun 10, 2024
3e2ebd0
feat(kong): add rbac policy rules for customentities (#1081)
pmalek Jun 10, 2024
995a470
chore(kong): bump kic tag and release 2.39.0 (#1085)
czeslavo Jun 12, 2024
2854eb8
chore(ingress): bump kong/kong and release 0.13.0 (#1087)
czeslavo Jun 12, 2024
6fc2b82
kgo: add missing customentities policy rules (#1089)
pmalek Jun 13, 2024
3d91af1
chore(crds) update CRDs to KIC 3.2 (#1090)
rainest Jun 13, 2024
a04a49d
fix: fix KongLicense policy rule when using watch namespaces (#1084)
pmalek Jun 13, 2024
4d444b9
tests: speed up tests and do not send anonymous reports (#1092)
pmalek Jun 17, 2024
5b969de
Merge branch 'main' into release/kong-3.x
rainest Jun 17, 2024
fd06beb
fix: close broken admission ifs
rainest Jun 17, 2024
ec0cddd
feat: add missing port to controller container
rainest Jun 17, 2024
fa9f445
chore: remove serviceAccount warning
rainest Jun 17, 2024
3bc0060
chore: enable admin and change to ClusterIP
rainest Jun 17, 2024
5a78eed
chore: fix ci controller image version
rainest Jun 18, 2024
c19211e
chore: remove old external controller env values sections
rainest Jun 18, 2024
b197cec
chore: remove unused controller container template
rainest Jun 18, 2024
8ff4042
chore: update controller env check to new location
rainest Jun 18, 2024
bdb8f1a
chore: add chartsnap cert path
rainest Jun 18, 2024
7383644
chore: golden update
rainest Jun 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
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
charts/kong/ci/__snapshots__/*.snap linguist-generated=true
charts/ingress/ci/__snapshots__/*.snap linguist-generated=true
1 change: 1 addition & 0 deletions .github/workflows/master-mirrors-main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ on:

jobs:
push-master:
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout repository
Expand Down
86 changes: 54 additions & 32 deletions .github/workflows/release-pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,15 @@ on:
branches:
- main
- release/*
- prepare-kgo-chart

env:
# Specify this here because these tests rely on ktf to run kind for cluster creation.
KIND_VERSION: v0.23.0

jobs:
lint:
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout
Expand All @@ -30,25 +36,22 @@ jobs:
run: make lint

lint-test:
timeout-minutes: 30
runs-on: ubuntu-latest
env:
# Specify this here because these tests rely on ktf to run kind for cluster creation.
KIND_VERSION: v0.20.0
strategy:
matrix:
chart-name:
- kong
- ingress
- gateway-operator
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Helm
uses: azure/setup-helm@v3
with:
version: v3.11.0
uses: azure/[email protected]

- name: Add Helm repos
run: |
Expand All @@ -63,47 +66,46 @@ jobs:
uses: helm/[email protected]

- name: Run chart-testing (lint)
run: ct lint --check-version-increment=false
run: ct lint --target-branch main --check-version-increment=false

- name: setup testing environment (kind-cluster)
env:
KUBERNETES_VERSION: ${{ matrix.kubernetes-version }}
CHART_NAME: ${{ matrix.chart-name }}
run: ./scripts/test-env.sh

- name: Run chart-testing (install)
run: ct install --charts charts/${{ matrix.chart-name}}
run: ct install --target-branch main --charts charts/${{ matrix.chart-name}}

integration-test:
timeout-minutes: 30
runs-on: ubuntu-latest
env:
# Specify this here because these tests rely on ktf to run kind for cluster creation.
KIND_VERSION: v0.20.0
GATEWAY_API_VERSION: v0.8.1
GATEWAY_API_VERSION: v1.0.0
strategy:
matrix:
kubernetes-version:
- "1.23.13"
- "1.24.7"
- "1.25.9"
- "1.26.4"
- "1.27.1"
- "1.25.16"
- "1.26.15"
- "1.27.13"
- "1.28.9"
- "1.29.4"
- "1.30.0"
chart-name:
- kong
- ingress
- gateway-operator
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: setup helm
uses: azure/setup-helm@v3
with:
version: v3.11.0
uses: azure/[email protected]

- name: setup testing environment (kind-cluster)
env:
KUBERNETES_VERSION: ${{ matrix.kubernetes-version }}
CHART_NAME: ${{ matrix.chart-name }}
run: ./scripts/test-env.sh

- name: run integration tests (integration)
Expand All @@ -119,34 +121,31 @@ jobs:
- name: cleanup integration tests (cleanup)
run: ./scripts/test-env.sh cleanup
oldversion-integration-test:
timeout-minutes: 30
rainest marked this conversation as resolved.
Show resolved Hide resolved
runs-on: ubuntu-latest
env:
# Specify this here because these tests rely on ktf to run kind for cluster creation.
KIND_VERSION: v0.20.0
GATEWAY_API_VERSION: v0.8.1
strategy:
matrix:
kic-version:
- "2.10"
- "2.11"
- "2.10"
- "2.11"
kong-version:
- "3.3"
- "3.2"
- "3.3"
- "3.2"
chart-name:
- kong
- ingress
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: setup helm
uses: azure/setup-helm@v3
with:
version: v3.11.0
uses: azure/[email protected]

- name: setup testing environment (kind-cluster)
env:
CHART_NAME: ${{ matrix.chart-name }}
run: ./scripts/test-env.sh

- name: run integration tests (integration)
Expand All @@ -159,15 +158,38 @@ jobs:
- name: cleanup integration tests (cleanup)
run: ./scripts/test-env.sh cleanup

golden-tests:
timeout-minutes: 30
runs-on: ubuntu-latest
name: golden-tests
steps:
- name: checkout
uses: actions/checkout@v4

- name: setup helm
uses: azure/[email protected]

- name: build helm chart dependency
run: |
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add kong https://charts.konghq.com
helm dependency build charts/kong
helm dependency build charts/ingress

- name: run golden tests
run: make test.golden

# Workaround to allow checking the matrix tests as required tests without adding the individual cases
# Ref: https://github.com/orgs/community/discussions/26822#discussioncomment-3305794
passed:
timeout-minutes: 30
runs-on: ubuntu-latest
needs:
- lint
- lint-test
- integration-test
- oldversion-integration-test
- golden-tests
if: always()
steps:
- if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}
Expand Down
22 changes: 11 additions & 11 deletions .github/workflows/release-push.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,22 @@ on:

jobs:
lint-test:
timeout-minutes: 30
runs-on: ubuntu-latest
strategy:
matrix:
chart-name:
- kong
- ingress
- gateway-operator
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Helm
uses: azure/setup-helm@v3
with:
version: v3.11.0
uses: azure/[email protected]

- uses: actions/setup-python@v5
with:
Expand All @@ -38,14 +38,16 @@ jobs:
helm repo add kong https://charts.konghq.com

- name: Run chart-testing (lint)
run: ct lint --charts ${{ matrix.chart-name }}
run: ct lint --target-branch main --charts ${{ matrix.chart-name }}
working-directory: charts

- name: setup testing environment (kind-cluster)
env:
CHART_NAME: ${{ matrix.chart-name }}
run: ./scripts/test-env.sh

- name: run chart-testing (install)
run: ct install --charts ${{ matrix.chart-name }}
run: ct install --target-branch main --charts ${{ matrix.chart-name }}
working-directory: charts
if: matrix.chart-name == 'kong'

Expand All @@ -57,14 +59,14 @@ jobs:
- name: cleanup integration tests (cleanup)
run: ./scripts/test-env.sh cleanup
release:
timeout-minutes: 30
needs: lint-test
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Fetch history
run: git fetch --prune --unshallow
with:
fetch-depth: 0

- name: Configure Git
run: |
Expand All @@ -73,9 +75,7 @@ jobs:

# See https://github.com/helm/chart-releaser-action/issues/6
- name: Set up Helm
uses: azure/setup-helm@v3
with:
version: v3.11.0
uses: azure/[email protected]

- name: Add dependency chart repos
run: |
Expand Down
40 changes: 39 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,18 +1,23 @@
PROJECT_DIR := $(shell dirname $(abspath $(lastword $(MAKEFILE_LIST))))
CHARTSNAP_VERSION ?= v0.3.1

.PHONY: _download_tool
_download_tool:
(cd third_party && go mod tidy && \
GOBIN=$(PROJECT_DIR)/bin go generate -tags=third_party ./$(TOOL).go )

.PHONY: tools
tools: kube-linter
tools: kube-linter chartsnap

KUBE_LINTER = $(PROJECT_DIR)/bin/kube-linter
.PHONY: kube-linter
kube-linter:
@$(MAKE) _download_tool TOOL=kube-linter

.PHONY: chartsnap
chartsnap:
./scripts/install-chartsnap.sh

.PHONY: lint
lint: tools lint.charts.kong lint.shellcheck

Expand All @@ -22,3 +27,36 @@ lint.charts.kong:

lint.shellcheck:
shellcheck ./scripts/*

.PHONY: test.golden
test.golden:
@ $(MAKE) _chartsnap.kong && $(MAKE) _chartsnap.ingress || \
(echo "$$GOLDEN_TEST_FAILURE_MSG" && exit 1)

.PHONY: test.golden.update
test.golden.update:
@ $(MAKE) _chartsnap.kong CHARTSNAP_ARGS="-u"
@ $(MAKE) _chartsnap.ingress CHARTSNAP_ARGS="-u"

# Defining multi-line strings to echo: https://stackoverflow.com/a/649462/7958339
define GOLDEN_TEST_FAILURE_MSG
>> Golden tests have failed.
>> Please run 'make test.golden.update' to update golden files and commit the changes if they're expected.
endef
export GOLDEN_TEST_FAILURE_MSG

.PHONY: _chartsnap.kong
_chartsnap.kong:
@ $(MAKE) _chartsnap GOLDEN_TEST_CHART=kong GOLDEN_TEST_CHART_VALUES_DIR=./charts/kong/ci/ \
CHARTSNAP_ARGS=$(CHARTSNAP_ARGS)

.PHONY: _chartsnap.ingress
_chartsnap.ingress:
@ $(MAKE) _chartsnap GOLDEN_TEST_CHART=ingress GOLDEN_TEST_CHART_VALUES_DIR=./charts/ingress/ci/ \
CHARTSNAP_ARGS=$(CHARTSNAP_ARGS)

.PHONY: _chartsnap
_chartsnap: chartsnap
@ helm repo update
@ helm dependencies update charts/ingress
@ helm chartsnap -c ./charts/$(GOLDEN_TEST_CHART) -f $(GOLDEN_TEST_CHART_VALUES_DIR) $(CHARTSNAP_ARGS)
23 changes: 23 additions & 0 deletions charts/gateway-operator/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
Loading
Loading