Skip to content

Commit 2779ad4

Browse files
committed
Initial commit
0 parents  commit 2779ad4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+1684
-0
lines changed

.github/workflows/ci.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: "CI Tests"
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
9+
jobs:
10+
test:
11+
name: "Ruby ${{ matrix.ruby }}, Rails ${{ matrix.gemfile }}"
12+
13+
runs-on: 'ubuntu-latest'
14+
15+
strategy:
16+
fail-fast: false
17+
matrix:
18+
gemfile:
19+
- "5.2"
20+
- "6.1"
21+
- "7.0"
22+
ruby:
23+
- "2.7.3"
24+
- "3.0.0"
25+
- "3.1.0"
26+
exclude:
27+
- gemfile: "5.2"
28+
ruby: "3.0.0"
29+
- gemfile: "5.2"
30+
ruby: "3.1.0"
31+
32+
env:
33+
BUNDLE_GEMFILE: gemfiles/rails_${{ matrix.gemfile }}.gemfile
34+
RAILS_ENV: test
35+
36+
steps:
37+
- uses: actions/checkout@v2
38+
39+
- name: "Install Ruby ${{ matrix.ruby }}"
40+
uses: ruby/setup-ruby@v1
41+
with:
42+
ruby-version: ${{ matrix.ruby }}
43+
bundler-cache: true
44+
45+
- name: "Reset app database"
46+
run: bundle exec rake fake:db:reset
47+
48+
- name: "Run test"
49+
run: bundle exec rake

