diff --git a/.github/workflows/backend.yaml b/.github/workflows/backend.yaml index 2daa9e8..3e191ac 100644 --- a/.github/workflows/backend.yaml +++ b/.github/workflows/backend.yaml @@ -2,9 +2,10 @@ name: Go Integration & Test Suite on: push: - branches: [ main, v0.1.5, 0.2.0 ] pull_request: - branches: [ main ] + +permissions: + contents: read jobs: test: @@ -13,9 +14,9 @@ jobs: postgres: image: postgres:16-alpine env: - POSTGRES_USER: ${{ vars.POSTGRES_USER }} - POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD }} - POSTGRES_DB: ${{ vars.POSTGRES_DB }} + POSTGRES_USER: ${{ vars.POSTGRES_USER || 'elephant_admin' }} + POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD || 'local_test_password' }} + POSTGRES_DB: ${{ vars.POSTGRES_DB || 'elephant_messenger' }} ports: - 42359:5432 options: >- @@ -49,30 +50,30 @@ jobs: - name: Execute Package Test Automation Suite env: - HOST: ${{ vars.HOST }} - PORT: ${{ vars.PORT }} - POSTGRES_USER: ${{ vars.POSTGRES_USER }} - POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD }} # FIXED: Removed extra '{' - POSTGRES_DB: ${{ vars.POSTGRES_DB }} - POSTGRES_PORT: ${{ vars.POSTGRES_PORT }} - POSTGRES_HOST: ${{ vars.POSTGRES_HOST }} - JWT_SECRET: ${{ secrets.JWT_SECRET }} - ARGON_MEMORY: ${{ vars.ARGON_MEMORY }} - ARGON_ITERATIONS: ${{ vars.ARGON_ITERATIONS }} - ARGON_PARALLELISM: ${{ vars.ARGON_PARALLELISM }} + HOST: ${{ vars.HOST || '127.0.0.1' }} + PORT: ${{ vars.PORT || '8080'}} + POSTGRES_USER: ${{ vars.POSTGRES_USER || 'elephant_admin' }} + POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD || 'local_test_password' }} + POSTGRES_DB: ${{ vars.POSTGRES_DB || 'elephant_messenger' }} + POSTGRES_PORT: ${{ vars.POSTGRES_PORT || '42359' }} + POSTGRES_HOST: ${{ vars.POSTGRES_HOST || 'localhost' }} + JWT_SECRET: ${{ secrets.JWT_SECRET || 'testing_only_secret_key_string_32_chars' }} + ARGON_MEMORY: ${{ vars.ARGON_MEMORY || '65536' }} + ARGON_ITERATIONS: ${{ vars.ARGON_ITERATIONS || '1' }} + ARGON_PARALLELISM: ${{ vars.ARGON_PARALLELISM || '2'}} run: | cd server sudo apt-get update && sudo apt-get install -y postgresql-client - PGPASSWORD="${{ secrets.POSTGRES_PASSWORD }}" psql -h "${{ vars.POSTGRES_HOST }}" -p "${{ vars.POSTGRES_PORT }}" -U "${{ vars.POSTGRES_USER }}" -d "${{ vars.POSTGRES_DB }}" \ + PGPASSWORD="$POSTGRES_PASSWORD" psql -h "$POSTGRES_HOST" -p "$POSTGRES_PORT" -U "$POSTGRES_USER" -d "$POSTGRES_DB" \ -f migrations/001_create_users_up.sql \ -f migrations/002_create_refresh_tokens_up.sql \ -f migrations/003_add_search_indexes_up.sql \ -f migrations/004_create_message_up.sql \ - -f migrations/005_create_message_status_up.sql\ + -f migrations/005_create_message_status_up.sql \ -f migrations/006_create_groups_table_up.sql go run main.go & for i in $(seq 1 10); do - curl -sf http://${{ vars.POSTGRES_HOST }}:${{ vars.PORT }}/api/health && break + curl -sf http://$HOST:$PORT/api/health && break echo "Waiting for server... attempt $i" sleep 2 done