Skip to content

Commit 013aa0a

Browse files
authored
Merge pull request #347 from platanus/circle-ci-config2
Setup Circle CI
2 parents b156e5f + b069a04 commit 013aa0a

File tree

8 files changed

+115
-35
lines changed

8 files changed

+115
-35
lines changed

.circleci/config.yml

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
version: 2.1
2+
orbs:
3+
ruby: circleci/[email protected]
4+
browser-tools: circleci/[email protected]
5+
jobs:
6+
test:
7+
parameters:
8+
ruby-version:
9+
type: string
10+
docker:
11+
- image: circleci/ruby:<< parameters.ruby-version >>-node
12+
environment:
13+
RAILS_ENV: test
14+
NODE_ENV: test
15+
BUNDLE_PATH: vendor/bundle
16+
SPROCKETS: false
17+
executor: ruby/default
18+
steps:
19+
- checkout
20+
- browser-tools/install-chrome
21+
- browser-tools/install-chromedriver
22+
- restore_cache:
23+
keys:
24+
- bundler-dependencies-{{ checksum "Gemfile.lock" }}
25+
- bundler-dependencies-
26+
- run:
27+
name: Install bundle dependencies
28+
command: |
29+
BUNDLER_VERSION=$(cat Gemfile.lock | tail -1 | tr -d " ")
30+
gem install bundler:$BUNDLER_VERSION
31+
bundle _$(echo $BUNDLER_VERSION)_ install
32+
- save_cache:
33+
key: bundler-dependencies-{{ checksum "Gemfile.lock" }}
34+
paths:
35+
- vendor/bundle
36+
- run:
37+
name: Setup database
38+
command: (cd spec/dummy && bundle exec rake db:setup)
39+
- run:
40+
name: Prepare Assets
41+
command: |
42+
bundle exec rake prepare_assets
43+
(cd spec/dummy && bundle exec rake webpacker:compile)
44+
- run:
45+
name: Utils Tests
46+
command: |
47+
RSPEC_JUNIT_ARGS="-r rspec_junit_formatter -f RspecJunitFormatter -o test_results/utils-rspec.xml"
48+
RSPEC_FORMAT_ARGS="-f progress --no-color -p 10"
49+
bundle exec rspec ./spec/lib $RSPEC_FORMAT_ARGS $RSPEC_JUNIT_ARGS
50+
- run:
51+
name: Run Webpack Tests
52+
command: |
53+
RSPEC_JUNIT_ARGS="-r rspec_junit_formatter -f RspecJunitFormatter -o test_results/webpack-rspec.xml"
54+
RSPEC_FORMAT_ARGS="-f progress --no-color -p 10"
55+
export SPROCKETS=false
56+
bundle exec rspec ./spec/features $RSPEC_FORMAT_ARGS $RSPEC_JUNIT_ARGS
57+
- run:
58+
name: Run Sprockets Tests
59+
command: |
60+
RSPEC_JUNIT_ARGS="-r rspec_junit_formatter -f RspecJunitFormatter -o test_results/sprockets-rspec.xml"
61+
RSPEC_FORMAT_ARGS="-f progress --no-color -p 10"
62+
export SPROCKETS=true
63+
bundle exec rspec ./spec/features $RSPEC_FORMAT_ARGS $RSPEC_JUNIT_ARGS
64+
- store_test_results:
65+
path: test_results
66+
workflows:
67+
version: 2
68+
test:
69+
jobs:
70+
- test:
71+
matrix:
72+
parameters:
73+
ruby-version: ["2.5", "2.6", "2.7"]

.travis.yml

Lines changed: 0 additions & 24 deletions
This file was deleted.

