mgoltzsche / pipewire-container

experimental pipewire container

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

app blueprint

kubemate application blueprint.

Usage

Create a new application by fetching, configuring and rendering this kpt package.

Fetch the package

To create a new application myapp using this package as a blueprint, run:

kpt pkg get https://github.com/mgoltzsche/kubemate-app-blueprints.git/packages/app[@VERSION] myapp

or with docker:

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.

Customize the package

Within the fetched package's directory, edit 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.

TL;DR: Variant Constructor Pattern

Development

To list the supported targets, run make help.

Prerequisites

Build the application

To build the application container image using skaffold, run:

make image

Deploy the application

To deploy the application using skaffold, run:

make deploy

To deploy the application in debug mode (debug ports forwarded), stream its logs and redeploy on source code changes automatically, run:

make debug

To undeploy the application, run:

make undeploy

Apply blueprint updates

To apply blueprint updates to the application codebase, update the kpt 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 and kpt fn render (applies the configuration within 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

Release

The release process is driven by Conventional Commits, letting the CI pipeline generate a version and publish a release depending on the commit messages on the main branch.

About

experimental pipewire container


Languages

Language:Makefile 61.4%Language:Dockerfile 32.4%Language:Shell 6.2%