Install
Works with Drupal: ^10.3 || ^11Using Composer to manage Drupal site dependencies
Alternative installation files
Download tar.gz
28.91 KB
MD5: 3b7f9125c05163054398e1426f84d544
SHA-1: 21c6abae03968bf097a78ef6573be1782e955cba
SHA-256: 75d946dcd5c736c8739fd0b434dc95a76a71e58fd3e7c30b247049159e9d2740
Download zip
44.76 KB
MD5: 6d422f4180c13671b67370dd6175f67e
SHA-1: 4eb2aeaf92cda2b20e713d7dc8f7f9cd0d805f32
SHA-256: 03abb1bc84677ef40fe7de71e568951a789b22617730584b4e9b7597a0b9ebb4
Release notes
First alpha of Slipway, a Drupal front end for the Slipway deployment control plane for containerized Drupal on Kubernetes (k3s). Code moves up from dev to stage to prod, and data copies down. This module brings that workflow into Drupal's admin, gates it with Drupal permissions, and records each operation in the audit log under the Drupal user who started it.
The module does not deploy anything itself. It is a client for Slipway's HTTP API, and every operation runs in Slipway as Kubernetes Jobs.
Features
- Dashboard at
/admin/slipwayshows:- what each environment runs, and replica health
- when data was last copied in
- releases and snapshots
- stalled sequences
- the audit history
- a live log of the running operation
- Deploy a recorded release, promote the exact image digest a lower environment runs, or deploy an image reference.
- Copy down the database and/or files, take and restore snapshots, roll back, and cancel stalled sequences.
- Permissions are separate for non-production and production. Changing production requires typing the environment name to confirm.
- Drush commands:
slipway:grid,slipway:deploy,slipway:copy-down,slipway:snapshot,slipway:state. - Status endpoint at
/slipway/status, gated by a token. It reports pending updates and config drift, and Slipway can poll it in each managed environment.
Requirements
- Drupal 10.3 or 11, PHP 8.1+
- A running Slipway with HTTP API v1, which adds the API token,
X-Slipway-Actorand the JSON read endpoints. Against an older Slipway, the grid and operations work, but the release, snapshot and history lists show as unavailable. The full contract is indocs/SLIPWAY_API.md.
Configuration
- Set the base URL at Configuration » Development » Slipway. This is usually the in-cluster Service, e.g.
http://slipway.slipway.svc.cluster.local:8080. - Put the secrets in
settings.php, not in config. Copy-down moves the database, and config moves with it.$settings['slipway_api_token']is required;$settings['slipway_status_token']is optional. - Grant permissions. Deploy to production and Administer Slipway are restricted.
Security notes
- The API token can start any operation Slipway offers. Treat it like a deploy key.
- The module deliberately does not wrap Slipway's
consoleendpoint, because that endpoint runs arbitrary commands. - Access checks fail closed: if Slipway is unreachable, operation routes deny access.
Known limitations (alpha)
- Schedules are view-only. Manage them in Slipway's own UI or CLI.
- Slipway does not poll
/slipway/statusyet. That is planned for a later Slipway release. - The API may still change before beta.
Changes since project creation
- Initial code commit
- Prepare 1.0.x for Drupal.org