This document explains how to run Rails CI against Ruby master locally. This document is provided as is.
- Docker
- git
git clone https://github.com/rails/rails.git
cd rails
git clone https://github.com/rails/buildkite-config .buildkite/
RUBY_IMAGE=rubylang/ruby:master-nightly-focal docker-compose -f .buildkite/docker-compose.yml build base
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm postgresdb runner actioncable 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner actionmailbox 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner actionmailer 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner actionpack 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner actiontext 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner actionview 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner activejob 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner activemodel 'rake test'
CI=1 MYSQL_IMAGE=mysql:5.7 docker-compose -f .buildkite/docker-compose.yml run --rm mysqldb runner activerecord 'rake db:mysql:rebuild test:mysql2'
CI=1 POSTGRES_IMAGE=postgres:9.6-alpine docker-compose -f .buildkite/docker-compose.yml run --rm postgresdb runner activerecord 'rake db:postgresql:rebuild test:postgresql'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner activerecord 'rake test:sqlite3'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner activestorage 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner activesupport 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner guides 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner railties 'rake test'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner actioncable 'rake test:integration'
CI=1 docker-compose -f .buildkite/docker-compose.yml run --rm default runner activejob 'rake test:integration'
This document does not include isolation test and Active Record CI against sqlite3_mem and MariaDB