Gemfile.lock

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,8 @@ GEM
266266
rspec-mocks (~> 3.9.0)
267267
rspec-support (~> 3.9.0)
268268
rspec-support (3.9.2)
269+
rspec_junit_formatter (0.4.1)
270+
rspec-core (>= 2, < 4, != 2.12.0)
269271
rubocop (0.65.0)
270272
jaro_winkler (~> 1.5.1)
271273
parallel (~> 1.10)
@@ -345,6 +347,7 @@ DEPENDENCIES
345347
puma
346348
rails (~> 5.2, >= 5.2.4.1)
347349
rspec-rails
350+
rspec_junit_formatter
348351
rubocop (~> 0.65.0)
349352
shoulda-matchers
350353
sqlite3

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# ActiveAdmin Addons
22
[![Gem Version](https://badge.fury.io/rb/activeadmin_addons.svg)](https://badge.fury.io/rb/activeadmin_addons)
3-
[![Build Status](https://secure.travis-ci.org/platanus/activeadmin_addons.svg?branch=master)](http://travis-ci.org/platanus/activeadmin_addons)
43

54
ActiveAdmin Addons will extend your ActiveAdmin and enable a set of addons you can optionally use to improve the ActiveAdmin UI and make it awesome.
65

Rakefile

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,36 @@ RDoc::Task.new(:rdoc) do |rdoc|
1414
rdoc.rdoc_files.include('lib/**/*.rb')
1515
end
1616

17+
task :prepare_assets do
18+
system "rm -rf spec/dummy/public/packs"
19+
system "rm -rf spec/dummy/public/packs-test"
20+
system "yarn install"
21+
system "yarn build"
22+
system "yarn prepublishOnly"
23+
system "(cd spec/dummy && yarn install)"
24+
system "rm -rf spec/dummy/node_modules/activeadmin_addons/spec"
25+
system "rm -rf spec/dummy/node_modules/activeadmin_addons/vendor"
26+
end
27+
1728
task :tests do
1829
system "rspec ./spec/lib"
1930
end
2031

2132
task :sprockets_tests do
22-
system "export SPROCKETS=true; yarn build; rspec ./spec/features"
33+
system "rake prepare_assets"
34+
system "export SPROCKETS=true; rspec ./spec/features"
2335
end
2436

2537
task :webpack_tests do
38+
system "rake prepare_assets"
2639
system "export SPROCKETS=false; rspec ./spec/features"
2740
end
2841

2942
task :all_tests do
43+
system "rake prepare_assets"
3044
system "rake tests"
31-
system "rake sprockets_tests"
32-
system "rake webpack_tests"
45+
system "export SPROCKETS=true; rspec ./spec/features"
46+
system "export SPROCKETS=false; rspec ./spec/features"
3347
end
3448

3549
Bundler::GemHelper.install_tasks

activeadmin_addons.gemspec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ Gem::Specification.new do |s|
3737
s.add_development_dependency "puma"
3838
s.add_development_dependency "rails", "~> 5.2", ">= 5.2.4.1"
3939
s.add_development_dependency "rspec-rails"
40+
s.add_development_dependency "rspec_junit_formatter"
4041
s.add_development_dependency "rubocop", "~> 0.65.0"
4142
s.add_development_dependency "shoulda-matchers"
4243
s.add_development_dependency "sqlite3"

bin/setup

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
# Exit if any subcommand fails
44
set -e
55

6-
# Set up Ruby dependencies via Bundler
6+
rm -rf node_modules
7+
rm -rf spec/dummy/node_modules
8+
export SPROCKETS=false
79
gem install bundler --conservative
810
bundle check || bundle install
9-
10-
cd spec/dummy
11-
bundle exec rake db:setup
12-
11+
bundle exec rake prepare_assets
12+
(cd spec/dummy && bundle exec rake db:setup)

docs/CONTRIBUTING.md

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,18 +19,32 @@ bin/setup
1919
```
2020

2121
This command loads the dummy app with test data.
22-
To navigate the application you can run, inside the `/spec/dummy` directory:
22+
To navigate the application you can run, inside the `/spec/dummy` directory...
23+
24+
**With webpack:**
2325

2426
```
2527
bin/rails s
2628
```
2729

28-
If you are using webpacker, it can be useful to run:
30+
And in another tab:
2931

3032
```
3133
bin/webpack-dev-server
3234
```
3335

36+
**With Sprockets:**
37+
38+
```
39+
export SPROCKETS=true; bin/rails s
40+
```
41+
42+
And if you change the javascript, you will need to run the following command:
43+
44+
```
45+
bundle exec rake prepare_assets
46+
```
47+
3448
> It is a good idea to add to the dummy app any new functionality. See for example the file: `/spec/dummy/app/admin/invoices.rb`
3549
3650
## Testing

0 commit comments

Comments
 (0)