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

Generic helm chart #230

Merged
merged 31 commits into from
May 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
13f6bb4
WIP helm
attilakreiner May 5, 2023
fdd2c9e
WIP more helm stuff
attilakreiner May 8, 2023
06d7476
helper
attilakreiner May 8, 2023
d343276
tls.echo
attilakreiner May 8, 2023
a52d59a
ws.echo
attilakreiner May 8, 2023
d8561e9
mqtt.reflect
attilakreiner May 8, 2023
050cbb2
grpc.echo
attilakreiner May 8, 2023
a630891
keystore
attilakreiner May 8, 2023
829cdd7
fix ns
attilakreiner May 8, 2023
8b12b6e
mv
attilakreiner May 9, 2023
e494e3f
configPath
attilakreiner May 9, 2023
4d2831e
make configmaps and secrets generic
attilakreiner May 10, 2023
7399c1d
make notes msg generic
attilakreiner May 10, 2023
d3fd382
pom
attilakreiner May 10, 2023
9281539
fix
attilakreiner May 12, 2023
a061b6f
rm examples
attilakreiner May 12, 2023
2699e1a
env
attilakreiner May 12, 2023
6170f68
args
attilakreiner May 12, 2023
7b6ba37
readme
attilakreiner May 12, 2023
c6d2b76
hpa
attilakreiner May 12, 2023
2dfdc04
fix
attilakreiner May 12, 2023
fdc2572
Update README.md
attilakreiner May 13, 2023
914753a
license
attilakreiner May 13, 2023
e79fb9b
version
attilakreiner May 13, 2023
8958834
pvc etc
attilakreiner May 13, 2023
877f833
Merge branch 'develop' into helm
attilakreiner May 13, 2023
8e07d1f
values.yaml
attilakreiner May 13, 2023
0dd7184
Add mvn wrapper to helm-chart project
jfallows May 13, 2023
75b1be3
Use helm push via OCI to GCR
jfallows May 13, 2023
ab86823
Build helm chart on release only as develop-SNAPSHOT is an invalid se…
jfallows May 14, 2023
3a15671
Change repo url to ghcr.io/aklivity/charts
attilakreiner May 14, 2023
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
24 changes: 24 additions & 0 deletions cloud/helm-chart/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# 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/
target
12 changes: 12 additions & 0 deletions cloud/helm-chart/COPYRIGHT
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Copyright ${copyrightYears} Aklivity Inc

