CI/CD Integration
How to run TameFlare-governed agents in CI/CD pipelines. The proxy model works in any environment that supports HTTP_PROXY - GitHub Actions, GitLab CI, Jenkins, CircleCI, etc.
GitHub Actions example
name: Agent test with TameFlare
on: [push]
jobs:
test-agent:
runs-on: ubuntu-latest
env:
TF_DASHBOARD_URL: https://tameflare.com
TF_GATEWAY_ID: ${{ secrets.TF_GATEWAY_ID }}
TF_GATEWAY_TOKEN: ${{ secrets.TF_GATEWAY_TOKEN }}
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Initialize TameFlare
run: npx @tameflare/cli init --dashboard-url $TF_DASHBOARD_URL --gateway-id $TF_GATEWAY_ID --gateway-token $TF_GATEWAY_TOKEN
- name: Run agent through TameFlare
run: npx @tameflare/cli run --gateway "ci-agent" python my_agent.py
- name: Check results
run: npx @tameflare/cli logs --last 20Tip
Create a dedicated gateway for CI in the dashboard. Store the gateway ID and token as GitHub Actions secrets.
Key considerations
Action limits in CI
CI runs count toward your action limit. For high-volume CI pipelines, consider:
- Using the Starter tier's 1,000 actions/month for testing
- Upgrading to Pro (10,000 actions/month) for production CI
- Using
monitorenforcement level in CI to log without blocking
Artifact collection
Save TameFlare logs as CI artifacts for debugging:
- name: Upload TameFlare logs
if: always()
uses: actions/upload-artifact@v4
with:
name: tameflare-logs
path: tameflare-traffic.log# Generate the log file before uploading
npx @tameflare/cli logs --last 50 > tameflare-traffic.logNext steps
- Quick Start - getting started
- Architecture - how TameFlare works