Ich habe SystemSpec (RSpec) und Rubocop mit CircleCI ausgeführt.
Ich habe den Quellcode, den ich tatsächlich aus dem Grundlernen verwendet habe, zusammengefasst und hoffe, dass er hilfreich sein wird.
Lehrmaterial: Einführung Guide-CircleCI Ich habe gerade CircleCI gestartet und es daher leicht verständlich zusammengefasst
Ich habe das offiziell vorbereitete Introduction Guide --CircleCI erstellt, um die grundlegende Verwendung zu kennen. Es wird empfohlen, dass Sie lernen können, während Sie Ihre Hände bewegen. Dies dauert etwa 30 Minuten.
Als nächstes las ich Ich habe gerade CircleCI gestartet, daher habe ich es leicht verständlich zusammengefasst. Dieser Artikel beschreibt CircleCI ausführlich. Nach einer kurzen Lektüre habe ich diesen Artikel erneut gelesen, wenn ich Fragen hatte.
Basierend auf den offiziellen CircleCI-Public / circleci-demo-ruby-rail Ich habe es unter Bezugnahme auf [circleCI] Rubocop- und rspec-Test in Zusammenarbeit mit github mit der Rails-App ausführen implementiert.
Da das offizielle Beispiel die neueste Version verwendet, gab es nicht viele Referenzen wie Qiita.
Dieses Mal werde ich die neueste Version verwenden: 2.1.
.circleci/config.yml
yml:.circleci/config.yml
version: 2.1
orbs:
ruby: circleci/[email protected]
jobs:
build:
docker:
- image: circleci/ruby:2.5.1-node-browsers
environment:
BUNDLER_VERSION: 2.1.4
steps:
- checkout
- ruby/install-deps
test:
parallelism: 3
docker:
- image: circleci/ruby:2.5.1-node-browsers
environment:
DB_HOST: 127.0.0.1
RAILS_ENV: test
BUNDLER_VERSION: 2.1.4
- image: circleci/mysql:8.0
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_ALLOW_EMPTY_PASSWORD: 'true'
MYSQL_ROOT_HOST: '%'
steps:
- checkout
- ruby/install-deps
- run: mv config/database.yml.ci config/database.yml
- run:
name: Wait for DB
command: dockerize -wait tcp://localhost:3306 -timeout 1m
- run: bundle exec rake db:create
- run: bundle exec rake db:schema:load
# Run rspec in parallel
- ruby/rspec-test
- ruby/rubocop-check
workflows:
version: 2
build_and_test:
jobs:
- build
- test:
requires:
- build
config/database.yml.ci
yml:config/database.yml.ci
test:
adapter: mysql2
encoding: utf8
pool: 5
username: 'root'
port: 3306
host: '127.0.0.1'
database: ci_test
Recommended Posts