Skip to content

Commit 2c4d8ab

Browse files
authored
Merge pull request #224 from momocus/elasticsearch
Elasticsearch導入
2 parents 2c28f61 + 86f4e00 commit 2c4d8ab

File tree

16 files changed

+431
-129
lines changed

16 files changed

+431
-129
lines changed

.github/workflows/test.yml

Lines changed: 58 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -21,50 +21,61 @@ jobs:
2121
--health-retries 5
2222
2323
steps:
24-
- uses: actions/checkout@v2
25-
- name: Cache node modules
26-
uses: actions/cache@v2
27-
env:
28-
cache-name: node_modules
29-
cache-env: prod
30-
with:
31-
path: '**/node_modules'
32-
key: ${{ runner.os }}-${{ env.cache-name }}-${{ env.cache-env }}-${{ hashFiles('**/package.json') }}
33-
restore-keys: |
34-
${{ runner.os }}-${{ env.cache-name }}-${{ env.cache-env }}-
35-
- name: Install Dependencies
36-
run: yarn install --production=true
37-
- name: Set up Ruby 3
38-
uses: ruby/setup-ruby@v1
39-
with:
40-
ruby-version: 3.0
41-
- name: Cache gems
42-
uses: actions/cache@v2
43-
env:
44-
cache-name: gems
45-
cache-env: test
46-
with:
47-
path: vendor/bundle
48-
key: ${{ runner.os }}-${{ env.cache-name }}-${{ env.cache-env }}-${{ hashFiles('**/Gemfile') }}
49-
restore-keys: |
50-
${{ runner.os }}-${{ env.cache-name }}-${{ env.cache-env }}-
51-
- name: Install bundle dependencies
52-
run: |
53-
bundle config path vendor/bundle
54-
bundle config set --local without development
55-
bundle config set --local with test
56-
bundle install
57-
- name: Setup Database
58-
env:
59-
RAILS_ENV: test
60-
POSTGRES_USERNAME: postgres
61-
POSTGRES_PASSWORD: password
62-
run: bundle exec rails db:create
63-
- name: Run tests
64-
env:
65-
RAILS_ENV: test
66-
POSTGRES_USERNAME: postgres
67-
POSTGRES_PASSWORD: password
68-
run: |
69-
bundle exec rake webpacker:compile
70-
bundle exec rspec
24+
- uses: actions/checkout@v2
25+
- name: Cache node modules
26+
uses: actions/cache@v2
27+
env:
28+
cache-name: node_modules
29+
cache-env: prod
30+
with:
31+
path: "**/node_modules"
32+
key: ${{ runner.os }}-${{ env.cache-name }}-${{ env.cache-env }}-${{ hashFiles('**/package.json') }}
33+
restore-keys: |
34+
${{ runner.os }}-${{ env.cache-name }}-${{ env.cache-env }}-
35+
- name: Install Dependencies
36+
run: yarn install --production=true
37+
- name: Set up Ruby 3
38+
uses: ruby/setup-ruby@v1
39+
with:
40+
ruby-version: 3.0
41+
- name: Cache gems
42+
uses: actions/cache@v2
43+
env:
44+
cache-name: gems
45+
cache-env: test
46+
with:
47+
path: vendor/bundle
48+
key: ${{ runner.os }}-${{ env.cache-name }}-${{ env.cache-env }}-${{ hashFiles('**/Gemfile') }}
49+
restore-keys: |
50+
${{ runner.os }}-${{ env.cache-name }}-${{ env.cache-env }}-
51+
- name: Install bundle dependencies
52+
run: |
53+
bundle config path vendor/bundle
54+
bundle config set --local without development
55+
bundle config set --local with test
56+
bundle install
57+
- name: Setup Database
58+
env:
59+
RAILS_ENV: test
60+
POSTGRES_USERNAME: postgres
61+
POSTGRES_PASSWORD: password
62+
run: bundle exec rails db:create
63+
- name: Configure system parameter
64+
run: |
65+
sudo swapoff --all
66+
sudo sysctl --write vm.swappiness=1
67+
sudo sysctl --write fs.file-max=262144
68+
sudo sysctl --write vm.max_map_count=262144
69+
- name: Run Elasticsearch with Plugins
70+
uses: miyataka/elasticsearch-github-actions@1
71+
with:
72+
stack-version: "7.11.2"
73+
plugins: "analysis-kuromoji analysis-icu"
74+
- name: Run tests
75+
env:
76+
RAILS_ENV: test
77+
POSTGRES_USERNAME: postgres
78+
POSTGRES_PASSWORD: password
79+
run: |
80+
bundle exec rake webpacker:compile
81+
bundle exec rspec

Gemfile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,11 @@ gem "kaminari"
5252
# Japanese Era
5353
gem "era_ja"
5454

55+
# ElasticSearch
56+
gem "bonsai-elasticsearch-rails"
57+
gem "elasticsearch-model"
58+
gem "elasticsearch-rails"
59+
5560
group :development, :test do
5661
gem "annotate"
5762
# Call 'byebug' anywhere in the code to stop execution and get a debugger

0 commit comments

Comments
 (0)