This repository is a collection of examples exercising the capabilities of Pepr.
Here, you'll find practical implementations of Pepr Modules to cover various scenarios. Whether you're new to Pepr or an experienced user, these examples will help you understand how to build and deploy applications effectively.
Most examples are designed around a test suite that demonstrates / verifies how they work.
To run all example suites:
npm run test:e2eTo run a single example suite, specify which to run using -w flag:
# npm run test:e2e -w <npm module name>
npm run test:e2e -w hello-pepr-validateTo run a subset of tests, give Vitest the specifics via the --passthru flag:
# npm run test:e2e -w <npm module name> -- --passthru="<flags>"
npm run test:e2e -w hello-pepr-validate -- --passthru="--testNamePattern='validate creates'"# KUBECONFIG=$(k3d kubeconfig write pexex-<npm module name>-e2e) k9s
KUBECONFIG=$(k3d kubeconfig write pexex-hello-pepr-watch-e2e) k9sNote: the tests will automatically clean these clusters up when they complete, so be sure to Ctrl+C-out of a running suite if you wanna poke around!
To run all example suites against a custom version of the Pepr controller, specify an image tag using the --image flag:
npm run test:e2e -- --image pepr:devYou can use the symbolic linking to swap-in a development version of the pepr package when building the excellent examples -- a particularly useful ability when co-developing new Pepr features + associated examples.
cd <pepr>
npm run build
cd <pepr-excellent-examples>
npm install
rm -rf node_modules/pepr
ln -s <pepr> node_modules/peprcd <pepr-excellent-examples>
rm -rf node_modules
npm install