setting-up-astro-project

Initialiser et configurer des projets Astro/Airflow. À utiliser lorsque l'utilisateur souhaite créer un nouveau projet, configurer des dépendances, configurer des connexions/variables, ou comprendre la structure du projet. Pour l'exécution de l'environnement local, voir managing-astro-local-env.

npx skills add https://github.com/astronomer/agents --skill setting-up-astro-project

Configuration du Projet Astro

Cette skill vous aide à initialiser et configurer des projets Airflow en utilisant la CLI Astro.

Pour exécuter l'environnement local, voir la skill managing-astro-local-env. Pour écrire des DAGs, voir la skill authoring-dags. Alternative open-source : Si l'utilisateur n'est pas sur Astro, guidez-le vers le quickstart Docker Compose d'Apache Airflow pour le développement local et la Helm chart pour la production. Pour les stratégies de déploiement, utilisez la skill deploying-airflow.


Initialiser un nouveau projet

astro dev init

Crée cette structure :

project/
├── dags/                # Fichiers DAG
├── include/             # SQL, configs, fichiers support
├── plugins/             # Plugins Airflow personnalisés
├── tests/               # Tests unitaires
├── Dockerfile           # Personnalisation de l'image
├── packages.txt         # Paquets au niveau OS
├── requirements.txt     # Paquets Python
└── airflow_settings.yaml # Connexions, variables, pools

Ajouter des dépendances

Paquets Python (requirements.txt)

apache-airflow-providers-snowflake==5.3.0
pandas==2.1.0
requests>=2.28.0

Paquets OS (packages.txt)

gcc
libpq-dev

Dockerfile personnalisé

Pour les configurations complexes (PyPI privé, scripts personnalisés) :

FROM quay.io/astronomer/astro-runtime:12.4.0

RUN pip install --extra-index-url https://pypi.example.com/simple my-package

Après modification des dépendances : Exécutez astro dev restart


Configurer les connexions et variables

airflow_settings.yaml

Chargé automatiquement au démarrage de l'environnement :

airflow:
  connections:
    - conn_id: my_postgres
      conn_type: postgres
      host: host.docker.internal
      port: 5432
      login: user
      password: pass
      schema: mydb

  variables:
    - variable_name: env
      variable_value: dev

  pools:
    - pool_name: limited_pool
      pool_slot: 5

Exporter/Importer

# Exporter depuis l'environnement en cours d'exécution
astro dev object export --connections --file connections.yaml

# Importer dans l'environnement
astro dev object import --connections --file connections.yaml

Valider avant d'exécuter

Parsez les DAGs pour détecter les erreurs sans démarrer l'environnement complet :

astro dev parse

Skills connexes

  • managing-astro-local-env : Démarrer, arrêter et dépanner l'environnement local
  • authoring-dags : Écrire et valider des DAGs (utilise les outils MCP)
  • testing-dags : Tester les DAGs (utilise les outils MCP)
  • deploying-airflow : Déployer les DAGs en production (Astro, Docker Compose, Kubernetes)

Skills similaires