Configuration Reference
An exhaustive list of all configuration values in chartered.
Configuration files are written in the TOML format, with simple key-value pairs inside of sections (tables). The following is a quick overview of all settings, with detailed descriptions found below
chartered-git
Configuration format
bind_address = "127.0.0.1:2233"
database_uri = "postgres://user:password@localhost/chartered" # can also be `sqlite://`
web_base_uri = "http://localhost:8888/"
[committer]
name = "Chartered"
email = "noreply@chart.rs"
message = "Updated crates!"
Configuration keys
bind_address
- Type: string
The IP address and port the web server should be bound to.
database_uri
- Type: string
A connection string for the backing database, either postgres
or sqlite
, either in the
format of postgres://user:password@localhost/chartered
(a postgres connection URI),
sqlite:///path/to/chartered.db
or sqlite://:memory:
.
web_base_uri
- Type: string
The path at which the Chartered API (chartered-web
) is running. This should always be HTTPS when
running in production.
committer
The committer
table defines the author of the commit that's sent to the
user.
name
- Type: string
- Default:
chartered
The name of the committer for any commits being created by chartered-git
.
email
- Type: string
- Default:
noreply@chart.rs
The email address to list for the author of the commit pushed to the user
message
- Type: string
- Default:
Update crates
The commit message to use for any commits sent out.
chartered-web
Configuration format
bind_address = "127.0.0.1:8080"
database_uri = "postgres://user:password@localhost/chartered" # can also be `sqlite://`
storage_uri = "s3://s3-eu-west-1.amazonaws.com/my-cool-crate-store/" # or file:///var/lib/chartered
frontend_base_uri = "http://localhost:5173/"
trusted_ip_header = "x-forwarded-for"
[auth.password]
enabled = true # enables password auth
[auth.<provider>] # openid connect provider
enabled = true
discovery_uri = "https://gitlab.com/"
client_id = "[client-id]"
client_secret = "[client-secret]"
Configuration keys
bind_address
- Type: string
The IP address and port the web server should be bound to.
database_uri
- Type: string
A connection string for the backing database, either postgres
or sqlite
, either in the
format of postgres://user:password@localhost/chartered
(a postgres connection URI),
sqlite:///path/to/chartered.db
or sqlite://:memory:
.
storage_uri
- Type: string
A URI in which crates should be stored, this can either be an s3://
connection URI, or a local file path using
file://
.
frontend_base_uri
- Type:
string
The base URL at which the frontend is being hosted.
trusted_ip_header
- Type:
string
- Default: null
Allows a header to override the socket address as the end user's IP address
[auth.password]
The [auth.password]
table controls the username/password-based authentication method.
enable
- Type: bool
- Default: false
Enables username/password-based authentication and registration.
[auth.<provider>]
[auth.<provider>]
tables represent an OpenID Connect provider that can be used to
login and register to the chartered instance. <provider>
should not be changed once
set as the value is stored in the database along with users.
enabled
- Type: bool
Enables the authentication provider, if this is disabled users will not be able to login nor register using the provider.
discovery_uri
- Type: bool
The OIDC Discovery URI that can be used to grab configuration for the provider, not including
/.well-known/openid-configuration
.
client_id
- Type: string
The Client ID given by the provider to identify the service.
client_secret
- Type: string
The client secret given by the provider to authenticate the service.