rubyforgood/casa

View on GitHub
.github/workflows/docker.yml

Summary

Maintainability
Test Coverage
name: docker

on:
  push:
    branches:
      - main
    paths-ignore:
      - "doc/**"
      - "**/*.md"
  pull_request:
    branches:
      - main
    paths-ignore:
      - "doc/**"
      - "**/*.md"
concurrency:
  group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
  cancel-in-progress: true

jobs:
  docker:
    runs-on: ubuntu-latest
    timeout-minutes: 20
    env:
      RAILS_ENV: test
    steps:
      - name: Checkout repository
        uses: actions/checkout@v4
      - name: Create downloads folder
        run: |
          mkdir -p tmp/downloads
          chmod 777 tmp tmp/downloads
      - name: docker UP
        run: docker-compose up -d
      - name: db:reset
        run: docker-compose exec -T web rails db:reset
      - name: compile assets
        run: docker-compose exec -T web bundle exec rails assets:precompile
      - name: Test
        run: docker-compose exec -T web bundle exec rspec spec --format documentation

      - name: Archive selenium screenshots
        if: ${{ failure() }}
        uses: actions/upload-artifact@v4
        with:
          name: selenium-screenshots
          path: |
            ${{ github.workspace }}/tmp/capybara/*.png
            ${{ github.workspace }}/tmp/capybara/*.html