.gitignore

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
2+
#
3+
# If you find yourself ignoring temporary files generated by your text editor
4+
# or operating system, you probably want to add a global ignore instead:
5+
# git config --global core.excludesfile '~/.gitignore_global'
6+
7+
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
8+
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
9+
10+
# User-specific stuff
11+
.idea/**/workspace.xml
12+
.idea/**/tasks.xml
13+
.idea/**/usage.statistics.xml
14+
.idea/**/dictionaries
15+
.idea/**/shelf
16+
17+
# Generated files
18+
.idea/**/contentModel.xml
19+
20+
# Sensitive or high-churn files
21+
.idea/**/dataSources/
22+
.idea/**/dataSources.ids
23+
.idea/**/dataSources.local.xml
24+
.idea/**/sqlDataSources.xml
25+
.idea/**/dynamic.xml
26+
.idea/**/uiDesigner.xml
27+
.idea/**/dbnavigator.xml
28+
29+
# Gradle
30+
.idea/**/gradle.xml
31+
.idea/**/libraries
32+
33+
# Gradle and Maven with auto-import
34+
# When using Gradle or Maven with auto-import, you should exclude module files,
35+
# since they will be recreated, and may cause churn. Uncomment if using
36+
# auto-import.
37+
# .idea/modules.xml
38+
# .idea/*.iml
39+
# .idea/modules
40+
41+
# CMake
42+
cmake-build-*/
43+
44+
# Mongo Explorer plugin
45+
.idea/**/mongoSettings.xml
46+
47+
# File-based project format
48+
*.iws
49+
50+
# IntelliJ
51+
out/
52+
53+
# mpeltonen/sbt-idea plugin
54+
.idea_modules/
55+
56+
# JIRA plugin
57+
atlassian-ide-plugin.xml
58+
59+
# Cursive Clojure plugin
60+
.idea/replstate.xml
61+
62+
# Crashlytics plugin (for Android Studio and IntelliJ)
63+
com_crashlytics_export_strings.xml
64+
crashlytics.properties
65+
crashlytics-build.properties
66+
fabric.properties
67+
68+
# Editor-based Rest Client
69+
.idea/httpRequests
70+
71+
# Android studio 3.1+ serialized cache file
72+
.idea/caches/build_file_checksums.ser
73+
74+
# Migration generated during tests
75+
/test/generators/monarch_migrate/tmp
76+
77+
# Ignore gem compile directory
78+
/pkg
79+
80+
# Ignore bundler config.
81+
/.bundle
82+
83+
# Ignore the default SQLite database.
84+
/db/*.sqlite3
85+
/db/*.sqlite3-journal
86+
87+
# Ignore all logfiles and tempfiles.
88+
/log/*
89+
/tmp/*
90+
!/log/.keep
91+
!/tmp/.keep
92+
93+
# Ignore uploaded files in development
94+
/storage/*
95+
!/storage/.keep
96+
97+
/node_modules
98+
/yarn-error.log
99+
100+
/public/assets
101+
.byebug_history
102+
103+
# Ignore master key for decrypting credentials and more.
104+
/config/master.key
105+
106+
.foreman
107+
108+
/public/packs
109+
/public/packs-test
110+
/node_modules
111+
/yarn-error.log
112+
yarn-debug.log*
113+
.yarn-integrity

.ruby-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2.7.3

Appraisals

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
appraise "rails_5.2" do
2+
gem "railties", "~> 5.2"
3+
end
4+
5+
appraise "rails_6.1" do
6+
gem "railties", "~> 6.1"
7+
end
8+
9+
appraise "rails_7.0" do
10+
gem "railties", "~> 7.0"
11+
end

Gemfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
source "https://rubygems.org"
2+
3+
# Specify your gem's dependencies in *.gemspec
4+
gemspec name: "monarch_migrate"

Gemfile.lock

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
PATH
2+
remote: .
3+
specs:
4+
monarch_migrate (0.3.0)
5+
activerecord (>= 5.2.0)
6+
railties (>= 5.2.0)
7+
8+
GEM
9+
remote: https://rubygems.org/
10+
specs:
11+
actionpack (7.0.3)
12+
actionview (= 7.0.3)
13+
activesupport (= 7.0.3)
14+
rack (~> 2.0, >= 2.2.0)
15+
rack-test (>= 0.6.3)
16+
rails-dom-testing (~> 2.0)
17+
rails-html-sanitizer (~> 1.0, >= 1.2.0)
18+
actionview (7.0.3)
19+
activesupport (= 7.0.3)
20+
builder (~> 3.1)
21+
erubi (~> 1.4)
22+
rails-dom-testing (~> 2.0)
23+
rails-html-sanitizer (~> 1.1, >= 1.2.0)
24+
activemodel (7.0.3)
25+
activesupport (= 7.0.3)
26+
activerecord (7.0.3)
27+
activemodel (= 7.0.3)
28+
activesupport (= 7.0.3)
29+
activesupport (7.0.3)
30+
concurrent-ruby (~> 1.0, >= 1.0.2)
31+
i18n (>= 1.6, < 2)
32+
minitest (>= 5.1)
33+
tzinfo (~> 2.0)
34+
appraisal (2.4.1)
35+
bundler
36+
rake
37+
thor (>= 0.14.0)
38+
ast (2.4.2)
39+
builder (3.2.4)
40+
concurrent-ruby (1.1.10)
41+
crass (1.0.6)
42+
erubi (1.10.0)
43+
i18n (1.10.0)
44+
concurrent-ruby (~> 1.0)
45+
loofah (2.18.0)
46+
crass (~> 1.0.2)
47+
nokogiri (>= 1.5.9)
48+
method_source (1.0.0)
49+
minitest (5.15.0)
50+
nokogiri (1.13.6-x86_64-darwin)
51+
racc (~> 1.4)
52+
parallel (1.22.1)
53+
parser (3.1.2.0)
54+
ast (~> 2.4.1)
55+
racc (1.6.0)
56+
rack (2.2.3.1)
57+
rack-test (1.1.0)
58+
rack (>= 1.0, < 3)
59+
rails-dom-testing (2.0.3)
60+
activesupport (>= 4.2.0)
61+
nokogiri (>= 1.6)
62+
rails-html-sanitizer (1.4.2)
63+
loofah (~> 2.3)
64+
railties (7.0.3)
65+
actionpack (= 7.0.3)
66+
activesupport (= 7.0.3)
67+
method_source
68+
rake (>= 12.2)
69+
thor (~> 1.0)
70+
zeitwerk (~> 2.5)
71+
rainbow (3.1.1)
72+
rake (13.0.6)
73+
regexp_parser (2.4.0)
74+
rexml (3.2.5)
75+
rubocop (1.29.1)
76+
parallel (~> 1.10)
77+
parser (>= 3.1.0.0)
78+
rainbow (>= 2.2.2, < 4.0)
79+
regexp_parser (>= 1.8, < 3.0)
80+
rexml (>= 3.2.5, < 4.0)
81+
rubocop-ast (>= 1.17.0, < 2.0)
82+
ruby-progressbar (~> 1.7)
83+
unicode-display_width (>= 1.4.0, < 3.0)
84+
rubocop-ast (1.18.0)
85+
parser (>= 3.1.1.0)
86+
rubocop-performance (1.13.3)
87+
rubocop (>= 1.7.0, < 2.0)
88+
rubocop-ast (>= 0.4.0)
89+
ruby-progressbar (1.11.0)
90+
sqlite3 (1.4.2)
91+
standard (1.12.1)
92+
rubocop (= 1.29.1)
93+
rubocop-performance (= 1.13.3)
94+
thor (1.2.1)
95+
tzinfo (2.0.4)
96+
concurrent-ruby (~> 1.0)
97+
unicode-display_width (2.1.0)
98+
zeitwerk (2.5.4)
99+
100+
PLATFORMS
101+
ruby
102+
103+
DEPENDENCIES
104+
appraisal
105+
minitest
106+
monarch_migrate!
107+
rake
108+
sqlite3
109+
standard
110+
111+
BUNDLED WITH
112+
2.1.4

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2022 Y.
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)