release: github.com/cloudfoundry/cf-mysql-release / 35

Github source: 4947ee5 or master branch

cf-mysql-release v35

Notice: Based on your responses to the v34 poll, this will be the last release in which we include updated spiff templates. That means that starting with v36, you’ll want to check out cf-mysql-deployment or continue building your manifest by other means.

Also, using cf-mysql-deployment just got easier with the official GA of the bosh v2 CLI!

Dependency Updates

  • cf-mysql-release should use MariaDB 10.1.22 [#141072891]

  • Use routing-release instead of our own fork of route-registrar [#135377279]

For a long time, cf-mysql-release has used a fork of the route-registrar library. To stay current, we now require routing-release. Please note the README.md now covers this prerequisite.

Note: When switching to the canonical distribution of route-registrar, we had to change the URL of the proxy. Where once you’d visit https://proxy-0-p-mysql.SYSTEM-DOMAIN/, now the instance index is pre-pended: https://0-proxy-p-mysql.SYSTEM-DOMAIN/.

- As an operator I can navigate to a well-known URL to discover a list of URLs to the proxy dashboards [[#138180969](https://www.pivotaltracker.com/story/show/138180969)]

  If you use `cf-mysql-deployment`, and include the [register-proxy-route.yml](https://github.com/cloudfoundry/cf-mysql-deployment/blob/v35/operations/register-proxy-route.yml) operations file, the deployment will automatically include a proxy aggregator: `https://proxy-p-mysql.SYSTEM-DOMAIN/` which will include links to the proxy dashboards, regardless of the naming scheme. This feature is only available when using BOSH links.

- As an Operator, I'd like the docs to cover how to upgrade from v34 to v35 which uses routing-release [[#144161787](https://www.pivotaltracker.com/story/show/144161787)]
- cloudfoundry/cf-mysql-release #157: Unused nats properties [[#143997101](https://www.pivotaltracker.com/story/show/143997101)]

Some nats properties are no longer used by our jobs directly, but routing-release still uses the same properties so deployment manifests do not need to change.

Providing and Consuming BOSH links

Using BOSH links simplifies manifests and manifest generation - every time a BOSH release uses a link, that’s less copying and pasting via template. - cloudfoundry/cf-mysql-release #154: Provide database links for mysql and proxy jobs [#143086033] - cloudfoundry/cf-mysql-release #149: Optionally consume cc link for app_domains in smoke tests [#140458283]

Bug Fixes and Minor Improvements

  • [BUG] Upgrading from older releases fails to start mariadb [#139334661]
  • [BUG] Logs not draining to syslog [#143069405]
    • Fixes a regression in v34 that logs were not sent to syslog.
  • [BUG] mysql_release fails to deploy to a BOSH director using local_dns [#143221877]
  • [BUG] pre-start hangs indefinitely when cluster is not healthy [#141824537]
  • [BUG] If a node is failing, mariadb_ctrl waits for mysql forever [#140517205]
  • [BUG] roadmin user doesn’t have read privs for admin operations? [#139594503]
  • cloudfoundry/cf-mysql-release #155: Allow innodb_flush_log_at_trx_commit to be configurable [#143693837]
  • cloudfoundry/cf-mysql-release #158: Nil the consul link in the example stub [#144138871]
  • cloudfoundry/cf-mysql-release #159: add private key option to download-logs script [#144411627]
  • As an Operator, if an errand is a no-op, it’s better to exit 0 than error [#139054911]
  • Stop attaching the tarball to the release notes of cf-mysql-release [#139611695]

Documentation

  • Proxy startup and shutdown delay descriptions are backwards in spec [#139996733]
  • NOTICE files on various repositories are out of date [#141360157]

Manifest Changes

  • New: cf.mysql.innodb_flush_log_at_trx_commit, optional, defaults to 1.
  • New: cf_mysql.proxy.api_aggregator_port: optional, defaults to 8082.
  • New: cf_mysql.proxy.api_uri, required when deploying the proxy aggregator.
  • Removed: cf_mysql.external_host
  • Removed: cf_mysql.standalone

Upload this release version to the Director:

$ bosh upload-release https://bosh.io/d/github.com/cloudfoundry/cf-mysql-release?v=35 --sha1 af8e2bd9b288f9efff8630463cbaa6101b655e29

Modify deployment manifest to use this release in addition to any other used releases:

releases:
- name: cf-mysql
  version: "35"

Finally add needed deployment jobs and specify values for required properties.

Optionally download sha1: af8e2bd9b288f9efff8630463cbaa6101b655e29 release tarball locally:

# ...or download it directly using curl
$ curl -L -J -O https://bosh.io/d/github.com/cloudfoundry/cf-mysql-release?v=35

# or with wget...
$ wget --content-disposition https://bosh.io/d/github.com/cloudfoundry/cf-mysql-release?v=35