Skip to content

Create Backup Table #66

Create Backup Table

Create Backup Table #66

name: Create Backup Table
on:
schedule:
- cron: '15 3 * * *'
workflow_dispatch:
jobs:
run-etl:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: create-json
id: create-json
uses: jsdaniell/create-json@1.1.2
with:
name: "credentials.json"
json: ${{ secrets.GOOGLE_CREDENTIALS }}
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.9'
- name: Install ODBC Driver and Dependencies
run: |
sudo apt-get update
sudo apt-get install -y curl apt-transport-https unixodbc-dev
curl -s https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl -s https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install -y msodbcsql17
- name: Validate ODBC Driver
run: odbcinst -j
- name: Install Python Dependencies
run: pip install pyodbc
- name: Configure odbcinst.ini
run: |
echo "[ODBC Driver 17 for SQL Server]" | sudo tee -a /etc/odbcinst.ini
echo "Description=Microsoft ODBC Driver 17 for SQL Server" | sudo tee -a /etc/odbcinst.ini
echo "Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.*.so" | sudo tee -a /etc/odbcinst.ini
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Run ETL script
env:
GOOGLE_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }}
TABLE_ID: ${{ secrets.TABLE_ID }}
BACKUP_TABLE_ID: ${{ secrets.BACKUP_TABLE_ID }}
ANALISTA_DADOS_KEY_API: ${{ secrets.ANALISTA_DADOS_KEY_API }}
ANALISTA_BI_KEY_API: ${{ secrets.ANALISTA_BI_KEY_API }}
CIENTISTA_DADOS_KEY_API: ${{ secrets.CIENTISTA_DADOS_KEY_API }}
ENGENHEIRO_DADOS_KEY_API: ${{ secrets.ENGENHEIRO_DADOS_KEY_API }}
AZURE_SQL_SERVER: ${{ secrets.AZURE_SQL_SERVER }}
AZURE_SQL_DATABASE: ${{ secrets.AZURE_SQL_DATABASE }}
AZURE_SQL_USER: ${{ secrets.AZURE_SQL_USER }}
AZURE_SQL_PASSWORD: ${{ secrets.AZURE_SQL_PASSWORD }}
run: |
python backup/backup.py