Skip to content

Commit 0dcdc02

Browse files
authored
🎉 Release controller 0.13.0 and helm chart 0.16.0-rc.1 🎉 (#485)
1 parent 63bb8c9 commit 0dcdc02

File tree

12 files changed

+173
-34
lines changed

12 files changed

+173
-34
lines changed

CHANGELOG.md

Lines changed: 88 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,93 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## 0.13.0
9+
**Full Changelog**: https://github.com/ngrok/ngrok-operator/compare/kubernetes-ingress-controller-0.12.2...kubernetes-ingress-controller-0.13.0
10+
11+
12+
### :warning: :warning: :warning: Notice :warning: :warning: :warning:
13+
14+
This version of the controller is not backwards compatible with previous versions and is only compatible with
15+
version 0.16.0 of the `ngrok/ngrok-operator` helm chart and later. Using this version or later of the controller with the `ngrok/kubernetes-ingress-controller` helm chart will result in the controller not functioning correctly.
16+
17+
Even though we are in major version 0, and semver v2.0.0 allows that anything may change until a 1.0.0 release, we try not to break backwards compatibility. However, this change is necessary to support new features and improvements in the operator.
18+
19+
### Added
20+
21+
#### Kubernetes Operator
22+
23+
The operator installation will now be registered with the ngrok API. This will allow you to view the status of the operator in the ngrok dashboard, see what version of the operator is running, and power new features
24+
in the future. This is powered by a new `KubernetesOperator` CRD that is created by the operator in its
25+
own namespace when it starts up.
26+
27+
- Register operator by @jonstacks in [#457](https://github.com/ngrok/ngrok-operator/pull/457)
28+
- Add status to KubernetesOperator by @hjkatz in [#467](https://github.com/ngrok/ngrok-operator/pull/467)
29+
- fix: Add nil checks to prevent potential panics by @jonstacks in [#483](https://github.com/ngrok/ngrok-operator/pull/483)
30+
31+
#### Endpoint Bindings (private beta)
32+
33+
Endpoint bindings is a new feature that allows you to securely access a ngrok endpoint no matter where it is running. Specifically, Kubernetes bound endpoints allow you to project services running outside of your Kubernetes cluster or in other clusters into your cluster as native Kubernetes services.
34+
35+
- Add feature flag support for bindings by @hjkatz in [#424](https://github.com/ngrok/ngrok-operator/pull/424)
36+
- feat: Initial bindings driver by @stacks in [#450](https://github.com/ngrok/ngrok-operator/pull/450)
37+
- Modify EndpointBinding CRD to reflect cardinality of bound Endpoints by @hjkatz in [#452](https://github.com/ngrok/ngrok-operator/pull/452)
38+
- Implement AggregateBindingEndpoints for interacting with the ngrok api by @hjkatz in [#453](https://github.com/ngrok/ngrok-operator/pull/453)
39+
- Implement BindingEndpoint polling by @hjkatz in [#458](https://github.com/ngrok/ngrok-operator/pull/458)
40+
- Implement EndpointBinding -> Services creation by @hjkatz in [#459](https://github.com/ngrok/ngrok-operator/pull/459)
41+
- Implement port allocation by @hjkatz in [#460](https://github.com/ngrok/ngrok-operator/pull/460)
42+
- Bindings forwarder by @jonstacks in [#465](https://github.com/ngrok/ngrok-operator/pull/465)
43+
- Add endpoint status to EndpointBinding kubectl output by @hjkatz in [#464](https://github.com/ngrok/ngrok-operator/pull/464)
44+
- chore: Update ngrok-api-go to pull in new changes by @jonstacks in [#468](https://github.com/ngrok/ngrok-operator/pull/468)
45+
- Ensure endpoint poller does not start until k8sop is regestered with API by @hjkatz in [#470](https://github.com/ngrok/ngrok-operator/pull/470)
46+
- Rename EndpointBinding to BoundEndpoint by @hjkatz in [#475](https://github.com/ngrok/ngrok-operator/pull/475)
47+
- Implement Target Metadata by @hjkatz in [#477](https://github.com/ngrok/ngrok-operator/pull/477)
48+
- Bindings forwarder implementation by @jonstacks in [#476](https://github.com/ngrok/ngrok-operator/pull/476)
49+
- Ensure KubernetesOperator.Status.EnabledFeatures is set properly from the API by @hjkatz in [#480](https://github.com/ngrok/ngrok-operator/pull/480)
50+
- Add equality tests for Target.Metadata by @hjkatz in [#482](https://github.com/ngrok/ngrok-operator/pull/482)
51+
- feat: BoundEndpointPoller polls from the API by @jonstacks in [#481](https://github.com/ngrok/ngrok-operator/pull/481)
52+
53+
54+
#### Cloud Endpoints (private beta)
55+
56+
[Cloud Endpoints](https://ngrok.com/docs/network-edge/cloud-endpoints/) can now be created and managed by the operator via a new `CloudEndpoint` CRD.
57+
58+
- Allow configuring ngrok Cloud Endpoints using CRDs by @alex-bezek in [#471](https://github.com/ngrok/ngrok-operator/pull/471)
59+
60+
61+
### Changed
62+
63+
#### Ingress/Gateway
64+
65+
* Seed additional types when first starting by @alex-bezek in [#431](https://github.com/ngrok/ngrok-operator/pull/431).
66+
67+
#### Traffic Policy
68+
69+
Updates `TrafficPolicy` CRD and inline policy to support new phase-based names as well as the new `TrafficPolicy` API.
70+
71+
- update traffic policy for phase-based naming by @TheConcierge in [#456](https://github.com/ngrok/ngrok-operator/pull/456)
72+
73+
74+
#### Splitting controllers into multiple manager instances
75+
76+
The controllers have been split into multiple manager instances to improve performance and scalability. This now allows the ngrok agent manager which handles traffic to run independently of the API managers which reconcile CRDs with the ngrok API. This change also allows for more fine-grained control over the controllers and their resources.
77+
78+
- refactor: Split the agent and API controllers by @jonstacks in [#446](https://github.com/ngrok/ngrok-operator/pull/446)
79+
80+
### Fixes
81+
82+
#### Gateway API
83+
84+
- fix: Add `GatewayClass` controller by @jonstacks in [#484](https://github.com/ngrok/ngrok-operator/pull/484)
85+
86+
87+
### Documentation
88+
* Update README.md to use ngrok Kubernetes Operator instead of ingress controller. by @stmcallister in [#433](https://github.com/ngrok/ngrok-operator/pull/433)
89+
90+
### New Contributors
91+
- @TheConcierge made their first contribution in [#456](https://github.com/ngrok/ngrok-operator/pull/456)
92+
93+
94+
895
## 0.12.2
996
**Full Changelog**: https://github.com/ngrok/ngrok-operator/compare/kubernetes-ingress-controller-0.12.1...kubernetes-ingress-controller-0.12.2
1097

@@ -36,7 +123,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
36123

37124
- feat: Auto-provision domain for TLS Edges [#386](https://github.com/ngrok/ngrok-operator/pull/386)
38125
- feat: Support for Load Balancer services [#387](https://github.com/ngrok/ngrok-operator/pull/387)
39-
- feat: Support TLS termination in modulesets for Load Balancer Services [388](https://github.com/ngrok/ngrok-operator/pull/388)
126+
- feat: Support TLS termination in modulesets for Load Balancer Services [#388](https://github.com/ngrok/ngrok-operator/pull/388)
40127

41128
### Changed
42129

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.12.2
1+
0.13.0

helm/ngrok-operator/CHANGELOG.md

Lines changed: 60 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,78 @@
11
# Changelog
22

3-
All notable changes to this project will be documented in this file.
3+
All notable changes to the helm chart will be documented in this file. Please see the top-level [CHANGELOG.md](../../CHANGELOG.md) for changes to the controller itself.
44

55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8-
## 0.16.0
8+
## 0.16.0-rc.1
9+
910
**Full Changelog**: https://github.com/ngrok/ngrok-operator/compare/helm-chart-0.14.3...helm-chart-0.16.0
1011

12+
### :warning: :warning: :warning: Notice :warning: :warning: :warning:
13+
14+
This release is a release candidate for the upcoming 0.16.0 release. The helm chart has been renamed to `ngrok/ngrok-operator`. Please test this release in a non-production environment before upgrading your production environment. Documentation for migrating from `ngrok/kubernetes-ingress-controller` to `ngrok/ngrok-operator` can be found [here](/docs/deployment-guide/migrating.md).
15+
16+
### Added
17+
18+
#### Kubernetes Operator
19+
20+
The operator installation will now be registered with the ngrok API. This will allow you to view the status of the operator in the ngrok dashboard, see what version of the operator is running, and power new features
21+
in the future. This is powered by a new `KubernetesOperator` CRD that is created by the operator in its
22+
own namespace when it starts up.
23+
24+
- Register operator by @jonstacks in [#457](https://github.com/ngrok/ngrok-operator/pull/457)
25+
- Add status to KubernetesOperator by @hjkatz in [#467](https://github.com/ngrok/ngrok-operator/pull/467)
26+
27+
#### Endpoint Bindings (private beta)
28+
29+
Endpoint bindings is a new feature that allows you to securely access a ngrok endpoint no matter where it is running. Specifically, Kubernetes bound endpoints allow you to project services running outside of your Kubernetes cluster or in other clusters into your cluster as native Kubernetes services.
30+
31+
- Add feature flag support for bindings by @hjkatz in [#424](https://github.com/ngrok/ngrok-operator/pull/424)
32+
- Modify EndpointBinding CRD to reflect cardinality of bound Endpoints by @hjkatz in [#452](https://github.com/ngrok/ngrok-operator/pull/452)
33+
- Implement AggregateBindingEndpoints for interacting with the ngrok api by @hjkatz in [#453](https://github.com/ngrok/ngrok-operator/pull/453)
34+
- Implement BindingEndpoint polling by @hjkatz in [#458](https://github.com/ngrok/ngrok-operator/pull/458)
35+
- Implement EndpointBinding -> Services creation by @hjkatz in [#459](https://github.com/ngrok/ngrok-operator/pull/459)
36+
- Implement port allocation by @hjkatz in [#460](https://github.com/ngrok/ngrok-operator/pull/460)
37+
- Bindings forwarder by @jonstacks in [#465](https://github.com/ngrok/ngrok-operator/pull/465)
38+
- Add endpoint status to EndpointBinding kubectl output by @hjkatz in [#464](https://github.com/ngrok/ngrok-operator/pull/464)
39+
- Ensure endpoint poller does not start until k8sop is regestered with API by @hjkatz in [#470](https://github.com/ngrok/ngrok-operator/pull/470)
40+
- Rename EndpointBinding to BoundEndpoint by @hjkatz in [#475](https://github.com/ngrok/ngrok-operator/pull/475)
41+
- Implement Target Metadata by @hjkatz in [#477](https://github.com/ngrok/ngrok-operator/pull/477)
42+
- Bindings forwarder implementation by @jonstacks in [#476](https://github.com/ngrok/ngrok-operator/pull/476)
43+
44+
#### Helm values.yaml schema validation
45+
46+
The `ngrok-operator` helm chart now includes a `schema.json` file that can be used to validate the `values.yaml` file.
47+
48+
- Generate and commit schema.json file by @alex-bezek in [#472](https://github.com/ngrok/ngrok-operator/pull/472)
49+
1150
### Changed
1251

13-
- Deprecate `.Values.metaData` in favor of `.Values.ngrokMetadata` for clarity
14-
- Deprecate `.Values.ingressClass` in favor of `.Values.ingress.ingressClass` for feature set namespacing
15-
- Deprecate `.Values.useExperimentalGatewayApi` in favor of `.Values.gateway.enabled` for feature set namespacing
16-
- Deprecate `.Values.watchNamespace` in favor of `.Values.ingress.watchNamespace` for feature set namespacing
17-
- Deprecate `.Values.controllerName` in favor of `.Values.ingress.controllerName` for feature set namespacing
52+
#### Traffic Policy
53+
54+
Updates `TrafficPolicy` CRD and inline policy to support new phase-based names as well as the new `TrafficPolicy` API.
55+
56+
- update traffic policy for phase-based naming by @TheConcierge in [#456](https://github.com/ngrok/ngrok-operator/pull/456)
57+
58+
#### Values.yaml file deprecations
59+
60+
- Rename .Values.metaData -> .Values.ngrokMetadata by @hjkatz in [#434](https://github.com/ngrok/ngrok-operator/pull/434).
61+
- Deprecate `.Values.metaData` in favor of `.Values.ngrokMetadata` for clarity
62+
- Deprecate `.Values.ingressClass` in favor of `.Values.ingress.ingressClass` for feature set namespacing
63+
- Deprecate `.Values.useExperimentalGatewayApi` in favor of `.Values.gateway.enabled` for feature set namespacing
64+
- Deprecate `.Values.watchNamespace` in favor of `.Values.ingress.watchNamespace` for feature set namespacing
65+
- Deprecate `.Values.controllerName` in favor of `.Values.ingress.controllerName` for feature set namespacing
66+
67+
### New Contributors
68+
- @TheConcierge made their first contribution in [#456](https://github.com/ngrok/ngrok-operator/pull/456)
69+
1870

1971
## 0.15.0
2072

2173
### DEPRECATION ANNOUNCEMENT / ACTION REQUIRED
2274

23-
See Full Announcement: https://github.com/ngrok/ngrok-operator/discussions
75+
See Full Announcement: https://github.com/ngrok/kubernetes-ingress-controller/discussions/4
2476

2577
On Wednesday September 11th, 2024 this Helm Chart will be renamed to ngrok/ngrok-operator.
2678

helm/ngrok-operator/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
apiVersion: v2
22
name: ngrok-operator
33
description: The official ngrok Kubernetes Operator.
4-
version: 0.15.0
5-
appVersion: 0.12.2
4+
version: 0.16.0-rc.1
5+
appVersion: 0.13.0
66
keywords:
77
- ngrok
88
- networking

helm/ngrok-operator/tests/__snapshot__/controller-deployment_test.yaml.snap

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

helm/ngrok-operator/tests/__snapshot__/controller-pdb_test.yaml.snap

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

helm/ngrok-operator/tests/__snapshot__/controller-serviceaccount_test.yaml.snap

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

helm/ngrok-operator/tests/__snapshot__/ingress-class_test.yaml.snap

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

helm/ngrok-operator/tests/agent/__snapshot__/deployment_test.yaml.snap

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

helm/ngrok-operator/tests/agent/__snapshot__/service-account_test.yaml.snap

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)