Licensed under the Aklivity Community License (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at

https://www.aklivity.io/aklivity-community-license/

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the License.
6 changes: 6 additions & 0 deletions cloud/helm-chart/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
apiVersion: v2
appVersion: 0.0.0 # helm-maven-plugin -> configuration -> appVersion
description: Zilla The Event-Driven API Gateway
name: zilla
type: application
version: 0.0.0 # helm-maven-plugin -> configuration -> chartVersion
114 changes: 114 additions & 0 deletions cloud/helm-chart/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
Aklivity Community License Agreement
Version 1.0

This Aklivity Community License Agreement Version 1.0 (the “Agreement”) sets
forth the terms on which Aklivity, Inc. (“Aklivity”) makes available certain
software made available by Aklivity under this Agreement (the “Software”). BY
INSTALLING, DOWNLOADING, ACCESSING, USING OR DISTRIBUTING ANY OF THE SOFTWARE,
YOU AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO
SUCH TERMS AND CONDITIONS, YOU MUST NOT USE THE SOFTWARE. IF YOU ARE RECEIVING
THE SOFTWARE ON BEHALF OF A LEGAL ENTITY, YOU REPRESENT AND WARRANT THAT YOU
HAVE THE ACTUAL AUTHORITY TO AGREE TO THE TERMS AND CONDITIONS OF THIS
AGREEMENT ON BEHALF OF SUCH ENTITY. “Licensee” means you, an individual, or
the entity on whose behalf you are receiving the Software.

1. LICENSE GRANT AND CONDITIONS.

1.1 License. Subject to the terms and conditions of this Agreement,
Aklivity hereby grants to Licensee a non-exclusive, royalty-free,
worldwide, non-transferable, non-sublicenseable license during the term
of this Agreement to: (a) use the Software; (b) prepare modifications and
derivative works of the Software; (c) distribute the Software (including
without limitation in source code or object code form); and (d) reproduce
copies of the Software (the “License”). Licensee is not granted the
right to, and Licensee shall not, exercise the License for an Excluded
Purpose. For purposes of this Agreement, “Excluded Purpose” means making
available any software-as-a-service, platform-as-a-service,
infrastructure-as-a-service or other similar online service that competes
with Aklivity products or services that provide the Software.

1.2 Conditions. In consideration of the License, Licensee’s distribution
of the Software is subject to the following conditions:

(a) Licensee must cause any Software modified by Licensee to carry
prominent notices stating that Licensee modified the Software.

(b) On each Software copy, Licensee shall reproduce and not remove or
alter all Aklivity or third party copyright or other proprietary
notices contained in the Software, and Licensee must provide the
notice below with each copy.

“This software is made available by Aklivity, Inc., under the
terms of the Aklivity Community License Agreement, Version 1.0
located at http://www.Aklivity.io/Aklivity-community-license. BY
INSTALLING, DOWNLOADING, ACCESSING, USING OR DISTRIBUTING ANY OF
THE SOFTWARE, YOU AGREE TO THE TERMS OF SUCH LICENSE AGREEMENT.”

1.3 Licensee Modifications. Licensee may add its own copyright notices
to modifications made by Licensee and may provide additional or different
license terms and conditions for use, reproduction, or distribution of
Licensee’s modifications. While redistributing the Software or
modifications thereof, Licensee may choose to offer, for a fee or free of
charge, support, warranty, indemnity, or other obligations. Licensee, and
not Aklivity, will be responsible for any such obligations.

1.4 No Sublicensing. The License does not include the right to
sublicense the Software, however, each recipient to which Licensee
provides the Software may exercise the Licenses so long as such recipient
agrees to the terms and conditions of this Agreement.

2. TERM AND TERMINATION. This Agreement will continue unless and until
earlier terminated as set forth herein. If Licensee breaches any of its
conditions or obligations under this Agreement, this Agreement will
terminate automatically and the License will terminate automatically and
permanently.

3. INTELLECTUAL PROPERTY. As between the parties, Aklivity will retain all
right, title, and interest in the Software, and all intellectual property
rights therein. Aklivity hereby reserves all rights not expressly granted
to Licensee in this Agreement. Aklivity hereby reserves all rights in its
trademarks and service marks, and no licenses therein are granted in this
Agreement.

4. DISCLAIMER. Aklivity HEREBY DISCLAIMS ANY AND ALL WARRANTIES AND
CONDITIONS, EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, AND SPECIFICALLY
DISCLAIMS ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
PURPOSE, WITH RESPECT TO THE SOFTWARE.

5. LIMITATION OF LIABILITY. Aklivity WILL NOT BE LIABLE FOR ANY DAMAGES OF
ANY KIND, INCLUDING BUT NOT LIMITED TO, LOST PROFITS OR ANY CONSEQUENTIAL,
SPECIAL, INCIDENTAL, INDIRECT, OR DIRECT DAMAGES, HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, ARISING OUT OF THIS AGREEMENT. THE FOREGOING SHALL
APPLY TO THE EXTENT PERMITTED BY APPLICABLE LAW.

6.GENERAL.

6.1 Governing Law. This Agreement will be governed by and interpreted in
accordance with the laws of the state of California, without reference to
its conflict of laws principles. If Licensee is located within the
United States, all disputes arising out of this Agreement are subject to
the exclusive jurisdiction of courts located in Santa Clara County,
California. USA. If Licensee is located outside of the United States,
any dispute, controversy or claim arising out of or relating to this
Agreement will be referred to and finally determined by arbitration in
accordance with the JAMS International Arbitration Rules. The tribunal
will consist of one arbitrator. The place of arbitration will be Palo
Alto, California. The language to be used in the arbitral proceedings
will be English. Judgment upon the award rendered by the arbitrator may
be entered in any court having jurisdiction thereof.

6.2 Assignment. Licensee is not authorized to assign its rights under
this Agreement to any third party. Aklivity may freely assign its rights
under this Agreement to any third party.

6.3 Other. This Agreement is the entire agreement between the parties
regarding the subject matter hereof. No amendment or modification of
this Agreement will be valid or binding upon the parties unless made in
writing and signed by the duly authorized representatives of both
parties. In the event that any provision, including without limitation
any condition, of this Agreement is held to be unenforceable, this
Agreement and all licenses and rights granted hereunder will immediately
terminate. Waiver by Aklivity of a breach of any provision of this
Agreement or the failure by Aklivity to exercise any right hereunder
will not be construed as a waiver of any subsequent breach of that right
or as a waiver of any other right.
13 changes: 13 additions & 0 deletions cloud/helm-chart/NOTICE
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
Licensed under the Aklivity Community License (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at

https://www.aklivity.io/aklivity-community-license/

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the License.

This project includes:

13 changes: 13 additions & 0 deletions cloud/helm-chart/NOTICE.template
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
Licensed under the Aklivity Community License (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at

https://www.aklivity.io/aklivity-community-license/

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the License.

This project includes:
#GENERATED_NOTICES#
53 changes: 53 additions & 0 deletions cloud/helm-chart/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Zilla packaged by Aklivity

Zilla is a next-generation API gateway built for event-driven architectures and streaming. It is the most seamless
and reliable way of interfacing edge clients (mobile apps, browsers, partner systems, etc.) to Apache Kafka-based
microservices and data.

[Zilla by Aklivity](https://www.aklivity.io/)

## TL;DR

```shell
helm install zilla . --namespace zilla --create-namespace --wait \
--values values.yaml \
--set-file zilla\\.yaml=zilla.yaml \
--set-file configMaps.proto.data.echo\\.proto=proto/echo.proto \
--set-file secrets.tls.data.localhost\\.p12=tls/localhost.p12
```

## Introduction

This chart bootstraps a [Zilla](https://github.com/aklivity/zilla) deployment on a [Kubernetes](https://kubernetes.io)
cluster using the [Helm](https://helm.sh) package manager.

## Requirements

Kubernetes: `>=1.13.x`
Helm: `>=3.0.x`

## Install Chart

```console
helm install [RELEASE_NAME] aklivity/zilla
```

The command deploys aklivity/zilla on the Kubernetes cluster in the default configuration.

## Uninstall Chart

```console
helm uninstall [RELEASE_NAME]
```

This removes all the Kubernetes components associated with the chart and deletes the release.

## Configuration

Zilla specific configuration is in the `zilla.yaml` file which can be included in the helm install by adding
`--set-file zilla\\.yaml=zilla.yaml` to your command.

Additional files can be deployed to configmaps and secrets by adding e.g. `--set-file configMaps.proto.data.echo\\.proto=proto/echo.proto`
and `--set-file secrets.tls.data.localhost\\.p12=tls/localhost.p12` to your command.

See the [aklivity/zilla-examples](https://github.com/aklivity/zilla-examples) repository for examples.
Loading