shipit-engine 0.0.1.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (813) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +24 -0
  3. data/app/assets/images/anchor.svg +12 -0
  4. data/app/assets/images/default.svg +19 -0
  5. data/app/assets/images/deploy_error.jpg +0 -0
  6. data/app/assets/images/deploy_failed.jpg +0 -0
  7. data/app/assets/images/deploy_success.jpg +0 -0
  8. data/app/assets/images/deploying.svg +12 -0
  9. data/app/assets/images/emoji/walrus.png +0 -0
  10. data/app/assets/images/error.svg +13 -0
  11. data/app/assets/images/failure.svg +13 -0
  12. data/app/assets/images/github.svg +9 -0
  13. data/app/assets/images/logo.svg +27 -0
  14. data/app/assets/images/pending.gif +0 -0
  15. data/app/assets/images/refresh.svg +8 -0
  16. data/app/assets/images/search-active.svg +7 -0
  17. data/app/assets/images/search.svg +7 -0
  18. data/app/assets/images/settings.svg +33 -0
  19. data/app/assets/images/ship.png +0 -0
  20. data/app/assets/images/success.svg +8 -0
  21. data/app/assets/images/unknown.svg +13 -0
  22. data/app/assets/images/validation/invalid.png +0 -0
  23. data/app/assets/images/validation/required.png +0 -0
  24. data/app/assets/images/validation/valid.png +0 -0
  25. data/app/assets/javascripts/shipit/checklist.js.coffee +10 -0
  26. data/app/assets/javascripts/shipit/deploy.js.coffee +7 -0
  27. data/app/assets/javascripts/shipit/flash.js.coffee +2 -0
  28. data/app/assets/javascripts/shipit/search.js.coffee +64 -0
  29. data/app/assets/javascripts/shipit/stacks.js.coffee +34 -0
  30. data/app/assets/javascripts/shipit.js.coffee +32 -0
  31. data/app/assets/javascripts/task/ansi_colors.js.coffee +6 -0
  32. data/app/assets/javascripts/task/notifications.js.coffee.erb +31 -0
  33. data/app/assets/javascripts/task/output_stream.js.coffee +69 -0
  34. data/app/assets/javascripts/task/sidebar.js.coffee +24 -0
  35. data/app/assets/javascripts/task/tty.js.coffee +54 -0
  36. data/app/assets/javascripts/task.js.coffee +16 -0
  37. data/app/assets/stylesheets/_base/_base.scss +365 -0
  38. data/app/assets/stylesheets/_base/_forms.scss +97 -0
  39. data/app/assets/stylesheets/_pages/_commits.scss +179 -0
  40. data/app/assets/stylesheets/_pages/_deploy.scss +65 -0
  41. data/app/assets/stylesheets/_pages/_settings.scss +29 -0
  42. data/app/assets/stylesheets/_pages/_stacks.scss +142 -0
  43. data/app/assets/stylesheets/_structure/_main.scss +156 -0
  44. data/app/assets/stylesheets/_structure/_sidebar.scss +80 -0
  45. data/app/assets/stylesheets/shipit.scss +9 -0
  46. data/app/assets/webfonts/CheckoutSymbols-Regular.eot +0 -0
  47. data/app/assets/webfonts/CheckoutSymbols-Regular.svg +143 -0
  48. data/app/assets/webfonts/CheckoutSymbols-Regular.ttf +0 -0
  49. data/app/assets/webfonts/CheckoutSymbols-Regular.woff +0 -0
  50. data/app/controllers/api/base_controller.rb +61 -0
  51. data/app/controllers/api/deploys_controller.rb +15 -0
  52. data/app/controllers/api/hooks_controller.rb +51 -0
  53. data/app/controllers/api/locks_controller.rb +30 -0
  54. data/app/controllers/api/outputs_controller.rb +15 -0
  55. data/app/controllers/api/stacks_controller.rb +19 -0
  56. data/app/controllers/api/tasks_controller.rb +13 -0
  57. data/app/controllers/chunks_controller.rb +31 -0
  58. data/app/controllers/concerns/api/cacheable.rb +11 -0
  59. data/app/controllers/concerns/api/paginable.rb +82 -0
  60. data/app/controllers/concerns/api/rendering.rb +23 -0
  61. data/app/controllers/deploys_controller.rb +48 -0
  62. data/app/controllers/github_authentication_controller.rb +25 -0
  63. data/app/controllers/rollbacks_controller.rb +24 -0
  64. data/app/controllers/shipit_controller.rb +48 -0
  65. data/app/controllers/stacks_controller.rb +76 -0
  66. data/app/controllers/status_controller.rb +5 -0
  67. data/app/controllers/tasks_controller.rb +23 -0
  68. data/app/controllers/webhooks_controller.rb +99 -0
  69. data/app/helpers/chunks_helper.rb +6 -0
  70. data/app/helpers/deploys_helper.rb +21 -0
  71. data/app/helpers/github_url_helper.rb +50 -0
  72. data/app/helpers/shipit_helper.rb +35 -0
  73. data/app/helpers/stacks_helper.rb +29 -0
  74. data/app/jobs/background_job/unique.rb +33 -0
  75. data/app/jobs/background_job.rb +22 -0
  76. data/app/jobs/chunk_rollup_job.rb +19 -0
  77. data/app/jobs/clear_git_cache_job.rb +7 -0
  78. data/app/jobs/deliver_hook_job.rb +7 -0
  79. data/app/jobs/destroy_stack_job.rb +7 -0
  80. data/app/jobs/emit_event_job.rb +8 -0
  81. data/app/jobs/fetch_commit_stats_job.rb +7 -0
  82. data/app/jobs/fetch_deployed_revision_job.rb +21 -0
  83. data/app/jobs/git_mirror_update_job.rb +10 -0
  84. data/app/jobs/github_sync_job.rb +42 -0
  85. data/app/jobs/perform_task_job.rb +53 -0
  86. data/app/jobs/refresh_github_user_job.rb +7 -0
  87. data/app/jobs/refresh_statuses_job.rb +12 -0
  88. data/app/jobs/setup_github_hook_job.rb +9 -0
  89. data/app/models/anonymous_user.rb +41 -0
  90. data/app/models/api_client.rb +42 -0
  91. data/app/models/commit.rb +163 -0
  92. data/app/models/delivery.rb +45 -0
  93. data/app/models/deploy.rb +92 -0
  94. data/app/models/deploy_spec/bundler_discovery.rb +51 -0
  95. data/app/models/deploy_spec/capistrano_discovery.rb +27 -0
  96. data/app/models/deploy_spec/file_system.rb +52 -0
  97. data/app/models/deploy_spec/pypi_discovery.rb +32 -0
  98. data/app/models/deploy_spec/rubygems_discovery.rb +32 -0
  99. data/app/models/deploy_spec.rb +123 -0
  100. data/app/models/github_hook.rb +144 -0
  101. data/app/models/hook.rb +86 -0
  102. data/app/models/membership.rb +6 -0
  103. data/app/models/output_chunk.rb +9 -0
  104. data/app/models/rollback.rb +19 -0
  105. data/app/models/stack.rb +276 -0
  106. data/app/models/status.rb +38 -0
  107. data/app/models/task.rb +143 -0
  108. data/app/models/task_definition.rb +34 -0
  109. data/app/models/team.rb +67 -0
  110. data/app/models/unknown_status.rb +43 -0
  111. data/app/models/user.rb +81 -0
  112. data/app/serializers/anonymous_user_serializer.rb +2 -0
  113. data/app/serializers/commit_serializer.rb +6 -0
  114. data/app/serializers/concerns/conditional_attributes.rb +20 -0
  115. data/app/serializers/deploy_serializer.rb +13 -0
  116. data/app/serializers/hook_serializer.rb +10 -0
  117. data/app/serializers/rollback_serializer.rb +5 -0
  118. data/app/serializers/short_commit_serializer.rb +7 -0
  119. data/app/serializers/stack_serializer.rb +31 -0
  120. data/app/serializers/task_serializer.rb +28 -0
  121. data/app/serializers/user_serializer.rb +3 -0
  122. data/app/validators/subset_validator.rb +7 -0
  123. data/app/views/commits/_commit.html.erb +21 -0
  124. data/app/views/commits/_deploy_button.html.erb +19 -0
  125. data/app/views/deploys/_checklist.html.erb +16 -0
  126. data/app/views/deploys/_concurrent_deploy_warning.html.erb +6 -0
  127. data/app/views/deploys/_deploy.html.erb +38 -0
  128. data/app/views/deploys/_monitoring.html.erb +13 -0
  129. data/app/views/deploys/_summary.html.erb +21 -0
  130. data/app/views/deploys/new.html.erb +41 -0
  131. data/app/views/deploys/rollback.html.erb +37 -0
  132. data/app/views/deploys/show.html.erb +31 -0
  133. data/app/views/github_authentication/failed.html.erb +1 -0
  134. data/app/views/layouts/shipit.html.erb +43 -0
  135. data/app/views/stacks/_header.html.erb +16 -0
  136. data/app/views/stacks/index.html.erb +26 -0
  137. data/app/views/stacks/new.html.erb +36 -0
  138. data/app/views/stacks/settings.html.erb +63 -0
  139. data/app/views/stacks/show.html.erb +53 -0
  140. data/app/views/statuses/_status.html.erb +5 -0
  141. data/app/views/tasks/_plugins.html.erb +2 -0
  142. data/app/views/tasks/_task.html.erb +21 -0
  143. data/app/views/tasks/new.html.erb +19 -0
  144. data/app/views/tasks/show.html.erb +17 -0
  145. data/config/locales/en.yml +36 -0
  146. data/config/routes.rb +86 -0
  147. data/db/migrate/20140226233935_create_baseline.rb +176 -0
  148. data/db/migrate/20150515190352_add_output_column_to_tasks.rb +5 -0
  149. data/db/migrate/20150518214944_add_ignore_ci_to_stack.rb +5 -0
  150. data/db/schema.rb +188 -0
  151. data/lib/command.rb +173 -0
  152. data/lib/commands.rb +25 -0
  153. data/lib/deploy_commands.rb +19 -0
  154. data/lib/rollback_commands.rb +5 -0
  155. data/lib/shipit/csv_serializer.rb +15 -0
  156. data/lib/shipit/engine.rb +30 -0
  157. data/lib/shipit/first_parent_commits_iterator.rb +17 -0
  158. data/lib/shipit/null_serializer.rb +13 -0
  159. data/lib/shipit/octokit_iterator.rb +24 -0
  160. data/lib/shipit/simple_message_verifier.rb +29 -0
  161. data/lib/shipit/version.rb +3 -0
  162. data/lib/shipit-engine.rb +1 -0
  163. data/lib/shipit.rb +124 -0
  164. data/lib/snippets/assert-egg-version-tag +23 -0
  165. data/lib/snippets/assert-gem-version-tag +23 -0
  166. data/lib/snippets/extract-egg-version +12 -0
  167. data/lib/snippets/extract-gem-version +24 -0
  168. data/lib/snippets/fetch-gem-version +21 -0
  169. data/lib/snippets/fetch-heroku-version +17 -0
  170. data/lib/snippets/push-to-heroku +72 -0
  171. data/lib/stack_commands.rb +57 -0
  172. data/lib/task_commands.rb +65 -0
  173. data/lib/tasks/cron.rake +15 -0
  174. data/lib/tasks/dev.rake +31 -0
  175. data/lib/tasks/team.rake +10 -0
  176. data/lib/tasks/webhook.rake +6 -0
  177. data/test/controllers/api/base_controller_test.rb +20 -0
  178. data/test/controllers/api/deploys_controller_test.rb +57 -0
  179. data/test/controllers/api/hooks_controller_test.rb +74 -0
  180. data/test/controllers/api/locks_controller_test.rb +43 -0
  181. data/test/controllers/api/outputs_controller_test.rb +17 -0
  182. data/test/controllers/api/stacks_controller_test.rb +57 -0
  183. data/test/controllers/api/tasks_controller_test.rb +16 -0
  184. data/test/controllers/chunks_controller_test.rb +28 -0
  185. data/test/controllers/deploys_controller_test.rb +83 -0
  186. data/test/controllers/github_authentication_controller_test.rb +12 -0
  187. data/test/controllers/rollbacks_controller_test.rb +42 -0
  188. data/test/controllers/stacks_controller_test.rb +114 -0
  189. data/test/controllers/status_controller_test.rb +10 -0
  190. data/test/controllers/tasks_controller_test.rb +28 -0
  191. data/test/controllers/webhooks_controller_test.rb +176 -0
  192. data/test/dummy/README.rdoc +28 -0
  193. data/test/dummy/Rakefile +6 -0
  194. data/test/dummy/app/assets/javascripts/application.js +13 -0
  195. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  196. data/test/dummy/app/controllers/application_controller.rb +5 -0
  197. data/test/dummy/app/helpers/application_helper.rb +2 -0
  198. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  199. data/test/dummy/bin/bundle +3 -0
  200. data/test/dummy/bin/rails +4 -0
  201. data/test/dummy/bin/rake +4 -0
  202. data/test/dummy/bin/setup +29 -0
  203. data/test/dummy/config/application.rb +26 -0
  204. data/test/dummy/config/boot.rb +5 -0
  205. data/test/dummy/config/database.yml +12 -0
  206. data/test/dummy/config/environment.rb +5 -0
  207. data/test/dummy/config/environments/development.rb +41 -0
  208. data/test/dummy/config/environments/production.rb +79 -0
  209. data/test/dummy/config/environments/test.rb +42 -0
  210. data/test/dummy/config/initializers/assets.rb +11 -0
  211. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  212. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  213. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  214. data/test/dummy/config/initializers/inflections.rb +16 -0
  215. data/test/dummy/config/initializers/mime_types.rb +4 -0
  216. data/test/dummy/config/initializers/session_store.rb +3 -0
  217. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  218. data/test/dummy/config/locales/en.yml +23 -0
  219. data/test/dummy/config/routes.rb +3 -0
  220. data/test/dummy/config/secrets.yml +19 -0
  221. data/test/dummy/config.ru +4 -0
  222. data/test/dummy/db/schema.rb +190 -0
  223. data/test/dummy/db/seeds.rb +70 -0
  224. data/test/dummy/log/development.log +10805 -0
  225. data/test/dummy/log/test.log +89257 -0
  226. data/test/dummy/public/404.html +67 -0
  227. data/test/dummy/public/422.html +67 -0
  228. data/test/dummy/public/500.html +66 -0
  229. data/test/dummy/public/favicon.ico +0 -0
  230. data/test/dummy/tmp/cache/5F7/AA0/task%3A496901070%3Apid +2 -0
  231. data/test/dummy/tmp/cache/5FD/BF0/task%3A616453971%3Apid +2 -0
  232. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-Svpuy5qSkiFtZsFPydzdLgop9RqO4D8hHORvHE75rQ.cache +0 -0
  233. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-mVblO-V2dhzfo-sDOQAZ5Bii8MoKb71hYsDcReOQRM.cache +0 -0
  234. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-nMZLEbPOA2o0OpHoXtxHKhiRSg_6BX3l5iTIztyygc.cache +0 -0
  235. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-xIiF2JBomnwE2qrb6LMQp8Sfaw2EDlWkhBhNDgHUPM.cache +1 -0
  236. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0D31DtEnyjreLzP7FSGhfk99Xn7IohNrgwcIdHkBgYo.cache +0 -0
  237. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0F_asRhsemd41WNUTdopb7guFKg-2v_OdeYwDqvNg_0.cache +0 -0
  238. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0X4d4ydG6vXWQTW-SLUMUVggRUaGmUV8VqJQEO5V1o0.cache +2 -0
  239. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0bjH0uaRbK2LwiGbzir2Vr1CEd_BCRM3zafyFrTxtWo.cache +0 -0
  240. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0vo5uBz0h_8XVbEyHjjAaQjYFNiv1pJ1t88uaZP5vgE.cache +0 -0
  241. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0zjPxEmdx8xESf5SQ-GCgtWntvyFvqcqxsUHR92fvGI.cache +1 -0
  242. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0zwxC1bY2AyEqqZfSN4xaVXopxjrecnLiVwEEnFXUj4.cache +1 -0
  243. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/16Wb3nTKzFhipHwCvyycQYi5o2bBSfbHsS_5oGhmorQ.cache +0 -0
  244. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/2W6qlNTnecxUEN-jyNTbpZXkqGlS0y-8yw0Bk_BMC1c.cache +0 -0
  245. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/2fOJA6XBXRgV0of8SN8M1krWjVXwXhspWpcuFNiFR1M.cache +0 -0
  246. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3OFWTX1MsN1u3YolQMEDQa2s3wSauKeqnsCswkkzB5c.cache +1 -0
  247. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3gygCMbDFJRBo3mQy1o3xijN2l9IigxjWwsjyodfUX8.cache +1 -0
  248. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/4erxjbJtY8zTAzw508nz01VXWr9KAaq0zMKNaQsiLrI.cache +1 -0
  249. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/4xN2-up9H2rLnCZwRoYegqXIhEHrS3PMOoWfVNYwV9U.cache +2 -0
  250. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5XLj1Fg2z3ne9vQbf4sihnpTkXGmnXubAgPGj7ot2es.cache +2 -0
  251. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5qT3nt4p2Aoj5DoaPPLiMuWz7Cl0wDOHVQfsPFxlY8c.cache +0 -0
  252. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6KFAG929iIC5bdDDadWdp8ohukGMDq9GXk3dku5dxNI.cache +2 -0
  253. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6fCSqdSj4G3XMp6YWNTUbFyhSY4rw_6OakQbYSEUdOM.cache +2 -0
  254. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6n9PFCBVKW3Tb27z7DtxHaWd7OG-gy7yjTpLdxgQab0.cache +0 -0
  255. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6ut8B6osDNUYyTJYkpQrPkZpOudCLIX2_ESoqMOx4Rc.cache +0 -0
  256. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/79odVsVErD7g_a_DfYjm3Z9YFxWGWOTTIwu0JjV9oZw.cache +1 -0
  257. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/7OVeILINTnrhyBnMSJzCA9BSHP2WdwYwkr4xauOGM8g.cache +0 -0
  258. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/8-Bvr3WT-xXwLNviKNZk0j1ASKSUzKhoWFG9Bf4Mzz4.cache +1 -0
  259. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/827OJHVgQ0McTz3Up3RIDueQDw-qxXrFtPhUjYk-VSg.cache +1 -0
  260. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9Z8yDnEnhawuTKSXzKn2B28ESruTwr2f6OEGnDW9XYk.cache +0 -0
  261. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9bmg6UGOOICN8gzDj7UWomSX2Yiir0pmET1rntY3FMs.cache +1 -0
  262. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/A18m8UutFtfPQAsEmEsLDKPg3XRgQik_FVmfeVmf74s.cache +2 -0
  263. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ARyT0D_yLqHNfX42vJfHJpVQK9qmXylaxKwffw-bK8Q.cache +2 -0
  264. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/AWZ-epgNJ4ELwgBo8jfjFpZFe38Nron5b-PPNe4EUY4.cache +1 -0
  265. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/AoUs5JmbbHv9rya7vKsST8XJqjCR8JU-IOift64rGDQ.cache +0 -0
  266. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/BA9bsW_K9IVOHhRPZlIe6lTn6wtubZAR1WOXUhU-WQo.cache +20 -0
  267. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/BR9bs2rBvkZS-2elB1WS3bNTqMd2ePwuAS6fOitW6Z0.cache +1 -0
  268. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/BxMB-nPJBAjv49th2LLgmJ6b8R2goN7xAqU-DHLEFJU.cache +1 -0
  269. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CCGkCssACzakr0pb-SIAsPOQiCRSpRf5shywGBt5nrQ.cache +0 -0
  270. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CSxml3OCDdrgbl5purNxVFVD4QHTy2I2-r-ij1lf4Pg.cache +1 -0
  271. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Ck301965nPjpLwpwuaicUYFa5h8Jp8_mZgpHibVi7ew.cache +0 -0
  272. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/DVJZdcJv_Gg4NUAjJnLLo8gAPryIK8EAKIVm919byJo.cache +0 -0
  273. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/DXW19O6T3nCP38kltEhTzB09hr_GfDUXqvD0LhCQiu0.cache +1 -0
  274. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Dpfdw7W47inKEonMVJv5SNXZiuDtCPRzW_KSuPzQf18.cache +1 -0
  275. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/EDkYeQDDOTsU1u02TkLjCpe2SyDvxpNKuzdqzZnX1wo.cache +1 -0
  276. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/EOElWuFh_ifk4iH_fo5uwKhmf_nZGPjbZNfyDY2fYnY.cache +2 -0
  277. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/EgwKzQo1qYQ1kBoQ3uhMfna68VYEneCMK590HjzpkLs.cache +1 -0
  278. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Ei-0T-42HS9RIa1w3le6bct29PgL2om5DybIakRQqzg.cache +0 -0
  279. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Emvowq0-Y2t-j01-5EDIvZwSffNUDwwUhGu_3OeJJZ0.cache +1 -0
  280. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/EoGhAEbM2Df1KAqycBQ2ADmblwD6Z6Xgk6LKx1c5pXg.cache +1 -0
  281. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FUKyxTYuAeD7ARy1CQy1vPIf_X-iEf4KkJ2kjSH0834.cache +0 -0
  282. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FgDsBEFY4e4-V5ZLfZRadhAckdKR37Rr2Zl_SvWrz7A.cache +1 -0
  283. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/GGhfOjwLGkIdWz3D4NMZrhWyzP86H9UdmHBBLppJDCk.cache +1 -0
  284. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/GaJn5HGvDVGNfSENSJLR3KtMu707-JIT3sLmsKmvVOQ.cache +2 -0
  285. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HH0Tm6VBet9g1JuZ2L9rOBe17P_eSJPctFLvN1waXl0.cache +1 -0
  286. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HaV5bgOyL70jdhgDuftgMmnnXterwDZ5jBY1MazJrOo.cache +0 -0
  287. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HbqeHpw1tx8v5Dc_4WexMeka83bYabLLjYFmuSYmOFA.cache +2 -0
  288. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HkhaE8URIVnf8c9xWoDlpWvWfyKnQEDHypr7WhinNyc.cache +1 -0
  289. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HuaIDeUZZuTVW6O66SY3zRbpRhmwK4dzNXrS6uEncyE.cache +1 -0
  290. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ItSY_ROGhK18mLa6WZfaG6YIqABXcUWQqHeeFBlYZlw.cache +0 -0
  291. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Iu1o_OXMHHO3Vd0sfcrokPnmRuyE7KEWXtc8eFM4ZNg.cache +1 -0
  292. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JrcZwj0CMuwXWhnliBiFeBg7cVkFMPHBNcPI8u8dpbc.cache +1 -0
  293. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JyY0td6ydwiZgiVINv2tslgeRAlwmIownlqTX1JGZrc.cache +2 -0
  294. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/KAIKYUpS-lUgMpmqPR9zNn1MEhgUsud6USvsTNZ3zL0.cache +1 -0
  295. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Kw3N3k_Mby9N_9kIITbVEH59SQbXeRjADcF8Ajf0YYk.cache +1 -0
  296. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/KwMDXtl1FpRJHqnMdpeKNk-JG3eU1ig_ADNepqUlyNY.cache +0 -0
  297. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/LSJRgEZrxm7VqXNqSoYGcWqNp9CLc0Oq8emfkv_1Krw.cache +0 -0
  298. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/LcawP_2CmFgJ0aGArmp3Y5OzU3Fq5ftprzhUk1oOlnU.cache +0 -0
  299. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/LrpAZ0ICJwktWuK7QWYWb7F7-TSlqGgCkt8qqbzbcso.cache +1 -0
  300. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MH6FybAtwkVK595sKGsjJD0cUP7DQgWmB6pzeNk_AKc.cache +1 -0
  301. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MI1SW5esw79g2uG4wlBVABG4mdf2HXdg16k_J09BELY.cache +1 -0
  302. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MLMbmRJlsIws2zVQHcJ7rCiYC80_HWi2wtNOfcYSwms.cache +1 -0
  303. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MV5La-EQl_S8y13wXAIIJOeMW2NMHLvz82BQCs2OKyI.cache +1 -0
  304. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MbmJeItof25me2r7QeCx-hLFL1MqHR6pmSc5QivaP8w.cache +1 -0
  305. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/N0BNO49Row05oLOUjvNwSzMD3OkWOiu1JH3x5sIjOGo.cache +1 -0
  306. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NJS_0DD49ggZhk3RhAlbxDtekRUNexcbFBERE3lphoY.cache +2 -0
  307. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NV-3NPtnt8Gmd2ywpD3KXu8OJGROQWvTfBC_XzJVGgw.cache +1 -0
  308. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/OFtYh3kL0OSQKgGGpK-F6NLPg2SLyK66Ey3-cJ7bTnU.cache +1 -0
  309. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/OqcdyP8U-1yQmsVRUFCuXvs-wJ0Q9zoLkxa8RrAsowY.cache +0 -0
  310. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/P8dvwB1U7H7RjCzU71OLmdrBzkBWhxNuPcK-J8hFNyQ.cache +1 -0
  311. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PR8Q50mMVzmIN_aggQXVKoja0vtL-EAJyEQvK_UCarI.cache +1 -0
  312. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QL4HWY_CCW7hJkGLNnxpQS9395ZiFxxrycWmw82FA7c.cache +2 -0
  313. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QwFgVzdqWk1U9IJu_iuo48z2wQX0nG4x_WTEpRgQejs.cache +2 -0
  314. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QwGnjp6jYOqq66DmJSJhjMfIzvDjNSQrzNjeuldyVTg.cache +1 -0
  315. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RTW2G_W3mtAiyIltmBhvDkOwXHlmz--SYhNU_ds6JSc.cache +1 -0
  316. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RVmhBIJkBQ-4Sat4FUh233KvxbyQtNL7_BIR9Ks-G0Y.cache +1 -0
  317. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RXRRnxPgyBhfo4V7bZWSebiVZs4gfcEoTVxE586c4lQ.cache +1 -0
  318. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RarKYi-qrs-BQYnbK54qAMURAE424kCrthIwsRgQ94s.cache +19 -0
  319. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Rlsg7VPtRgnP1yzRVwKdBC04dtgIq6WS25THCro-RIc.cache +1 -0
  320. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/SD3Ol83RfPjB8BS_mcOmO-VJznl69GVwmXJYbwPG77I.cache +105 -0
  321. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/SOqnJbRZjN7VvSGY5McdxjLB2S0ZX8b89h8U-jBczp4.cache +1 -0
  322. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/SW88UkYs0ZWqRdFCAEM5yJd53xmrNEy6O6GGGzWhu8k.cache +1 -0
  323. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TohOC514tYbacv-fJPUf7CtmW2s0O0jfO_mfyhVU-7U.cache +0 -0
  324. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/U4eiDxZi5D33lcsDPwCfcG3X1xqiaf_LvGnbDcU5Zwc.cache +1 -0
  325. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/U7Gd1TAPsiS73V6Z1VYeeWlMP3Isrz8rEW1t2zRyCCA.cache +1 -0
  326. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/UQWoOMkPIYRJx_FDpHJgPXVvbE1kc4_4-UpMvLihRiU.cache +1 -0
  327. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/URMXqRNkAXXUrHOcDxwuirbsm1pcwbp6DOgn35JuByQ.cache +1 -0
  328. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/UXlxEIkPihLXpIBMLjzup5wro9EjhJLe_UGDHm5VhKs.cache +1 -0
  329. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/U_ILtYQgzvFhheI63SSDoXaBfJL0Akdy7R42lE0SVSU.cache +0 -0
  330. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/UtwxNuCOYG4rcIhlD7HelYaZIqYt3nltQ_w2K_-p4Ck.cache +1 -0
  331. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Ve7LudoBelar7rV9D6kWWZLTNwqbMOHXEX2hPj8tSlM.cache +0 -0
  332. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Vfl8HC52-bbviS84eEZxrXi1-ioECC3he2GU6vVfryY.cache +1 -0
  333. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Vl5mV6tInC-AMfCAzK27IeK4FTX4tP4xPtq1QF226Y0.cache +1 -0
  334. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/W9Fjhf8pn7MLHj8gz5wCd6s2gsR_vKk_f7xxe1LwVU4.cache +1 -0
  335. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/WPdAL_Lqgb7_4yjLuRkEvSCGiZKP6nSo_-ChjS-_lE4.cache +2 -0
  336. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/X1oq-rIggwESRIEYhYkgkoWmg7pmEllUVyp-LONyPQ8.cache +0 -0
  337. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XYiutOiHAp8RwwiVfSijdh-8UiVCDv0_wZEThtff3b4.cache +1 -0
  338. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XgZCchZuerFn9jRwXqhox03zPvnO6zGMFonkXXSsSFM.cache +2 -0
  339. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Xkx8icYIHXIHJmUqjuiNzd1figVtMQ_mu1rXDajGwMY.cache +0 -0
  340. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XnIXzLut0xx98YvXT_nYHxKvdSfmY5ZHNmPMeZGdoNE.cache +1 -0
  341. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Xwvzd4LlA0IbFYPyZItdhvA2uLrMnuTiMFjFpByJbkw.cache +1 -0
  342. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/YjzxuCef_6LBQ3XNaItf-sCynDcMZc5XiOZfJMkTa0M.cache +1 -0
  343. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/YqSyIrjbDjhodfq_KOe3xscOxddDT7_Bk0dpTgnC578.cache +1 -0
  344. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Z7lgC4S1HJT5MBm5kJgIqxozY__pC66SviBV_rxVuiU.cache +1 -0
  345. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZMsxYb7MZs4eOp9vf1GqVjWL7J38-6PGKgqflC7o5Hc.cache +0 -0
  346. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZxY7a7E-7NdoNGkiuO1i8aOd_n6aZPGTKlsPdFunMco.cache +0 -0
  347. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_GIKnKOoV9ZF8Al739SyzWhD-GN0YfdERfHlAxJ_4sk.cache +2 -0
  348. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_m788jlvKlZMNcGNWyuhzBbsC55krOzJmVEf2ujFreo.cache +2 -0
  349. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/aIwPWtsELy-iVFlWJMrx_M6_pfd2A0bqx9jHd0M0a9g.cache +0 -0
  350. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/aMWlvhJIQ8ccR_fLm6XU2WIbOKWlBpr-E-PmV3VnVBc.cache +0 -0
  351. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ahd6onuCZxaa-ok1Fmlgw_MafQUNfhF2Emzet6KRgkk.cache +2 -0
  352. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/atiR0R0CAj5PD0ruX_nONGxh_sPXGRUd8bKChAg-iyw.cache +1 -0
  353. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/bA7c2aRmDpgyp9g-dwvBTha3_eJYfwEcUUAvas8LaY0.cache +0 -0
  354. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/bTmFJ9jOV4XX1-qQt5eL_vs5ym0Ujq5AlqShH1Iuab0.cache +1 -0
  355. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/bolYufxu1-GHsHX1ZNXeJWfM21VN6c7FrATpOt8-fSI.cache +0 -0
  356. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/btUsWol_m0bfhn2tM4QZF0p6UxqimfRO1lGnSdjwAss.cache +1 -0
  357. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/c3DPKk5y5wK03hiHahNvYIcS6MhcWGihfd6FtRMLHBY.cache +0 -0
  358. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cTrmxpXU9ApI086ePHzFAq0j7B_B1_YvJvz0RzmmTCA.cache +0 -0
  359. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cfRx3ipBTXBD0h2rd1sKk-L5DabMC5E9A-gctjVekWA.cache +0 -0
  360. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ci1SmvlG70ux0eVB4T2Hq0uMWUEUrW0d99t-RCUyyG0.cache +2 -0
  361. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cnfLyAbfkbLV1AYabLtnufb9HHD-DVUsjEFEnLV7axY.cache +1 -0
  362. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cyAooGZVL1huLzcNmE5jytAY76u1QVs9nogd5IjIang.cache +1 -0
  363. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/dh6UGD2Sw2UZspsLpyX9w0_YQaE5SQyMwpLvTQlPR50.cache +1 -0
  364. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/e1UTzoa3w2cfZQqN9uWGzWr4hkAvGoDO2aHIljsoizc.cache +2 -0
  365. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/eFeAdQ5B7BQIdYq-P8jMfBVvn8JpnVUn8WRFuWnFD1I.cache +1 -0
  366. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/fDCMk3VTrgyg45sDyEWpAR01Z1wgFJLJ3OW_e_bTy7c.cache +2 -0
  367. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/fLP5p_VyHlzDn2zaOgyvwxD8sw9o5CmYFw2F-d_cRM4.cache +0 -0
  368. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/fQaNSw-ypQPwly1n6O-485MV_X4a5S7tB4_IkF6omJw.cache +1 -0
  369. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/fhEbU257BW-dpKmj-hl4rX0oOmnEJDXuEWzhgXwlYtM.cache +0 -0
  370. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/gK-V98E7cO1u-xt632svaYaeLKHrwVdN1el_Tf7OdjI.cache +1 -0
  371. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ghbMFfG2FX0j_dXR5i0EekKUPPZW9gJ5a9Ymy569eYY.cache +0 -0
  372. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/graU-e4yIipr7ZSCf6lM6bmH4LDIZtgp2MI777l_IMA.cache +2 -0
  373. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/gu2rIo1OFVLfxzxVGyw5ZsHWZGejzrzjnvX24oiGR-w.cache +2 -0
  374. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/gyFpNnWQp4_Hq_JG5iaZ1_V8lcxU7EkMMok2r_dmAJI.cache +1 -0
  375. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/hsUNux1yPb7tKKlGnLYF5Q2Tw085JsTKqp5vf-DJnrw.cache +0 -0
  376. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/iIgYiHp_87ujUPWmg3DAOju2EgekJtl_ZF7LmKl1lI4.cache +2 -0
  377. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/iOw2L1RkhXlm3YhifknLkRW8sIbWQvTQutWE2awOk-M.cache +2 -0
  378. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ifnHDGmGE3XnB9zwYbZVVpBoR_NaVMt8GUeiN2MsdHk.cache +1 -0
  379. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jB0ZFcqrW6VUi_sNT81XAW29L509iMyKomvnK9upgzk.cache +2 -0
  380. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jVgaiQV1tX5tkr7W17W4xBY3shfOfIdoRktHYhU6C5I.cache +1 -0
  381. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kFWVZecoz1kW3Wobp6_rZH1WRsb8m5GFkAhPC0VEUPY.cache +0 -0
  382. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kH7bEdrjJRnuuD5FOopSnzAtXKsBsQki6Dru50gXq5c.cache +0 -0
  383. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kHBaM2fOz0224c4c62qeVx16vFxlijX4UJZp6oA8g40.cache +2 -0
  384. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kMRPMn8ZW5hHKoBJKHxJJFWqbFLy63fgOoqVlsztYRo.cache +0 -0
  385. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kV-EY_oYRYsVMyVc90iLAVk17OWwWFQ6OqUMi-YdNv8.cache +9 -0
  386. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kXhmcRnQ1DMKO500oXLgbQATMlZ4J6jaK5sM1l0jn84.cache +0 -0
  387. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ky7PLTdm-fpj2wb7As1WG34psSb9vnu9g8tcbjOYVGk.cache +1 -0
  388. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lIXpLp9Ksp8SsGX1waXXnIvcDtPotycT4PR-6y5r7kc.cache +2 -0
  389. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/le23hz0CHWNBn47lLpU5O4RnAhWMeZhbpT1HJZVL4C0.cache +1 -0
  390. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lknip8bQoJdZJqLgT-_EqNO-1rbeF3bv-fcrt5WR3dY.cache +0 -0
  391. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lzIlyywNJ_DeKA8f2hHho-0GFFannFJsQ1hqQLiOu4o.cache +1 -0
  392. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/m3PrgpgGAaXO-MXdI7ukEAiTw6DWc4RnaNgoZFNHTMg.cache +1 -0
  393. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/mBSdYTpsQk2qKOBUg1DUE4HemcJiUHZqa0HfTmmhHZc.cache +0 -0
  394. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/mfZNw7i_BZQ6g-wm0NCbi6urAyb3-CdE_Z_vqEEVX6Y.cache +1 -0
  395. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/mkHRd5M-ZCoNB1znrOsdOeOFtiJOrZXNKugRhryp3kg.cache +0 -0
  396. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/mn1hUZrlYsuULP48vHtFh0JpLzJKgNWWCmNnbLD-GTk.cache +1 -0
  397. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/n5M16vhIw8DdPInGBfOW5jzqzbNN02D2xy-DKgDZP50.cache +0 -0
  398. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nDXW7K6M6_yyhIv-6bGeS1aN2ezwRZRwcNpfwdBp4J8.cache +1 -0
  399. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nIBiA_CFLpPtwIzw_PhGUNVSYuaIn69kPfR94E4L3Hs.cache +19 -0
  400. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nTLxYQi8Jh7ni0gmVLq_2oE3uUc_s2oclks-ZwYmMXY.cache +1 -0
  401. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nihP0YNwxwKdpMlyN9ZNePfSx1dAemJjIUZik7SlYxI.cache +2 -0
  402. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oH-hbt3vGnTckrMe1K-3JrzfzkfcloPDQ4L0CFn1bwM.cache +32 -0
  403. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oY_XU5ADj_NmjH0omdCyuf1qGeV18Lhy8qDS6uzg7oA.cache +1 -0
  404. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oy_eLLrZtAbv8Ivsvn5TXhMNXJrYd9xGhbzkIEvtRgU.cache +0 -0
  405. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/pDd5HlYaW01ZecvMLIAubLwMTNCTfqDgVdIeeHMuDQI.cache +2 -0
  406. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/pNuI7nym5ZtskUMpJgLr4RWmFpHhY_dZLA5NwSK3dis.cache +0 -0
  407. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/q188cwMLy5FD8FkFa7frjoJr6VR3RjQhjD2P9IrYzNk.cache +0 -0
  408. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qKlEUp2I8S_8cU-IooV08s2MujEdsFS1pCQc_QTRzCc.cache +1 -0
  409. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/r2glI8vPCduR65mk18XVmk65uIquarjwFGgb59CH3tE.cache +1 -0
  410. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/r9T1HQ-hSfuQcrL_nSpZ7J6mpU_LiT8Mw2fSA-xQR8A.cache +0 -0
  411. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/rQQn3COcRPRzd5CUtTfn5MLHuLvIEj2BR152ESk1kAQ.cache +2 -0
  412. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/rSg_bYso__nRoIKqlpIp1sDO-dK_NpBv9WAR3P5aChY.cache +0 -0
  413. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/rqE-uWjUpjTJQacEck-1wlj9hHrdRJ2PmMsUkiL88QY.cache +0 -0
  414. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/szb7FhgpUPZ5iwd8P15GLG2Y-nXOZQlPuoNnkZodDZs.cache +0 -0
  415. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/t7Avh-u8ClVbyPheuvXJoNourlIqKwNTXs_7ElS3j8k.cache +2 -0
  416. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/tZyb7vpt98L9jubim32NOpy6ln_2a9N1NipM31VEbXs.cache +1 -0
  417. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/tdO1XsjC5iWX0Ev1dTRlppKaajG4ATtWGKQ8NkyPiuI.cache +1 -0
  418. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/tj75VSAHiWx2gbOaiNbjvSpWEVqjHACSWPwtv2VCoSk.cache +0 -0
  419. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/tnkY73Yfb7qArDJBY4gZjw5fyclLqhudGRp78u8AxOU.cache +0 -0
  420. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/u4yYOpNMR6jzA8kEBKWIw4h0AYzXPW5v93E_yzhnc4A.cache +0 -0
  421. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vE-x41_K8TQ3Z7XeQTivuiBOGI2lPCsuCkE5oPuqZZM.cache +0 -0
  422. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vK1tr8vtDEBfPQ8eVLucCdOvJpcWDYg2eA4jZtPWej4.cache +1 -0
  423. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vYp1wNky3OrU7mcJfRfrrZwBTRpx6WDq4A3YCYljX0I.cache +1 -0
  424. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/wrTVFMBsweZ8U34G3oNE1tGjC3905qsJbpNbK-qz2hg.cache +1 -0
  425. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xAu3ysgWqBbO73MJ4_44j_vnOCumvXJyDG2ADjnb5Ck.cache +1 -0
  426. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xBOd1xpwofj-D3bcu-Dfh5hp2tMWBNfxNAp6qe5x0Ig.cache +2 -0
  427. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xCcL_B6JyBZSNMMyvg-BJbZDwAl6fJxYw7GJNBZUwvc.cache +1 -0
  428. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xr5BkAXYL4E29303MfN2hOmc-LxEYbzDQpUiN9Qt4k0.cache +1 -0
  429. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yIDJo17UyDMSmBr7SDMK7zKrMWtl5i4Jf8RX-XE9y8k.cache +2 -0
  430. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yQvqeK7OrdTQsommu8-RnFzjFcLavinCoDDqDQEQVrU.cache +0 -0
  431. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/zdtm0jbYXVIz_MRLk626UeTIVMn9TfnwG4ZPYeHChfc.cache +0 -0
  432. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/zuoPybsXsCBTU15ZlqU_pkrCqXtN97fv4WOzpjquWek.cache +2 -0
  433. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/--xYYg28ZgG74o2MD9rsG5dpKtURVxoIDsqcc8qgakA.cache +0 -0
  434. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-3B5Sq_gO-FSdY8_L5qlv_DMJj-Qnhr66f1H2yiuqbE.cache +0 -0
  435. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-Q07CPm59S5ORobb8fwq4UlsHxQhcqCG7KMF43XIBvQ.cache +0 -0
  436. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-S8RCLZUZHMujh41FwO7bZgH7r-dZ_Ttwa3jKPEf7D0.cache +0 -0
  437. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-Svpuy5qSkiFtZsFPydzdLgop9RqO4D8hHORvHE75rQ.cache +0 -0
  438. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-Zl5a7hl5EKRFECAfcUfbufXUzTCF0GCYT43ksSeoS4.cache +1 -0
  439. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-iLvx0LVcOG_nqz7Fdj1C9DRzieksHjWrXvsg2MXe_I.cache +0 -0
  440. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-mVblO-V2dhzfo-sDOQAZ5Bii8MoKb71hYsDcReOQRM.cache +0 -0
  441. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-xIiF2JBomnwE2qrb6LMQp8Sfaw2EDlWkhBhNDgHUPM.cache +1 -0
  442. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0NxqZho4ZZ9hoELrS2P4tvlolQFBpstWUV9bwB--hbQ.cache +0 -0
  443. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0UsdriPGE52puvNRs_QVjnUt5k66EzqX1vuxQ6zHGHk.cache +1 -0
  444. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0X4d4ydG6vXWQTW-SLUMUVggRUaGmUV8VqJQEO5V1o0.cache +0 -0
  445. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0bjH0uaRbK2LwiGbzir2Vr1CEd_BCRM3zafyFrTxtWo.cache +0 -0
  446. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0vo5uBz0h_8XVbEyHjjAaQjYFNiv1pJ1t88uaZP5vgE.cache +0 -0
  447. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/12ZGGSiVtaGImFqpL3E7wYM8BLgza-Soy2gvp-85iKg.cache +0 -0
  448. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/16Wb3nTKzFhipHwCvyycQYi5o2bBSfbHsS_5oGhmorQ.cache +0 -0
  449. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1_959hoGCdTXc7SRcOU61Q3bynVkxUUOJ4YM36Hj6Dg.cache +0 -0
  450. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1kuMWc_5k3pjBZLNEnHvepf-AyRFH33BOT3Sn1Pz3zQ.cache +60 -0
  451. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1lvvsnWri7lBSX5c_k5wpY-iUqApvNHtRgAAF2cF698.cache +1 -0
  452. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1n25jTvxlE0_W4Vny4241ilVRFhO7iNBqTBySiAkVe0.cache +0 -0
  453. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1ro777nvt9hjYDdIzR_Pw30aAyqetWwSj5zKDE2WIog.cache +1 -0
  454. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1zBRTZdcDRu40j-ZnUqIe2M0zaoKswztd32zKC-y81E.cache +1 -0
  455. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/25lxycnfQK4dlVGfzAci6GiYt4lQq6fd_qiVNZo0JM4.cache +1 -0
  456. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/2awJSiCKzMNAPcXXHmS1YYE8rw82M_5O-Gq9agiZuig.cache +0 -0
  457. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/3gygCMbDFJRBo3mQy1o3xijN2l9IigxjWwsjyodfUX8.cache +1 -0
  458. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/3rmfS6SQaVEfYqGp_fPyJyQ6C3OFiqd4P22R-zZmGTc.cache +1 -0
  459. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4XVry62-Oy3F-4OuAIOND2OtOIgosg5VVM5YTo8rZ2w.cache +1 -0
  460. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4erxjbJtY8zTAzw508nz01VXWr9KAaq0zMKNaQsiLrI.cache +1 -0
  461. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4g2h1H3cGVZBXKg61dDYW0VaPexUM8aSTFIl9ultF_s.cache +1 -0
  462. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4hP4QN3j6cVc09qghrcIrJtKzD5ClNafvWO23FFT70I.cache +1 -0
  463. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4hYxdJzS6DXXtabQYCZyFjuHr8AHRwjQgcl1q6tsjS0.cache +0 -0
  464. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4uCsK_x53wwKnTDJHYCyDACNB_Reb6z8wHieAgx7yiE.cache +1 -0
  465. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4xN2-up9H2rLnCZwRoYegqXIhEHrS3PMOoWfVNYwV9U.cache +2 -0
  466. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5-U7omAI0wWlpYtm4-S-0h2s2orLnhYlJctYVZn8H3M.cache +46 -0
  467. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5QxwpwBpxpXTsBQkjMcheP4Ln9p4tkB9DQpUFDgpkYM.cache +0 -0
  468. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5XDag_F0lOIb4J0uXrXSQAVBYlDxifQloAMs0QsHLRI.cache +1 -0
  469. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5XLj1Fg2z3ne9vQbf4sihnpTkXGmnXubAgPGj7ot2es.cache +0 -0
  470. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5_rfWOfsRxc3w3_noXoTq_GLncwWosv9YI05ltqVTrA.cache +1 -0
  471. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5n0Kh-4f0eYJAxZZLgugvHVEdoHwLcpyBuNPdN60Ee4.cache +0 -0
  472. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/6HeDvRGCfqlqk23evy8VddT4EAW89Ss8s3qscR4ptH4.cache +0 -0
  473. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/6KFAG929iIC5bdDDadWdp8ohukGMDq9GXk3dku5dxNI.cache +0 -0
  474. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/6fCSqdSj4G3XMp6YWNTUbFyhSY4rw_6OakQbYSEUdOM.cache +0 -0
  475. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/79odVsVErD7g_a_DfYjm3Z9YFxWGWOTTIwu0JjV9oZw.cache +1 -0
  476. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/7P0joc4hEGhjx_5KgRyWYVgHDE0GeaUq57sGd4edbFw.cache +0 -0
  477. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/827OJHVgQ0McTz3Up3RIDueQDw-qxXrFtPhUjYk-VSg.cache +1 -0
  478. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/85mike006lRp6geKXjeKgvIvMDXDNvDw48ptdTUCo44.cache +0 -0
  479. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8MY0VO78Oyrax7dhgf0tXt5HA_sGYWQiQ1hlIPkASmc.cache +1 -0
  480. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8Zjkb8Nbyf_fyorM9OYSg1IW-NY4Pk96-g_1U4d5uls.cache +1 -0
  481. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/998R2V4dOSn3eMG0eN-ZlMNCZbUylPubzGQsDxKs_gg.cache +0 -0
  482. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/9CGVA3IfUIwEqtQQABOKf3y79eF_ffEOZsCSI8dwnsM.cache +1 -0
  483. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/9Z8yDnEnhawuTKSXzKn2B28ESruTwr2f6OEGnDW9XYk.cache +0 -0
  484. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/9bmg6UGOOICN8gzDj7UWomSX2Yiir0pmET1rntY3FMs.cache +1 -0
  485. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/9rUFrRUHzbmpYRa1YhTYSr3E7_b2qI5TcqwcyThkqS0.cache +1 -0
  486. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/A18m8UutFtfPQAsEmEsLDKPg3XRgQik_FVmfeVmf74s.cache +0 -0
  487. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/A349hKKDjByNyQbt6UJJC_wiNKpekz8LPTsRQxZfL_I.cache +1 -0
  488. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ARyT0D_yLqHNfX42vJfHJpVQK9qmXylaxKwffw-bK8Q.cache +0 -0
  489. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/AXSKlO2Sxm2An8wkP5qYs12Qwa2Z9AmF8uvy7QQzvKY.cache +1 -0
  490. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/AlmSreEEi3ehLI_NnRga_sguil2POSjPHR---Fm7fgU.cache +1 -0
  491. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/B52hPzEnHTBv6R1ccsa_nCZepnMMKuuFTZt5r4HiWBE.cache +1 -0
  492. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BA9bsW_K9IVOHhRPZlIe6lTn6wtubZAR1WOXUhU-WQo.cache +20 -0
  493. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BRCz37MapTKcrHup6ZjsEtEZtHNBp_bHNq6ZHPYZsYg.cache +1 -0
  494. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BROQnDhwyTD5fSETT8ZdUu81o38jSGU4bMZ9LrIETU8.cache +1 -0
  495. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BxMB-nPJBAjv49th2LLgmJ6b8R2goN7xAqU-DHLEFJU.cache +1 -0
  496. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/CSxml3OCDdrgbl5purNxVFVD4QHTy2I2-r-ij1lf4Pg.cache +1 -0
  497. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/D0Jg_F_hCc-w-JuDlLcQlO8NcA8Cvt6wC8aes9FQ8No.cache +1 -0
  498. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DAuGN5SgyRQHoMIMSjixXkF95UFMCWX2mVKek4PQru4.cache +19 -0
  499. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DICNVWZuYxJziT9YJDU4XShqsoB3EgDXHbbjHhdGP24.cache +0 -0
  500. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DVJZdcJv_Gg4NUAjJnLLo8gAPryIK8EAKIVm919byJo.cache +0 -0
  501. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DWst_RfDvZvN7kPfGemYnLYI-SLzI8cQolQRqDr-Rhg.cache +0 -0
  502. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DhRjwXkxYAq2yAQfUB6wnok6KAXqQsIrw_fjZp7uzsE.cache +0 -0
  503. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DpZ1ZqrjWPAL5iFn9j0QAd8AicRKjdy9ZeLWMPdpi-g.cache +0 -0
  504. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/E0ETAEMGdo60gkvYCL5G_Vn7tXoJdmsBUukmCfxJ0iM.cache +1 -0
  505. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/E8l9q6b3-ddKWl7FXOmpuvTg2r90TyVLFwSMWUPGE3Y.cache +0 -0
  506. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/EMApzh9Zc-zZpBTDp62Q5ouIUmvt4vxcwsqzRGxs_BA.cache +1 -0
  507. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/EOElWuFh_ifk4iH_fo5uwKhmf_nZGPjbZNfyDY2fYnY.cache +0 -0
  508. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Ej_cosO1rr0pAQBmFqlC87mCyF3RgtIMGJcemwzf-SQ.cache +1 -0
  509. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Emvowq0-Y2t-j01-5EDIvZwSffNUDwwUhGu_3OeJJZ0.cache +1 -0
  510. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/F37uHaVREUTDUjX1e27DJbYpPuGvu9SVj0qlH7A4QYo.cache +1 -0
  511. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/FFGEFID_cOucpuisWHfJyorPiwkZ_mQQDFYbvTr7PFc.cache +1 -0
  512. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/FUKyxTYuAeD7ARy1CQy1vPIf_X-iEf4KkJ2kjSH0834.cache +0 -0
  513. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/FgDsBEFY4e4-V5ZLfZRadhAckdKR37Rr2Zl_SvWrz7A.cache +1 -0
  514. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/FwHhmedTcTbIKeoMXpSW3I-gJfdAxkDdhewpc0mPrP0.cache +0 -0
  515. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/G3iLKadXny4kV1WxAsV8UIZL2VH0p1RshXbpuRq_8yg.cache +0 -0
  516. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/GGhfOjwLGkIdWz3D4NMZrhWyzP86H9UdmHBBLppJDCk.cache +1 -0
  517. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/GaJn5HGvDVGNfSENSJLR3KtMu707-JIT3sLmsKmvVOQ.cache +0 -0
  518. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/GagiRkmj9cxYLhz5VSz3QnhCGss9vntY-R-IyoIhJvE.cache +0 -0
  519. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/GgMf3w0fmEjYugVfvVbtygBWEGTh6Cak-Te1J5EIaNo.cache +0 -0
  520. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/H-Jz_LFXIKyb_g7xm2DdU_-FROr1oWmendLwz9-q41k.cache +0 -0
  521. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/HL1UvheKLBZXtr8P8oaA2-yUyTbSSI2t0rY-aqKn30k.cache +0 -0
  522. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/HP08GG0ceTVQmISmltR8IPsfP4v1eWUFE8rWg7JrePM.cache +0 -0
  523. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/HbqeHpw1tx8v5Dc_4WexMeka83bYabLLjYFmuSYmOFA.cache +2 -0
  524. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/HuaIDeUZZuTVW6O66SY3zRbpRhmwK4dzNXrS6uEncyE.cache +1 -0
  525. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/I0HYg1pV13ZQpHIpDpxU0DnSZAqQDHtc-CD8caQv8fs.cache +1 -0
  526. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/I4eNrSofbsifXIql0FOb_MqOBll3b8mwB5AOM1xDUtw.cache +0 -0
  527. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/IEOm3Kuz032yL4pBPin63qsyMmgIg0I0ukB3krtulg0.cache +1 -0
  528. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ItA-7kAIOwUJE5I5KvoiYDiwZahQduh1FBIivkucbGA.cache +1 -0
  529. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/J1FRJEK2s7BElPtVEbILj12-JpbYwcwEu89hfOeDnzs.cache +1 -0
  530. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/J738qcaLvepTDALOEFtX4SLvBiW-xBKZaWc5qMWn1IA.cache +0 -0
  531. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/JPmSn9p4wmW8RfOF6--bvMKdGB_nPUcYfTIDwUXD9io.cache +1 -0
  532. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/JyY0td6ydwiZgiVINv2tslgeRAlwmIownlqTX1JGZrc.cache +0 -0
  533. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/K6ZvX0-uKZSVw1XMtcGvp5hltEbByjjsc1mIVDU4s-A.cache +0 -0
  534. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KAIKYUpS-lUgMpmqPR9zNn1MEhgUsud6USvsTNZ3zL0.cache +1 -0
  535. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KJyTJM1FL9mPAfarmV46NGHFC1MLEANsJn4aBsSeofY.cache +1 -0
  536. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KPV18Bn4TSWNhehGZ1yyxctPVZ5Ml-a8ohimUdxIQ9w.cache +1 -0
  537. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KddCd-yqhUcXwQ6MT85dUb6yxMpbNXpp_Vu4e8Jq7NQ.cache +1 -0
  538. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KmGY-_e-RBtXrjPIHtp4kbC_tSpLSVwv2ZrAGU7dWhE.cache +0 -0
  539. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/L3MalVYxWA0aV4wedbyfuloJhyT7fYcCFUsI4XQPQt0.cache +0 -0
  540. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LLa_nArZhPNytvaWEMIdkIj8NI8v8nwaQryZ7NWFdzQ.cache +0 -0
  541. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LNdXskRK5LA8RB2PvLQqahvip00928K0hIiM0RqCjYE.cache +1 -0
  542. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LQs-CnMa_GpPs-OPBWYDhKqpLt8OyAyZkQYP23FGXvE.cache +0 -0
  543. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LUXMtlEGRFCiRhU1Teb6KQTAyz99i46YafhKeA8V7ZE.cache +1 -0
  544. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LbgSSjU__mozAxJTfXkCJa_WXJt-rDnBlbR2JlV_oSY.cache +1 -0
  545. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Lfalx3rOcysdbuZMY4pUXKmWLoq6qhQMS90zEC92fIE.cache +0 -0
  546. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LgPEh1a-gczEJtPS0dY6rOFu_So64fKoAqSbKTikeSo.cache +1 -0
  547. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LyXwxormtRZcaXzIMoQY1GG_cOyfPDRcUrqh4Z-tXzs.cache +0 -0
  548. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LzkTltF6Tj69P3XdIYTgoA8IaSHa0AC4j56nXcJtm_c.cache +0 -0
  549. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/MH6FybAtwkVK595sKGsjJD0cUP7DQgWmB6pzeNk_AKc.cache +1 -0
  550. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/MI1SW5esw79g2uG4wlBVABG4mdf2HXdg16k_J09BELY.cache +1 -0
  551. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/N0BNO49Row05oLOUjvNwSzMD3OkWOiu1JH3x5sIjOGo.cache +1 -0
  552. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/NJS_0DD49ggZhk3RhAlbxDtekRUNexcbFBERE3lphoY.cache +0 -0
  553. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/NOoCN73Mfou0sHvvMnlOMLECtprgKWNPmOtzGDJL8aI.cache +1 -0
  554. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/NnHHX_WjteTP59l5aA8h0tRCVkQaFcn5f59eU-aXRKY.cache +1 -0
  555. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/O28Tl7beTGm8tOGThnfq_yjisj6DwQiS2I3gk0gojmE.cache +1 -0
  556. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/OB2JHNrhaYRcKUu-6gOGAOfDGN324cu22pHNTwYUTPw.cache +1 -0
  557. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/OFtYh3kL0OSQKgGGpK-F6NLPg2SLyK66Ey3-cJ7bTnU.cache +1 -0
  558. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/OGmGlWntiZ7ZVFMeDogZlItG_EYlFr05jg8d9Dg3ON0.cache +1 -0
  559. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/OUqmqA_-k5ekc5dju4JFyrJPNJMR5c0dP_FyrtRzsAE.cache +1 -0
  560. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/OfuIsxeQmZWy1tbBdvSLPyDTl2uKFmpWtomRtGx-x1c.cache +1 -0
  561. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/P0_YdzVs4se3C_-OBPd86NaCO7bC_QaDqnGh9aY4x-I.cache +1 -0
  562. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/PCTfmMsySv8slVKZHH-9jzxrKL705uiNSaIWUgM51i0.cache +0 -0
  563. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/PR8Q50mMVzmIN_aggQXVKoja0vtL-EAJyEQvK_UCarI.cache +1 -0
  564. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Pg8NuP-Xj3PdqcAYG0YyyUsj90Zn18iPU5lpeHbTDpE.cache +1 -0
  565. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Q6OsC95J6F983SqDNxfJ4hK1oTJo1AcGRZR3mTfYO2c.cache +0 -0
  566. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QCnCQ33fDmdqooEW5dqorhObNkGRcuRJc6iL6dhaswI.cache +0 -0
  567. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QL4HWY_CCW7hJkGLNnxpQS9395ZiFxxrycWmw82FA7c.cache +0 -0
  568. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QZSKy1W0Pl_9ntTk3XD6CxCDYu7JwO-w084ovFu606w.cache +0 -0
  569. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QaJxPv_bif6i_35hKW_bqEoflYTPf62ZihJwno-S144.cache +1 -0
  570. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QjYV_JHbdUV-osJQ_G39-v8aWJs9jk2Gijkv2QxaGqw.cache +0 -0
  571. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QklnVbVBv8BRGfUgG26H0gn1Q74Y4LHJ7n6UW3euIMI.cache +1 -0
  572. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QwFgVzdqWk1U9IJu_iuo48z2wQX0nG4x_WTEpRgQejs.cache +0 -0
  573. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QwGnjp6jYOqq66DmJSJhjMfIzvDjNSQrzNjeuldyVTg.cache +1 -0
  574. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/RTW2G_W3mtAiyIltmBhvDkOwXHlmz--SYhNU_ds6JSc.cache +1 -0
  575. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/RU8_ju_q3MBZ8d164sgK7zWVBRPM8qYIzNdU_bKoILo.cache +0 -0
  576. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/RXRRnxPgyBhfo4V7bZWSebiVZs4gfcEoTVxE586c4lQ.cache +1 -0
  577. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/RarKYi-qrs-BQYnbK54qAMURAE424kCrthIwsRgQ94s.cache +19 -0
  578. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/SD3Ol83RfPjB8BS_mcOmO-VJznl69GVwmXJYbwPG77I.cache +105 -0
  579. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/SOqnJbRZjN7VvSGY5McdxjLB2S0ZX8b89h8U-jBczp4.cache +1 -0
  580. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/SswBfs6AV1clSCHB4KAqcuw5NGYaS5PsnpweXcPsZi8.cache +0 -0
  581. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/TnEsoTFCziCt_GZ9hA0c_wXARuanwiEk8BfBRGnLy4g.cache +0 -0
  582. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Tp2VZ7l74KvvhtrxOW5lNJD0tGW6xJmoe-6TVTrAbNk.cache +0 -0
  583. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/U7Gd1TAPsiS73V6Z1VYeeWlMP3Isrz8rEW1t2zRyCCA.cache +1 -0
  584. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UBnE_4EiOap1HqQbVH5sIW7RheUyTF9aApgtpR5JL38.cache +1 -0
  585. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UIShRK0o5Pt9qRzaTTv6DZ60frQqalz6Dca3oLJm42Y.cache +0 -0
  586. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UQWoOMkPIYRJx_FDpHJgPXVvbE1kc4_4-UpMvLihRiU.cache +1 -0
  587. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UXlxEIkPihLXpIBMLjzup5wro9EjhJLe_UGDHm5VhKs.cache +1 -0
  588. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UtwxNuCOYG4rcIhlD7HelYaZIqYt3nltQ_w2K_-p4Ck.cache +1 -0
  589. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/V5DOA129DSkbRyS-gpsjFdXX-RdU4LJwbACHfF3o4oI.cache +0 -0
  590. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/VBryDxFVdHbfUxOFTOCO_MgvBar61L8XqQXLKd3bJNI.cache +0 -0
  591. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/VCVA07H6JUbiTcijMKFnZpTe9b12jAnYdzlFN0Ny5R4.cache +0 -0
  592. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Vfl8HC52-bbviS84eEZxrXi1-ioECC3he2GU6vVfryY.cache +1 -0
  593. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Vh11J3D94ta2uMLHH-7k5q_Icv81FaUgiI7P7hk-t_0.cache +0 -0
  594. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/VlJzoDet-Pb5a-m10rz153Kx_-emGvjG4UuIGwX3M40.cache +1 -0
  595. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/W-4phS1xYaMGFda8d1u3_Zj6k4F-_H2cSnifylCpngI.cache +0 -0
  596. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/W05fMg1C5j-h8AxLMarGbpJ1VRvgkaEuBNV1lCBhpIE.cache +0 -0
  597. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/WPdAL_Lqgb7_4yjLuRkEvSCGiZKP6nSo_-ChjS-_lE4.cache +0 -0
  598. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/X1oq-rIggwESRIEYhYkgkoWmg7pmEllUVyp-LONyPQ8.cache +0 -0
  599. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XYiutOiHAp8RwwiVfSijdh-8UiVCDv0_wZEThtff3b4.cache +1 -0
  600. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/X_mZKcs3iyMNlkfrt3L1moIZ89J9WAMs-UZFrOUd4dY.cache +0 -0
  601. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XgZCchZuerFn9jRwXqhox03zPvnO6zGMFonkXXSsSFM.cache +0 -0
  602. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XhxIIqWR8_UIEwpJ2uwdeN7ADla96LIq1UK2mZlaN5M.cache +1 -0
  603. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Xkx8icYIHXIHJmUqjuiNzd1figVtMQ_mu1rXDajGwMY.cache +0 -0
  604. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Xwvzd4LlA0IbFYPyZItdhvA2uLrMnuTiMFjFpByJbkw.cache +1 -0
  605. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/YIuk8i59pWUFreVXnyBoV7aS3c5jeinwWdfU-l9jJDI.cache +1 -0
  606. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/YjzxuCef_6LBQ3XNaItf-sCynDcMZc5XiOZfJMkTa0M.cache +1 -0
  607. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Yq5TAUpNe4UyScrtPvm5rhtJHeIdeM2lHMtHLtANKdE.cache +1 -0
  608. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/YqSyIrjbDjhodfq_KOe3xscOxddDT7_Bk0dpTgnC578.cache +1 -0
  609. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Yu6J5-BhGgBpLhcv0ZciFVC7y8O7Ssk2qPU6p1AdObo.cache +1 -0
  610. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Z7lgC4S1HJT5MBm5kJgIqxozY__pC66SviBV_rxVuiU.cache +1 -0
  611. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ZMsxYb7MZs4eOp9vf1GqVjWL7J38-6PGKgqflC7o5Hc.cache +0 -0
  612. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ZdaS2o6E-OeW7HrwZcjUM4USCtwydIVYjL1DP0l407c.cache +0 -0
  613. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ZrK6oI42856G53uiS9Bm2OG3wVQwl-wrmp_FkmprtpU.cache +0 -0
  614. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_-jJI90DyQhMvgaZq2zoOhkRQJWpD9hIJ0pp056vLns.cache +0 -0
  615. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_ClMSBItDYjLNQAatrzpg-keANlRkz1SI2vxGa8ycT0.cache +0 -0
  616. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_GIKnKOoV9ZF8Al739SyzWhD-GN0YfdERfHlAxJ_4sk.cache +0 -0
  617. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_K_Uif6gYLD6Ri7jJCbtFldLVD2YMCZHhKWuWl0hq3w.cache +0 -0
  618. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_m788jlvKlZMNcGNWyuhzBbsC55krOzJmVEf2ujFreo.cache +0 -0
  619. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/aTmKVUEqneywgst_BBiwZnkxE8fdf16swyVbYTh3dko.cache +1 -0
  620. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/aU_EdTwbIP23W3D-slo6v3xLrrTCKEZgdamn4M_Reos.cache +0 -0
  621. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/aYKzEnXfqZxOvd3rAOCGL8eIP9f8EJumJVNRpvYUqfQ.cache +1 -0
  622. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/atiR0R0CAj5PD0ruX_nONGxh_sPXGRUd8bKChAg-iyw.cache +1 -0
  623. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/b1FK619DMnZMJ5Uuoz0Laj5U6x49A2JKRrodQ85Z39w.cache +0 -0
  624. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/b4qgRJnAj2Y5q_JgarDi-P08oAWNVHILzFIrZ5AwAJI.cache +0 -0
  625. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/bOJr3AhtPOMx9ejMmsJYzgskmzZ_SMdN9yfTf17CkVs.cache +1 -0
  626. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/brdVDUPanvjgpUirkFiZ0-uQUCkainrBvL53yChjeNw.cache +0 -0
  627. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/bto6afDJ16B0PlFYq7XXhi6IvJcJLUlOXCtdkg8NdPg.cache +1 -0
  628. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/buZYlq1zs42SAmiZLJCuyXgYmzc-2hAQnrfx9ehsUBY.cache +1 -0
  629. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/cNl8gR2Lavef5KAE0XyueIXnTpjvj73OHFzPx8iBrlw.cache +0 -0
  630. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/cTrmxpXU9ApI086ePHzFAq0j7B_B1_YvJvz0RzmmTCA.cache +0 -0
  631. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/cfRx3ipBTXBD0h2rd1sKk-L5DabMC5E9A-gctjVekWA.cache +0 -0
  632. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ci1SmvlG70ux0eVB4T2Hq0uMWUEUrW0d99t-RCUyyG0.cache +0 -0
  633. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ciQ2R18kG-tyiFJ3HJ7yTiiaSrikiA-dyahRpIthlkk.cache +1 -0
  634. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/d2IRgpfaj8Mcw7iDjpw_Pd6c-ZB4pnAfFxcJujLXVPw.cache +0 -0
  635. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/dRIV8oZy_Qn6eC4ThOJEfprH26YY3tjRLQiigpVSgOA.cache +0 -0
  636. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/dkuz9zm5ESeLfVVwzPl3bUg0e6Rqg2MZXxAhMtXoJj8.cache +0 -0
  637. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/dq4Tsiwd3ZB3JxjBMStyXCGC-esAhMmpbUY4t6lRuHM.cache +1 -0
  638. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/e1UTzoa3w2cfZQqN9uWGzWr4hkAvGoDO2aHIljsoizc.cache +0 -0
  639. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/e3-sQb70y3jHaD07YEZiJ-DQfcrqnRP3atG_5bu8HTY.cache +1 -0
  640. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/e5P56HyISEQtFOD-_07iacjJvkfnjBetUIBJf7BgaaI.cache +0 -0
  641. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eFeAdQ5B7BQIdYq-P8jMfBVvn8JpnVUn8WRFuWnFD1I.cache +1 -0
  642. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eMYjRGGfXZxScoR1PjKplOLyXqR_PSgZ2e799iqT2Rg.cache +0 -0
  643. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eY6__r1VgPA_sUFUGSWTFPzbn-i_prhrv2Z6xNL-x34.cache +1 -0
  644. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eZlYE44-8BUpBm8cidvhwxjZNoUewE9SDAjRahCvX8w.cache +1 -0
  645. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ehi2OrT9vnbTMNHw-iPa26VUVtDZqY7fDm0-IMGpkCw.cache +0 -0
  646. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ejVQcfTBkjEAMtNdDnz_a081cNvSmcob9HECjKA3SYk.cache +1 -0
  647. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eprfeyusllUgPu89H6tx9tCiupwxnfl6BWQjj6K4IcU.cache +0 -0
  648. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/fDCMk3VTrgyg45sDyEWpAR01Z1wgFJLJ3OW_e_bTy7c.cache +0 -0
  649. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/fGhle70_knfNKLnBhkaoCOnkXa_w_zDc54zI2Ai9QUw.cache +1 -0
  650. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/fO8BZ1pSfeHoeEfxNn87mpWvbfnwE7S0iDMI6gDg-zk.cache +1 -0
  651. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/fzJdBiDo7FHxGo0Yo2KKBMiS2sCllVpPw1K8LC2t1pA.cache +0 -0
  652. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/gJBKZgBfpSVFA1ioBj3sw-ej_2E5osWxz-EOIWsVNq0.cache +1 -0
  653. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/gK-V98E7cO1u-xt632svaYaeLKHrwVdN1el_Tf7OdjI.cache +1 -0
  654. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/gL6Ftk12EQ-c56kvi6mYjDBpVEhVHwm60ZFp-fyo9vs.cache +0 -0
  655. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/gj0kWoYz_O6ptxHG9gLTLgzJlxNMQ7UgjjUTSnMiDys.cache +0 -0
  656. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/glV3tqN6rfMtWtfHT0_oTvuEHV0o2rV1Ma-T62Pq1o8.cache +1 -0
  657. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/graU-e4yIipr7ZSCf6lM6bmH4LDIZtgp2MI777l_IMA.cache +0 -0
  658. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/gu2rIo1OFVLfxzxVGyw5ZsHWZGejzrzjnvX24oiGR-w.cache +2 -0
  659. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/gyFpNnWQp4_Hq_JG5iaZ1_V8lcxU7EkMMok2r_dmAJI.cache +1 -0
  660. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/h1HelHQXMwT6cGdcG8mWrbxvfqeh23ke3j4oCenQrfQ.cache +0 -0
  661. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/hJFyMrbkoWRAGvCsSb8jDkE0zRbYNHYHmrvneV5rNpE.cache +0 -0
  662. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/hb3qUfgxsCRjJnrMC7DqzNNfjTwcGTlsypxBZFwt1L8.cache +1 -0
  663. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/hkJJ01ATHIvI6x6zh1xBaitcoDK1NQbJNs_3oqcY_Tg.cache +0 -0
  664. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/iIgYiHp_87ujUPWmg3DAOju2EgekJtl_ZF7LmKl1lI4.cache +0 -0
  665. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/iOw2L1RkhXlm3YhifknLkRW8sIbWQvTQutWE2awOk-M.cache +0 -0
  666. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/iXP2sX4KiBPouSh0ePODxvKoMiW2PQog5Ktladan2_o.cache +1 -0
  667. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ifnHDGmGE3XnB9zwYbZVVpBoR_NaVMt8GUeiN2MsdHk.cache +1 -0
  668. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/igEaqPVgdElZfVqP3XJILzh8OirFjcDnoVNXNu_Ci0E.cache +1 -0
  669. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ih2NImCRnfFX8d79xQYc4Z6DVgjjI7_TY146Xe3sjOQ.cache +1 -0
  670. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jB0ZFcqrW6VUi_sNT81XAW29L509iMyKomvnK9upgzk.cache +0 -0
  671. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jHlrtUhKTtjANlTGI5RhTEXU5She5s4DUBgfBtdFCLI.cache +1 -0
  672. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jY7L80PVtlzW8o5IViA50lp2KhX8XWdWh81WPkbyz7c.cache +0 -0
  673. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jqlD5l1U5ZrdRMdutXMV2yTNAYeiPWkElR8on58imrs.cache +0 -0
  674. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/k2dt-mmzTcpfbEwSu07f7uq-eti-DBpOkAdUZPc9C4k.cache +0 -0
  675. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/kFWVZecoz1kW3Wobp6_rZH1WRsb8m5GFkAhPC0VEUPY.cache +0 -0
  676. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/kHBaM2fOz0224c4c62qeVx16vFxlijX4UJZp6oA8g40.cache +0 -0
  677. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/kV-EY_oYRYsVMyVc90iLAVk17OWwWFQ6OqUMi-YdNv8.cache +9 -0
  678. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/kXhmcRnQ1DMKO500oXLgbQATMlZ4J6jaK5sM1l0jn84.cache +0 -0
  679. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ky7PLTdm-fpj2wb7As1WG34psSb9vnu9g8tcbjOYVGk.cache +1 -0
  680. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/lAkkBi-SBWauvtX8gUAbSHpkQv8tTN5Ao89ZekrHOA4.cache +1 -0
  681. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/lFazcVEqdNP_u8ktAbDLNJXV8hZU8IhBkbPYdM-7mZg.cache +0 -0
  682. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/lIXpLp9Ksp8SsGX1waXXnIvcDtPotycT4PR-6y5r7kc.cache +0 -0
  683. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/lLgAoQdQcLX5OADukstsUdWyCWkwhFDco_x5HrC8RKg.cache +140 -0
  684. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/le23hz0CHWNBn47lLpU5O4RnAhWMeZhbpT1HJZVL4C0.cache +1 -0
  685. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/lpGGGP2ZEZ-AzpaodLPhuL-ofq2WTTzYz9FRPHWfdu4.cache +0 -0
  686. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/lzIlyywNJ_DeKA8f2hHho-0GFFannFJsQ1hqQLiOu4o.cache +1 -0
  687. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/mFDLBh9qPX-WwfxnM2CwV08EYNBpCntXor65I2g5zEg.cache +1 -0
  688. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/mOc6-R14LV_aNyEj4Kctb9sdf2OTNT1eJd6gq3-1ZqI.cache +1 -0
  689. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/mk7SmWmZqpNqz95LWKih8v3rtP7a2aQDN8pgjSj3qDA.cache +1 -0
  690. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/mn1hUZrlYsuULP48vHtFh0JpLzJKgNWWCmNnbLD-GTk.cache +1 -0
  691. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/mz52qfsOMUKqALEsn_TqTe6U636ZF5gBNgcFzHY3Q3k.cache +1 -0
  692. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nDXW7K6M6_yyhIv-6bGeS1aN2ezwRZRwcNpfwdBp4J8.cache +1 -0
  693. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nIBiA_CFLpPtwIzw_PhGUNVSYuaIn69kPfR94E4L3Hs.cache +19 -0
  694. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nToh0VToMkuzWPFW1NUIiFsdyiQMob9tV203qq3WpZo.cache +0 -0
  695. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ni5PVuP8H7CBkGdwpQAqP5-MssEVjd5gNKWvf0SOolg.cache +1 -0
  696. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nihP0YNwxwKdpMlyN9ZNePfSx1dAemJjIUZik7SlYxI.cache +0 -0
  697. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nzUWR8xDKZ_Ir7DXHpxR-zOwHC-yWsR4YL8k520DNfc.cache +0 -0
  698. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/o1DVS19Zc2CqckQofSeuHUs66vv5SobsBHK3pS_-5FQ.cache +11 -0
  699. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oH-hbt3vGnTckrMe1K-3JrzfzkfcloPDQ4L0CFn1bwM.cache +32 -0
  700. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oWmxYxRCTTlDAsSdOZRIvNgLaGJxtb_WIONB4ftWCG8.cache +0 -0
  701. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ofLUP_Yk8AXybQ9gzUU-we1S7_LA8il_aIE1sXniOrU.cache +1 -0
  702. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ojMiDmtBMyF_KT3txYukUKUL5Kj2yIZmFEJpzObtxgs.cache +0 -0
  703. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oq69gqQBKyOzQHwGAPT-u1zyv_GVTDDDacsF366746c.cache +0 -0
  704. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/pDd5HlYaW01ZecvMLIAubLwMTNCTfqDgVdIeeHMuDQI.cache +0 -0
  705. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/pNuI7nym5ZtskUMpJgLr4RWmFpHhY_dZLA5NwSK3dis.cache +0 -0
  706. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/pkZR29akn1drRpVUOeTHNfD_gnE0AWXYaXcE56HVJ7M.cache +1 -0
  707. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/qHhRJPrgqNW7mXcmW3VxIulf9QHQ30-sbvHUng52Sjk.cache +1 -0
  708. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/qKlEUp2I8S_8cU-IooV08s2MujEdsFS1pCQc_QTRzCc.cache +1 -0
  709. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/qfHRPPCKFQus6afwccgP3JNKe5_RYJcy7DYgP8gfnzs.cache +0 -0
  710. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/qio20wHZICpzQE4kJ1DarhsVmm_S7azt4AZ5Pq3P9As.cache +0 -0
  711. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/qkkFwVb1cVM3YCNThW1Cz1UTypZgAr_zAdeWtV5f8l0.cache +0 -0
  712. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/r9DR1K6ommSyp-M0JTn-UTxyU3bIVKAUqnRBdUu39P8.cache +1 -0
  713. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/r9T1HQ-hSfuQcrL_nSpZ7J6mpU_LiT8Mw2fSA-xQR8A.cache +0 -0
  714. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/rQQn3COcRPRzd5CUtTfn5MLHuLvIEj2BR152ESk1kAQ.cache +0 -0
  715. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/rctQTrcaea0gbgtr2T3qwYWynbsqv6WQvmjYzNlxlv4.cache +1 -0
  716. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/rey0z3BNoJD05np0wY6XcgvA9HibXXcufR_MjzdAuAQ.cache +0 -0
  717. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/rnzZU7qrBQCXvieRP1ks4_yYH9txXfNfgTtoujlacW8.cache +1 -0
  718. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ru4jDqqVpEAlQjx5E-f4Fv5D0NLeeI_oDLwKNDkyBho.cache +1 -0
  719. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/saI61t1Gx36NNGQgdFWqxkMpEFrNb9aTxcorD003Ak4.cache +1 -0
  720. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/szb7FhgpUPZ5iwd8P15GLG2Y-nXOZQlPuoNnkZodDZs.cache +0 -0
  721. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/t7Avh-u8ClVbyPheuvXJoNourlIqKwNTXs_7ElS3j8k.cache +0 -0
  722. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/te4pM1TEiH-GIKjOGWISta0-ket_fnWehtdMjFSDiAo.cache +1 -0
  723. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/tj75VSAHiWx2gbOaiNbjvSpWEVqjHACSWPwtv2VCoSk.cache +0 -0
  724. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/tnkY73Yfb7qArDJBY4gZjw5fyclLqhudGRp78u8AxOU.cache +0 -0
  725. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/tpduPkOXPTJYIYuQDQA-RjgaedaTTC_FKPHywx7t7UE.cache +0 -0
  726. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/tpxrga44pIPw4V5vhDYZW9pZdbFHrxF0htVJ7fURkOk.cache +0 -0
  727. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/u3atPL-XOxrUiYxndBh9gf_nOqgsVk1o2uTTF2SubRQ.cache +0 -0
  728. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/u4yYOpNMR6jzA8kEBKWIw4h0AYzXPW5v93E_yzhnc4A.cache +0 -0
  729. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/uP4Fu5bTeMEZY9aGRJwTJtq0In7-18uTCGCfqPdUmg8.cache +1 -0
  730. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/uYRWhPJj7DCOZc-75cumLgmUs0yo3Weg8zv7Yzu1bUI.cache +1 -0
  731. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/uatCh0KL8lRbFxjebfBDG7jOOd1ZWuHMwDDLDDqybjI.cache +0 -0
  732. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vE-x41_K8TQ3Z7XeQTivuiBOGI2lPCsuCkE5oPuqZZM.cache +0 -0
  733. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vTguw-uCigkl0isJPx705KEi1AcWFf6mnEmI6Nq6P-w.cache +0 -0
  734. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/voB4t40IUoMQIKjZQ0NiSHYUGBeDuInHnnrpV0unKy4.cache +1 -0
  735. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/w3WqCYzTelVRx1brN1EL64magy1NxAlV3_tpTubVl9g.cache +1 -0
  736. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/wE2EvUFir2Zw_rtB0tPg8Nt2kAdtQ80hutoymJGfjvA.cache +1 -0
  737. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/wbGRKNQTK3p7wwn2kZiiyS1HnNTTzvKo0oaHnRhFWx8.cache +0 -0
  738. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/wt69bdlXAN1b9lhV8rgWKo9RdzV6gOKAkR0buSZ8_sM.cache +1 -0
  739. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/wwdRA7D2ql_Ie9cHUnafLxTYPcI5T-wzbK8RhLsemZE.cache +0 -0
  740. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/x3Z_eNYi80gtLQMiTapLgr--wqUapolNPAOoAudKzkE.cache +0 -0
  741. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xBOd1xpwofj-D3bcu-Dfh5hp2tMWBNfxNAp6qe5x0Ig.cache +0 -0
  742. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xCcL_B6JyBZSNMMyvg-BJbZDwAl6fJxYw7GJNBZUwvc.cache +1 -0
  743. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xJ2aUUwebHjY-4Gs1j0-ridrrc6DQck0S30FcL_U1zo.cache +0 -0
  744. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xWkMdV-Akyv9gYdNw2SGbLRMuYVpjMnJ0ILqArzmLds.cache +0 -0
  745. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xeWfanjaDdKH0v3jSQnjOwNev6PTkqNhXQNwH0qSvrQ.cache +1 -0
  746. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xoIgzWIiNa7vXnufFO4-O7VH5UhTmU-HgVhok8h5a2g.cache +1 -0
  747. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xr5BkAXYL4E29303MfN2hOmc-LxEYbzDQpUiN9Qt4k0.cache +1 -0
  748. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xrYjbWp_UBf36hhBnuuvF2Qpxdi8yj_TQCiA4cxXykU.cache +98 -0
  749. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/y1onYMNB-kLzEeuEI9NF7qYMlVRuTypHXqLa5ozJXTo.cache +1 -0
  750. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yAz1OsBonngvZoLedoNzSOp4kE75i2mglhWfNv05Q4g.cache +0 -0
  751. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yIDJo17UyDMSmBr7SDMK7zKrMWtl5i4Jf8RX-XE9y8k.cache +0 -0
  752. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yQvqeK7OrdTQsommu8-RnFzjFcLavinCoDDqDQEQVrU.cache +0 -0
  753. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yT6ggTIDiAOphCbBIF5ofYw7MebsuoIhMI6XOrSd31o.cache +0 -0
  754. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yX_q6Ed3aaBwSSO81cUXcHyhUCLfGC1fc0cGAQvbpAo.cache +145 -0
  755. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ykDqGI7K5FHyR2BZyrRia-AGUYIdnR6zxsDyJZ6tuw4.cache +5 -0
  756. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/z9I54TIBC_r-x0kO0i-lOhntWDn6y_7cVsa4ERKHEgo.cache +1 -0
  757. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/zAkRi8hEYqm3CpbrZx7fBvr2xhWHXDBNGKBlXC-mcHA.cache +0 -0
  758. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/zd8kl79CPoe0tIx9BZsUM8goF3Jjln6BqiOFn7ckKyI.cache +1 -0
  759. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/zuoPybsXsCBTU15ZlqU_pkrCqXtN97fv4WOzpjquWek.cache +0 -0
  760. data/test/fixtures/api_clients.yml +17 -0
  761. data/test/fixtures/commits.yml +77 -0
  762. data/test/fixtures/deliveries.yml +13 -0
  763. data/test/fixtures/github_hooks.yml +25 -0
  764. data/test/fixtures/hooks.yml +16 -0
  765. data/test/fixtures/memberships.yml +3 -0
  766. data/test/fixtures/output_chunks.yml +25 -0
  767. data/test/fixtures/payloads/push_master.json +84 -0
  768. data/test/fixtures/payloads/push_not_master.json +84 -0
  769. data/test/fixtures/payloads/status_master.json +206 -0
  770. data/test/fixtures/stacks.yml +65 -0
  771. data/test/fixtures/statuses.yml +82 -0
  772. data/test/fixtures/tasks.yml +65 -0
  773. data/test/fixtures/teams.yml +17 -0
  774. data/test/fixtures/users.yml +15 -0
  775. data/test/helpers/api_helper.rb +9 -0
  776. data/test/helpers/fixture_aliases_helper.rb +9 -0
  777. data/test/helpers/json_helper.rb +47 -0
  778. data/test/helpers/links_helper.rb +21 -0
  779. data/test/helpers/payloads_helper.rb +6 -0
  780. data/test/helpers/queries_helper.rb +57 -0
  781. data/test/jobs/chunk_rollup_job_test.rb +41 -0
  782. data/test/jobs/deliver_hook_job_test.rb +14 -0
  783. data/test/jobs/destroy_stack_job_test.rb +16 -0
  784. data/test/jobs/emit_event_job_test.rb +14 -0
  785. data/test/jobs/fetch_commit_stats_job_test.rb +13 -0
  786. data/test/jobs/fetch_deployed_revision_job_test.rb +30 -0
  787. data/test/jobs/github_sync_job_test.rb +51 -0
  788. data/test/jobs/perform_task_job_test.rb +104 -0
  789. data/test/jobs/refresh_github_user_job_test.rb +13 -0
  790. data/test/jobs/refresh_status_job_test.rb +20 -0
  791. data/test/jobs/unique_job_test.rb +17 -0
  792. data/test/models/api_client_test.rb +27 -0
  793. data/test/models/commits_test.rb +234 -0
  794. data/test/models/delivery_test.rb +37 -0
  795. data/test/models/deploys_test.rb +290 -0
  796. data/test/models/github_hook_test.rb +54 -0
  797. data/test/models/hook_test.rb +43 -0
  798. data/test/models/membership_test.rb +12 -0
  799. data/test/models/output_chunk_test.rb +18 -0
  800. data/test/models/rollbacks_test.rb +11 -0
  801. data/test/models/stacks_test.rb +296 -0
  802. data/test/models/status_test.rb +55 -0
  803. data/test/models/task_definitions_test.rb +31 -0
  804. data/test/models/team_test.rb +50 -0
  805. data/test/models/users_test.rb +82 -0
  806. data/test/test_helper.rb +56 -0
  807. data/test/unit/command_test.rb +39 -0
  808. data/test/unit/commands_test.rb +11 -0
  809. data/test/unit/csv_serializer_test.rb +36 -0
  810. data/test/unit/deploy_commands_test.rb +165 -0
  811. data/test/unit/deploy_spec_test.rb +250 -0
  812. data/test/unit/github_url_helper_test.rb +30 -0
  813. metadata +1772 -0
