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

chore: new release - 1.2.1 #628

Merged
merged 26 commits into from
Sep 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
fffc28d
auto-bump sec-scanners-config: 2024-04-23-11-55-04 (#562)
kyma-eventing-bot Apr 23, 2024
d8c4e3b
docs: improve the troubleshooting guide for Eventing (#569)
rakesh-garimella May 15, 2024
29e5cf8
chore: deprecate kyma provision gardener (#572)
halamix2 May 23, 2024
fce4cca
Fix typo in Gardener provisioning (#574)
halamix2 May 23, 2024
e19dca6
fix: Gardener kubeconfig merging flags (#575)
halamix2 May 23, 2024
f65b12b
fix: change NATS CR wait for Warning status (#576)
mfaizanse May 24, 2024
58f9c0c
fix: unify CR description in Kyma dashboard (#578)
mmitoraj May 28, 2024
4ceed8b
Added github action for K8s version compatibility check (#583)
mfaizanse Jun 20, 2024
567ab35
fixed k8s compatibility check job to use provided k8s version (#584)
mfaizanse Jun 20, 2024
3e9a80f
fixed gardener provisioning make target to use correct env (#585)
mfaizanse Jun 20, 2024
8c2dcf1
deps(dependabot): bump golangci/golangci-lint-action from 4.0.0 to 6.…
dependabot[bot] Jul 9, 2024
ac139b6
chore: bump dependencies (#590)
mfaizanse Jul 16, 2024
7c68182
Upgrade modules for DependaBot PRs (#596)
muralov Jul 24, 2024
c0b1cc8
deps(dependabot): bump github.com/onsi/gomega from 1.33.1 to 1.34.0 (…
dependabot[bot] Jul 29, 2024
400a590
Change enable and disable to add and delete in the eventing repo (#601)
grego952 Jul 30, 2024
59acfba
chore: fix k8s compatibility test (#599)
marcobebway Jul 30, 2024
9712379
deps(dependabot): bump github.com/vektra/mockery/v2 (#603)
dependabot[bot] Aug 5, 2024
87e2d87
deps(dependabot): bump golangci/golangci-lint-action from 6.0.1 to 6.…
dependabot[bot] Aug 5, 2024
a1f5c50
deps: update build image (#606)
friedrichwilken Aug 8, 2024
dca63de
bump go version (#608)
grischperl Aug 15, 2024
6a23228
Update link to default CR for NATS (#615)
friedrichwilken Aug 20, 2024
e0e6c98
deps(dependabot): bump github.com/prometheus/client_golang (#617)
dependabot[bot] Aug 22, 2024
4aa5ebb
deps(dependabot): bump github.com/vektra/mockery/v2 (#618)
dependabot[bot] Aug 23, 2024
44b445d
chore: bump dependencies (#614)
mfaizanse Aug 29, 2024
2203475
Update CONTRIBUTING.md (#626)
mmitoraj Sep 3, 2024
cdc08c8
Bump EPP new version
the1bit Sep 4, 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: 1 addition & 1 deletion .github/workflows/e2e-backend-switching-reuseable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ jobs:
run: |
make -C hack/ci/ wait-istio-cr-ready
make -C hack/ci/ wait-api-gateway-cr-ready
make -C hack/ci/ wait-nats-cr-ready
make -C hack/ci/ wait-nats-cr-warning
make -C hack/ci/ wait-eventing-cr-ready-with-backend ACTIVE_BACKEND=NATS
- name: Setup eventing tests
Expand Down
188 changes: 188 additions & 0 deletions .github/workflows/k8s-compatibility-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,188 @@
name: k8s-compatibility-test

on:
workflow_dispatch:
inputs:
k8s-version: # k8s version
description: 'Kubernetes version (i.e. x.y.z)'
required: true

jobs:
k8s-compatibility-test:
# Tests the compatibility of Kubernetes version with Eventing and NATS modules.
# The steps of this job are:
# 1. Provision Gardener cluster with the given k8s version.
# 2. Install latest released versions of Istio, Api-gateway, NATS and Eventing modules.
# 3. Run eventing tests with NATS backend.
# 4. Run eventing tests with EventMesh backend.
runs-on: ubuntu-latest
env:
KYMA_STABILITY: "unstable"
KYMA: "./hack/kyma"

steps:
- uses: actions/checkout@v4

- name: Setup Go via go.mod
uses: actions/setup-go@v5
with:
go-version-file: go.mod

- run: go version

- name: Install Kyma CLI
run: |
make kyma

- name: Provision Gardener cluster
env:
GARDENER_CLUSTER_VERSION: ${{ inputs.k8s-version }}
CLUSTER_PREFIX: "ghem-"
GARDENER_PROJECT_NAME: ${{ vars.GARDENER_PROJECT_NAME }}
GARDENER_PROVIDER_SECRET_NAME: ${{ vars.GARDENER_PROVIDER_SECRET_NAME_AWS }}
MACHINE_TYPE: "m5.xlarge"
SCALER_MIN: "1"
SCALER_MAX: "2"
RETRY_ATTEMPTS: "1"
GARDENER_KYMATUNAS: ${{ secrets.GARDENER_KYMATUNAS }}
run: |
# setup Gardener kubeconfig.
mkdir -p "${HOME}/.gardener"
export GARDENER_KUBECONFIG="${HOME}/.gardener/kubeconfig"
echo ${GARDENER_KYMATUNAS} | base64 --decode > ${GARDENER_KUBECONFIG}
# generate cluster name and export it to Github env for cleanup step to access it.
export CLUSTER_NAME="${CLUSTER_PREFIX}$(openssl rand -hex 2)"
echo "CLUSTER_NAME=${CLUSTER_NAME}" >> $GITHUB_ENV
# set random region for AWS.
export GARDENER_REGION=$(./scripts/gardener/aws/get_random_region.sh)
export GARDENER_ZONES="${GARDENER_REGION}a"
# provision gardener cluster.
make -C hack/ci/ provision-gardener-cluster
kubectl version
kubectl cluster-info
kubectl get nodes
kubectl get ns

- name: Create kyma-system namespace
run: |
kubectl create ns kyma-system || true

- name: Create EventMesh secret
env:
EVENTMESH_K8S_SECRET: ${{ secrets.EVENTMESH_K8S_SECRET }}
run: |
echo "${EVENTMESH_K8S_SECRET}" | base64 --decode > k8s-em.yaml
kubectl apply -n kyma-system -f k8s-em.yaml
rm k8s-em.yaml

- name: Create IAS application for EventMesh
env:
TEST_EVENTING_AUTH_IAS_URL: ${{ vars.EVENTING_AUTH_IAS_URL }}
TEST_EVENTING_AUTH_IAS_USER: ${{ vars.EVENTING_AUTH_IAS_USER }}
TEST_EVENTING_AUTH_IAS_PASSWORD: ${{ secrets.EVENTING_AUTH_IAS_PASSWORD }}
run: |
export DISPLAY_NAME=${CLUSTER_NAME}
make -C hack/ci/ create-ias-app

- name: Install latest released Istio Module
run: |
make -C hack/ci/ install-istio-module

- name: Install latest released API Gateway Manager
run: |
make -C hack/ci/ install-api-gateway-module

- name: Install latest released NATS Manager
run: |
make -C hack/ci/ install-nats-module

- name: Install latest released Eventing Manager
run: |
make -C hack/ci/ install-eventing-module
kubectl apply -f config/samples/default_nats.yaml

- name: Wait for Installed modules to be ready
run: |
make -C hack/ci/ wait-istio-cr-ready
make -C hack/ci/ wait-api-gateway-cr-ready
make -C hack/ci/ wait-nats-cr-warning
make -C hack/ci/ wait-eventing-cr-ready-with-backend ACTIVE_BACKEND=NATS

- name: Setup eventing tests
run: |
# create API Rules for EPP and Sink.
export DOMAIN_TO_EXPOSE_WORKLOADS="$(kubectl get cm -n kube-system shoot-info -o=jsonpath='{.data.domain}')"
./hack/e2e/scripts/expose_epp_and_sink.sh
# define URLs.
export SINK_PORT_FORWARDED_URL=https://sink-e2e-tests.${DOMAIN_TO_EXPOSE_WORKLOADS}
export PUBLISHER_URL=https://epp-e2e-tests.${DOMAIN_TO_EXPOSE_WORKLOADS}
# export ENVs to Github for all next steps.
echo "SINK_PORT_FORWARDED_URL=${SINK_PORT_FORWARDED_URL}" >> $GITHUB_ENV
echo "PUBLISHER_URL=${PUBLISHER_URL}" >> $GITHUB_ENV
# setup e2e tests.
make e2e-eventing-setup

- name: Test eventing with NATS
run: |
make e2e-eventing

- name: Switch to EventMesh backend
run: |
kubectl apply -f config/samples/default_eventmesh.yaml
make -C hack/ci/ wait-eventing-cr-ready-with-backend ACTIVE_BACKEND=EventMesh

- name: Test eventing with EventMesh
env:
BACKEND_TYPE: "EventMesh"
run: |
# run tests.
make e2e-eventing

- name: Test eventing cleanup
run: |
make e2e-cleanup

- name: On error, fetch NATS CR
if: failure()
run: |
kubectl get nats.operator.kyma-project.io -n kyma-system -o yaml

- name: On error, fetch Eventing CRs
if: failure()
run: |
kubectl get eventing.operator.kyma-project.io -n kyma-system -o yaml

- name: On error, fetch Istio CR
if: failure()
run: |
kubectl get istios.operator.kyma-project.io -n kyma-system -o yaml

- name: On error, fetch API Gateway CR
if: failure()
run: |
kubectl get apigateways.operator.kyma-project.io -n kyma-system -o yaml

- name: Cleanup modules
if: ${{ always() }}
run: |
./scripts/cleanup_modules.sh

- name: Delete IAS application
if: ${{ always() }}
env:
TEST_EVENTING_AUTH_IAS_URL: ${{ vars.EVENTING_AUTH_IAS_URL }}
TEST_EVENTING_AUTH_IAS_USER: ${{ vars.EVENTING_AUTH_IAS_USER }}
TEST_EVENTING_AUTH_IAS_PASSWORD: ${{ secrets.EVENTING_AUTH_IAS_PASSWORD }}
run: |
export IAS_APPLICATION_LOCATION=$(cat ~/.ias_location)
make -C hack/ci/ delete-ias-app

- name: Delete Gardener cluster
if: ${{ always() }}
env:
GARDENER_PROVIDER_SECRET_NAME: "tunas-aws"
GARDENER_PROJECT_NAME: "kymatunas"
WAIT_FOR_DELETE_COMPLETION: "false"
run: |
export GARDENER_KUBECONFIG="${HOME}/.gardener/kubeconfig"
make -C hack/ci/ deprovision-gardener-cluster
2 changes: 1 addition & 1 deletion .github/workflows/lint-go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,6 @@ jobs:
go-version-file: go.mod

- name: golangci-lint
uses: golangci/golangci-lint-action@v4.0.0
uses: golangci/golangci-lint-action@v6.1.0
with:
version: v1.57
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -40,3 +40,4 @@ module-config.yaml

**/.env
**/.env.dev
.env.aws
2 changes: 2 additions & 0 deletions .golangci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,8 @@ linters-settings:
alias: eventingtesting
- pkg: sigs.k8s.io/controller-runtime
alias: kctrl
- pkg: sigs.k8s.io/controller-runtime/pkg/reconcile
alias: kctrlruntimereconcile
- pkg: sigs.k8s.io/controller-runtime/pkg/log
alias: kctrllog
- pkg: sigs.k8s.io/controller-runtime/pkg/client
Expand Down
5 changes: 2 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
# Contributing

## Overview

To contribute to this project, follow the general [contributing](https://github.com/kyma-project/community/blob/main/docs/contributing/02-contributing.md) guidelines.
To contribute to this project, follow the general [Contributing Rules](https://github.com/kyma-project/community/blob/main/docs/contributing/02-contributing.md).
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Build the manager binary
FROM europe-docker.pkg.dev/kyma-project/prod/external/golang:1.22.0-alpine3.19 as builder
FROM europe-docker.pkg.dev/kyma-project/prod/external/library/golang:1.22.6-alpine AS builder
ARG TARGETOS
ARG TARGETARCH

Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ ENVTEST ?= $(LOCALBIN)/setup-envtest

## Tool Versions
KUSTOMIZE_VERSION ?= v5.0.0
CONTROLLER_TOOLS_VERSION ?= v0.14.0
CONTROLLER_TOOLS_VERSION ?= v0.16.1
GOLANG_CI_LINT_VERSION ?= v1.57

KUSTOMIZE_INSTALL_SCRIPT ?= "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh"
Expand Down
2 changes: 1 addition & 1 deletion api/operator/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.1
name: subscriptions.eventing.kyma-project.io
spec:
group: eventing.kyma-project.io
Expand Down
29 changes: 10 additions & 19 deletions config/crd/bases/operator.kyma-project.io_eventings.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.1
name: eventings.operator.kyma-project.io
spec:
group: operator.kyma-project.io
Expand Down Expand Up @@ -209,11 +209,9 @@ spec:
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.


This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.


This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
Expand All @@ -224,6 +222,12 @@ spec:
the Pod where this field is used. It makes that resource available
inside a container.
type: string
request:
description: |-
Request is the name chosen for a request in the referenced claim.
If empty, everything from the claim is made available, otherwise
only the result of this request.
type: string
required:
- name
type: object
Expand Down Expand Up @@ -268,16 +272,8 @@ spec:
type: string
conditions:
items:
description: "Condition contains details for one aspect of the current
state of this API Resource.\n---\nThis struct is intended for
direct use as an array at the field path .status.conditions. For
example,\n\n\n\ttype FooStatus struct{\n\t // Represents the
observations of a foo's current state.\n\t // Known .status.conditions.type
are: \"Available\", \"Progressing\", and \"Degraded\"\n\t //
+patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t
\ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\"
patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t
\ // other fields\n\t}"
description: Condition contains details for one aspect of the current
state of this API Resource.
properties:
lastTransitionTime:
description: |-
Expand Down Expand Up @@ -318,12 +314,7 @@ spec:
- Unknown
type: string
type:
description: |-
type of condition in CamelCase or in foo.example.com/CamelCase.
---
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
useful (see .node.status.conditions), the ability to deconflict is important.
The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
description: type of condition in CamelCase or in foo.example.com/CamelCase.
maxLength: 316
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
type: string
Expand Down
2 changes: 1 addition & 1 deletion config/manager/manager.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ spec:
- name: PUBLISHER_LIMITS_MEMORY
value: 128Mi
- name: PUBLISHER_IMAGE
value: "europe-docker.pkg.dev/kyma-project/prod/eventing-publisher-proxy:1.0.1"
value: "europe-docker.pkg.dev/kyma-project/prod/eventing-publisher-proxy:1.1.0"
- name: PUBLISHER_IMAGE_PULL_POLICY
value: "IfNotPresent"
- name: PUBLISHER_REPLICAS
Expand Down
Loading
Loading