Skip to content

Quickstart: Slipway Cloud

This takes about ten minutes. You will end with a pipeline running on a runner in your own network.

Sign up at app.slipway.systems with an email and password, or with Google, GitHub, Microsoft or an OIDC provider. Enable a second factor (TOTP or a WebAuthn security key) in Profile, Security.

An organisation is your tenant. Pick a short slug; it appears in URLs. You become its owner. Invite colleagues from Settings, Members; users are unlimited and free.

Projects group pipelines, services and environments. Create one from the project switcher, or with the CLI:

Terminal window
slipway login
slipway project create api --name "API service"
slipway project use api

Open Settings, Integrations and choose your SCM. For GitHub this installs the Slipway GitHub App on the repositories you pick. Then link a repository to the project. See the SCM integration pages for each provider.

Slipway looks for pipelines at .slipway/*.yaml (one pipeline per file) or slipway.yaml at the repository root. Add this file at .slipway/ci.yaml:

# yaml-language-server: $schema=https://slipway.systems/schema/pipeline-v1.json
version: 1
name: ci
on:
push: { branches: [main] }
pull_request:
jobs:
- name: test
runs_on: [linux]
steps:
- uses: slipway/checkout@v1
- run: echo "hello from $(hostname)"

Validate it locally before you push:

Terminal window
slipway validate

Slipway Cloud schedules your jobs; a runner executes them. Create a pool and a registration token:

Terminal window
slipway runner pool create linux-docker --executor docker --label linux
slipway runner token linux-docker

On a Linux machine with Docker or Podman, run the runner image (or the slipway binary) with that token:

Terminal window
docker run -d --name slipway-runner --restart unless-stopped \
-e SLIPWAY_RUNNER_SERVER=https://app.slipway.systems \
-e SLIPWAY_RUNNER_TOKEN=<token> \
-e SLIPWAY_RUNNER_EXECUTOR=docker \
-e SLIPWAY_RUNNER_LABELS=linux \
-v /var/run/docker.sock:/var/run/docker.sock \
ghcr.io/slipway-systems/slipway-runner:latest runner

The runner makes an outbound connection only. See Runners for the shell and Kubernetes executors.

Push a commit. A run appears under Pipelines; open it to see the job graph and live logs, or follow it from the terminal:

Terminal window
slipway run list
slipway logs <run-id> --follow