Files
stack/packages/mosaic/framework/tools/woodpecker
Hermes Agent b90aec2024
Some checks failed
ci/woodpecker/push/ci Pipeline was canceled
ci/woodpecker/pr/ci Pipeline was canceled
fix(framework/tools): wrapper hardening — TLS validation, cred-path fallback, no-CI fast-exit (#550)
F-03: validate TLS by default. New _mosaic_tls_opt helper in _lib/credentials.sh
returns -k only for private-network IP literals (trusted LAN) or an explicit
MOSAIC_INSECURE_TLS opt-in; generic mosaic_http/_post/_patch helpers now use
`curl -sS $_tls` instead of `curl -sk`. Woodpecker scripts (_lib.sh,
pipeline-status/list/trigger.sh) talk only to the two public/valid CI hosts, so
`-sk` is changed to `-sS` (straight -k removal, no helper).

F-02: credentials.sh resolves MOSAIC_CREDENTIALS_FILE via a fallback chain —
env first, then ~/.config/mosaic/credentials.json, then the legacy
~/src/jarvis-brain/credentials.json retained as final fallback so the running
fleet keeps working.

F-06: pr-ci-wait.sh distinguishes a genuine no-CI condition (empty state AND no
statuses) as a new `no-status` state and fast-exits 0 after 3 consecutive empty
polls with a clear "no CI configured" message. Repos that DO have pipelines are
unaffected — any pipeline signal resets the streak and pending still waits.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Kt2D8TsnDwhtzEAPijsNmR
2026-06-18 14:02:43 -05:00
..

Woodpecker CI Tool Suite

Interact with Woodpecker CI pipelines (list builds, check status, trigger builds).

Prerequisites

  • jq and curl installed
  • Woodpecker credentials in ~/src/jarvis-brain/credentials.json

Setup

A Woodpecker API token is required. To configure:

  1. Go to Woodpecker CI → User Settings → API
  2. Generate a personal token
  3. Add to credentials.json:
{
  "woodpecker": {
    "url": "https://ci.mosaicstack.dev",
    "token": "YOUR_TOKEN_HERE"
  }
}

Scripts

Script Purpose
pipeline-list.sh List recent pipelines for a repo
pipeline-status.sh Get status of a specific or latest pipeline
pipeline-trigger.sh Trigger a new pipeline build

Common Options

  • -r owner/repo — Repository (auto-detected from git remote if omitted)
  • -f json — JSON output (default: table)
  • -h — Show help

API Reference

  • Base URL: https://ci.mosaicstack.dev
  • API prefix: /api/
  • Auth: Bearer token in Authorization header

Examples

# List recent builds
~/.config/mosaic/tools/woodpecker/pipeline-list.sh

# Check latest build status
~/.config/mosaic/tools/woodpecker/pipeline-status.sh

# Trigger a build on a specific branch
~/.config/mosaic/tools/woodpecker/pipeline-trigger.sh -b feature/my-branch