← astronomer-dataCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to astronomer-data
Snapshot Sep 30, 2026 · 23:17 UTC · version 0.1.0
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "managing-astro-deployments",
"description": "Manage Astronomer production deployments with Astro CLI. Use when the user wants to authenticate, switch workspaces, create/update/delete deployments, or deploy code to production.",
"included_files": [],
"skill_md_contents": "---\nname: managing-astro-deployments\ndescription: Manage Astronomer production deployments with Astro CLI. Use when the user wants to authenticate, switch workspaces, create/update/delete deployments, or deploy code to production.\n---\n\n# Astro Deployment Management\n\nThis skill helps you manage production Astronomer deployments using the Astro CLI.\n\n> **For local development**, see the **managing-astro-local-env** skill.\n> **For production troubleshooting**, see the **troubleshooting-astro-deployments** skill.\n\n---\n\n## Authentication\n\nAll deployment operations require authentication:\n\n```bash\n# Login to Astronomer (opens browser for OAuth)\nastro login\n```\n\nAuthentication tokens are stored locally for subsequent commands. Run this before any deployment operations.\n\n---\n\n## Workspace Management\n\nDeployments are organized into workspaces:\n\n```bash\n# List all accessible workspaces\nastro workspace list\n\n# Switch to a specific workspace\nastro workspace switch <WORKSPACE_ID>\n```\n\nWorkspace context is maintained between sessions. Most deployment commands operate within the current workspace context.\n\n---\n\n## List and Inspect Deployments\n\n```bash\n# List deployments in current workspace\nastro deployment list\n\n# List deployments across all workspaces\nastro deployment list --all\n\n# Inspect specific deployment (detailed info)\nastro deployment inspect <DEPLOYMENT_ID>\n\n# Inspect by name (alternative to ID)\nastro deployment inspect --deployment-name data-service-stg\n```\n\n### What `inspect` Shows\n\n- Deployment status (HEALTHY, UNHEALTHY)\n- Runtime version and Airflow version\n- Executor type (CELERY, KUBERNETES, LOCAL)\n- Scheduler configuration (size, count)\n- Worker queue settings (min/max workers, concurrency, worker type)\n- Resource quotas (CPU, memory)\n- Environment variables\n- Last deployment timestamp and current tag\n- Webserver and API URLs\n- High availability status\n\n---\n\n## Create Deployments\n\n```bash\n# Create with default settings\nastro deployment create\n\n# Create with specific executor\nastro deployment create --label production --executor celery\nastro deployment create --label staging --executor kubernetes\n\n# Executor options:\n# - celery: Best for most production workloads\n# - kubernetes: Best for dynamic scaling, isolated tasks\n# - local: Best for development only\n```\n\n---\n\n## Update Deployments\n\n```bash\n# Enable DAG-only deploys (faster iteration)\nastro deployment update <DEPLOYMENT_ID> --dag-deploy-enabled\n\n# Update other settings (use --help for full options)\nastro deployment update <DEPLOYMENT_ID> --help\n```\n\n---\n\n## Delete Deployments\n\n```bash\n# Delete a deployment (requires confirmation)\nastro deployment delete <DEPLOYMENT_ID>\n```\n\n**Destructive**: This cannot be undone. All DAGs, task history, and metadata will be lost.\n\n---\n\n## Deploy Code to Production\n\n### Full Deploy\n\nDeploy both DAGs and Docker image (required when dependencies change):\n\n```bash\nastro deploy <DEPLOYMENT_ID>\n```\n\nUse when:\n- Dependencies changed (`requirements.txt`, `packages.txt`, `Dockerfile`)\n- First deployment of new project\n- Significant infrastructure changes\n\n### DAG-Only Deploy (Recommended for Iteration)\n\nDeploy only DAG files, skip Docker image rebuild:\n\n```bash\nastro deploy <DEPLOYMENT_ID> --dags\n```\n\nUse when:\n- Only DAG files changed (Python files in `dags/` directory)\n- Quick iteration during development\n- Much faster than full deploy (seconds vs minutes)\n\n**Requires**: `--dag-deploy-enabled` flag set on deployment (see Update Deployments)\n\n### Image-Only Deploy\n\nDeploy only Docker image, skip DAG sync:\n\n```bash\nastro deploy <DEPLOYMENT_ID> --image-only\n```\n\nUse when:\n- Only dependencies changed\n- Dockerfile or requirements updated\n- No DAG changes\n\n### Force Deploy\n\nBypass safety checks and deploy:\n\n```bash\nastro deploy <DEPLOYMENT_ID> --force\n```\n\n**Caution**: Skips validation that could prevent broken deployments.\n\n---\n\n## Deployment API Tokens\n\nManage API tokens for programmatic access to deployments:\n\n```bash\n# List tokens for a deployment\nastro deployment token list --deployment-id <DEPLOYMENT_ID>\n\n# Create a new token\nastro deployment token create \\\n --deployment-id <DEPLOYMENT_ID> \\\n --name \"CI/CD Pipeline\" \\\n --role DEPLOYMENT_ADMIN\n\n# Create token with expiration\nastro deployment token create \\\n --deployment-id <DEPLOYMENT_ID> \\\n --name \"Temporary Access\" \\\n --role DEPLOYMENT_ADMIN \\\n --expiry 30 # Days until expiration (0 = never expires)\n```\n\n**Roles**:\n- `DEPLOYMENT_ADMIN`: Full access to deployment\n\n**Note**: Token value is only shown at creation time. Store it securely.\n\n---\n\n## Common Workflows\n\n### First-Time Production Deployment\n\n```bash\n# 1. Login\nastro login\n\n# 2. Switch to production workspace\nastro workspace list\nastro workspace switch <PROD_WORKSPACE_ID>\n\n# 3. Create deployment\nastro deployment create --label production --executor celery\n\n# 4. Note the deployment ID, then deploy\nastro deploy <DEPLOYMENT_ID>\n```\n\n### Iterative DAG Development\n\n```bash\n# 1. Enable fast deploys (one-time setup)\nastro deployment update <DEPLOYMENT_ID> --dag-deploy-enabled\n\n# 2. Make DAG changes locally\n\n# 3. Deploy quickly\nastro deploy <DEPLOYMENT_ID> --dags\n```\n\n### Promoting Code from Staging to Production\n\n```bash\n# 1. Deploy to staging first\nastro workspace switch <STAGING_WORKSPACE_ID>\nastro deploy <STAGING_DEPLOYMENT_ID>\n\n# 2. Test in staging\n\n# 3. Deploy same code to production\nastro workspace switch <PROD_WORKSPACE_ID>\nastro deploy <PROD_DEPLOYMENT_ID>\n```\n\n---\n\n## Configuration Management\n\n```bash\n# View CLI configuration\nastro config get\n\n# Set configuration value\nastro config set <KEY> <VALUE>\n\n# Check CLI version\nastro version\n\n# Upgrade CLI to latest version\nastro upgrade\n```\n\n---\n\n## Tips\n\n- Use `--dags` flag for fast iteration (seconds vs minutes)\n- Always test in staging workspace before production\n- Use `deployment inspect` to verify deployment health before deploying\n- Deployment IDs are permanent, names can change\n- Most commands work with deployment ID; `inspect` also accepts `--deployment-name`\n- Set `--dag-deploy-enabled` once per deployment for fast deploys\n- Keep workspace context visible with `astro workspace list` (shows asterisk for current)\n\n---\n\n## Related Skills\n\n- **troubleshooting-astro-deployments**: Investigate deployment issues, view logs, manage environment variables\n- **managing-astro-local-env**: Manage local Airflow development environment\n- **setting-up-astro-project**: Initialize and configure Astro projects\n"
}SHA-256: e4f0fbc1f0dea30f1cc75c45bbc24b4de579de49f5dd25d34939a721612c0ee7