Skip to content

[PRODUCTION] Update production Airflow environment #46

[PRODUCTION] Update production Airflow environment

[PRODUCTION] Update production Airflow environment #46

Workflow file for this run

name: release
on:
pull_request:
types:
- closed
branches:
- release
jobs:
tests:
runs-on: ubuntu-latest
if: github.event.pull_request.merged == true
steps:
- uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: 3.8
- name: Install dependencies
run: |
cat airflow_variables_prod.json | sed -e s/\\/home\\/airflow\\/gcs\\/dags\\/// > airflow_variables_ci.json
python -m pip install --upgrade pip
pip install -r requirements-ci.txt
- name: Init Airflow SQLite database
run: airflow db init
- name: Import Airflow variables
run: airflow variables import airflow_variables_ci.json
- name: Pytest
run: pytest dags/
release:
runs-on: ubuntu-latest
needs: [tests]
# deploy only occurs when pr is merged
if: >-
github.event.pull_request.merged == true &&
github.repository == 'stellar/stellar-etl-airflow'
steps:
- uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: 3.8
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install google-cloud-storage==2.1.0
- name: Authenticate to hubble GCP
uses: google-github-actions/auth@v1
with:
credentials_json: "${{ secrets.CREDS_PROD_HUBBLE }}"
- name: Upload files to prod GCS bucket
run: python dags/stellar_etl_airflow/add_files_to_composer.py --bucket $BUCKET --env prod
env:
GOOGLE_CLOUD_PROJECT: hubble-261722
BUCKET: us-central1-hubble-2-d948d67b-bucket
- name: Update Airflow variables
uses: actions-hub/gcloud@master
env:
PROJECT_ID: hubble-261722
APPLICATION_CREDENTIALS: "${{ secrets.CREDS_TEST_HUBBLE }}"
COMPOSER_ENVIRONMENT: hubble-2
LOCATION: us-central1
with:
args: >
components install kubectl && gcloud composer environments run
$COMPOSER_ENVIRONMENT --location $LOCATION variables import
-- gcsfuse/variables.json