https://github.com/mgoltzsche/pipewire-container
experimental pipewire container
https://github.com/mgoltzsche/pipewire-container
Last synced: 7 months ago
JSON representation
experimental pipewire container
- Host: GitHub
- URL: https://github.com/mgoltzsche/pipewire-container
- Owner: mgoltzsche
- Created: 2022-03-20T01:26:15.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2023-12-20T22:16:39.000Z (over 2 years ago)
- Last Synced: 2025-05-20T00:11:42.670Z (about 1 year ago)
- Language: Makefile
- Size: 28.3 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# app blueprint
kubemate application blueprint.
## Usage
Create a new application by fetching, configuring and rendering this [kpt](https://kpt.dev/) package.
### Fetch the package
To create a new application `myapp` using this package as a blueprint, run:
```sh
kpt pkg get https://github.com/mgoltzsche/kubemate-app-blueprints.git/packages/app[@VERSION] myapp
```
or with `docker`:
```sh
docker run --rm -u `id -u` -e HOME=/tmp -v `pwd`:/data -w /data gcr.io/kpt-dev/kpt:v1.0.0-beta.25 pkg get https://github.com/mgoltzsche/kubemate-app-blueprints.git/packages/app myapp
```
See [`kpt pkg get` documentation](https://kpt.dev/reference/cli/pkg/get/).
### Customize the package
Within the fetched package's directory, edit [`setters.yaml`](./setters.yaml) to meet your requirements.
To replace the corresponding values within the manifests and skaffold.yaml, call `make render` or rather [`kpt fn render`](https://kpt.dev/reference/cli/fn/render/).
TL;DR: [Variant Constructor Pattern](https://kpt.dev/guides/variant-constructor-pattern)
## Development
To list the supported targets, run `make help`.
### Prerequisites
* git
* make
* [docker 20+](https://docs.docker.com/engine/install/)
* [kubectl](https://kubernetes.io/docs/tasks/tools/#kubectl)
### Build the application
To build the application container image using [skaffold](https://skaffold.dev), run:
```sh
make image
```
### Deploy the application
To deploy the application using [skaffold](https://skaffold.dev), run:
```sh
make deploy
```
To deploy the application in debug mode (debug ports forwarded), stream its logs and redeploy on source code changes automatically, run:
```sh
make debug
```
To undeploy the application, run:
```sh
make undeploy
```
### Apply blueprint updates
To apply blueprint updates to the application codebase, update the [kpt](https://kpt.dev/) package:
1. Before updating the package, make sure you don't have uncommitted changes in order to be able to distinguish package update changes from others.
2. Call `make blueprint-update` or rather [`kpt pkg update`](https://kpt.dev/reference/cli/pkg/update/) and [`kpt fn render`](https://kpt.dev/reference/cli/fn/render/) (applies the configuration within [`setters.yaml`](./setters.yaml) to the manifests and `skaffold.yaml`).
3. Before committing the changes, review them carefully and make manual changes if necessary.
TL;DR: [Variant Constructor Pattern](https://kpt.dev/guides/variant-constructor-pattern)
## Release
The release process is driven by [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0-beta.4/), letting the CI pipeline generate a version and publish a release depending on the [commit messages](https://semantic-release.gitbook.io/semantic-release/#commit-message-format) on the `main` branch.