Local Chassis

Chassis is the bundled local development environment.

Configuration

It is possible to configure the host names for your local environment thruogh the composer.json file. This should be done before running the setup steps below, otherwise you may need to edit the generated chassis/config.local.yaml file directly.

{
    "extra": {
        "altis": {
            "modules": {
                "local-chassis": {
                    "hosts": [
                        "project.local",
                        "subdomain.project.local",
                        "alt-project.local"
                    ]
                }
            }
        }
    }
}

Setup

Chassis requires Vagrant and VirtualBox to be installed on your system.

To set up Chassis for Altis, run the following inside your project's directory:

composer chassis init

This will add Chassis to your development dependencies and prepare it to be run.

You can then use the other composer chassis commands to manage your machine.

Available Commands

A number of convenience commands are available:

  • composer chassis init - Initialises your local Chassis setup and starts the virtual machine.
  • composer chassis start - Starts the virtual machine.
  • composer chassis stop - Stops the virtual machine.
  • composer chassis status - Displays the status of the virtual machine.
  • composer chassis secure - Installs the generated SSL certificate to your trusted certificate store.
  • composer chassis shell - Logs in to the virtual machine.

Under the hood, the Local Chassis environment is powered by Chassis and Vagrant.

You can use the low-level Vagrant commands inside the chassis directory after you have run composer chassis init for the first time.

Extensions

Chassis has a number of extensions available which can be used to add additional functionality to your development environment. By default, your Local Chassis install is set up to mirror the Altis infrastructure, but you may wish to enable other tools for local development.

We recommend the following common development tools:

  • SequelPro - Adds a vagrant sequel command to instantly connect to your development MySQL server in Sequel Pro
  • XDebug - Installs XDebug for interactive debugging in your editor
  • phpdbg - Installs phpdbg for interactive command-line debugging
  • Mailhog - Captures outbound email from Altis and provides a fake inbox

Consult the Chassis documentation for information about installing additional extensions.

Using HTTPS locally

Local Chassis will generate an HTTPS security certificate you can use to run your local environment over HTTPS. The file will be located in the /chassis directory, by default it will be called altis.local.cert but if you have customised the hosts in config.local.yaml it will use the first host name in that list for the file name.

Once your VM is running run the following command to install the certificate:

composer chassis secure

You should now be able to browse your local environment via HTTPS without certificate warnings.

Note: this command only supports OSX and Windows currently.

Windows

On Windows systems note that the composer chassis secure command requires adminstrator privileges.

In order for it to work you'll need to start your command prompt application such as GitBash by right-clicking the icon and selecting "Run as Administrator" from the context menu.

You can run the entire composer chassis init command in the administrator context but you should be sure that you are comfortable with everything the command is doing beforehand.

Firefox

Because the Firefox browser uses its own certificate store you will either need to install the generated certificate file manually or alternatively follow these steps:

  1. Open Firefox
  2. Browse to about:config
  3. Set security.enterprise_roots.enabled to true