-
Notifications
You must be signed in to change notification settings - Fork 16
/
seeds.rb
71 lines (60 loc) · 15.5 KB
/
seeds.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
Page.destroy_all
Parameter.destroy_all
Configuration.destroy_all
Category.destroy_all
category = Category.create(name: "Move code from Controller to Model")
category.configurations.create(name: "MoveFinderToNamedScopeCheck", description: "Move finder to named_scope", url: "http://rails-bestpractices.com/posts/1-move-finder-to-named_scope")
category.configurations.create(name: "UseModelAssociationCheck", description: "Use model association", url: "http://rails-bestpractices.com/posts/2-use-model-association")
category.configurations.create(name: "UseScopeAccessCheck", description: "Use scope access", url: "http://rails-bestpractices.com/posts/3-use-scope-access")
category.configurations.create(name: "AddModelVirtualAttributeCheck", description: "Add model virtual attribute", url: "http://rails-bestpractices.com/posts/4-add-model-virtual-attribute")
configuration = category.configurations.create(name: "ReplaceComplexCreationWithFactoryMethodCheck", description: "Replace complex creation with factory method", url: "http://rails-bestpractices.com/posts/6-replace-complex-creation-with-factory-method")
configuration.parameters.create(name: "attribute_assignment_count", kind: "integer", value: 2, description: "attribute assignment count")
configuration = category.configurations.create(name: "MoveModelLogicIntoModelCheck", description: "Move model logic into model", url: "http://rails-bestpractices.com/posts/7-move-model-logic-into-the-model")
configuration.parameters.create(name: "use_count", kind: "integer", value: 4, description: "use count")
category = Category.create(name: "RESTful Conventions")
configuration = category.configurations.create(name: "OveruseRouteCustomizationsCheck", description: "Overuse route cutomizations", url: "http://rails-bestpractices.com/posts/10-overuse-route-customizations")
configuration.parameters.create(name: "customize_count", kind: "integer", value: 3, description: "customize count")
configuration = category.configurations.create(name: "NeedlessDeepNestingCheck", description: "Needless deep nesting", url: "http://rails-bestpractices.com/posts/11-needless-deep-nesting")
configuration.parameters.create(name: "nested_count", kind: "integer", value: 2, description: "nested count")
category.configurations.create(name: "NotUseDefaultRouteCheck", description: "Not use default route", url: "http://rails-bestpractices.com/posts/12-not-use-default-route-if-you-use-restful-design")
category.configurations.create(name: "RestrictAutoGeneratedRoutesCheck", description: "Restrict auto generated routes", url: "http://rails-bestpractices.com/posts/86-restrict-auto-generated-routes")
category = Category.create(name: "Model")
category.configurations.create(name: "KeepFindersOnTheirOwnModelCheck", description: "Keep finders on their own model", url: "http://rails-bestpractices.com/posts/13-keep-finders-on-their-own-model")
category.configurations.create(name: "LawOfDemeterCheck", description: "Law of demeter", url: "http://rails-bestpractices.com/posts/15-the-law-of-demeter")
category.configurations.create(name: "UseObserverCheck", description: "Use observer", url: "http://rails-bestpractices.com/posts/19-use-observer")
category.configurations.create(name: "UseQueryAttributeCheck", description: "Use query attribute", url: "http://rails-bestpractices.com/posts/56-use-query-attribute")
configuration = category.configurations.create(name: "RemoveUnusedMethodsInModelsCheck", description: "Remove unused methods in models")
configuration.parameters.create(name: "except_methods", kind: "array", value: "", description: "except methods")
category = Category.create(name: "Mailer")
category.configurations.create(name: "UseMultipartAlternativeAsContentTypeOfEmailCheck", description: "Use multipart alternative as content type of email", url: "http://rails-bestpractices.com/posts/41-use-multipart-alternative-as-content_type-of-email")
category = Category.create(name: "Migration")
category.configurations.create(name: "IsolateSeedDataCheck", description: "Isolate seed data", url: "http://rails-bestpractices.com/posts/20-isolating-seed-data")
category.configurations.create(name: "AlwaysAddDbIndexCheck", description: "Always add db index", url: "http://rails-bestpractices.com/posts/21-always-add-db-index")
category.configurations.create(name: "UseSayWithTimeInMigrationsCheck", description: "Use say with time in migrations", url: "http://rails-bestpractices.com/posts/46-use-say-and-say_with_time-in-migrations-to-make-a-useful-migrati")
category = Category.create(name: "Controller")
configuration = category.configurations.create(name: "UseBeforeFilterCheck", description: "Use before filter", url: "http://rails-bestpractices.com/posts/22-use-before_filter")
configuration.parameters.create(name: "customize_count", kind: "integer", value: 2, description: "customize count")
category.configurations.create(name: "SimplifyRenderInControllersCheck", description: "Simplify render in controllers", url: "http://rails-bestpractices.com/posts/62-simplify-render-in-controllers")
configuration = category.configurations.create(name: "RemoveUnusedMethodsInControllersCheck", description: "Remove unused methods in controllers")
configuration.parameters.create(name: "except_methods", kind: "array", value: "", description: "except methods")
category = Category.create(name: "Helper")
category.configurations.create(name: "RemoveEmptyHelpersCheck", description: "Remove empty helpers", url: "http://rails-bestpractices.com/posts/72-remove-empty-helpers")
configuration = category.configurations.create(name: "RemoveUnusedMethodsInHelpersCheck", description: "Remove unused methods in helpers")
configuration.parameters.create(name: "except_methods", kind: "array", value: "", description: "except methods")
category = Category.create(name: "View")
category.configurations.create(name: "MoveCodeIntoControllerCheck", description: "Move code into controller", url: "http://rails-bestpractices.com/posts/24-move-code-into-controller")
configuration = category.configurations.create(name: "MoveCodeIntoModelCheck", description: "Move code into model", url: "http://rails-bestpractices.com/posts/25-move-code-into-model")
configuration.parameters.create(name: "use_count", kind: "integer", value: 2, description: "use count")
configuration = category.configurations.create(name: "MoveCodeIntoHelperCheck", description: "Move code into helper", url: "http://rails-bestpractices.com/posts/26-move-code-into-helper")
configuration.parameters.create(name: "array_count", kind: "integer", value: 3, description: "array count")
category.configurations.create(name: "ReplaceInstanceVariableWithLocalVariableCheck", description: "Replace instance variable with local variable", url: "http://rails-bestpractices.com/posts/27-replace-instance-variable-with-local-variable")
category.configurations.create(name: "SimplifyRenderInViewsCheck", description: "Simplify render in views", url: "http://rails-bestpractices.com/posts/61-simplify-render-in-views")
category = Category.create(name: "Deployment")
category.configurations.create(name: "DryBundlerInCapistranoCheck", description: "Dry bundler in capistrano", url: "http://rails-bestpractices.com/posts/51-dry-bundler-in-capistrano")
category = Category.create(name: "Other")
category.configurations.create(name: "RemoveTrailingWhitespaceCheck", description: "Remove trailing whitespace", url: "http://rails-bestpractices.com/posts/60-remove-trailing-whitespace")
category.configurations.create(name: "RemoveTabCheck", description: "Remove tab", url: "http://rails-bestpractices.com/posts/81-remove-tab")
Page.create(name: "how-it-works", body: "<h2>\r\n\tHow it works</h2>\r\n<p>\r\n\t<a href=\"#public_repository\">public repository on github</a></p>\r\n<p>\r\n\t<a href=\"#private_repository\">private repository on github</a></p>\r\n<p>\r\n\t<a name=\"public_repository\"></a></p>\r\n<h3>\r\n\tPublic repository on github</h3>\r\n<p>\r\n\t1. Sign in with Github. <a class=\"primary btn\" href=\"/users/auth/github\">Sign in with Github</a></p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t2. create a repository. <a href=\"/repositories/new\">New Project</a></p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t3. copy repository token on edit repository page, see Figure 1</p>\r\n<p>\r\n\t<img alt=\"\" src=\"https://railsbp.com/assets/railsbp_repository_token.png\" style=\"width: 446px; height: 45px; \" /></p>\r\n<p style=\"text-align: left; \">\r\n\t<strong> Figure 1</strong></p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t4. set service hook on github. see Figure 2</p>\r\n<p>\r\n\t 4.1. go to repository page on github</p>\r\n<p>\r\n\t 4.2. click 'Admin' -> 'Service Hooks'</p>\r\n<p>\r\n\t 4.3. select 'Railsbp' in 'AVAILABLE SERVICE HOOKS'</p>\r\n<p>\r\n\t 4.4. fill "https://railsbp.com" in Railsbp Url and paste repository token in token, check "Active" and click "Update Settings"</p>\r\n<p>\r\n\t<img alt=\"\" src=\"https://railsbp.com/assets/railsbp_github_hook.png\" style=\"width: 934px; height: 376px; \" /></p>\r\n<p>\r\n\t<strong> Figure 2</strong></p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t5. then each time you push to github, railsbp will analyze your code quality automatically. See Figure 3</p>\r\n<p>\r\n\t<img alt=\"\" src=\"https://railsbp.com/assets/railsbp_basic_workflow.png\" /></p>\r\n<p>\r\n\t<strong> Figure 3</strong></p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t<a name=\"private_repository\"></a></p>\r\n<h3>\r\n\tPrivate repository on github</h3>\r\n<p>\r\n\t1. Sign in with Github. <a class=\"primary btn\" href=\"/users/auth/github\">Sign in with Github</a></p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t2. create a repository. <a href=\"/repositories/new\">New Project</a></p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t3. uncheck visibility and update configs url on edit repository page.</p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t4. copy repository token on edit repository page, see Figure 4</p>\r\n<p>\r\n\t<img alt=\"\" src=\"https://railsbp.com/assets/railsbp_repository_token.png\" style=\"width: 446px; height: 45px; \" /></p>\r\n<p style=\"text-align: left; \">\r\n\t<strong> Figure 4</strong></p>\r\n<div>\r\n\t </div>\r\n<p>\r\n\t5. setup proxy on your own server, check out <a href=\"https://github.com/railsbp/sinatra-proxy\">sinatra-proxy</a> or <a href=\"https://github.com/railsbp/rails-proxy\">rails-proxy</a>, paste the repository token to config/railsbp.yml</p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t6. set service hook on github. see Figure 5</p>\r\n<p>\r\n\t 6.1. go to repository page on github</p>\r\n<p>\r\n\t 6.2. click 'Admin' -> 'Service Hooks'</p>\r\n<p>\r\n\t 6.3. select 'Railsbp' in 'AVAILABLE SERVICE HOOKS'</p>\r\n<p>\r\n\t 6.4. fill "https://railsbp.com" in Railsbp Url and paste repository token in token, check "Active" and click "Update Settings" </p>\r\n<p>\r\n\t<img alt=\"\" src=\"https://railsbp.com/assets/railsbp_private_github_hook.png\" /></p>\r\n<p>\r\n\t<strong> Figure 5</strong></p>\r\n<p>\r\n\t </p>\r\n<p>\r\n\t7. then each time you push to github, railsbp will analyze your code quality automatically. See Figure 6</p>\r\n<p>\r\n\t<img alt=\"\" src=\"https://railsbp.com/assets/railsbp_workflow_with_proxy.png\" /></p>\r\n<p>\r\n\t<strong> Figure 6</strong></p>\r\n")
Page.create(name: "about", body: "<h2>\r\n\tAbout Railsbp</h2>\r\n<p>\r\n\trailsbp is short for rails best practices, it provides online rails projects code quality check service.</p>\r\n<h3>\r\n\tContact</h3>\r\n<p>\r\n\tif you have any suggestsions, questions, etc. I'd love to hear them! Please use the <a href=\"/contacts/new\">Contact Page</a> or send an email to <a href=\"mailto:contact-us@railsbp.com\">contact-us@railsbp.com</a>.</p>\r\n<p>\r\n\t </p>\r\n")
Page.create(name: "faq", body: "<h3>\r\n\t1. How to sign up?</h3>\r\n<p>\r\n\trailsbp.com is integrated with github, you don't need to sign up, just use your github accout to sign in.</p>\r\n<h3>\r\n\t2. What's github name?</h3>\r\n<p>\r\n\tgithub name is the unique name for your repository on github, e.g. respository is https://github.com/railsbp/rails-bestpractices.com, its github name is railsbp/rails-bestpractices.com.</p>\r\n<h3>\r\n\t3. What's repository token?</h3>\r\n<p>\r\n\trepository token is used to authorized github hook, it is generated after repository created on railsbp.com, you should set the repository token on github repository admin page.</p>\r\n<p>\r\n\tHow to work with github private repository?</p>\r\n<p>\r\n\t </p>\r\n")
Page.create(name: "home-index", body: "<h2>\r\n\tWhat's Raisbp?</h2>\r\n<p>\r\n\tRailsbp is short for rails best practices, it provides online rails projects code quality check service. It works based on <a href=\"https://github.com/railsbp/rails_best_practices\" target=\"_blank\">rails_best_practices</a> gem.</p>\r\n<h3>\r\n\tWhy Railsbp?</h3>\r\n<p>\r\n\tRailsbp.com helps you to follow rails best practices and gives you some suggestions to improve your rails projects code quality.</p>\r\n<h3>\r\n\tFeatures</h3>\r\n<p>\r\n\t<strong>Automatic to analyze source codes.</strong> Every time you push to github, the code check service will be executed for you.</p>\r\n<p>\r\n\t<strong>Easy to share analyze result with collaborators.</strong> You can easily share the analyze result to your team collaborators, then talk and discuss together.</p>\r\n<p>\r\n\t<strong>Easy to track builds history.</strong> Railsbp keeps each analyze result, you can track if your code quality is improved or not.</p>\r\n<p>\r\n\t<strong>No worry about ruby version.</strong> rails_best_practices gem doesn't work well for ruby 1.8.7, jruby, etc., but using railsbp.com, you don't need to worry about what ruby version you are developing your rails project.</p>\r\n<p>\r\n\t<strong>Best support</strong>. I'm the author of rails_best_practices gem, I can give you best support to use it for your rails projects.</p>\r\n")