Dist-Zilla-PluginBundle-Author-GETTY
view release on metacpan or search on metacpan
# Claude Code â commit: skills/, agents/, rules/, hooks/, settings.json
# Ignore: local overrides, credentials, session data
# Tracked: shared config & extensibility
!/.claude/
.claude/*
!.claude/settings.json
!.claude/settings.local.json
!.claude/agents/
!.claude/agents/**
!.claude/skills/
!.claude/skills/**
!.claude/rules/
!.claude/rules/**
!.claude/hooks/
!.claude/hooks/**
# Local overrides (machine-specific)
.claude/*.local.*
.claude/local/
# Credentials & session state (never track)
.claude/.credentials.json
.claude/statsig/
.claude/todos/
.claude/projects/
Dist-Zilla-PluginBundle-Author-GETTY-*
.build
AGENTS.md
# karr materialized task view -- never commit
tasks/
simpici-provider/README.md view on Meta::CPAN
lib/dzil-test.sh # shared helper the jobs source
```
SimpiCI merges those into the effective `.cicd` **without overwriting your own
files** â so if you ship your own `perl+5.40+test.sh`, yours wins. Each generated
job then runs in its `perl:<ver>` container and does a real `dzil test`
(bootstrapping Dist::Zilla, author deps and `listdeps --author`), copying the
read-only checkout into the writable output dir first because `dzil test` writes
a build tree.
The provider receives **no registry credentials and no Docker socket** â it only
plans jobs.
## Use it in a distribution
Add a single workflow â no `.cicd/` needed:
```yaml
# .github/workflows/ci.yml
name: CI
on:
simpici-provider/emit.sh view on Meta::CPAN
#!/bin/sh
# SimpiCI provider for [@Author::GETTY] distributions.
#
# SimpiCI runs this image once, read-only over the checkout, with a private
# writable directory at $CICD_PROVIDER_OUT. We write one `.sh` job file per
# supported Perl version into $CICD_PROVIDER_OUT; SimpiCI merges them into the
# staging .cicd WITHOUT overwriting a repository's own files, so a dist that
# ships its own `perl+5.40+test.sh` keeps it. We receive no registry
# credentials and no Docker socket by design.
#
# The generated jobs run LATER, each in a `perl:<ver>` container, with the
# checkout read-only at /workspace and the staging dir read-only at /cicd
# (CICD_ROOT=/cicd). They source the shared helper we also drop in lib/.
set -eu
: "${CICD_PROVIDER_OUT:?must be run by SimpiCI (CICD_PROVIDER_OUT is unset)}"
# Version matrix, most specific wins: a `.simpici-perl` file in the checkout (for
# a dist that can't run the full range -- e.g. one whose .simpici-apt needs a
( run in 0.931 second using v1.01-cache-2.11-cpan-007c89162af )