Skip to content

feat(axiom): add dollarbox production dataset and deploy workflows#28

Merged
lazzurs merged 4 commits into
mainfrom
feat/axiom-dollarbox-prd-dataset
May 17, 2026
Merged

feat(axiom): add dollarbox production dataset and deploy workflows#28
lazzurs merged 4 commits into
mainfrom
feat/axiom-dollarbox-prd-dataset

Conversation

@lazzurs
Copy link
Copy Markdown
Owner

@lazzurs lazzurs commented May 17, 2026

Summary

  • Adds axiom/unicornops/prd/dollarbox/ Terragrunt config to create the dollarbox-prd dataset in Axiom, following the same pattern as aireach
  • Adds axiom_unicornops_plan.yml workflow — runs terragrunt run-all plan on pull requests touching axiom/unicornops/**
  • Adds axiom_unicornops_apply.yml workflow — runs terragrunt run-all apply on merge to main, creates a GitHub issue on failure

Secret required

Before this PR can apply successfully, add AXIOM_UNICORNOPS_API_TOKEN to the repo's GitHub Actions secrets (Settings → Secrets → Actions).

Get the token from Axiom → Settings → API Tokens — create one with Ingest + Query permissions scoped to the unicornops org.

What gets created

Resource Value
Axiom dataset dollarbox-prd
State key unicornops/prd/dollarbox/terraform.tfstate
Backend Minio (unicornops-terragrunt-state-axiom)

Related

  • dollarbox app PR: unicornops/dollarbox#12 (Axiom logging wiring)
  • Ansible PR: unicornops/ansible#21 (token in k8s secret)

🤖 Generated with Claude Code

Add axiom_dataset resource for dollarbox-prd under
axiom/unicornops/prd/dollarbox/ following the existing aireach pattern.
Dataset name resolves to dollarbox-prd via env.yaml + directory basename.

Add axiom_unicornops_plan and axiom_unicornops_apply GitHub Actions
workflows mirroring the cloudflare_unicornops pattern. Plan runs on
pull_request, apply runs on merge to main. Both use AXIOM_UNICORNOPS_API_TOKEN
and the existing Minio state backend credentials.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

✅ Terragrunt plan completed for axiom/unicornops/ directory. Check the workflow logs for details.

OpenTofu's S3 backend does not honour use_path_style, causing virtual-hosted
DNS lookups that fail from GitHub Actions runners. Matches the working
cloudflare/unicornops/root.hcl configuration.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

✅ Terragrunt plan completed for axiom/unicornops/ directory. Check the workflow logs for details.

The Terragrunt engine subprocess does not inherit environment variables,
so the Axiom provider cannot read AXIOM_TOKEN at runtime. Using get_env()
in the generate block causes Terragrunt to substitute the value when
writing provider.tf, bypassing the inheritance issue.

Applies to all five unicornops axiom modules.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

✅ Terragrunt plan completed for axiom/unicornops/ directory. Check the workflow logs for details.

Bare get_env() inside the generate contents heredoc is written literally
to provider.tf and then rejected by OpenTofu as an unknown function.
Wrapping in ${} causes Terragrunt to substitute the value at generation
time so the written file contains the actual token string.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

✅ Terragrunt plan completed for axiom/unicornops/ directory. Check the workflow logs for details.

@lazzurs lazzurs merged commit 89dab44 into main May 17, 2026
3 checks passed
@lazzurs lazzurs deleted the feat/axiom-dollarbox-prd-dataset branch May 17, 2026 21:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant