Plan and Apply

The Bakery Planner makes it possible to define Brezel configurations that can be applied to the respective system database in a declarative fashion. Instead of having to write migrations for your modules or having to manually use the API or write PHP code, you declare the resources you want in .bake.json files. The Bakery Planner takes care of the rest, analyzing the difference between your desired state and the system’s state, and then applying the changes.

You can define modules, entities, translations, styles and more as “Bakery resources”. These resources have a type, a name, and the resource definition. The planner keeps track of your configuration using its name and connects it to a Brezel identifier, like a module or entity ID, in the system database.

For a full list of Bakery resources, see the reference .

plan

See what changes the planner will do to one or more Brezel system(s).

Usage

php bakery plan [options] [--] [<systems>...]

Arguments

  • systems -

Options

  • --only - (multiple values allowed)
  • --except - (multiple values allowed)
  • -h, --help - Display help for the given command. When no command is given display help for the list command
  • -q, --quiet - Do not output any message
  • -V, --version - Display this application version
  • --ansi / --no-ansi - Force (or disable –no-ansi) ANSI output
  • -n, --no-interaction - Do not ask any interactive question
  • --env[=ENV] - The environment the command should run under
  • -v|vv|vvv, --verbose - Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

apply

Apply all current changes to one or more Brezel systems.

Keep in mind that unlike Terraform , there is currently no way to store a plan and apply it at a later time. apply always applies the changes that are currently found.

Usage

php bakery apply [options] [--] [<systems>...]

Arguments

  • systems -

Options

  • --only - (multiple values allowed)
  • --except - (multiple values allowed)
  • -h, --help - Display help for the given command. When no command is given display help for the list command
  • -q, --quiet - Do not output any message
  • -V, --version - Display this application version
  • --ansi / --no-ansi - Force (or disable –no-ansi) ANSI output
  • -n, --no-interaction - Do not ask any interactive question
  • --env[=ENV] - The environment the command should run under
  • -v|vv|vvv, --verbose - Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug