atomic_cms 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.eslintrc +16 -0
- data/.gitignore +11 -0
- data/.rspec +2 -0
- data/.rubocop.yml +5 -0
- data/.ruby-version +1 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +243 -0
- data/README.md +175 -0
- data/Rakefile +15 -0
- data/app/assets/images/icon_add_component.png +0 -0
- data/app/assets/images/icon_add_component@2x.png +0 -0
- data/app/assets/javascripts/atomic_cms.js +286 -0
- data/app/assets/stylesheets/atomic_cms.css.scss +135 -0
- data/app/components/array_component.rb +11 -0
- data/app/controllers/atomic_cms/components_controller.rb +7 -0
- data/app/controllers/atomic_cms/media_controller.rb +18 -0
- data/app/controllers/concerns/media_scrubber.rb +28 -0
- data/app/helpers/component_helper.rb +21 -0
- data/app/models/atomic_cms/image.rb +6 -0
- data/app/models/atomic_cms/media.rb +12 -0
- data/app/views/components/_children_field.html.slim +6 -0
- data/app/views/components/_edit.html.slim +2 -0
- data/app/views/components/_file_field.slim +5 -0
- data/app/views/components/_markdown_field.slim +5 -0
- data/app/views/components/_select_field.slim +5 -0
- data/app/views/components/_template_field.slim +1 -0
- data/app/views/components/_text_area_field.slim +4 -0
- data/app/views/components/_text_field.slim +3 -0
- data/atomic_cms.gemspec +30 -0
- data/bin/rails +12 -0
- data/config/routes.rb +4 -0
- data/db/migrate/20151013175254_create_media.rb +9 -0
- data/lib/generators/atomic_cms/assets/assets_generator.rb +33 -7
- data/lib/generators/atomic_cms/scaffold/scaffold_generator.rb +76 -0
- data/lib/generators/atomic_cms/templates/admin.erb +79 -0
- data/lib/generators/atomic_cms/templates/controller.erb +16 -0
- data/lib/generators/atomic_cms/templates/model.erb +4 -0
- data/lib/generators/atomic_cms/templates/show.html.slim +1 -0
- data/vendor/assets/javascripts/angular-markdown.js +19 -0
- data/vendor/assets/javascripts/showdown.min.js +2 -0
- metadata +40 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2ef68fd2934dc40720fe78c309ede067c8f48098
|
4
|
+
data.tar.gz: 13ba7932c24ace6e795b82cf880d3df696654009
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 22966be2c77229934a7849521b2a7334dd6e077320530e450d7c06fda88989fee98fa1007d98938f38bc154f5e5dc6435131abdbaa02b7d96f489a462020cd1e
|
7
|
+
data.tar.gz: 96e7f3e00c584006ccd308e3100e3b900c6b11f0672cf04eb708c334ec8fee4a6918040d6a2ec810d941472bb1c0969e1fd1ef36d293015b87626b68f0989e8d
|
data/.eslintrc
ADDED
data/.gitignore
ADDED
data/.rspec
ADDED
data/.rubocop.yml
ADDED
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.2.2
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,243 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
atomic_cms (0.0.1)
|
5
|
+
activeadmin (= 1.0.0.pre2)
|
6
|
+
angularjs-rails (~> 1.3, < 1.4)
|
7
|
+
atomic_assets (~> 0.0.4)
|
8
|
+
jquery-rails (~> 4.0, >= 4.0.3)
|
9
|
+
paperclip (~> 4.3)
|
10
|
+
rails (~> 4.2)
|
11
|
+
redcarpet (~> 3.3)
|
12
|
+
slim-rails (~> 3.0)
|
13
|
+
|
14
|
+
GEM
|
15
|
+
remote: http://rubygems.org/
|
16
|
+
specs:
|
17
|
+
actionmailer (4.2.4)
|
18
|
+
actionpack (= 4.2.4)
|
19
|
+
actionview (= 4.2.4)
|
20
|
+
activejob (= 4.2.4)
|
21
|
+
mail (~> 2.5, >= 2.5.4)
|
22
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
23
|
+
actionpack (4.2.4)
|
24
|
+
actionview (= 4.2.4)
|
25
|
+
activesupport (= 4.2.4)
|
26
|
+
rack (~> 1.6)
|
27
|
+
rack-test (~> 0.6.2)
|
28
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
29
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
30
|
+
actionview (4.2.4)
|
31
|
+
activesupport (= 4.2.4)
|
32
|
+
builder (~> 3.1)
|
33
|
+
erubis (~> 2.7.0)
|
34
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
35
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
36
|
+
activeadmin (1.0.0.pre2)
|
37
|
+
arbre (~> 1.0, >= 1.0.2)
|
38
|
+
bourbon
|
39
|
+
coffee-rails
|
40
|
+
formtastic (~> 3.1)
|
41
|
+
formtastic_i18n
|
42
|
+
inherited_resources (~> 1.6)
|
43
|
+
jquery-rails
|
44
|
+
jquery-ui-rails
|
45
|
+
kaminari (~> 0.15)
|
46
|
+
rails (>= 3.2, < 5.0)
|
47
|
+
ransack (~> 1.3)
|
48
|
+
sass-rails
|
49
|
+
activejob (4.2.4)
|
50
|
+
activesupport (= 4.2.4)
|
51
|
+
globalid (>= 0.3.0)
|
52
|
+
activemodel (4.2.4)
|
53
|
+
activesupport (= 4.2.4)
|
54
|
+
builder (~> 3.1)
|
55
|
+
activerecord (4.2.4)
|
56
|
+
activemodel (= 4.2.4)
|
57
|
+
activesupport (= 4.2.4)
|
58
|
+
arel (~> 6.0)
|
59
|
+
activesupport (4.2.4)
|
60
|
+
i18n (~> 0.7)
|
61
|
+
json (~> 1.7, >= 1.7.7)
|
62
|
+
minitest (~> 5.1)
|
63
|
+
thread_safe (~> 0.3, >= 0.3.4)
|
64
|
+
tzinfo (~> 1.1)
|
65
|
+
angularjs-rails (1.3.15)
|
66
|
+
arbre (1.0.3)
|
67
|
+
activesupport (>= 3.0.0)
|
68
|
+
arel (6.0.3)
|
69
|
+
atomic_assets (0.0.4)
|
70
|
+
draper (~> 2.1)
|
71
|
+
bourbon (4.2.5)
|
72
|
+
sass (~> 3.4)
|
73
|
+
thor (~> 0.19)
|
74
|
+
builder (3.2.2)
|
75
|
+
climate_control (0.0.3)
|
76
|
+
activesupport (>= 3.0)
|
77
|
+
cocaine (0.5.7)
|
78
|
+
climate_control (>= 0.0.3, < 1.0)
|
79
|
+
coffee-rails (4.1.0)
|
80
|
+
coffee-script (>= 2.2.0)
|
81
|
+
railties (>= 4.0.0, < 5.0)
|
82
|
+
coffee-script (2.4.1)
|
83
|
+
coffee-script-source
|
84
|
+
execjs
|
85
|
+
coffee-script-source (1.9.1.1)
|
86
|
+
diff-lcs (1.2.5)
|
87
|
+
draper (2.1.0)
|
88
|
+
actionpack (>= 3.0)
|
89
|
+
activemodel (>= 3.0)
|
90
|
+
activesupport (>= 3.0)
|
91
|
+
request_store (~> 1.0)
|
92
|
+
erubis (2.7.0)
|
93
|
+
execjs (2.6.0)
|
94
|
+
factory_girl (4.5.0)
|
95
|
+
activesupport (>= 3.0.0)
|
96
|
+
factory_girl_rails (4.5.0)
|
97
|
+
factory_girl (~> 4.5.0)
|
98
|
+
railties (>= 3.0.0)
|
99
|
+
formtastic (3.1.3)
|
100
|
+
actionpack (>= 3.2.13)
|
101
|
+
formtastic_i18n (0.4.1)
|
102
|
+
globalid (0.3.6)
|
103
|
+
activesupport (>= 4.1.0)
|
104
|
+
has_scope (0.6.0)
|
105
|
+
actionpack (>= 3.2, < 5)
|
106
|
+
activesupport (>= 3.2, < 5)
|
107
|
+
i18n (0.7.0)
|
108
|
+
inherited_resources (1.6.0)
|
109
|
+
actionpack (>= 3.2, < 5)
|
110
|
+
has_scope (~> 0.6.0.rc)
|
111
|
+
railties (>= 3.2, < 5)
|
112
|
+
responders
|
113
|
+
jquery-rails (4.0.5)
|
114
|
+
rails-dom-testing (~> 1.0)
|
115
|
+
railties (>= 4.2.0)
|
116
|
+
thor (>= 0.14, < 2.0)
|
117
|
+
jquery-ui-rails (5.0.5)
|
118
|
+
railties (>= 3.2.16)
|
119
|
+
json (1.8.3)
|
120
|
+
kaminari (0.16.3)
|
121
|
+
actionpack (>= 3.0.0)
|
122
|
+
activesupport (>= 3.0.0)
|
123
|
+
loofah (2.0.3)
|
124
|
+
nokogiri (>= 1.5.9)
|
125
|
+
mail (2.6.3)
|
126
|
+
mime-types (>= 1.16, < 3)
|
127
|
+
mime-types (2.6.2)
|
128
|
+
mimemagic (0.3.0)
|
129
|
+
mini_portile (0.6.2)
|
130
|
+
minitest (5.8.1)
|
131
|
+
nokogiri (1.6.6.2)
|
132
|
+
mini_portile (~> 0.6.0)
|
133
|
+
paperclip (4.3.1)
|
134
|
+
activemodel (>= 3.2.0)
|
135
|
+
activesupport (>= 3.2.0)
|
136
|
+
cocaine (~> 0.5.5)
|
137
|
+
mime-types
|
138
|
+
mimemagic (= 0.3.0)
|
139
|
+
polyamorous (1.2.0)
|
140
|
+
activerecord (>= 3.0)
|
141
|
+
rack (1.6.4)
|
142
|
+
rack-test (0.6.3)
|
143
|
+
rack (>= 1.0)
|
144
|
+
rails (4.2.4)
|
145
|
+
actionmailer (= 4.2.4)
|
146
|
+
actionpack (= 4.2.4)
|
147
|
+
actionview (= 4.2.4)
|
148
|
+
activejob (= 4.2.4)
|
149
|
+
activemodel (= 4.2.4)
|
150
|
+
activerecord (= 4.2.4)
|
151
|
+
activesupport (= 4.2.4)
|
152
|
+
bundler (>= 1.3.0, < 2.0)
|
153
|
+
railties (= 4.2.4)
|
154
|
+
sprockets-rails
|
155
|
+
rails-deprecated_sanitizer (1.0.3)
|
156
|
+
activesupport (>= 4.2.0.alpha)
|
157
|
+
rails-dom-testing (1.0.7)
|
158
|
+
activesupport (>= 4.2.0.beta, < 5.0)
|
159
|
+
nokogiri (~> 1.6.0)
|
160
|
+
rails-deprecated_sanitizer (>= 1.0.1)
|
161
|
+
rails-html-sanitizer (1.0.2)
|
162
|
+
loofah (~> 2.0)
|
163
|
+
railties (4.2.4)
|
164
|
+
actionpack (= 4.2.4)
|
165
|
+
activesupport (= 4.2.4)
|
166
|
+
rake (>= 0.8.7)
|
167
|
+
thor (>= 0.18.1, < 2.0)
|
168
|
+
rake (10.4.2)
|
169
|
+
ransack (1.7.0)
|
170
|
+
actionpack (>= 3.0)
|
171
|
+
activerecord (>= 3.0)
|
172
|
+
activesupport (>= 3.0)
|
173
|
+
i18n
|
174
|
+
polyamorous (~> 1.2)
|
175
|
+
redcarpet (3.3.3)
|
176
|
+
request_store (1.2.0)
|
177
|
+
responders (2.1.0)
|
178
|
+
railties (>= 4.2.0, < 5)
|
179
|
+
rspec-core (3.3.2)
|
180
|
+
rspec-support (~> 3.3.0)
|
181
|
+
rspec-expectations (3.3.1)
|
182
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
183
|
+
rspec-support (~> 3.3.0)
|
184
|
+
rspec-mocks (3.3.2)
|
185
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
186
|
+
rspec-support (~> 3.3.0)
|
187
|
+
rspec-rails (3.3.3)
|
188
|
+
actionpack (>= 3.0, < 4.3)
|
189
|
+
activesupport (>= 3.0, < 4.3)
|
190
|
+
railties (>= 3.0, < 4.3)
|
191
|
+
rspec-core (~> 3.3.0)
|
192
|
+
rspec-expectations (~> 3.3.0)
|
193
|
+
rspec-mocks (~> 3.3.0)
|
194
|
+
rspec-support (~> 3.3.0)
|
195
|
+
rspec-support (3.3.0)
|
196
|
+
sass (3.4.18)
|
197
|
+
sass-rails (5.0.4)
|
198
|
+
railties (>= 4.0.0, < 5.0)
|
199
|
+
sass (~> 3.1)
|
200
|
+
sprockets (>= 2.8, < 4.0)
|
201
|
+
sprockets-rails (>= 2.0, < 4.0)
|
202
|
+
tilt (>= 1.1, < 3)
|
203
|
+
shoulda-matchers (3.0.0)
|
204
|
+
activesupport (>= 4.0.0)
|
205
|
+
slim (3.0.6)
|
206
|
+
temple (~> 0.7.3)
|
207
|
+
tilt (>= 1.3.3, < 2.1)
|
208
|
+
slim-rails (3.0.1)
|
209
|
+
actionmailer (>= 3.1, < 5.0)
|
210
|
+
actionpack (>= 3.1, < 5.0)
|
211
|
+
activesupport (>= 3.1, < 5.0)
|
212
|
+
railties (>= 3.1, < 5.0)
|
213
|
+
slim (~> 3.0)
|
214
|
+
sprockets (3.4.0)
|
215
|
+
rack (> 1, < 3)
|
216
|
+
sprockets-rails (2.3.3)
|
217
|
+
actionpack (>= 3.0)
|
218
|
+
activesupport (>= 3.0)
|
219
|
+
sprockets (>= 2.8, < 4.0)
|
220
|
+
sqlite3 (1.3.11)
|
221
|
+
temple (0.7.6)
|
222
|
+
thor (0.19.1)
|
223
|
+
thread_safe (0.3.5)
|
224
|
+
tilt (2.0.1)
|
225
|
+
tzinfo (1.2.2)
|
226
|
+
thread_safe (~> 0.1)
|
227
|
+
|
228
|
+
PLATFORMS
|
229
|
+
ruby
|
230
|
+
|
231
|
+
DEPENDENCIES
|
232
|
+
atomic_cms!
|
233
|
+
factory_girl_rails
|
234
|
+
rspec-core (~> 3.3)
|
235
|
+
rspec-expectations (~> 3.3)
|
236
|
+
rspec-mocks (~> 3.3)
|
237
|
+
rspec-rails
|
238
|
+
rspec-support (~> 3.3)
|
239
|
+
shoulda-matchers
|
240
|
+
sqlite3
|
241
|
+
|
242
|
+
BUNDLED WITH
|
243
|
+
1.10.6
|
data/README.md
ADDED
@@ -0,0 +1,175 @@
|
|
1
|
+
# Atomic CMS
|
2
|
+
The biggest problem with any content management system is the admin users are
|
3
|
+
given too much or too little power when editing their site. This gem provides a
|
4
|
+
means to manage usage of components created from the gem Atomic Assets. By
|
5
|
+
providing admin users with a way to manage their Atomic Assets, developers and
|
6
|
+
designers are able to ensure the components they create remained styled properly
|
7
|
+
while allowing admins to update their content as needed without developer
|
8
|
+
intervention. Below are instructions for getting started.
|
9
|
+
|
10
|
+
## Gemfile
|
11
|
+
After initializing a new Rails application, or adding to an existing
|
12
|
+
application, add the following gems to your Gemfile.
|
13
|
+
```ruby
|
14
|
+
gem 'atomic_cms', github: 'spartansystems/atomic_cms'
|
15
|
+
gem 'devise'
|
16
|
+
```
|
17
|
+
_Note: devise is optional if you do not want admin users to login._
|
18
|
+
|
19
|
+
Then perform a `bundle install`.
|
20
|
+
|
21
|
+
## Initialization
|
22
|
+
### Active Admin
|
23
|
+
To initialize Active Admin:
|
24
|
+
```ruby
|
25
|
+
rails generate atomic_cms:install
|
26
|
+
```
|
27
|
+
Remove the comments migration Active Admin created along with disabling comments
|
28
|
+
on line 122 of the Active Admin initializer.
|
29
|
+
|
30
|
+
Now you shall run the migration and seeds with:
|
31
|
+
```ruby
|
32
|
+
bundle exec rake db:create
|
33
|
+
bundle exec rake db:migrate
|
34
|
+
```
|
35
|
+
To verify, start the server and visit `localhost:3000/admin`. If you can login
|
36
|
+
as `admin@example.com` with the password `password` you have successfully
|
37
|
+
completed this step.
|
38
|
+
|
39
|
+
### Atomic CMS
|
40
|
+
#### Routes
|
41
|
+
Update your `config/routes.rb` to include the following:
|
42
|
+
```ruby
|
43
|
+
mount AtomicCms::Engine => "/atomic_cms", as: :atomic_cms
|
44
|
+
# If you are going to use a catch all route add the following line
|
45
|
+
get "*path", to: "pages#show", controller: "pages", as: :page, format: false
|
46
|
+
root to: 'pages#show', controller: "pages"
|
47
|
+
```
|
48
|
+
The last two lines need to be at the **END** of your `routes.rb` file.
|
49
|
+
|
50
|
+
##### Devise Authentication
|
51
|
+
Change the mount point above to be the following:
|
52
|
+
```ruby
|
53
|
+
authenticate :admin_user, -> (u) { u.admin? } do
|
54
|
+
mount AtomicCms::Engine => "/atomic_cms", as: :atomic_cms
|
55
|
+
end
|
56
|
+
```
|
57
|
+
where `u` is the user and `admin?` the authentication method you have on that
|
58
|
+
user; it should return a boolean value.
|
59
|
+
|
60
|
+
#### Scaffold Generator
|
61
|
+
Execute the following to create a model for your static pages:
|
62
|
+
```ruby
|
63
|
+
rails g atomic_cms:scaffold page
|
64
|
+
```
|
65
|
+
*After this you should run your migrations.*
|
66
|
+
|
67
|
+
Here is a list of everything that is generated for you:
|
68
|
+
|
69
|
+
* Model
|
70
|
+
* Controller
|
71
|
+
* Active Admin Form
|
72
|
+
* Migration **Will need to be edited**
|
73
|
+
* Show View
|
74
|
+
* Route
|
75
|
+
|
76
|
+
### Media Upload
|
77
|
+
To install the media tables so that you can upload files until your heart is
|
78
|
+
literally full run:
|
79
|
+
```
|
80
|
+
rake atomic_cms:install:migrations
|
81
|
+
rake db:migrate
|
82
|
+
```
|
83
|
+
Also, you should configure paperclip to use s3, since s3 is better than local
|
84
|
+
file storage.
|
85
|
+
```ruby
|
86
|
+
class Application < Rails::Application
|
87
|
+
...
|
88
|
+
config.paperclip_defaults = {
|
89
|
+
storage: :s3,
|
90
|
+
s3_protocol: "https",
|
91
|
+
s3_credentials: {
|
92
|
+
bucket: ENV.fetch("AWS_S3_BUCKET", ""),
|
93
|
+
access_key_id: ENV.fetch("AWS_ACCESS_KEY", ""),
|
94
|
+
secret_access_key: ENV.fetch("AWS_SECRET", ""),
|
95
|
+
s3_host_name: "s3-#{ENV.fetch('AWS_REGION', '')}.amazonaws.com"
|
96
|
+
}
|
97
|
+
}
|
98
|
+
...
|
99
|
+
end
|
100
|
+
```
|
101
|
+
|
102
|
+
#### Styles
|
103
|
+
In order for component previews to have the proper project styling,
|
104
|
+
`active_admin.scss` will need to be updated to import your `application.scss`.
|
105
|
+
*NOTE:* If you are using bourbon, bitters, and neat you will not be able to
|
106
|
+
straight import `application.scss` as certain styles within base must be
|
107
|
+
imported under the `#component_preview` selector. Below is an example of how
|
108
|
+
this is properly imported:
|
109
|
+
|
110
|
+
```scss
|
111
|
+
@import "active_admin/mixins";
|
112
|
+
@import "active_admin/base";
|
113
|
+
@import "bourbon";
|
114
|
+
@import "neat";
|
115
|
+
@import "base/variables";
|
116
|
+
@import "base/grid-settings";
|
117
|
+
@import "atomic_cms";
|
118
|
+
|
119
|
+
#component_preview {
|
120
|
+
@import "reset";
|
121
|
+
@import "base/buttons";
|
122
|
+
@import "base/forms";
|
123
|
+
@import "base/lists";
|
124
|
+
@import "base/tables";
|
125
|
+
@import "base/typography";
|
126
|
+
@import "components/*";
|
127
|
+
@include font-feature-settings("kern", "liga", "pnum");
|
128
|
+
-webkit-font-smoothing: antialiased;
|
129
|
+
color: $base-font-color;
|
130
|
+
font-family: $base-font-family;
|
131
|
+
font-size: 16px;
|
132
|
+
line-height: $base-line-height;
|
133
|
+
// When editing a page through the CMS,
|
134
|
+
// images with broken links will not be displayed
|
135
|
+
img[src="image"] {
|
136
|
+
display: none !important;
|
137
|
+
}
|
138
|
+
}
|
139
|
+
|
140
|
+
// Overriding any non-variable SASS must be done after the fact.
|
141
|
+
// For example, to change the default status-tag color:
|
142
|
+
//
|
143
|
+
// .status_tag { background: #6090DB; }
|
144
|
+
```
|
145
|
+
*NOTE:* At the minimum, here is what is needed in `active_admin.scss`:
|
146
|
+
```scss
|
147
|
+
@import "active_admin/mixins";
|
148
|
+
@import "active_admin/base";
|
149
|
+
@import "atomic_cms";
|
150
|
+
|
151
|
+
#component_preview {
|
152
|
+
// Include application specific styling here
|
153
|
+
}
|
154
|
+
```
|
155
|
+
|
156
|
+
#### Components
|
157
|
+
Generate components by executing the following:
|
158
|
+
```
|
159
|
+
rails g atomic_assets:component text_block
|
160
|
+
```
|
161
|
+
In order for components to be utilized when managing content, a partial needs to
|
162
|
+
be created similar to the following at `app/views/admin/_edit_buttons.html.slim`:
|
163
|
+
```slim
|
164
|
+
ol.edit-buttons
|
165
|
+
li
|
166
|
+
= link_to 'Text Block', atomic_cms.edit_component_path('text_block'), class: 'button'
|
167
|
+
```
|
168
|
+
#### Config
|
169
|
+
Update `config/application.rb` to include:
|
170
|
+
```ruby
|
171
|
+
config.autoload_paths += %W(#{config.root}/lib, #{config.root}/app/components/**/)
|
172
|
+
```
|
173
|
+
### Gotcha's
|
174
|
+
When creating a path for a page, from the examples above, make sure to include a
|
175
|
+
leading '/', for example: '/home' -or- '/bears'
|
data/Rakefile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
#!/usr/bin/env rake
|
2
|
+
begin
|
3
|
+
require 'bundler/setup'
|
4
|
+
rescue LoadError
|
5
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
6
|
+
end
|
7
|
+
APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
|
8
|
+
load 'rails/tasks/engine.rake'
|
9
|
+
Bundler::GemHelper.install_tasks
|
10
|
+
Dir[File.join(File.dirname(__FILE__), 'tasks/**/*.rake')].each {|f| load f }
|
11
|
+
require 'rspec/core'
|
12
|
+
require 'rspec/core/rake_task'
|
13
|
+
desc "Run all specs in spec directory (excluding plugin specs)"
|
14
|
+
RSpec::Core::RakeTask.new(:spec => 'app:db:test:prepare')
|
15
|
+
task :default => :spec
|
Binary file
|
Binary file
|