Files
neon/control_plane
Tristan Partin a3c5981106 Add neon.safekeeper_connstrings GUC
This GUC is very similar to neon.safekeepers, but instead of being
formatted as host:port, it is a Postgres connection string. The purpose
for changing how we connect to safekeepers is so that we can pass
various libpq SSL keyword parameters in the connection string.

A future PR will remove the `neon.safekeepers` GUC.

Signed-off-by: Tristan Partin <tristan@neon.tech>
2025-05-06 09:31:51 -05:00
..
2025-05-06 09:31:51 -05:00

Local Development Control Plane (neon_local)

This crate contains tools to start a Neon development environment locally. This utility can be used with the cargo neon command. This is a convenience to invoke the neon_local binary.

Note: this is a dev/test tool -- a minimal control plane suitable for testing code changes locally, but not suitable for running production systems.

Example: Start with Postgres 16

To create and start a local development environment with Postgres 16, you will need to provide --pg-version flag to 3 of the start-up commands.

cargo neon init --pg-version 16
cargo neon start
cargo neon tenant create --set-default --pg-version 16
cargo neon endpoint create main --pg-version 16
cargo neon endpoint start main

Example: Create Test User and Database

By default, cargo neon starts an endpoint with cloud_admin and postgres database. If you want to have a role and a database similar to what we have on the cloud service, you can do it with the following commands when starting an endpoint.

cargo neon endpoint create main --pg-version 16 --update-catalog true
cargo neon endpoint start main --create-test-user true

The first command creates neon_superuser and necessary roles. The second command creates test user and neondb database. You will see a connection string that connects you to the test user after running the second command.