Files
home-assistant/.gitea/workflows/setup_database.yml
T

39 lines
1.4 KiB
YAML

name: Setup PostgreSQL Database
on:
workflow_dispatch:
jobs:
setup-database:
runs-on: ubuntu-latest
steps:
- name: Install PostgreSQL client
run: |
sudo apt-get update
sudo apt-get install -y postgresql-client
- name: Create database and user
env:
DB_HOST: ${{ secrets.POSTGRES_HOST }}
DB_PORT: ${{ secrets.POSTGRES_PORT }}
PGPASSWORD: ${{ secrets.POSTGRES_ROOT_PASSWORD }}
DB_NAME: ${{ secrets.DB_NAME }}
DB_USER: ${{ secrets.DB_USER }}
DB_PASSWORD: ${{ secrets.DB_PASSWORD }}
run: |
psql -h ${DB_HOST} -p ${DB_PORT} -U postgres -c "CREATE DATABASE ${DB_NAME};"
psql -h ${DB_HOST} -p ${DB_PORT} -U postgres -c "CREATE USER ${DB_USER} WITH PASSWORD '${DB_PASSWORD}';"
psql -h ${DB_HOST} -p ${DB_PORT} -U postgres -c "GRANT ALL PRIVILEGES ON DATABASE ${DB_NAME} TO ${DB_USER};"
- name: Verify setup
env:
DB_HOST: ${{ secrets.POSTGRES_HOST }}
DB_PORT: ${{ secrets.POSTGRES_PORT }}
PGPASSWORD: ${{ secrets.POSTGRES_ROOT_PASSWORD }}
DB_NAME: ${{ secrets.DB_NAME }}
DB_USER: ${{ secrets.DB_USER }}
run: |
echo "Database setup completed successfully!"
psql -h ${DB_HOST} -p ${DB_PORT} -U postgres -c "\l" | grep ${DB_NAME}
psql -h ${DB_HOST} -p ${DB_PORT} -U postgres -c "\du" | grep ${DB_USER}