Zarf Air Gap
Veckl supports disconnected deployments with Zarf. The package includes the backend image, frontend image, and Kubernetes manifests.
Connected Build Environment
Section titled “Connected Build Environment”In a connected environment, build the images:
make container-buildmake container-build-frontendCreate the Zarf package:
zarf package create --confirmThis produces a package file named like:
zarf-package-veckl-*.tar.zstMove that package into the disconnected environment using your approved transfer process.
Disconnected Target Environment
Section titled “Disconnected Target Environment”Deploy the package:
zarf package deploy zarf-package-veckl-*.tar.zst --confirmThen open the configured Ingress host or port-forward the frontend service:
kubectl port-forward -n veckl service/veckl-frontend 3000:3000npm Registry Mirrors
Section titled “npm Registry Mirrors”If you build the frontend image in a restricted network, point npm at an internal registry mirror:
make container-build-frontend NPM_REGISTRY_URL=https://mirror.example.com/npm/Go dependencies are vendored in the repository. Frontend dependencies are installed during the frontend image build.
Catalog Data in Air-Gapped Environments
Section titled “Catalog Data in Air-Gapped Environments”Use Air-Gapped Export from a connected Veckl environment to produce a catalog file. Import that file in the disconnected environment from Admin > Catalog.
This avoids needing the disconnected backend to reach the public NIST OSCAL source.