Skip to content

Commit

Permalink
Add chart-releaser and update paths
Browse files Browse the repository at this point in the history
  • Loading branch information
caleb-devops committed Jan 31, 2024
1 parent f994bb2 commit e1ebde5
Show file tree
Hide file tree
Showing 11 changed files with 121 additions and 63 deletions.
27 changes: 27 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Release Charts

on:
push:
branches:
- main

jobs:
release:
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Configure Git
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "[email protected]"
- name: Run chart-releaser
uses: helm/[email protected]
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
69 changes: 6 additions & 63 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,72 +2,15 @@

This chart installs [docker-palworld-dedicated-server](https://github.com/jammsen/docker-palworld-dedicated-server) on a [Kubernetes](http://kubernetes.io/) cluster using the [Helm](https://helm.sh/) package manager.

## Install Chart
## Usage

```sh
helm install [-n NAMESPACE] RELEASE_NAME .
```

## Uninstall Chart

```sh
helm uninstall [-n NAMESPACE] RELEASE_NAME
```
[Helm](https://helm.sh) must be installed to use the charts. Please refer to
Helm's [documentation](https://helm.sh/docs) to get started.

## Upgrading Chart
Once Helm has been set up correctly, add the repo as follows:

```sh
helm upgrade [-n NAMESPACE] RELEASE_NAME .
helm repo add caleb-devops https://caleb-devops.github.io/helm-charts
```

## Configuration

See [Customizing the Chart Before Installing](https://helm.sh/docs/intro/using_helm/#customizing-the-chart-before-installing). To see all configurable options with detailed comments, visit the chart's [values.yaml](./values.yaml).

### Networking

This Chart uses a [LoadBalancer Service](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer) to expose the application outside Kubernetes:

```yaml
service:
type: LoadBalancer
## Example annotations for kube-vip or MetalLB to assign an IP to the LoadBalancer
annotations: {}
# kube-vip.io/loadbalancerIPs: 192.168.1.100
# metallb.universe.tf/loadBalancerIPs: 192.168.1.100
port: 8211
```
Note: Port-Forwarding may be required if the LoadBalancer does not use a Public IP.
### Persistent Volume
Data persistance is enabled by default using dynamic volume provisioning.
**Set the configured storageClass [reclaim policy](https://kubernetes.io/docs/concepts/storage/storage-classes/#reclaim-policy) to `Retain` to prevent automatic deletion of the PV if the Chart is uninstalled.**

### Palworld Config

To configure the server, add the [environment variables](https://github.com/jammsen/docker-palworld-dedicated-server/blob/master/README_ENV.md#environment-variables) to `config`:

```yaml
config:
env:
TZ: UTC # Change this for logging and backup
ALWAYS_UPDATE_ON_START: true
MAX_PLAYERS: 16
MULTITHREAD_ENABLED: true
COMMUNITY_SERVER: false
SERVER_NAME: "serverNameHere"
SERVER_DESCRIPTION: ""
BACKUP_ENABLED: true
BACKUP_CRON_EXPRESSION: 0 * * * *
PUBLIC_IP: ""
PUBLIC_PORT: 8211
secretEnv:
create: true
env:
SERVER_PASSWORD: "serverPasswordHere"
ADMIN_PASSWORD: "adminPasswordHere"
```
Chart documentation is available in the [palworld directory](./charts/palworld/).
File renamed without changes.
88 changes: 88 additions & 0 deletions charts/palworld/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
# Palworld Helm Chart

This chart installs [docker-palworld-dedicated-server](https://github.com/jammsen/docker-palworld-dedicated-server) on a [Kubernetes](http://kubernetes.io/) cluster using the [Helm](https://helm.sh/) package manager.

## Usage

[Helm](https://helm.sh) must be installed to use the charts. Please refer to
Helm's [documentation](https://helm.sh/docs) to get started.

Once Helm has been set up correctly, add the repo as follows:

```sh
helm repo add caleb-devops https://caleb-devops.github.io/helm-charts
```

If you had already added this repo earlier, run `helm repo update` to retrieve
the latest versions of the packages. You can then run `helm search repo
caleb-devops` to see the charts.

To install the palworld chart:

```sh
helm install palworld caleb-devops/palworld
```

To upgrade the palworld chart:

```sh
helm upgrade palworld caleb-devops/palworld
```

To uninstall the chart:

```sh
helm uninstall palworld
```

## Configuration

See [Customizing the Chart Before Installing](https://helm.sh/docs/intro/using_helm/#customizing-the-chart-before-installing). To see all configurable options with detailed comments, visit the chart's [values.yaml](./values.yaml).

### Networking

This Chart uses a [LoadBalancer Service](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer) to expose the application outside Kubernetes:

```yaml
service:
type: LoadBalancer
## Example annotations for kube-vip or MetalLB to assign an IP to the LoadBalancer
annotations: {}
# kube-vip.io/loadbalancerIPs: 192.168.1.100
# metallb.universe.tf/loadBalancerIPs: 192.168.1.100
port: 8211
```
Note: Port-Forwarding may be required if the LoadBalancer does not use a Public IP.
### Persistent Volume
Data persistance is enabled by default using dynamic volume provisioning.
**Set the configured storageClass [reclaim policy](https://kubernetes.io/docs/concepts/storage/storage-classes/#reclaim-policy) to `Retain` to prevent automatic deletion of the PV if the Chart is uninstalled.**

### Palworld Config

To configure the server, add the [environment variables](https://github.com/jammsen/docker-palworld-dedicated-server/blob/master/README_ENV.md#environment-variables) to `config`:

```yaml
config:
env:
TZ: UTC # Change this for logging and backup
ALWAYS_UPDATE_ON_START: true
MAX_PLAYERS: 16
MULTITHREAD_ENABLED: true
COMMUNITY_SERVER: false
SERVER_NAME: "serverNameHere"
SERVER_DESCRIPTION: ""
BACKUP_ENABLED: true
BACKUP_CRON_EXPRESSION: 0 * * * *
PUBLIC_IP: ""
PUBLIC_PORT: 8211
secretEnv:
create: true
env:
SERVER_PASSWORD: "serverPasswordHere"
ADMIN_PASSWORD: "adminPasswordHere"
```
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit e1ebde5

Please sign in to comment.