diff --git a/.forgejo/workflows/playing-around.yaml b/.forgejo/workflows/playing-around.yaml new file mode 100644 index 0000000..0bca3f0 --- /dev/null +++ b/.forgejo/workflows/playing-around.yaml @@ -0,0 +1,70 @@ +# This workflow will build and test the Rails application + +name: Build and Test Rails Application + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + build: + runs-on: ubuntu-latest + + services: + postgres: + image: postgres:latest + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + POSTGRES_DB: debshots_test + ports: + - 5432:5432 + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + steps: + - uses: actions/checkout@v2 + + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: 3.x + + - name: Install dependencies + run: | + gem install bundler + bundle install + + - name: Set up Node.js + uses: actions/setup-node@v2 + with: + node-version: '14' + + - name: Install Yarn + run: npm install -g yarn + + - name: Install Node.js dependencies + run: yarn install + + - name: Set up database + run: | + bundle exec rails db:create db:migrate + env: + RAILS_ENV: test + DATABASE_URL: postgres://postgres:postgres@localhost:5432/debshots_test + + - name: Run tests + run: bundle exec rails test + env: + RAILS_ENV: test + DATABASE_URL: postgres://postgres:postgres@localhost:5432/debshots_test + + - name: Build assets + run: bundle exec rails assets:precompile + env: + RAILS_ENV: production