Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status


gce_mysql_proxy (2) Versions 0.1.0

Installs & configure a GCE MySQL proxy

cookbook 'gce_mysql_proxy', '= 0.1.0', :supermarket
cookbook 'gce_mysql_proxy', '= 0.1.0'
knife supermarket install gce_mysql_proxy
knife supermarket download gce_mysql_proxy
Quality 100%


Installs and configures the MySQL Proxy for use with Google Compute Engine (GCE) instances that require access a Google Compute MySQL instance.

See for more information on the GCE MySQL proxy.


This cookbook requires runit for the Runit service configuration. It only supports Runit as a service provider at the moment.

The Google Cloud SQL Proxy binary is only available for i386/i686 (32bit) and x64-64 (64bit) systems. The cookbook will raise an exception if you attempt to run it on an unsupported architecture.

This cookbook only supports Linux and assumes that FUSE is available and supported.


  • default['gce_mysql_proxy']['package_url'] Base URL for the cloud_sql_proxy executable. Defaults to
  • default['gce_mysql_proxy']['bindir'] Path to a directory to download the cloud_sql_proxy binary to. Defaults to /usr/local/bin
  • default['gce_mysql_proxy']['service'] Service provider to use to run cloud_sql_proxy. Defaults to runit
  • default['gce_mysql_proxy']['fuse'] Whether to use the FUSE filesystem with the MySQL proxy. Default is true
  • default['gce_mysql_proxy']['instances'] A list of instances that can connect to the cloud SQL proxy. Defaults to nil
  • default['gce_mysql_proxy']['mountdir'] Path to a directory to mount the FUSE filesystem. Defaults to /cloudsql
  • default['gce_mysql_proxy']['metadata_key'] Metadata key to be used by the SQL proxy to poll for instances. Defaults to nil
  • default['gce_mysql_proxy']['credentials_file'] Path to a Google credentials JSON file to use as a service account. Defaults to nil

You should refer to the Google SQL Proxy documentation for more information on the fuse, instances, metadata_key and credentials_file settings. By default this cookbook will configure a SQL proxy using FUSE and the default service account credentials for the instance, which is the most simple configuration. In general you can use either the FUSE filesystem or a list of instances. You can combine both instances and instances_metadata if you wish.



Runs both gce_mysql_proxy::install and gce_mysql_proxy::service


Downloads & installs the cloud_sql_proxy binary. Also creates the mountpoint for FUSE if it is enabled.


Creates and configures a service to run cloud_sql_proxy with the correct parameters.

Currently only Runit is supported as a service provider.


In order for the GCE MySQL Proxy to work correctly you must have enabled the Cloud SQL Admin API for your project, and the instance must have the Cloud SQL API scope defined.

See for more information on the Cloud SQL Admin API, and
for more information on Google Cloud SQL in general.

License and Authors

Authors: Kristian Van Der Vliet

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Dependent cookbooks

runit ~> 1.7.6

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Foodcritic Metric

0.1.0 passed this metric