Skip to main content
Basecut snapshots consist of manifest metadata, schema definitions, warnings (optional), and compressed CSV data files. You can store these artifacts in cloud storage or on your local filesystem. Store snapshots in Amazon S3 for team sharing and self-hosted agent integration.

Configuration

Authentication

Option 1: AWS CLI credentials (recommended for development)
Basecut automatically uses your ~/.aws/credentials profile.

S3-Compatible Backends (Cloudflare R2, MinIO, LocalStack)

Use provider: s3 with a custom endpoint:
Set credentials using standard AWS environment variables:
Option 2: Environment variables
Option 3: IAM role (recommended for CI/CD and agents) No credentials needed—EC2 instances, ECS tasks, or GitHub Actions with OIDC can use IAM roles.

Required Permissions

Bucket Organization

Cloud object keys are stored under snapshots/<job-id> (optionally prefixed):
Use basecut snapshot list and basecut snapshot inspect to work with snapshot names/tags; object keys are internal storage details.
Store snapshots in Google Cloud Storage buckets.

Configuration

Authentication

Option 1: gcloud CLI (recommended for development)
Basecut uses Application Default Credentials from ~/.config/gcloud. Option 2: Service account key
Option 3: Workload Identity (recommended for GKE) No credentials needed—pods with Workload Identity automatically authenticate.

Required Permissions

Grant the service account Storage Object Admin on the bucket:
Or use a custom role with:
  • storage.objects.create
  • storage.objects.get
  • storage.objects.list

Local Filesystem

Store snapshots on your local machine. Useful for development and air-gapped environments.

Configuration

Relative paths are allowed, but absolute paths are recommended for clarity.

Directory Structure

Local output writes the snapshot artifact directly to your configured output.path:

Machine Identification

Local snapshots capture machine metadata for safety. When restoring on a different machine, Basecut warns you but allows the operation if you have access to the file path.

Use Cases

  • Development - Quick iteration without cloud storage setup
  • Air-gapped environments - No internet access required
  • Testing - Snapshots stay on your machine, no cloud costs
Not recommended for teams: Local snapshots can’t be shared without manual file copying. Use S3/GCS for team collaboration.

Choosing a Provider

Recommendation: Start with local for initial testing, migrate to S3/GCS when collaborating with teams or using self-hosted agents.

Snapshot Naming and Versioning

Reference snapshots by name and optional version:
Each snapshot create with the same --name creates a new tagged version. Previous versions remain accessible.

Next Steps

Execution Modes

Understand how storage provider affects execution mode

CI/CD Integration

Use cloud storage in GitHub Actions

YAML Reference

Complete output configuration options

Troubleshooting

Debug storage authentication issues