Skip to main content
A platform setting applies to every tenant of an installation. Its starting value comes from an environment variable; once someone stores a value, the stored one wins, and resetting it brings the variable’s value back. A change applies from the next request or queue job, without a restart or a redeploy. Settings of one tenant are on the tenant’s own Settings screen. The values are kept in the landlord tables platform_settings and platform_setting_events (every change, with who made it), created by the usual php artisan migrate --database=landlord --force.

Who changes them

  • One tenant (TENANCY_RESOLUTION=single). The tenant’s administrators: Platform settings in the admin panel’s System menu. Settings that only matter in host mode are not shown there.
  • Several tenants (TENANCY_RESOLUTION=host). No tenant’s administrator can change them, since they would change every other tenant too; the admin screen does not exist in this mode. Use the commands below, or an operator package’s panel, which changes them through Foundation’s PlatformSettingsInterface.

Commands

Both modes:
A refused value (out of range, wrong type, unknown key) changes nothing and exits non-zero. Changes made by a command are recorded as cli:<user>.
If the database cannot be read, every setting answers its environment variable’s value, so the platform keeps running on its defaults.