33 lines
1.1 KiB
Markdown
33 lines
1.1 KiB
Markdown
# helm-deploy
|
|
|
|
Deploy a service to Kubernetes via Helm over SSH.
|
|
|
|
## Inputs
|
|
|
|
| Input | Required | Default | Description |
|
|
|-------|----------|---------|-------------|
|
|
| `service-name` | Yes | | Helm release name |
|
|
| `helm-host` | Yes | | SSH target (e.g., `dsp1-stage.schmalzgroup.net`) |
|
|
| `image-tag` | Yes | | Docker image tag to deploy |
|
|
| `ssh-key` | Yes | | Private SSH key content |
|
|
| `overrides-file` | No | `kubernetes/overrides-su.yaml` | Local path to Helm values override file |
|
|
| `namespace` | No | `dsp` | Kubernetes namespace |
|
|
| `helm-repo` | No | `nexus-helm-repository` | Helm chart repository name |
|
|
| `helm-chart` | No | `DSP-Blueprint` | Chart name in the repo |
|
|
|
|
## Usage
|
|
|
|
```yaml
|
|
- uses: schmalz/shared-actions/.github/actions/helm-deploy@v1
|
|
with:
|
|
service-name: my-service
|
|
helm-host: dsp1-stage.schmalzgroup.net
|
|
image-tag: ${{ github.sha }}
|
|
ssh-key: ${{ secrets.SSH_KEY }}
|
|
```
|
|
|
|
## Notes
|
|
|
|
- The override file is `scp`-ed to the remote host, then `helm upgrade --install` is run via SSH.
|
|
- Uses `--atomic` flag, so a failed deploy is automatically rolled back.
|
|
- `StrictHostKeyChecking` is disabled.
|