Files
sesamy-cli/docs/guide/workflow.md
Kevin Franklin Kim be5cacd815 docs: add gh docs
2026-05-27 08:52:58 +02:00

53 lines
1.5 KiB
Markdown

# Workflow
A typical day with `sesamy-cli` looks like this.
## Local development
```bash
# 1. Edit sesamy.yaml — add or tweak a provider.
$EDITOR sesamy.yaml
# 2. Preview the change.
sesamy diff web
sesamy diff server
# 3. Apply when the diff looks right.
sesamy provision web
sesamy provision server
# 4. Verify.
sesamy list web
```
## In code review
Commit `sesamy.yaml` alongside the application change. Reviewers can run `sesamy diff` locally — or, better, have CI do it on every PR.
## In CI
A minimal CI job:
```yaml
- run: sesamy diff web -c sesamy.yaml -c sesamy.prod.yaml
- run: sesamy diff server -c sesamy.yaml -c sesamy.prod.yaml
```
For a deploy job, run `sesamy provision` against the appropriate workspace. The CLI is idempotent: re-running it without config changes produces no GTM mutations.
::: tip
Run `provision` against a **non-default workspace** in CI and require a human to publish in the GTM UI. That keeps a human in the loop for the actual go-live step.
:::
## When the config changes
Whenever the YAML changes:
1. `sesamy diff` to confirm the change is what you expect.
2. `sesamy provision` to apply.
3. If you generate TypeScript events, run `sesamy typescript` and commit the regenerated files.
## When code in this repo changes
If you're contributing to `sesamy-cli` itself: a change to commands, the config schema, or a provider must be reflected in these docs. Every section under [Commands](/commands/) and [Providers](/providers/) maps directly to a folder under `pkg/` or `cmd/`.