Skip to content

yolo

This example demonstrates YOLO mode, an optional mode for using Zarf in a fully connected environment where users can bring their own external container registry and Git server.

  • A running K8s cluster. (The cluster does not need to have the Zarf init package installed or any other Zarf-related bootstrapping.)

Create the package:

Terminal window
zarf package create examples/yolo

Terminal window
# Run the following command to deploy the created package to the cluster
zarf package deploy
# Choose the yolo package from the list
? Choose or type the package file [tab for suggestions]
> zarf-package-yolo-<ARCH>.tar.zst
# Confirm the deployment
? Deploy this Zarf package? (y/N)
# Wait a few seconds for the cluster to deploy the package; you should
# see the following output when the package has been finished deploying:
Connect Command | Description
zarf connect doom | Play doom!!!
zarf connect games | Play some old dos games 🦄
# Run the specified `zarf connect <game>` command to connect to the deployed
# workload (ie. kill some demons). Note that the typical Zarf registry,
# Gitea server and Zarf agent pods are not present in the cluster. This means
# that the game's container image was pulled directly from the public registry and the URL was not mutated by Zarf.

kind: ZarfPackageConfig
metadata:
name: yolo
yolo: true
description: Game example in YOLO (online-only) mode that can be deployed
without a Zarf cluster
components:
- name: yolo-games
required: true
manifests:
- name: multi-games
namespace: zarf-yolo-example
files:
- ../dos-games/manifests/deployment.yaml
- ../dos-games/manifests/service.yaml
actions:
onDeploy:
after:
- wait:
cluster:
kind: deployment
name: game
namespace: zarf-yolo-example
condition: available