Releases: zarf-dev/zarf
v0.13.3
Until we finish migrating from Repo1 to GitHub the release artifacts can be found HERE.
What's Changed
⚠️ BREAKING: The private container registry that zarf init
deploys now requires auth
Packages will need to include imagePullSecrets:
in their pod manifests and a corresponding regcred. See the Kubernetes documentation for more information. Using the special string ###ZARF_DOCKERAUTH###
in your manifests will be automatically picked up by Zarf during package deploy
and replaced with a properly formatted auth string, which is the base64 encoded username:password
Here's an example of a valid Secret manifest for images that originated from Registry1 or DockerHub (K3s automatically redirects them to the private registry):
apiVersion: v1
kind: Secret
type: kubernetes.io/dockerconfigjson
metadata:
name: private-registry
namespace: my-cool-app
stringData:
.dockerconfigjson: |
{
"auths": {
"registry1.dso.mil": {
"auth":"###ZARF_DOCKERAUTH###"
},
"docker.io": {
"auth":"###ZARF_DOCKERAUTH###"
}
}
}
Deploy remote packages
Now you can run zarf package deploy
on remote packages.
Example:
# Naughty way
zarf package deploy https://example.com/some-package.tar.zst --insecure
# Good way
zarf package deploy https://example.com/some-package.tar.zst --shasum 15h1oi2h5ni1o2y5iunb1t25bui1t25gnu12n5
Full Changelog
Note: The v0.13.0, v0.13.1, and v0.13.2 releases were aborted due to a broken pipeline. This release replaces v0.13.0 with the only change being fixing the release pipeline. We do it this way because we believe artifacts should be immutable.
- #93 - Add E2E test framework with Terratest
- #91 - Simplify the Vagrant workflow when running the examples
- #94 - Add framework for GitHub Actions with pull request chatops dispatching
- #95 - Integrate the E2E tests with the GitHub Actions pipeline
- #103 - Add Contributor Guide
- #104 - Roll back changes to the Big Bang example NetworkPolicy CIDRs for better demo compatibility
- #106 & #110 - Add more E2E tests
- #112 - Add
pre-commit
hooks - #98 - Beginnings of an overhaul on the repo's documentation
- #116 - Add
zarf version
command - #117 - Fix the Makefiles for compatibility with M1 Macs
- #111 - Update the version of
kubescape
in the Big Bang Core example - #124 - Add "Get Started" documentation for running the Doom game example
- #126 - Update Helm library to v3.7.0
- #107 - Add check to make sure all components passed in
--components
flag exist - #135 - Add Zarf Components documentation
- #128 - Add check for illegal characters in entered hostnames
- #139 - Add flag for setting the log level
- #147 - Unify to one
go.mod
to make VS Code happy - #151 - Run
pre-commit run -a
an the codebase - #143 - Add ability to deploy remote packages
- #157 - Add Logging documentation
- #156 - Remove unnecessary logging package and set log level in root
- #158 - Update GitHub Actions pipeline to use the new robot account for Registry1
- #144 - Add authentication to utility registry
- #160 - Fix the GitLab release pipeline
- #162 - Fix legacy E2E tests and remove them from critical path to cutting a release
- #165 - Fix GitLab release pipeline dependency
v0.13.2
The v0.13.2 release was aborted due to a broken release pipeline. The v0.13.3 release replaces this release with the only change being fixing the pipeline. We do it this way because we believe artifacts should be immutable.
v0.13.1
The v0.13.1 release was aborted due to a broken release pipeline. The v0.13.3 release replaces this release with the only change being fixing the pipeline. We do it this way because we believe artifacts should be immutable.
v0.13.0
The v0.13.0 release was aborted due to a broken release pipeline. The v0.13.3 release replaces this release with the only change fixing the pipeline. We do it this way because we believe artifacts should be immutable.
v0.12.0
What's Changed
zarf init
Now always installs the private Docker registry.
Until we finish migrating from Repo1 to GitHub the release artifacts can be found HERE.
⚠️ BREAKING: New schema for zarf.yaml
config
The schema for the zarf.yaml
config file has changed. It has been simplified now that the docker registry is always present, there's no need for making a distinction between local and remote images. They are now all what used to be called "remote".
New:
kind: ZarfPackageConfig
metadata:
name: foo
description: "Foo example"
components:
- name: baseline
required: true
manifests: manifests
repos:
- https://repo1.dso.mil/platform-one/big-bang/[email protected]
images:
- registry1.dso.mil/ironbank/big-bang/base:8.4
- name: optional-feature
required: false
default: true
files:
- source: https://example.com/foo
shasum: 52299bd5a2df28b6a6ff9926e09abd0fa5e6c1094f5bb75b036a0452cfc00dfa
target: "/usr/local/bin/foo"
executable: true
Previous:
kind: ZarfPackageConfig
metadata:
name: foo
description: "Foo example"
components:
- name: baseline
required: true
manifests: manifests
images:
- registry1.dso.mil/ironbank/big-bang/base:8.4
- name: optional-feature
required: false
default: true
files:
- source: https://example.com/foo
target: "/usr/local/bin/foo"
shasum: 52299bd5a2df28b6a6ff9926e09abd0fa5e6c1094f5bb75b036a0452cfc00dfa
executable: true
utilityCluster:
repos:
- https://repo1.dso.mil/platform-one/big-bang/[email protected]
images:
- registry1.dso.mil/ironbank/big-bang/base:8.4
Full Changelog
- Change zarf init to always install the docker registry by @jeff-mccoy in #82
- Fix #83 by switching from
zarf.localhost
to127.0.0.1
as the internal endpoint for the docker registry and Gitea - Update golang imports from the old Repo1 location to the new GitHub one
- Update go deps versions
- Rename the 3rd init option from
utility-cluster
togitops-service
- Fix #83 by switching from
Compare: v0.11.0...v0.12.0
v0.11.0
🦄
What's Changed
New examples and an update to the zarf.yaml schema
Until we finish migrating from Repo1 to GitHub the release artifacts can be found HERE.
⚠️ BREAKING: New schema for zarf.yaml
config
The schema for the zarf.yaml
config file has changed to allow optional components in Zarf deploy packages just like you can do in a Zarf init package
New:
kind: ZarfPackageConfig
metadata:
name: foo
description: "Foo example"
components:
- name: baseline
required: true
manifests: manifests
images:
- registry1.dso.mil/ironbank/big-bang/base:8.4
- name: optional-feature
required: false
default: true
files:
- source: https://example.com/foo
target: "/usr/local/bin/foo"
shasum: 52299bd5a2df28b6a6ff9926e09abd0fa5e6c1094f5bb75b036a0452cfc00dfa
executable: true
utilityCluster:
repos:
- https://repo1.dso.mil/platform-one/big-bang/[email protected]
images:
- registry1.dso.mil/ironbank/big-bang/base:8.4
Previous:
kind: ZarfPackageConfig
metadata:
name: foo
description: "Foo example"
local:
manifests: manifests
files:
- source: https://example.com/foo
target: "/usr/local/bin/foo"
shasum: 52299bd5a2df28b6a6ff9926e09abd0fa5e6c1094f5bb75b036a0452cfc00dfa
executable: true
images:
- registry1.dso.mil/ironbank/big-bang/base:8.4
remote:
repos:
- https://repo1.dso.mil/platform-one/big-bang/[email protected]
images:
- registry1.dso.mil/ironbank/big-bang/base:8.4
New Example: Postgres Operator
A new example is available that creates a Zarf package that will deploy an example of a mostly production-ready Postgres database using Zarf's Applicance Mode. It comes with high availability, point-in-time backups, and periodic full backups. Comes with PGAdmin as a good demo of the proof of concept. Uses Zalando's postgres-operator.
New Example: Big Bang Core
A new example is available that creates a Zarf package that will deploy USAF Platform One's Big Bang Core to a Utility Cluster. This isn't normally the way you'd utilize a Utility Cluster, but it makes for a great easy to run demo. In a production scenario you would typically deploy a utility cluster separately from your main production workload cluster.
New Example: Utility Cluster
A new example is available that creates a Zarf package that will load a git repository and a container image into the Zarf Utility Cluster. It's a great way to test out the utility cluster while keeping the package super small, unlike the behemoth package that Big Bang Core ends up being.
Full changelog
- Add Postgres Operator Example (#50)
- Add backups to postgres-operator example (#52)
- Add Big Bang Core Example (#29)
- Fix makefile for postgres-operator example (#54)
- Update kafka tools URL (#57)
- Add resource requests and limits to Utility Cluster deployments (#59)
- Misc refactoring and cleanup (#61)
- Update Big Bang Core example with kubescape remediations (#62)
- Add kubescape to Big Bang Core example package (#60)
- Implement SHA256SUM validation (#65)
- Add zarf prepare sha256sum URL arg for remote SHASUM (#69)
- Upgrade Big Bang Core example to BB v1.17.0 (#67)
- BREAKING: Restructure zarf config yaml (#71)
- Docs and refactors for better kubescape scanning of BB example (#80)
Compare: v0.10.4...v0.11.0