Skip to content

v2.0.0-rc4 Preview Release

Pre-release
Pre-release
Compare
Choose a tag to compare
@dennisjbell dennisjbell released this 30 May 22:00

Updated preview release of the CF Genesis kit as we approach v2.0.0 based on cf-deployment. Most things have been updated and are working, as well as backwards compatibility with the features available in the v1.x branch.

Out of the box, works as is with most existing environment files, with some caveats:

  • App Autoscaler is not bundled inside this release, instead this has been extracted to its own kit cf-app-autoscaler. However, the feature app-autoscaler-integration is provided to add the uaa role and other integration points.

  • Ships with v12.29.0 of cf-deployment, and will most likely be updated to v12.4x.0 prior to v2.0.0 GA, but contains an experimental feature of cf-deployment-version-X.X.X where X.X.X is replaced with the desired version, which will replace the embedded version. As any non-embedded version is not vetted with this kit, it may lead to unexpected results, so not intended for production environment.

  • Many old features have been discontinued or renamed, as they didn't make sense in the new context of cf-deployment:

    • shield-dbs

    • shield-blobstores

      • These features have been deprecated, in favor of BOSH add-ons
    • omit-haproxy

    • local-blobstore

    • blobstore-webdav

    • container-routing-integrity

    • routing-api

    • loggregator-forwarder-agent

      • These features are now the default behaviour and don't need to be specified in the environment file
    • blobstore-aws

    • blobstore-azure

    • blobstore-gcp

      • These were renamed *-blobstore from blobstore-*, to match other feature naming conventions
    • db-external-mysql

    • db-external-postgres

      • These were renamed mysql-db and postgres-db respectively.
    • db-internal-postgres

    • local-db

      • These both are now are represented by the local-postgres-db feature
    • haproxy-tls

    • haproxy-notls

    • haproxy-self-signed

      • This has been replaced with a single haproxy feature to specify you want haproxy, and secondary features tls and self-signed to indicate you want those extra options
    • minimum-vms

      • This has been renamed small-footprint
    • azure

      • This feature does not have to be specified, as it will automatically be applied when deploying via an Azure CPI
    • cflinuxfs2 *

      • The cflinuxfs2 feature is no longer able to be supported on cf-deployment
    • local-ha-db *

      • This feature is no longer able to be supported. If you need High Availability Database, it is recommended you use an external database using the mysql-db or postgres-db feature.
    • autoscaler *

    • autoscaler-postgres *

      • As mentioned above, autoscaler is no longer part of this kit.
    • native-garden-runc

      • This feature is no longer supported; it has been replaced by the upstream cf-deployment/operations/experimental/use-native-garden-runc-runner feature, and can simply be specified as such in the feature list.
    • app-bosh-dns

    • dns-service-discovery

      • These features are now implemented as cf-deployment/operations/enable-service-discovery from the upstream **

    With the exception of the features marked with asterisks, using the above features will automatically convert to the new feature behind the scenes and gives you a warning to update your environment file. Those marked with a single asterisk will cause the deployment to abort.

    ** Note: While ideally the dns feature should be using the upstream enable-service-discovery ops file, a conflict with the apps-domain changes in the override-apps-domain.yml overlay requires it to be implemented in an overlay derived from the upstream ops file. Specifying the upstream ops file will seamlessly use this overlay instead without any impact to the deployment, or a warning to fix your env file.

  • Additional feature: bare

    By default, the v2.0.0 kit is meant to be as close to the 1.x predecessor as possible, just based on upstream cf-deployment. To this end, the default best-practices hat were built into it are maintained going forward. This includes the separation of concerns regarding network subnets (cf-core, cf-edge, and cf-runtime instead of everything in default), usage of postgres, and a different domain for apps instead of putting them in system.<base-domain>, automatic azure tweaks when azure cpi is detected, etc. However, if you want a deployment as close to upstream as possible, we offer the the bare feature: this feature limits the default configuration to the base minimum required to support being deployed by genesis. This is basically limited to changing the deployment name to match the environment, setting the

As was the case in RC1, this is not a drop-in replacement -- it uses a different instance-group scheme, so do NOT deploy this over-top of an existing cf 1.x kit deployment. We are working on a solution to migrate 1.x to a point where you can do this.

Documentation will be forthcoming regarding how to use cf-deployment and your own custom ops files as features.