Releases: cloudfoundry-attic/grootfs-release
0.30.0
Fixes CVE-2017-14388.
Also, this release reverts to the previous cache management behaviour (i.e. grootfs.graph_cleanup_threshold_in_mb ). #152506355
0.29.0
Note: By default the grootfs-release will consume the rootless_link produced by garden-runc-release when it's available. This is used to enable the rootless experimental feature on grootfs, enabling it to run as an unprivileged user. -- More.
This release...
- ...provides a smoother migration path from GrootFS stores with cached Docker images that were created with GrootFS v0.25.0 or earlier.
- ...cleans local tar images (e.g. Cloud Foundry stacks) if unused regardless of the cache size.
- ...ensures that a small disk quota will be applied even in the case of images with inclusive quotas in which the required disk quota is very close to the base image size.
- ...introduces a fix to avoid leaking (not applying) disk quotas for some images in heavily underutilized environments or test environments.
- ...renames
grootfs.blobstore.tls.*BOSH properties totls.*. This is the same naming the Diego release is using. Action is required if you were using thegrootfs.blobstore.tls.*BOSH properties. - ...drops the
grootfs.use_persistent_diskBOSH property. Action is required if you were using thegrootfs.use_persistent_diskBOSH property. - ...makes GrootFS be able to work in a BOSH stemcell with a very restrictive umask.
- ...adds support for uncompressed local OCI layers.
- ...removes some unnecessary warnings / errors in
grootfs clean. - ...switches the default CLI driver to
overlay-xfs. The default BOSH release driver has beenoverlay-xfsfor a long time.
Debug logs enhancements around disk quotas
This release...
- ...adds
debuglogs (can be seen by settinggrootfs.log_leveltodebug) around the disk quota application process.
Cache Management improvements
This release...
- ...changes the way we do cache management (previously called graph cleanup):
- Cache is now considered only the set of image layers that are not currently used.
- Dropped
grootfs.graph_cleanup_threshold_in_mbBOSH property. - Added
grootfs.cache_size_bytesinstead. - If you are currently setting
grootfs.graph_cleanup_threshold_in_mbto any value but 0, we recommend converting that value to bytes and providing it togrootfs.cache_size_bytesinstead.
- ...emits new cache management related metric:
grootfs.UnusedLayersSize.
0.27.0
This release...
- ...drops some BOSH properties:
grootfs.external_logdevice_size_in_mbwhich refers to the ability to use a separate loop device for the XFS log.grootfs.persistent_image_listandgrootfs.store_size_bytes: both in dropped in favour of the new cache management approach which will be governed bygrootfs.cache_size_bytesand a sensible default.
- ...improves the security of the set-UID binary which is used by the Overlay-XFS driver (
tardis) when GrootFS is used in rootless mode. - ...introduces
grootfs.experimental_rootless_modewhich is linked to Garden's respective BOSH property. NOTICE: If you havegarden.experimental_rootless_modeturned on, you will need to recreate your Diego Cells. - ...allows
rootuse to consume GrootFS even if the helper binaries (draxandtardis) are not set-UID. - ...enables GrootFS to download remote layers from an mTLS HTTP store.
0.26.0
This release...
- Extends support for OCI Images to fit the needs of the OCI Buildpacks feature narrative that Garden is working on.
- Adds retry loops for fetches from Docker registries (in case Docker registries intermittently fail to serve blobs).
- Finishes work for rootless
overlay-xfsdriver. - Changes the format of
grootfs createto a partial OCI runtime spec format.
IMPORTANT: If you are upgrading an existing deployment from < 0.26.0 you need to recreate your vms. If you have enabled docker images and you don't recreate the cell you might see some disk quota miscalculations.
0.25.0
...this release:
- Adds OCI image support to GrootFS. Local OCI Images can be used by running:
grootfs create oci://<Path to OCI Image> <Image ID>. - Extends the rootless Overlay-XFS driver. It can now delete container images.
- Fixes chain ID calculation for OCI and Docker images, This removes a small potential cache poisoning exploit.
- Unpacks layers inside a
chrootjail in order to avoid having layers write files outside the store.
v0.24.0 - SHA256 sums in BOSH and better performance around `grootfs stats`
This release was meant to be v0.22.0 but due to Github and subsequent CI issues we had to jump some release numbers.
This release...
- Uses SHA256 checksums in the BOSH release.
- Removes unnecessary cache flushing from
grootfs stats. This should improve general file system performance in Grooted Diego cells. - Includes some more work on the rootless use case for Overlay-XFS:
- Local tar-balls can be used with disk quotas.
- Metrics can be obtained.
v0.21.0
...this release:
New Features
- Adds a new flag, called
--rootless, togrootfs init-store. By callinggrootfs init-store --rootless user:groupyou can create a store owned by a non-root user.- The new store will use UID and GID mappings found in
/etc/subuidand/etc/subgid.
- The new store will use UID and GID mappings found in
- Makes
grootfs init-storeuse the underlying XFS filesystem if--store-size-bytesis passed with value0.- No need to always create a loop device.
- Introduces a new BOSH property, called
grootfs-diagnostics.use_persistent_disk, which instructs GrootFS to use the underlying persistent disk for its store.- BOSH persistent disks are mounted in
/var/vcap/store. - BOSH jobs need to require the persistent disk to be formatted as an XFS filesystem.
- BOSH persistent disks are mounted in
Fixes
- Fixes a concurrency / idempotency issue found in
grootfs cleanandgrootfs create --with-clean. - Fixes short id collision for the Overlay-XFS driver.
- Cleans up
projectidsin the Overlay-XFS driver.
v0.20.0 - init-store enhancements and debug job for XFS
- Extends
grootfs init-storeto take care of creating and mounting a backing filesystem for the store. The optional flag--store-size-bytescontrols the size of the filesystem. - Drops
--uid-mappingand--gid-mappingfromgrootfs create. The UID and GID mappings for the store must now be specified as part ofgrootfs init-store. - Makes GrootFS able to optionally report an extensive set of system metrics that are aimed to help us study and improve the way GrootFS uses XFS.
- Improves store validation logic.
- Removes functionality that was lazily initializing the store upon first
grootfs createcall. - Introduces the
grootfs-debugBOSH job which is designed to store XFS internal logs when it finds processes being in D state (disk wait or uninterruptible sleep) for a long time. This is to help us investigate further issues with stuck D-state processes that we have experienced in production environments. - Adds migration path for old (pre-v0.20.0) store formats.