-
Gain Access to GitHub Container Registry (
ghcr.io
)- Login to your GitHub Account.
- Create a (classic) personal access token user scoped with
read/write/delete:packages
as needed, and store in a secure location.- Note: use cases that don't publish packages should remove
write:packages
from the access token's scope below.
- Note: use cases that don't publish packages should remove
-
Gain Access to Iron Bank Harbor (
registry1.dso.mil
)- Create account at Platform One's DevSecOps Collaboration Workspace (https://login.dso.mil).
- Login to Harbor (https://registry1.dso.mil) (SSO Option) with same creds (accepting user agreements).
- In upper right corner, click --> User Profile, then click the Copy icon next to CLI secret, and store in a secure and accessible location.
-
Validate AuthN to Container Registries
- On your machine, run:
set +o history # don't let these secrets end up in plain text shell history export GITHUB_USER=<github username> export GITHUB_PASS=<github container registry personal access token> export IRONBANK_USER=<dso.mil username> export IRONBANK_PASS=<iron bank cli secret> echo $GITHUB_PASS | zarf tools registry login ghcr.io --username $GITHUB_USER --password-stdin echo $IRONBANK_PASS | zarf tools registry login registry1.dso.mil --username $IRONBANK_USER --password-stdin set -o history
(Optional) Secure Container Registry Secrets with Local Credential Store
- Install and configure a credential store for docker login
- Re-validate docker/zarf authN using the credential store configured in
~/.docker/config.json
From the desired directory on your machine, run:
git clone https://github.com/defenseunicorns/uds-package-dubbd.git
There are several flavors of DUBBD you can create (i.e dubbd, dubbd-aws, dubbd-k3d). Each version is derived from a zarf.yaml found in a package sub-directory. To create one of these packages:
-
Change directory to locally cloned DUBBD repo
e.g.
cd /repos/uds-package-dubbd
-
Change to desired DUBBD package directory
e.g.
# cd aws/dubbd-aws
# cd defense-unicorns-distro
# cd k3d
# cd rke2
- Create Package
zarf package create --confirm
Note
Some packages might have more specific directions in their README.md for building.
If the create succeeds you should see a .zst file in the same directory.
e.g k3d/zarf-package-dubbd-k3d-amd64-0.9.1.tar.zst
You can then deploy that package to your cluster.
zarf package deploy --confirm zarf-package-*.tar.zst