@@ -0,0 +1,45 @@
1
+ class Delivery < ActiveRecord::Base
2
+ STATUSES = %w(pending scheduled sent).freeze
3
+ enum status: STATUSES.zip(STATUSES).to_h
4
+
5
+ belongs_to :hook
6
+
7
+ validates :url, presence: true, url: {no_local: true, allow_blank: true}
8
+ validates :content_type, presence: true
9
+
10
+ serialize :response_headers, JSON
11
+
12
+ def schedule!
13
+ DeliverHookJob.perform_later(self)
14
+ scheduled!
15
+ end
16
+
17
+ def send!
18
+ update!(response: http.post(url, payload), status: 'sent', delivered_at: Time.now)
19
+ end
20
+
21
+ def response=(response)
22
+ self.response_code = response.status
23
+ self.response_headers = response.headers
24
+ self.response_body = response.body
25
+ end
26
+
27
+ private
28
+
29
+ def http
30
+ Faraday::Connection.new do |connection|
31
+ connection.headers = headers
32
+ connection.adapter Faraday.default_adapter
33
+ end
34
+ end
35
+
36
+ def headers
37
+ {
38
+ 'User-Agent' => 'Shipit Webhook',
39
+ 'Content-Type' => content_type,
40
+ 'X-Shipit-Event' => event,
41
+ 'X-Shipit-Delivery' => id.to_s,
42
+ 'Accept' => '*/*',
43
+ }
44
+ end
45
+ end
@@ -0,0 +1,92 @@
1
+ require 'fileutils'
2
+
3
+ class Deploy < Task
4
+ state_machine :status do
5
+ after_transition to: :success, do: :schedule_continuous_delivery
6
+ after_transition to: :success, do: :update_undeployed_commits_count
7
+ end
8
+
9
+ before_create :denormalize_commit_stats
10
+ after_commit :broadcast_update
11
+
12
+ delegate :broadcast_update, to: :stack
13
+
14
+ def build_rollback(user = nil)
15
+ Rollback.new(
16
+ user_id: user.try!(:id),
17
+ stack_id: stack_id,
18
+ parent_id: id,
19
+ since_commit: stack.last_deployed_commit,
20
+ until_commit: until_commit,
21
+ )
22
+ end
23
+
24
+ def trigger_rollback(user)
25
+ rollback = build_rollback(user)
26
+ rollback.save!
27
+ rollback.enqueue
28
+
29
+ lock_reason = "A rollback for #{rollback.since_commit.sha} has been triggered. " \
30
+ "Please make sure the reason for the rollback has been addressed before deploying again."
31
+ stack.update!(lock_reason: lock_reason, lock_author_id: user.id)
32
+
33
+ rollback
34
+ end
35
+
36
+ def rollback?
37
+ false
38
+ end
39
+
40
+ def commit_range
41
+ [since_commit, until_commit]
42
+ end
43
+
44
+ def rollbackable?
45
+ stack.supports_rollback? && success? && self != stack.last_deploy
46
+ end
47
+
48
+ def commits
49
+ return Commit.none unless stack
50
+
51
+ @commits ||= stack.commits.reachable.newer_than(since_commit_id).until(until_commit_id).order(id: :desc)
52
+ end
53
+
54
+ def commits_since
55
+ return Commit.none unless stack
56
+
57
+ @commits_since ||= stack.commits.reachable.newer_than(until_commit_id).order(id: :desc)
58
+ end
59
+
60
+ def since_commit_id
61
+ super || default_since_commit_id
62
+ end
63
+
64
+ private
65
+
66
+ def default_since_commit_id
67
+ return unless stack
68
+ @default_since_commit_id ||= last_successful_deploy.try!(:until_commit_id)
69
+ end
70
+
71
+ def denormalize_commit_stats
72
+ self.additions = commits.map(&:additions).compact.sum
73
+ self.deletions = commits.map(&:deletions).compact.sum
74
+ end
75
+
76
+ def schedule_continuous_delivery
77
+ return unless stack.continuous_deployment?
78
+
79
+ to_deploy = stack.commits.order(:id).newer_than(until_commit).successful.last
80
+ return unless to_deploy
81
+
82
+ stack.trigger_deploy(to_deploy, to_deploy.committer)
83
+ end
84
+
85
+ def last_successful_deploy
86
+ stack.deploys.where(status: "success").last
87
+ end
88
+
89
+ def update_undeployed_commits_count
90
+ stack.update_undeployed_commits_count(until_commit)
91
+ end
92
+ end
@@ -0,0 +1,51 @@
1
+ class DeploySpec
2
+ module BundlerDiscovery
3
+ DEFAULT_BUNDLER_WITHOUT = %w(default production development test staging benchmark debug)
4
+
5
+ def discover_dependencies_steps
6
+ discover_bundler || super
7
+ end
8
+
9
+ def discover_bundler
10
+ bundle_install if bundler?
11
+ end
12
+
13
+ def bundle_exec(command)
14
+ return command unless bundler?
15
+ "bundle exec #{command}"
16
+ end
17
+
18
+ def bundle_install
19
+ bundle = %(bundle check --path=#{bundle_path} || bundle install #{frozen_flag} --path=#{bundle_path} --retry=2)
20
+ bundle += " --without=#{bundler_without.join(':')}" unless bundler_without.empty?
21
+ [remove_ruby_version_from_gemfile, bundle]
22
+ end
23
+
24
+ def remove_ruby_version_from_gemfile
25
+ %q(sed -i '/^ruby\s/d' Gemfile) # Heroku apps often specify a ruby version.
26
+ end
27
+
28
+ def frozen_flag
29
+ '--frozen' if gemfile_lock_exists?
30
+ end
31
+
32
+ def bundler_without
33
+ config('dependencies', 'bundler', 'without') || (gem? ? [] : DEFAULT_BUNDLER_WITHOUT)
34
+ end
35
+
36
+ def bundler?
37
+ file('Gemfile').exist?
38
+ end
39
+
40
+ def gemfile_lock_exists?
41
+ file('Gemfile.lock').exist?
42
+ end
43
+
44
+ def coerce_task_definition(config)
45
+ return super unless bundler?
46
+ config['steps'] ||= []
47
+ config['steps'] = config['steps'].map(&method(:bundle_exec))
48
+ config
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,27 @@
1
+ class DeploySpec
2
+ module CapistranoDiscovery
3
+ def discover_deploy_steps
4
+ discover_capistrano || super
5
+ end
6
+
7
+ def discover_rollback_steps
8
+ discover_capistrano_rollback || super
9
+ end
10
+
11
+ def discover_capistrano
12
+ [cap('deploy')] if capistrano?
13
+ end
14
+
15
+ def discover_capistrano_rollback
16
+ [cap('deploy:rollback')] if capistrano?
17
+ end
18
+
19
+ def cap(command)
20
+ bundle_exec("cap $ENVIRONMENT #{command}")
21
+ end
22
+
23
+ def capistrano?
24
+ file('Capfile').exist?
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,52 @@
1
+ class DeploySpec
2
+ class FileSystem < DeploySpec
3
+ include PypiDiscovery
4
+ include RubygemsDiscovery
5
+ include CapistranoDiscovery
6
+ include BundlerDiscovery
7
+
8
+ def initialize(app_dir, env)
9
+ @app_dir = Pathname(app_dir)
10
+ @env = env
11
+ end
12
+
13
+ def cacheable
14
+ DeploySpec.new(cacheable_config)
15
+ end
16
+
17
+ private
18
+
19
+ def cacheable_config
20
+ (config || {}).deep_merge(
21
+ 'machine' => {'environment' => machine_env, 'directory' => directory},
22
+ 'review' => {'checklist' => review_checklist},
23
+ 'dependencies' => {'override' => dependencies_steps},
24
+ 'deploy' => {'override' => deploy_steps},
25
+ 'rollback' => {'override' => rollback_steps},
26
+ 'fetch' => fetch_deployed_revision_steps,
27
+ 'tasks' => cacheable_tasks,
28
+ )
29
+ end
30
+
31
+ def cacheable_tasks
32
+ (config('tasks') || {}).map { |k, c| [k, coerce_task_definition(c)] }.to_h
33
+ end
34
+
35
+ def config(*)
36
+ @config ||= load_config
37
+ super
38
+ end
39
+
40
+ def load_config
41
+ read_config(file("shipit.#{@env}.yml")) || read_config(file('shipit.yml'))
42
+ end
43
+
44
+ def read_config(path)
45
+ SafeYAML.load(path.read) if path.exist?
46
+ end
47
+
48
+ def file(path)
49
+ @app_dir.join(path)
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,32 @@
1
+ class DeploySpec
2
+ module PypiDiscovery
3
+ def discover_deploy_steps
4
+ discover_pypi || super
5
+ end
6
+
7
+ def discover_pypi
8
+ publish_egg if egg?
9
+ end
10
+
11
+ def discover_review_checklist
12
+ discover_pypi_checklist || super
13
+ end
14
+
15
+ def discover_pypi_checklist
16
+ [%(<strong>Don't forget to add a tag before deploying!</strong> You can do this with:
17
+ git tag -a -m "Version <strong>x.y.z</strong>" v<strong>x.y.z</strong> && git push --tags)] if egg?
18
+ end
19
+
20
+ def egg?
21
+ setup_dot_py.exist?
22
+ end
23
+
24
+ def setup_dot_py
25
+ file('setup.py')
26
+ end
27
+
28
+ def publish_egg
29
+ ["assert-egg-version-tag #{setup_dot_py}", 'python setup.py register sdist upload']
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,32 @@
1
+ class DeploySpec
2
+ module RubygemsDiscovery
3
+ def discover_deploy_steps
4
+ discover_gem || super
5
+ end
6
+
7
+ def discover_gem
8
+ publish_gem if gem?
9
+ end
10
+
11
+ def discover_review_checklist
12
+ discover_gem_checklist || super
13
+ end
14
+
15
+ def discover_gem_checklist
16
+ [%(<strong>Don't forget to add a tag before deploying!</strong> You can do this with:
17
+ git tag -a -m "Version <strong>x.y.z</strong>" v<strong>x.y.z</strong> && git push --tags)] if gem?
18
+ end
19
+
20
+ def gem?
21
+ !!gemspec
22
+ end
23
+
24
+ def gemspec
25
+ Dir[file('*.gemspec').to_s].first
26
+ end
27
+
28
+ def publish_gem
29
+ ["assert-gem-version-tag #{gemspec}", 'bundle exec rake release']
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,123 @@
1
+ require 'pathname'
2
+
3
+ class DeploySpec
4
+ Error = Class.new(StandardError)
5
+
6
+ class << self
7
+ def load(json)
8
+ new(JSON.parse(json)) if json.present?
9
+ end
10
+
11
+ def dump(spec)
12
+ JSON.dump(spec.cacheable.config) if spec
13
+ end
14
+
15
+ def bundle_path
16
+ Rails.root.join('data/bundler')
17
+ end
18
+ end
19
+
20
+ def initialize(config)
21
+ @config = config
22
+ end
23
+
24
+ delegate :bundle_path, to: :class
25
+
26
+ def cacheable
27
+ self
28
+ end
29
+
30
+ def config(*keys)
31
+ keys.flatten.reduce(@config) { |h, k| h[k] if h.respond_to?(:[]) }
32
+ end
33
+
34
+ def supports_fetch_deployed_revision?
35
+ fetch_deployed_revision_steps.present?
36
+ end
37
+
38
+ def supports_rollback?
39
+ rollback_steps.present?
40
+ end
41
+
42
+ def machine_env
43
+ config('machine', 'environment') || {}
44
+ end
45
+
46
+ def directory
47
+ config('machine', 'directory')
48
+ end
49
+
50
+ def dependencies_steps
51
+ config('dependencies', 'override') || discover_dependencies_steps || []
52
+ end
53
+ alias_method :dependencies_steps!, :dependencies_steps
54
+
55
+ def deploy_steps
56
+ config('deploy', 'override') || discover_deploy_steps
57
+ end
58
+
59
+ def deploy_steps!
60
+ deploy_steps || cant_detect!(:deploy)
61
+ end
62
+
63
+ def rollback_steps
64
+ config('rollback', 'override') || discover_rollback_steps
65
+ end
66
+
67
+ def rollback_steps!
68
+ rollback_steps || cant_detect!(:rollback)
69
+ end
70
+
71
+ def fetch_deployed_revision_steps
72
+ config('fetch') || discover_fetch_deployed_revision_steps
73
+ end
74
+
75
+ def fetch_deployed_revision_steps!
76
+ fetch_deployed_revision_steps || cant_detect!(:fetch)
77
+ end
78
+
79
+ def task_definitions
80
+ (config('tasks') || {}).map { |name, definition| TaskDefinition.new(name, coerce_task_definition(definition)) }
81
+ end
82
+
83
+ def find_task_definition(id)
84
+ TaskDefinition.new(id, coerce_task_definition(config('tasks', id)) || task_not_found!(id))
85
+ end
86
+
87
+ def review_checklist
88
+ config('review', 'checklist') || discover_review_checklist || []
89
+ end
90
+
91
+ def review_monitoring
92
+ config('review', 'monitoring') || []
93
+ end
94
+
95
+ private
96
+
97
+ def coerce_task_definition(config)
98
+ config
99
+ end
100
+
101
+ def discover_review_checklist
102
+ end
103
+
104
+ def discover_dependencies_steps
105
+ end
106
+
107
+ def discover_deploy_steps
108
+ end
109
+
110
+ def discover_rollback_steps
111
+ end
112
+
113
+ def discover_fetch_deployed_revision_steps
114
+ end
115
+
116
+ def task_not_found!(id)
117
+ raise TaskDefinition::NotFound.new("No definition for task #{id.inspect}")
118
+ end
119
+
120
+ def cant_detect!(type)
121
+ raise DeploySpec::Error.new(I18n.t("deploy_spec.hint.#{type}"))
122
+ end
123
+ end