From 2369ef4eae21bb1b50f9eb189549d04e06cd84db Mon Sep 17 00:00:00 2001 From: Andre Gomes Date: Thu, 8 Feb 2024 14:19:18 -0300 Subject: [PATCH] fix: test workflow --- .github/workflows/rails.yml | 32 ++++++++++++++++++++++---------- db/schema.rb | 15 +++++++++++++++ 2 files changed, 37 insertions(+), 10 deletions(-) create mode 100644 db/schema.rb diff --git a/.github/workflows/rails.yml b/.github/workflows/rails.yml index 939902c..e27d467 100644 --- a/.github/workflows/rails.yml +++ b/.github/workflows/rails.yml @@ -8,29 +8,41 @@ jobs: test: runs-on: ubuntu-latest services: - postgres: - image: mysql:8.0 + mysql2: + image: mysql:5.7 ports: - "3306:3306" env: - POSTGRES_DB: rails_test - POSTGRES_USER: rails - POSTGRES_PASSWORD: password + MYSQL_DATABASE: rails_test + MYSQL_USER: rails + MYSQL_PASSWORD: password + MYSQL_TCP_PORT: 3306 + MYSQL_RANDOM_ROOT_PASSWORD: true + MYSQL_ONETIME_PASSWORD: true + # Before continuing, verify the mysql container is reachable from the ubuntu host + options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + env: RAILS_ENV: test - DATABASE_URL: "postgres://rails:password@localhost:3306/rails_test" + NODE_ENV: test + DATABASE_URL: "mysql2://rails:password@127.0.0.1:3306/rails_test" # localhost doesn't work because the application can't connect to the linux host socket steps: - name: Checkout code uses: actions/checkout@v3 - # Add or replace dependency steps here - name: Install Ruby and gems uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0 with: bundler-cache: true - # Add or replace database setup steps here - name: Set up database schema - run: rails db:schema:load - # Add or replace test runners here + run: bundle exec rails db:create db:migrate + - name: Install Node.js and packages + uses: actions/setup-node@v2 + with: + node-version: '18' + - name: Install Yarn and packages + run: npm install -g yarn@1.22.19 && yarn install + - name: Run webpacker + run: NODE_OPTIONS="--openssl-legacy-provider" bundle exec rails webpacker:compile - name: Run rspec run: bundle exec rspec diff --git a/db/schema.rb b/db/schema.rb new file mode 100644 index 0000000..77bcf0f --- /dev/null +++ b/db/schema.rb @@ -0,0 +1,15 @@ +# This file is auto-generated from the current state of the database. Instead +# of editing this file, please use the migrations feature of Active Record to +# incrementally modify your database, and then regenerate this schema definition. +# +# This file is the source Rails uses to define your schema when running `bin/rails +# db:schema:load`. When creating a new database, `bin/rails db:schema:load` tends to +# be faster and is potentially less error prone than running all of your +# migrations from scratch. Old migrations may fail to apply correctly if those +# migrations use external dependencies or application code. +# +# It's strongly recommended that you check this file into your version control system. + +ActiveRecord::Schema.define(version: 0) do + +end