name: Phoenix on: push: branches: [$default-branch] pull_request: branches: [$default-branch] jobs: build: name: Build and test runs-on: ubuntu-latest env: {MIX_ENV: test} services: postgres: image: postgres:13 env: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: phoenix_test # Replace with your test database name! options: >- --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 ports: ['5432:5432'] steps: - uses: actions/checkout@v2 - name: Set up Elixir uses: actions/setup-elixir@v1 with: elixir-version: '1.10.3' # Define the elixir version [required] otp-version: '22.3' # Define the OTP version [required] - name: Restore dependencies cache uses: actions/cache@v2 with: path: deps key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }} restore-keys: ${{ runner.os }}-mix- - name: Restore build cache uses: actions/cache@v2 with: path: deps key: ${{ runner.os }}-build-${{ hashFiles('**/mix.lock') }} restore-keys: ${{ runner.os }}-build- - name: Install dependencies run: mix deps.get - name: Run tests run: mix test