amazeelabs/silverback-cli

Scaffolder for Amazee Silverback projects.

Installs: 39 276

Dependents: 0

Suggesters: 0

Security: 0

Stars: 2

Watchers: 13

Forks: 0

Open Issues: 0

Type:package

2.9.10 2024-04-08 12:33 UTC

README

This project is maintained in the silverback monorepo

Silverback CLI

amazeelabs/silverback-cli is a composer package adding tooling and configuration scaffolding to Amazee Drupal projects.

Features:

  • 🚀 Install Drupal in seconds.
  • 📸 Create/restore Drupal state snapshots instantly.

Installation

Important: Make sure your project is already under a version control system. Otherwise, it will be a mess.

  1. Make sure you have all dependencies installed. direnv is an important one.
  2. Add amazeelabs/silverback-cli to allowed-packages in composer.json. It should be the last one in the list. Example:
    "extra": {
      "drupal-scaffold": {
        "allowed-packages": [
          "amazeeio/drupal-integrations",
          "amazeelabs/silverback-cli"
        ]
      }
    }
    
  3. Make sure sites/default/settings.php exists. If it does not, copy it from sites/default/default.settings.php.
  4. Run
    composer require amazeelabs/silverback-cli
    direnv allow
    
  5. Check the VCS changes.

Usage

# To setup a fresh Drupal installation:
silverback setup --profile=minimal

# To restore a cached installation:
silverback setup

# To see other use cases:
silverback list
silverback help [command_name]

How it works

Silverback makes Drupal use an SQLite database in local environment. The database is located in the Drupal files directory. This means that the whole Drupal state is stored in a single directory.

Silverback puts this directory into install-cache.zip and reuses it the next time silverback setup is fired.

Snapshots work in the same way. They are just copies of the Drupal files directory.