Skip to content

postgres job from postgres/18

The Postgres server provides a single instance Postgres database that can be used with the Cloud Controller or the UAA. It does not provide highly-available configuration.

Github source: bf75ac8e or master branch

Properties

databases

additional_config

A map of additional key/value pairs to include as extra configuration properties

Example
|+
  shared_buffers: 4GB
  checkpoint_segments: 10

collect_statement_statistics

Enable the pg_stat_statements extension and collect statement execution statistics

Default
false

databases

A list of databases and associated properties to create

Example
|+
  - name: sandbox
    citext: true
  - name: sandbox2
    citext: false
    run_on_every_startup: "SELECT * FROM TABLEA"

log_line_prefix

The postgres printf style string that is output at the beginning of each log line

Default
'%m: '

max_connections

Maximum number of database connections

monit_timeout

Monit timout in seconds for the postgres job start. If not specified, no timeout statement will be added so that the global monit timeout applies.

Default
90

port

The database port

roles

A list of database roles and associated properties to create

Example
|+
  - name: pgadmin
    password: passwd
    permissions:
    - "CONNECTION LIMIT 33"
  - name: bud_spencer
    common_name: "Carlo Pedersoli"

tls

ca

PEM-encoded certification authority for secure TLS communication

Default
""
certificate

PEM-encoded certificate for secure TLS communication

Default
""
private_key

PEM-encoded key for secure TLS communication

Default
""

Templates

Templates are rendered and placed onto corresponding instances during the deployment process. This job's templates will be placed into /var/vcap/jobs/postgres/ directory (learn more).

  • bin/pgconfig.sh (from pgconfig.sh.erb)
  • bin/postgres_ctl (from postgres_ctl.erb)
  • bin/postgres_start.sh (from postgres_start.sh.erb)
  • bin/pre-start (from pre-start.erb)
  • bin/utils.sh (from utils.sh.erb)
  • config/certificates/server.ca_cert (from server.ca_cert.erb)
  • config/certificates/server.private_key (from server.private_key.erb)
  • config/certificates/server.public_cert (from server.public_cert.erb)
  • config/pg_hba.conf (from pg_hba.conf.erb)
  • config/pg_ident.conf (from pg_ident.conf.erb)
  • config/postgresql.conf (from postgresql.conf.erb)

Packages

Packages are compiled and placed onto corresponding instances during the deployment process. Packages will be placed into /var/vcap/packages/ directory.