diff --git a/.circleci/config.yml b/.circleci/config.yml
new file mode 100644
index 0000000..8f81709
--- /dev/null
+++ b/.circleci/config.yml
@@ -0,0 +1,36 @@
+# Use the latest 2.1 version of CircleCI pipeline process engine.
+# See: https://circleci.com/docs/2.0/configuration-reference
+version: 2.1
+
+# Orbs are reusable packages of CircleCI configuration that you may share across projects, enabling you to create encapsulated, parameterized commands, jobs, and executors that can be used across multiple projects.
+# See: https://circleci.com/docs/2.0/orb-intro/
+orbs:
+ ruby: circleci/ruby@0.1.2
+ heroku: circleci/heroku@1.2.6
+
+# Define a job to be invoked later in a workflow.
+# See: https://circleci.com/docs/2.0/configuration-reference/#jobs
+jobs:
+ build:
+ docker:
+ - image: cimg/ruby:2.7.2
+ executor: ruby/default
+ steps:
+ - checkout
+ - run:
+ name: Which bundler?
+ command: bundle -v
+ - ruby/bundle-install
+
+# Invoke jobs via workflows
+# See: https://circleci.com/docs/2.0/configuration-reference/#workflows
+workflows:
+ heroku_deploy:
+ jobs:
+ - build
+ - heroku/deploy-via-git: # Use the pre-configured job, deploy-via-git
+ requires:
+ - build
+ filters:
+ branches:
+ only: main
diff --git a/.gitignore b/.gitignore
index 24b5d03..27c1fb3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,6 +13,7 @@
!/log/.keep
!/tmp/.keep
/coverage
+./coverage
# Ignore uploaded files in development
/storage/*
@@ -22,3 +23,8 @@
# Ignore master key for decrypting credentials and more.
/config/master.key
+
+/coverage
+
+# Ignore application configuration
+/config/application.yml
diff --git a/Gemfile b/Gemfile
index 9a82e07..2d4c89d 100644
--- a/Gemfile
+++ b/Gemfile
@@ -12,6 +12,7 @@ gem 'puma', '~> 3.11'
gem 'will_paginate', '~> 3.1.0'
gem 'fast_jsonapi'
+gem 'figaro'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
# gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production
diff --git a/Gemfile.lock b/Gemfile.lock
index 7efd2da..2de9b23 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -44,7 +44,7 @@ GEM
tzinfo (~> 1.1)
arel (9.0.0)
ast (2.4.2)
- bootsnap (1.8.1)
+ bootsnap (1.9.1)
msgpack (~> 1.0)
builder (3.2.4)
byebug (11.1.3)
@@ -64,6 +64,8 @@ GEM
fast_jsonapi (1.5)
activesupport (>= 4.2)
ffi (1.15.4)
+ figaro (1.2.0)
+ thor (>= 0.14.0, < 2)
globalid (0.5.2)
activesupport (>= 5.0)
i18n (1.8.10)
@@ -77,15 +79,17 @@ GEM
nokogiri (>= 1.5.9)
mail (2.7.1)
mini_mime (>= 0.1.1)
- marcel (1.0.1)
+ marcel (1.0.2)
method_source (1.0.0)
mini_mime (1.1.1)
minitest (5.14.4)
msgpack (1.4.2)
nio4r (2.5.8)
- nokogiri (1.12.4-x86_64-darwin)
+ nokogiri (1.12.5-x86_64-darwin)
racc (~> 1.4)
- parallel (1.20.1)
+ nokogiri (1.12.5-x86_64-linux)
+ racc (~> 1.4)
+ parallel (1.21.0)
parser (3.0.2.0)
ast (~> 2.4.1)
pg (1.2.3)
@@ -145,16 +149,16 @@ GEM
rspec-mocks (~> 3.10)
rspec-support (~> 3.10)
rspec-support (3.10.2)
- rubocop (1.20.0)
+ rubocop (1.22.1)
parallel (~> 1.10)
parser (>= 3.0.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml
- rubocop-ast (>= 1.9.1, < 2.0)
+ rubocop-ast (>= 1.12.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 3.0)
- rubocop-ast (1.11.0)
+ rubocop-ast (1.12.0)
parser (>= 3.0.1.1)
ruby-progressbar (1.11.0)
ruby_dep (1.5.0)
@@ -177,7 +181,7 @@ GEM
thread_safe (0.3.6)
tzinfo (1.2.9)
thread_safe (~> 0.1)
- unicode-display_width (2.0.0)
+ unicode-display_width (2.1.0)
websocket-driver (0.7.5)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5)
@@ -185,6 +189,7 @@ GEM
PLATFORMS
x86_64-darwin-20
+ x86_64-linux
DEPENDENCIES
bootsnap (>= 1.1.0)
@@ -192,6 +197,7 @@ DEPENDENCIES
factory_bot_rails
faker
fast_jsonapi
+ figaro
listen (>= 3.0.5, < 3.2)
pg (>= 0.18, < 2.0)
pry
diff --git a/coverage/.resultset.json b/coverage/.resultset.json
index 1fda2a4..5107627 100644
--- a/coverage/.resultset.json
+++ b/coverage/.resultset.json
@@ -1078,7 +1078,7 @@
null,
1,
null,
- null,
+ 1,
null,
null,
null,
@@ -1501,6 +1501,6 @@
]
}
},
- "timestamp": 1631289862
+ "timestamp": 1631290969
}
}
diff --git a/coverage/index.html b/coverage/index.html
index 74bd635..d1bec6c 100644
--- a/coverage/index.html
+++ b/coverage/index.html
@@ -14,7 +14,7 @@
# expect(merchant[:data][:message]).to eq('No match found.')
+ expect(merchant[:data][:message]).to eq('No match found')