pantheon-uli

command module
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 22, 2026 License: MIT Imports: 14 Imported by: 0

README

pantheon-uli

A terminal-based interactive UI (TUI) for generating Drupal one-time login (ULI) links for sites hosted on Pantheon.

Features

  • Filterable, keyboard-navigable list of all your Pantheon sites
  • Choose environment: dev, test, or live
  • Automatically resolves vanity/custom domains for live environments
  • Injects HTTP Basic Auth credentials into the URL when a site lock is active
  • Opens the URL in your browser and prints it to the terminal
  • Caches the site list locally for fast startup (30-day TTL, background refresh)
  • Open a site without logging in using Alt+Enter (uses cached vanity domain and lock credentials)

Prerequisites

  • Go 1.25+
  • terminus installed and authenticated (terminus auth:login)

Install

go install github.com/mstrelan/pantheon-uli@latest

Or build from source:

git clone https://github.com/mstrelan/pantheon-uli.git
cd pantheon-uli
go build -o pantheon-uli .

Usage

pantheon-uli

Keyboard Controls

Key Action
Type characters Filter the site list
Backspace Delete last filter character
Up / Down Move cursor
Tab / Shift+Tab Cycle environment: devtestlive
Enter Generate a one-time login link and open it in the browser
Alt+Enter Open the site in the browser without logging in
Ctrl+R Refresh site cache in the background
Esc / Ctrl+C Quit

Caching

The site list is cached to pantheon-uli/sites.json inside the OS user cache directory (~/.cache on Linux, ~/Library/Caches on macOS, %LOCALAPPDATA% on Windows) with a 30-day TTL. On startup, a stale cache triggers a background refresh so you can browse immediately. If no cache exists, a blocking refresh runs first.

Per-environment metadata (vanity domain and HTTP Basic Auth credentials) is cached separately with a 30-day TTL. It is populated lazily the first time you generate a ULI for a given site and environment. Subsequent Enter presses reuse the cached values without calling terminus, and Alt+Enter uses them to construct the base URL without generating a login link at all.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL