Skip to content

Commit 8112eb8

Browse files
authored
Merge branch 'knative:main' into upload-blog-post-3
2 parents 95063ce + 638cbfb commit 8112eb8

File tree

176 files changed

+13542
-1256
lines changed

Some content is hidden

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

176 files changed

+13542
-1256
lines changed

.github/workflows/knative-go-test.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,5 @@ on:
1515
jobs:
1616
test:
1717
uses: knative/actions/.github/workflows/reusable-go-test.yaml@main
18+
secrets:
19+
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ hack/__pycache__
2020
!/blog/overrides/partials/source-file.html
2121
!/blog/overrides/partials/content.html
2222
/blog/docs/stylesheets/
23-
/node_modules/
23+
node_modules
2424
venv/
2525

2626
# TODO clean up images copied between blog/ and docs/
@@ -36,4 +36,3 @@ maven-wrapper.jar
3636

3737
# Ignore Python virtual environments
3838
.venv
39-
/code-samples/eventing/bookstore-sample-app/db/bookstore-eda/node_modules/*

OWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ approvers:
99
reviewers:
1010
- docs-writers
1111
- docs-reviewers
12+
- ux-wg-leads

OWNERS_ALIASES

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -52,38 +52,22 @@ aliases:
5252
- lkingland
5353
- salaboy
5454
knative-admin:
55-
- Cali0707
56-
- Leo6Leo
57-
- ReToCode
5855
- aliok
5956
- cardil
60-
- creydr
6157
- davidhadas
6258
- dprotaso
6359
- dsimansk
6460
- evankanderson
65-
- izabelacg
6661
- knative-automation
6762
- knative-prow-releaser-robot
6863
- knative-prow-robot
6964
- knative-prow-updater-robot
7065
- knative-test-reporter-robot
71-
- krsna-m
7266
- nainaz
73-
- pierDipi
7467
- psschwei
7568
- salaboy
76-
- skonto
7769
- upodroid
78-
knative-release-leads:
79-
- Cali0707
80-
- Leo6Leo
81-
- ReToCode
82-
- creydr
83-
- dsimansk
84-
- izabelacg
85-
- pierDipi
86-
- skonto
70+
knative-release-leads: []
8771
knative-robots:
8872
- knative-automation
8973
- knative-prow-releaser-robot
@@ -113,7 +97,6 @@ aliases:
11397
- upodroid
11498
productivity-writers:
11599
- cardil
116-
- krsna-m
117100
- upodroid
118101
security-wg-leads:
119102
- davidhadas
@@ -122,6 +105,7 @@ aliases:
122105
- davidhadas
123106
- evankanderson
124107
serving-approvers:
108+
- ReToCode
125109
- skonto
126110
serving-reviewers:
127111
- izabelacg
@@ -134,6 +118,7 @@ aliases:
134118
serving-wg-leads:
135119
- dprotaso
136120
serving-writers:
121+
- ReToCode
137122
- dprotaso
138123
- skonto
139124
steering-committee:
@@ -145,7 +130,6 @@ aliases:
145130
- davidhadas
146131
- dprotaso
147132
- dsimansk
148-
- krsna-m
149133
- psschwei
150134
ux-wg-leads:
151135
- cali0707

blog/config/nav.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ nav:
1515
- Blog:
1616
- index.md
1717
- Releases:
18+
- releases/announcing-knative-v1-14-release.md
1819
- releases/announcing-knative-v1-13-release.md
1920
- releases/announcing-knative-v1-12-release.md
2021
- releases/announcing-knative-v1-11-release.md
@@ -46,6 +47,7 @@ nav:
4647
- releases/announcing-knative-v0-3-release.md
4748
- releases/announcing-knative-v0-2-release.md
4849
- Articles:
50+
- articles/knative-meets-apache-camel.md
4951
- articles/knative-backstage-plugins.md
5052
- articles/demystifying-activator-on-path.md
5153
- articles/knative-eventing-vision.md
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
# Event Sourcing with Apache Camel K and Knative Eventing
2+
3+
**Author: Matthias Weßendorf, Senior Principal Software Engineer @ Red Hat**
4+
5+
## Why Apache Camel K?
6+
7+
The [Apache Camel](https://camel.apache.org/){:target="_blank"} is a popular Open Source integration framework that empowers you to quickly and easily integrate various systems consuming or producing data. With [Apache Camel K](https://camel.apache.org/camel-k/latest){:target="_blank"} the project provides a lightweight integration framework built from Apache Camel that runs natively on Kubernetes and is specifically designed for serverless and microservice architectures.
8+
9+
The Camel K framework also supports Knative, allowing developers to [bind](https://camel.apache.org/camel-k/latest/kamelets/kamelets-user.html#kamelets-usage-binding){:target="_blank"} any Kamelet to a Knative component. A Kamelet can act as "source" of data or alternatively as "sink". There are several Kamelets available for integrating and connecting to 3rd party services or products, such as Amazon Web Services (AWS), Google Cloud or even tradition message systems like AMQP 1.0 or JMS brokers like Apache Artemis. The full list of Kamelets can be found in the [documentation](https://camel.apache.org/camel-kamelets/latest/index.html){:target="_blank"}.
10+
11+
## Installation
12+
13+
The [Installation](https://camel.apache.org/camel-k/next/installation/installation.html) from Apache Camel K offers a few choices, such as CLI, Kustomize, OLM or Helm. Example of Helm installation:
14+
15+
```
16+
$ helm repo add camel-k https://apache.github.io/camel-k/charts/
17+
$ helm install my-camel-k camel-k/camel-k
18+
```
19+
20+
Besides Camel K we also need to have Knative Eventing installed, as described in the [documentation](https://knative.dev/docs/install/yaml-install/eventing/install-eventing-with-yaml/){:target="_blank"}.
21+
22+
## Creating a Knative Broker instance
23+
24+
We are using a Knative Broker as the heart of our system, acting as an [Event Mesh](https://knative.dev/docs/eventing/event-mesh/){:target="_blank"} for both event producers and event consumers:
25+
26+
```yaml
27+
apiVersion: eventing.knative.dev/v1
28+
kind: Broker
29+
metadata:
30+
namespace: default
31+
name: demo-broker
32+
```
33+
34+
Now event producers can send events to it and event consumers can receive events.
35+
36+
## Using Kamelets as Event Sources
37+
38+
In order to bind a Kamelet to a Knative component, like the above broker, we are using the `Pipe` API. A Pipe allows to declaratively move data from a system described by a Kamelet _towards_ a Knative destination **or** _from_ a Knative destination to another (external) system described by a Kamelet.
39+
40+
Below is a `Pipe` that uses a ready-to-use `Kamelet`, a `timer-source`
41+
42+
```yaml
43+
apiVersion: camel.apache.org/v1
44+
kind: Pipe
45+
metadata:
46+
name: timer-source-pipe
47+
spec:
48+
source:
49+
ref:
50+
kind: Kamelet
51+
apiVersion: camel.apache.org/v1
52+
name: timer-source
53+
properties:
54+
message: Hello Knative Eventing!
55+
sink:
56+
properties:
57+
cloudEventsType: com.corp.my.timer.source
58+
ref:
59+
kind: Broker
60+
apiVersion: eventing.knative.dev/v1
61+
name: demo-broker
62+
```
63+
64+
The `timer-source` Kamelet is referenced as the `source` of the `Pipe` and sends periodically (default is `1000ms`) the value of its `message` property to the outbound `sink`. Here we use the Knative Broker, which accepts CloudEvents. The conversion of the message payload to CloudEvents format is done by Apache Camel for us. On the `sink` we can also define the `type` of the CloudEvent to be send.
65+
66+
## Using Kamelets as Event Consumers
67+
68+
In order to consume messages from the Knative broker, using Apache Camel K, we need a different `Pipe` where the above Broker acts as the source of events and a Kamelet is used as sink to receive the CloudEvents:
69+
70+
```yaml
71+
apiVersion: camel.apache.org/v1
72+
kind: Pipe
73+
metadata:
74+
name: log-sink-pipe
75+
spec:
76+
source:
77+
ref:
78+
kind: Broker
79+
apiVersion: eventing.knative.dev/v1
80+
name: demo-broker
81+
properties:
82+
type: com.corp.my.timer.source
83+
sink:
84+
ref:
85+
kind: Kamelet
86+
apiVersion: camel.apache.org/v1
87+
name: log-sink
88+
```
89+
90+
The `demo-broker` is referenced as the `source` of the `Pipe` and within the `properties` we define which CloudEvent `type` we are interested in. On a matching CloudEvent, the event is routed to the referenced `sink`. In this example we are using a simple `log-sink` Kamelet, which will just print the received data on its standard out log.
91+
92+
93+
!!! note
94+
95+
In order for the above to work, the Apache Camel K operator will indeed create a Knative `Trigger` from the `Pipe` data, where the `spec.broker` will match our `demo-broker` and the `spec.filter.attributes.types` field will be set to `com.corp.my.timer.source` to ensure only matching CloudEvent types are being forwarded.
96+
97+
## Conclusion
98+
99+
With Apache Camel K the Knative Eventing ecosystem benefits from a huge number of predefined Kamelets for integration with a lot of services and products. Sending events from Google Cloud to AWS is possible. Knative Eventing acts as the heart of the routing, with the Knative Broker and Trigger APIs as the Event Mesh for your Kubernetes cluster!

blog/docs/index.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,21 @@ Follow this blog to keep up-to-date with Knative.
2222

2323
## Featured Posts
2424

25+
### Knative 1.14 is out!
26+
Details on the 1.14 release of the Knative project.
27+
28+
[Read more :octicons-arrow-right-24:](releases/announcing-knative-v1-14-release.md){ .md-button }
29+
30+
### Knative meets Apache Camel K!
31+
Event Sourcing with Apache Camel K and Knative Eventing.
32+
33+
[Read more :octicons-arrow-right-24:](articles/knative-meets-apache-camel.md){ .md-button }
34+
2535
### Knative Completes Third-Party Security Audit
2636
A third-party audit by Ada Logics found a small number of issues, including [one CVE](https://github.com/knative/serving/security/advisories/GHSA-qmvj-4qr9-v547).
2737

2838
[Read more :octicons-arrow-right-24:](events/security-audit-2023.md){ .md-button }
2939

30-
### Knative 1.13 is out!
31-
Details on the 1.13 release of the Knative project.
32-
33-
[Read more :octicons-arrow-right-24:](releases/announcing-knative-v1-13-release.md){ .md-button }
34-
3540
### Knative at KubeCon + CloudNativeCon Europe 2023
3641

3742
We are looking forward to seeing you all there.
Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
---
2+
title: "v1.14 release"
3+
linkTitle: "v1.14 release"
4+
author: "[Izabela Gomes (Broadcom)](https://github.com/izabelacg), [David Simansky (Red Hat)](https://github.com/dsimansk), [Calum Murray (Red Hat)](https://github.com/Cali0707), [Christoph Stäbler (Red Hat)](https://github.com/creydr)"
5+
author handle: https://github.com/izabelacg https://github.com/dsimansk https://github.com/Cali0707 https://github.com/creydr
6+
7+
date: 2024-5-3
8+
description: "Knative v1.14 release announcement"
9+
type: "blog"
10+
---
11+
12+
# Announcing Knative 1.14 Release
13+
14+
A new version of Knative is now available across multiple components. Follow the instructions in [Installing Knative](https://knative.dev/docs/install/) to install the components you require.
15+
16+
This release brings a number of smaller improvements to the core Knative Serving and Eventing components, and several improvements to specific plugins.
17+
18+
## Table of Contents
19+
- [Serving](#serving)
20+
- [Eventing](#eventing)
21+
- [kn CLI](#kn-cli)
22+
- [Functions](#functions)
23+
- [Knative Operator](#knative-operator)
24+
25+
### Serving
26+
**Release Notes:** [Knative Serving 1.14](https://github.com/knative/serving/releases/tag/knative-v1.14.0)
27+
28+
#### 💫 New Features & Changes
29+
- A new feature (`multi-container-probing`) is introduced to enable liveness and readiness probes for Knative Services with multiple containers ([#14853](https://github.com/knative/serving/pull/14853), @ReToCode)
30+
- Add support for multiple wildcard certificate domains in domain config ([#14543](https://github.com/knative/serving/pull/14543), @arsenetar)
31+
- Certificate generation errors are bubbled up to its parent Route. ([#14962](https://github.com/knative/serving/pull/14543), @ckcd)
32+
- Check all container's status when calculating revision ContainerHealthy condition ([#14744](https://github.com/knative/serving/pull/14744), @seongpyoHong)
33+
- Serving now supports the experimental feature `cluster-local-domain-tls` and creates the necessary `KnativeCertificates` ([#14610](https://github.com/knative/serving/pull/14610), @ReToCode)
34+
- The autoscaler now keeps the desiredScale of a PodAutoscaler at its current value while it initializes and therefore has not yet metrics ([#14866](https://github.com/knative/serving/pull/14866), @SaschaSchwarze0)
35+
- Don't drop traffic when upgrading a deployment fails ([#14795](https://github.com/knative/serving/pull/14795), @dprotaso)
36+
- Add upstream TLS trust from CM bundles ([#14717](https://github.com/knative/serving/pull/14717), @ReToCode)
37+
- Make route domain error specific ([#15082](https://github.com/knative/serving/pull/15082), @skonto)
38+
39+
### Eventing
40+
**Release Notes:** [Knative Eventing 1.14](https://github.com/knative/eventing/releases/tag/knative-v1.14.0)
41+
42+
#### 💫 New Features & Changes
43+
- EventType Autocreate is now a non blocking operation ([#7709](https://github.com/knative/eventing/pull/7709), @Cali0707)
44+
- EventTypes are now autocreated on Triggers and Subscriptions when there is a reply event sent to them ([#7733](https://github.com/knative/eventing/pull/7733), @Cali0707)
45+
- Added the ability to configure a `nodeSelector` when deploying an ApiServerSource ([#7584](https://github.com/knative/eventing/pull/7584), @sadath-12)
46+
- Replace YAML merge tags, to comply with YAML 1.2 ([#7662](https://github.com/knative/eventing/pull/7662), @converge)
47+
- StatefulSet scheduling now makes fewer API server requests, reducing APIServer load. ([#7651](https://github.com/knative/eventing/pull/7651), @Cali0707)
48+
49+
#### 🐞 Bug Fixes
50+
- Reduce the scope for the Config validation webhook to only the `knative-eventing` namespace. ([#7792](https://github.com/knative/eventing/pull/7792), @pierDipi)
51+
52+
### Client
53+
**Release Notes:** [Knative Client 1.14](https://github.com/knative/client/releases/tag/knative-v1.14.0)
54+
55+
#### 💫 New Features & Changes
56+
- Add completion support for fish and PowerShell shells ([#1929](https://github.com/knative/client/pull/1929), @tuhtah)
57+
58+
#### 🐞 Bug Fixes
59+
60+
- Fix client-pkg import paths ([#1931](https://github.com/knative/client/pull/1931), @dsimansk)
61+
- Fix wait-loop in domain E2E test ([#1919](https://github.com/knative/client/pull/1919), @dsimansk)
62+
63+
### Functions
64+
**Release Notes:** [Knative func 1.14](https://github.com/knative/func/releases/tag/knative-v1.14.0)
65+
66+
#### 💫 New Features & Changes
67+
68+
- Functions built with the experimental "Host" builder include FUNC_CREATED and FUNC_VERSION metadata environment variables. ([#2195](https://github.com/knative/func/pull/2195), @lkingland)
69+
70+
#### 🐞 Bug Fixes
71+
72+
- Func invoke now correctly handles data with contenttype application/json ([#2256](https://github.com/knative/func/pull/2256), @Cali0707)
73+
- Fix: "no main packages to build" on darwin/aarch64 ([#2148](https://github.com/knative/func/pull/2148), @matejvasek)
74+
- Func deploy --username=func --*** get password registry.example.com) ([#2242](https://github.com/knative/func/pull/2242), @lkingland)
75+
- The prototype host builder now supports nonregular files such as symlinks ([#2156](https://github.com/knative/func/pull/2195), @lkingland)
76+
- Fix typo in run cmd ([#2168](https://github.com/knative/func/pull/2168), @Sanket-0510)
77+
- Update docs ([#2169](https://github.com/knative/func/pull/2169), @matzew)
78+
- Bump go-func to v0.20.0 ([#2170](https://github.com/knative/func/pull/2170), @matzew)
79+
- Remove discontinued tanzu builder image ([#2178](https://github.com/knative/func/pull/2178), @matzew)
80+
- Using upstream lifecycle image that has multi-arch support ([#2196](https://github.com/knative/func/pull/2196), @matzew)
81+
- Fix make was not called ([#2245](https://github.com/knative/func/pull/2245), @matzew)
82+
- Usage of only proper handler API, no longer need for redundant Context ([#2249](https://github.com/knative/func/pull/2249), @matzew)
83+
84+
85+
### Operator
86+
**Release Notes:** [Knative Operator 1.14](https://github.com/knative/operator/releases/tag/knative-v1.14.0)
87+
88+
Only dependency update
89+
90+
## Thank you, contributors
91+
**Release Leads:**
92+
93+
- [@izabelacg](https://github.com/izabelacg)
94+
95+
- [@dsimansk](https://github.com/dsimansk)
96+
97+
- [@Cali0707](https://github.com/Cali0707)
98+
99+
- [@creydr](https://github.com/creydr)
100+
101+
## Learn more
102+
- [Knative docs](https://knative.dev/docs/)
103+
- [Quickstart tutorial](https://knative.dev/docs/getting-started/)
104+
- [Samples](https://knative.dev/docs/samples/)
105+
- [Knative Working Groups](https://knative.dev/community/contributing/working-groups/)
106+
- [Knative User Mailing List](https://groups.google.com/g/knative-users)
107+
- [Knative Development Mailing List](https://groups.google.com/g/knative-dev)
108+
- [Knative on Twitter @KnativeProject](https://twitter.com/KnativeProject)
109+
- [Knative on StackOverflow](https://stackoverflow.com/questions/tagged/knative)
110+
- [#knative on CNCF Slack](https://slack.knative.dev/)
111+
- [Knative on YouTube](https://www.youtube.com/c/KnativeProject)

code-samples/eventing/bookstore-sample-app/ML-inappropriate-language-filter/func.py

Lines changed: 0 additions & 37 deletions
This file was deleted.

code-samples/eventing/bookstore-sample-app/ML-inappropriate-language-filter/func.yaml

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)