kuroko2 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (264) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -0
  3. data/app/assets/stylesheets/kuroko2/job_definitions.scss +6 -0
  4. data/app/helpers/kuroko2/job_definitions_helper.rb +49 -0
  5. data/app/models/kuroko2/job_schedule.rb +1 -1
  6. data/app/views/kuroko2/dashboard/index.html.slim +3 -2
  7. data/app/views/kuroko2/executions/index.html.slim +3 -2
  8. data/app/views/kuroko2/job_definition_stats/index.html.slim +3 -2
  9. data/app/views/kuroko2/job_definitions/edit.html.slim +2 -2
  10. data/app/views/kuroko2/job_definitions/index.html.slim +3 -2
  11. data/app/views/kuroko2/job_definitions/new.html.slim +3 -2
  12. data/app/views/kuroko2/job_definitions/show.html.slim +3 -3
  13. data/app/views/kuroko2/job_instances/_instance.html.slim +2 -2
  14. data/app/views/kuroko2/job_instances/show.html.slim +2 -2
  15. data/app/views/kuroko2/job_instances/working.html.slim +3 -2
  16. data/app/views/kuroko2/job_timelines/index.html.slim +6 -3
  17. data/app/views/kuroko2/layouts/application.html.slim +3 -3
  18. data/app/views/kuroko2/sessions/invalid_hd.html.slim +2 -2
  19. data/app/views/kuroko2/sessions/new.html.slim +2 -2
  20. data/app/views/kuroko2/users/edit.html.slim +2 -2
  21. data/app/views/kuroko2/users/index.html.slim +3 -2
  22. data/app/views/kuroko2/users/show.html.slim +3 -2
  23. data/app/views/kuroko2/workers/index.html.slim +3 -2
  24. data/app/views/layouts/kuroko2/application.html.slim +2 -2
  25. data/lib/autoload/kuroko2/workflow/notifier/slack.rb +1 -2
  26. data/lib/autoload/kuroko2/workflow/task/queue.rb +2 -2
  27. data/lib/autoload/kuroko2/workflow/task/wait.rb +2 -1
  28. data/lib/kuroko2/configuration.rb +3 -3
  29. data/lib/kuroko2/version.rb +1 -1
  30. data/spec/dummy/log/test.log +59531 -0
  31. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/-9/-91xb3A5K1VFNH41EHsLyavjignb2gBY7OGgfWWeVoM.cache +1 -0
  32. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/-E/-EdLMt4MMUNAGuS-w6ZHddy6U5ulOy0Xwe-SeqZ05kM.cache +1 -0
  33. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/0V/0VbNFPG15cnDNiAXPpqzSolGiJU-u3gNdVdOxW4lceM.cache +4 -0
  34. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/0g/0gKH8qXLCuhoxJ4lkF-NZf-qvjr-VWGIDJSGQ6s-8Sg.cache +1 -0
  35. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/0h/0hnpIhOHf2iWaPDuI6F4t8H6vcsDuUaxythGxF5som8.cache +1 -0
  36. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/0u/0uKcSmfll2u3XI2NVnPIMXn_BVPYX45B-ekYBd7fgWI.cache +1 -0
  37. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/16/16gCOfM44CPdhAcbO9mOEjc0GqrMQbqVwUPrAvf0RU8.cache +3 -0
  38. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/1L/1LSVo-m4DE6E6Rzfer2sA8-asD9c-GCMqsD2v02keLk.cache +1 -0
  39. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/25/25wrei1sI3t85AawQaPVTnXsHjpOiY6q1x8wCr2ErVc.cache +1 -0
  40. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/2S/2svz3KNlC0sL1nsztsR_pWG62HmSIsP7VtdThdNrI-E.cache +4 -0
  41. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/3P/3p1L1OCfO7dKHh1njO5SwjjesVheSR-G4JvGvSrn5AA.cache +4 -0
  42. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/3P/3prD1kNdRw1Y79JMDvrv_TxgD6knEQOh2BLXKD3oZSU.cache +5 -0
  43. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/3h/3hv1ayTPzh6r54l-QYVIcNfpJRP8E0GwNyAirbglUcc.cache +0 -0
  44. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/4D/4D8Psea60WCUpGik89HDl3D_DteW4TY1WMVmVtTH_nc.cache +3 -0
  45. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/4K/4Ky9Fg4qo8d_i8bJF6NOhDpxHuJ5kIX8n0w6C8wdHDU.cache +0 -0
  46. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/4a/4a0KMsF-QcD1Fum_fcW6S_wa9Et4eNSliraMUD2J64c.cache +1 -0
  47. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/4b/4b-1o75HC_ND0IOCMqrFfyf2NS_z3JdDsY33x6VNR10.cache +1 -0
  48. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/55/55xhrw0_Fc_j8TsrU5j7uxKvbhZ1PilwP2lSnFfabBY.cache +4 -0
  49. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/5_/5_SkjoY_Zf4EopPQPuw9v6iDQKAG-ThLfOBB9Wo-a6M.cache +3 -0
  50. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/5i/5iMMZ3WUdeCp3DignHYWdznbdvmQxMoV9YnQ3SAQwh0.cache +4 -0
  51. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/62/62unAcqp8NBBNcpgBJjyVSqXgD9DlXRFhsLl2j-SvDM.cache +0 -0
  52. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/6M/6MdsDZpUgDFWNHx9cKRuDTP9yzypXCg4jb9N5ZiZZf4.cache +0 -0
  53. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/6S/6sBq03fLuHn8Ni6D9Ac2PMI3EgKeHiso7RnIJGXjlW0.cache +0 -0
  54. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/6V/6V2zaZ8WeYA5GHm4qtQN3M_KZ04iV42tNNIOAWOPOyE.cache +3 -0
  55. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/7A/7Ajjsys3MTum8YErjx13rDV55c2Z_8KXPtvheR8HsJA.cache +1 -0
  56. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/7B/7b24OYgUnx26E4JuVTUzZISXRwycCKB4d3SkHI_mGoM.cache +1 -0
  57. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/7x/7xjjcfQe4SDWafW4yPEvh7XRD_dSNPWA-equWxFamdc.cache +0 -0
  58. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/8R/8RtYzHdGRFqV9pG2DNwqTY7J5uhr8qlxDQeuXTwIY2E.cache +3 -0
  59. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/8o/8o2C8jEgmx9Gr-vc85BSlMdw5kFf16xGnTXvHVO272I.cache +1 -0
  60. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/8x/8xp6k9l_9X6TuOlW2Fjs0Go3S3tg7A7nXhljuwzh5Bk.cache +3 -0
  61. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/9B/9BulzwYrDoAFs0yOH_E1SzR4IF-C6xSEL-WIQ28wnKk.cache +0 -0
  62. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/AI/AIBVfu71vZtnrWDRSf2uIl7Bv_QtrZNgZKlQSmnCdR0.cache +1 -0
  63. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/AO/aOGov0ljh28xaQVnKmpBeTTDohnwHwZQXJ3mkf-DdwQ.cache +0 -0
  64. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/AS/ASf04OVOLg4K5vdcTAsGPK3KFadlQI_A-VN5UuLTQ7I.cache +1 -0
  65. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/B9/B93kCIzt6lnbKND7f08VtLC_3NeoaRfINB61O6Lc8sw.cache +0 -0
  66. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/DL/DLWclh1SPbhyGRx2Uw9nRwRgpWTL2oQPZOZ5DBpxgXU.cache +0 -0
  67. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/DS/DSe1mdro-B24n4hOax5JIDptRnDjC-Qh5uNnLfS7NlQ.cache +3 -0
  68. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/DY/DYyIP_rnWeFPnsxXA6iurqXDu65tEa6iDPmAWHvbqjw.cache +0 -0
  69. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/D_/d_ZVow2A3y1RSEPCJowkQqh4Nui_VXFHr5HqmuTrbiw.cache +0 -0
  70. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Dc/Dcvt4D0EjlyXgUPUVP5cgnyK38LzJtoSGC8SYPSXhgY.cache +1 -0
  71. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Di/DidyvlrR6Yx_PoBC6Nbss2URfveCYGluZChRlIUVbXQ.cache +1 -0
  72. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Dt/DteaiMKGTa4CSfnAlS913QsUqi6WlooQ7iLHrK9qXcE.cache +3 -0
  73. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Dt/DtikrWgerpMDT2SNmV0zQOpEmKFKFsg7Pmmk0bJkJUg.cache +1 -0
  74. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/E7/E7kVy_Hp2Nw62qvqbj45hw_G_8SLznwnVcld-3qT6bg.cache +0 -0
  75. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/EZ/EzpksZ5P4z-3oQhlMLD0tW3mtfq_xfkF0b57NvP021Y.cache +2 -0
  76. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Ei/Eik0wQdKeg-nbwgds60C7WOwxYQXdqsWUjx7AIULJjk.cache +0 -0
  77. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Ej/EjbcMgbXjDZYVT84EcVXLkbXcweWZyDFpQfFUu7AcxI.cache +0 -0
  78. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Er/ereaP4ayejBfHveSk_E-V0poAqgTSFJiyuNkhi5ECB8.cache +3 -0
  79. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Gj/GjQJKeR587HLcVWqjwBiUopSEevvVony9578ke1Ltko.cache +1 -0
  80. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/H6/H6TadA0BTTSv6aqJD9XpVqUQNjhaBD7eo4PpBCS599c.cache +0 -0
  81. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/HZ/HZCSnsIhdqZ-xqAXSzOQoxoO2-iy9KjjGcFULQEw4PU.cache +0 -0
  82. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Ha/HaqeXw5UOUuTl3B2NemRJywJr7WOKXVCMPr6sU3ykq0.cache +4 -0
  83. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Hy/HY6Uk4HMACMkt0N8BwwwhwLF7vq50H8ds856_oRAKtY.cache +3 -0
  84. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Hy/HyvA-MgNxtuLRXPiSZ3As0wIX8ZHx3ckQRxthoa27AA.cache +1 -0
  85. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/IK/iKOTD7pp1uYmMFEIrQhv4ppxZuZ2_aRmEdMApc5cTuI.cache +1 -0
  86. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Io/Io8SThgQ1woHsLZ3_F7zS-KFMav01aZwNcJRt3Zzi0A.cache +1 -0
  87. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/It/ItJky0tInHFmcBf_GKB024H1dCQ9mQ2bdIvZ6sKuBcQ.cache +1 -0
  88. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/It/itlVp4gvfL2g-te-ulUC8PXdegOdSDQNZlvb_gIZ5Mk.cache +1 -0
  89. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Ix/Ix1tOlHDX46A9OdCIxe-CRMDbhK6LmDIOoINRzweXUU.cache +1 -0
  90. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/JU/JumVS4OZGzcCtC9XVdYweRMIGfINIo2_ZBtffNDURus.cache +3 -0
  91. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Jz/JzNC2lac5DtvMZr4yg_MtS2xo2TLCmhJzRaB4OWzxFA.cache +1 -0
  92. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Jz/jZ29FzLpATvElA2Wy2q6TiHhlSB1WqFzzAPwF6o5rAY.cache +3 -0
  93. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/KM/KMcI4z523El-qOsWDOOv6fKTzF7oOt28Ngip41Ue5Iw.cache +1 -0
  94. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/KW/KWYCHThyJkZdwU6YEDPqKtSPllhSqJhY_C-GeGc4xww.cache +1 -0
  95. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Kd/KdtXnEOoBhOiIezJig5abxzkUpQBcs5GKFLgk1bq95g.cache +3 -0
  96. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Kn/Knp1I4BRDTySXA_zFfqsG8IXQdTqFHuqze3hapbUeuo.cache +1 -0
  97. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Kp/kPQjZqZmxf64qxh1MGpluxd9HffKACbqgU2fZj6TqFk.cache +3 -0
  98. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/LM/LMd9U4nCfuyA3p2NxWCV2Mzei7f_8RfrxOe4Ykoug_w.cache +1 -0
  99. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/LU/LUjCAqdZbcNmAcHZP5zHxuIqY2o6yWsiPcWaY9ulp1Y.cache +2 -0
  100. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Lc/lcu8FvvaptIXW1wEeK9hHIW6W53D8MCvRlch4JmmBGw.cache +0 -0
  101. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/M4/M4m17Zayu4V4yu1D8m5c42bPmLAQSyHWHJ6hoFzrxy4.cache +1 -0
  102. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/M5/M5tiMYkNdEa17iNYtLwSQEZAR3XMy9Z-t6GHZY_PHTw.cache +0 -0
  103. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/MA/MAAycMMxLudb6e75I8IUZxvjoWzqnqSvmA2yzyUUjW4.cache +1 -0
  104. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/MT/MT6HDM8Q9of-_Vlh-itc5ChK589b4mMHBm_cFat3tqA.cache +0 -0
  105. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Mg/MgpDBBMAJyk0-h6QhltVVzxqpFkLk5SbB-5yhHP8Los.cache +0 -0
  106. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Mg/mGTKjn4P1FkKdu8lzWVz2SYD0jLItngLqbxakMIguE4.cache +1 -0
  107. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Mr/MrFzZzwDVKQTebfIRaexNsGBL_lBLgxmaWwaiUfRlMI.cache +3 -0
  108. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Mx/mX1nlsL_SWOB4y22W5FheRX0YEONKyOY7xUeIvRiHco.cache +0 -0
  109. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/NX/nxTv3sKVUQZADJyM3dPaVmUA78MIsMLD_K279yN_GsI.cache +0 -0
  110. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Ne/NELAGlsfLLT_bXbl_crY74LtDQOTjaCWa-PRlGoUyG8.cache +1 -0
  111. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Nq/NQRkBZSAnB7L46-e_X9AfCRu4nO_A4Nj0oLsLkSXXSk.cache +1 -0
  112. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/OM/OMgpaK64gPq79vvRkxuTr4OUgUm48ypDB4hDrdkjRhM.cache +0 -0
  113. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Oc/oCl0X52oiuztgZBFYIfgtI1J-osvVQ-cr4Q0DgOdvkY.cache +4 -0
  114. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Oz/OzKMWWU7T1BCdHtH2bqw3mEmnsAgalkpboKWDEFcx4A.cache +3 -0
  115. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/P-/P-YhO6ZYIY0IRhSys2V_xYc8311VKjZcic2zONLVa2s.cache +1 -0
  116. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/PG/pgXdlTYUcicE99mmgnhopWE-1E2FOri_Z8WHU-0x3rU.cache +1 -0
  117. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/PO/PO0uEpTspjbioAOhKwhMQNFj-3Z7Rus4l8qsnJp0jNs.cache +1 -0
  118. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/PT/PTavndsfoI6bbbfiMskunK2Xlj2_dJ1Q_8STjpu8rNI.cache +3 -0
  119. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/PU/PuH9vupD1vWIe-s3zbEkWuhjjNdRCrjZlXcMio-_ac8.cache +0 -0
  120. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Pj/Pj5I_KOyUOMLY5drz_u9yjhVucjZQoCwy3gE5ng_w24.cache +1 -0
  121. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Pq/pqeS6zqHUdv-_25W2PSQMm31ql_cIpaK1iqEcfiNyUQ.cache +0 -0
  122. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/SC/SCpYbJ8W95vBX24Mf9t2jSj7kwF-bKe5ZSikZGMicF0.cache +1 -0
  123. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/SM/SMtYAD-isNtTpNcSoppOKCBSP-ce6gKpZQNlvggHUoU.cache +1 -0
  124. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/SM/SMui3l6TRSHmp6_npspKUMKthZFloFQCgaQI0d_bo60.cache +0 -0
  125. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/SM/SmKv00-Q29X0vENm4ECWq_RDJqwCwvqXUpOpipWegvM.cache +3 -0
  126. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/SY/SYP7EeWnM2uPARvalfjUojNCB_hMHIIW_gAxJSX1g0E.cache +0 -0
  127. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Se/seDPonD6KuB8dvfddyg-iMlv-pNkvduJQNnyQUEgKZc.cache +0 -0
  128. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/T6/T6DzqPBzDW0xwN1OPJCi6ql0q-vZIA4RUP1NoeJ2vDc.cache +0 -0
  129. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/TG/TGye2RaBBgS0qbCpqQBMwlB_bq1d-6AbKjb-i52kQkg.cache +4 -0
  130. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/TJ/TjH0j9-rvT58MFHjVKFVEtvlCQhE2smH6pX0vRVHvJs.cache +1 -0
  131. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/TV/TVfViAhlofvNjXeWdeSan4KrOLFFvC1maP9m_04pr7k.cache +1 -0
  132. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/TZ/TZlApB6NS1dvpxlzdysa-2NmrA5bj16V1mRsHs0oU5w.cache +1 -0
  133. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Tu/Tu3EEvyYM7bXYl912XmGLx8WbG8UCqkOaRObhgiTQhI.cache +0 -0
  134. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/UA/UAyHR7bL9jCdJHOy4gHm5O9THA4PDdP33IEK85LsEt4.cache +1 -0
  135. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/UB/UBi9jnn6U6zP2tFktySbMPdj03GRrCr_4huvRvPjHog.cache +1 -0
  136. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/UE/UEez242SA7q6x4h0yPaQm54dXtY5N89vDQs4DVwUmiE.cache +1 -0
  137. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/UR/UR5dQTg2mP-wdodsKR7_AJ_9wVthUe5iGt0xX3yF0uU.cache +1 -0
  138. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Un/UnhfD-2fo7YiCRuryL8mFeV0k2W3Ww22nKU8Mxgv-EI.cache +0 -0
  139. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/V-/v-7fb5AEosoxEHhKVbEOv4AhgzpLsxfPZiJIzHCV2Gk.cache +1 -0
  140. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/V2/V2QhbjrEGa7in5Uj1P-3E1Ziw2AGno_ADefUhPNHw_A.cache +0 -0
  141. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/V5/V5UoUSOjYwlaSPiapI3HMSIdjayAQjiJdS0GyVCjOaM.cache +1 -0
  142. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Vt/VtE3fM6394kV5EBsrpAZ6h8EdyFqeI1xzDGNcCOnMRQ.cache +1 -0
  143. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/W7/W7YXd7S2ygpf_4VzqqIXe9T-gHu2V6uzrGW-NCk98yI.cache +1 -0
  144. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Wo/WohIKwHn0P7DtiBKK66PU_NDnULM7jBQfEkFgeR9uVU.cache +3 -0
  145. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/X-/X-qAfPvkxJybOBCP--jfyQF_b4dWLgPgiwO6v4haHZQ.cache +0 -0
  146. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/XA/XaTNbUyVBm6-ao4-pXjrdE1nfvaFT2KSrulqIbt1FKs.cache +0 -0
  147. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/XC/xc-kyrCopU4yxeu7VFTHUtvGVMpsK3ar6CbDmKJnD-A.cache +1 -0
  148. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/XP/XP02p-sWqE-QQi8URo_ZLLdmB_S0zoVb2UsqyHiBaLI.cache +1 -0
  149. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Xw/XWIzw_i4cReQWrf0_MeWSoNT3QIhqApH_qCj-9trIlU.cache +1 -0
  150. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Xw/Xwnw2bhrkmcZyej2vlGTIwz7HrALm_gr7TYWnL615zI.cache +4 -0
  151. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/YA/YAzJ4VNEuJMhyDwTctHZ3YHo9ffNWk7-HPv0nOw0fCY.cache +0 -0
  152. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Yb/yBZ-aqbxiyJ-YabYzElgTycHXK1Ydog1KTbF9KFt_k0.cache +1 -0
  153. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Z5/Z5OmH_BZpT5Ld5Dlf3Ca7BmW3eULIscrZRqvDJ46wnA.cache +3 -0
  154. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ZG/ZG8ET-PZgC9oE8zYT17ef420fslewoBXVLSqtLwKTbc.cache +0 -0
  155. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ZZ/ZZ3jcfyhmPdUtG83ZC0xzss1YIYSJO2Ot0xR6xT8aeQ.cache +1 -0
  156. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ZZ/ZzrBqaFnXC4f8IxoldVFm_1BbFTa3rqFWObhHutB2R0.cache +1 -0
  157. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Zx/ZxBjZ9UlQM4YzNxNUIv65H1nAbjOSLO9nKSWFT8dJ6c.cache +0 -0
  158. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Zy/ZymYuvaduNFNbibeyZksQxnO9C3RkAHANZqAiv2BsmM.cache +1 -0
  159. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/_1/_1yyRWIID5SmfclDlW3pyk8KRHn-q0mJSRtAd8Tu4wU.cache +1 -0
  160. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/aw/aw_KGa7uMK0KdiTkITHEUC_M2s4H8SYslvENlXY8fiU.cache +0 -0
  161. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/bF/bFPa1WH7WjawkLB-u4hSODd8qtKB3FiOErd80cAXhuk.cache +1 -0
  162. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/b_/b_Itlk9QZZd7Rvf8kcA4yLP1R5Acu7jB-m1xQiSU0qE.cache +0 -0
  163. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/c3/c3puJ3kvfQhdSMqIfqsEqGN3pI7mmvuCsoRWVthH2Uc.cache +1 -0
  164. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/c9/c9b8dbSJcq-Gv7dNvGzMJUYSD1PtGWXMIiDsYuNoQLI.cache +3 -0
  165. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/cP/CPK7fziFz-1f5jlWY1RkaOta6LLmzsgNf_zCOKOL4L0.cache +1 -0
  166. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/cU/cUL3bWebF1eWfB75VC2Z_FwUYxDAY1PtdyFUYI_RQH8.cache +1 -0
  167. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/cw/cWzFg3HDvuDkKRUTU-6y_LHQGhn0NJk0PPXADhEU1SY.cache +1 -0
  168. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/d8/d8AdJ1PeCw0pP2wgSeZpbHKbqIGxbC4aGvKGJqKnbls.cache +1 -0
  169. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/dW/dWOXTcrP3L3z7wpnICzWRQfVnlC8WnGn0ZXwTTJYeVo.cache +2 -0
  170. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/e-/e-ObUwTdtBoCYqHRuHalqaItoHrSzlqe-LiLrM8S1d0.cache +3 -0
  171. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/e-/e-eUgvpZwH1odYL8DfwmM83pfCVvHshGZyoMTs0j5wQ.cache +0 -0
  172. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/eM/eMTq3PFC35rPZ-8tYknfN5e-DRgOJheobYepptbln08.cache +1 -0
  173. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/eV/eVv4y2T9H4CDvnRVxNfO_1m3cvJwrMVFjK5iFFuBRno.cache +1 -0
  174. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/e_/e_ruWXJyCQgP84vsOJoOTeCPVCGyHiFvdIEn2WfF0_k.cache +4 -0
  175. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/fE/fEbBVo4dIuYW-oJhbMxrUq9Cn2EF4Ir--a_yVr99lCA.cache +0 -0
  176. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/fK/fK82fzjl7P1c_x7x-K-G95hua4g2uysNwPhlEFETdZ4.cache +0 -0
  177. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/fO/FOcw3yom5R8aM-g0VDjYO87UbPQghkhxGT0gT18A4uw.cache +0 -0
  178. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/fU/fuvDdhcqxIr_hCrMUMFKFHpCGIIof0e5HBKDQjT7h78.cache +1 -0
  179. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/fp/fpfDHvHIeR4SMLhSNsBvpepyD0pWTitQaLkWDJXeFiM.cache +0 -0
  180. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ft/ft1rkS3B5LiF6PWg7EwFRRjBFBzQywzcYWGbUsRrfzk.cache +1 -0
  181. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/gF/gFWjN1kjn9zUgrdbGsmhlcdzqayCzpJDBsKF-F3dICM.cache +0 -0
  182. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/gb/gBjRcZfWhNpN_Q7QdIG2yqQf-vGqNglxflJE7yGulSs.cache +1 -0
  183. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/gc/gc6SYXUnBOCa3yauS9MHN3UHD5xQ39Wwoh7qRxJo0Ak.cache +1 -0
  184. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/gk/gkmtP8_IIGkDEwHYLuzMI38K-J7GgdcamgSroymRiQA.cache +1 -0
  185. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/h7/h7UUWebQwSo_p-rKAcPVx4Mmi_xZA58X-PZ8jTi28Ok.cache +0 -0
  186. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/hB/hBgRf8fljj8VRjIBjC4KHJAdE6OJhOyA_R_bpofEbhg.cache +3 -0
  187. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/hB/hbwGMZXw3l3Hej36nGxGOB6BlDkbqmVwcNgErvKbn3o.cache +1 -0
  188. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/hM/hMDdyYt_ciPZ0-Qf1QQ2sGIgaABrglQsCj9Xh5iK0Jk.cache +1 -0
  189. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/hW/HW_ZL-rD9Jb-hGrjZVQMG0Mc97cuuPUHRRftq2E1Bd0.cache +1 -0
  190. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ht/htARiga4cSUeHRmmGKbP1SvfPhQh8f5YeRqnmND_hug.cache +2 -0
  191. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/iC/Ic2u-Hp89DhGQ8WlByADjcXduvvvbx0xbhcjFlsX_Ok.cache +0 -0
  192. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/il/ilC0nysNG9CEjS00Z5agbZnJit_8qbM8ZS5fmETiC3s.cache +4 -0
  193. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/iv/IvdRDPnPBG1_czw3dWEhSs8_aVqKk0NZUDCk2osbNCM.cache +0 -0
  194. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/j-/j-2fhEr1qnFpOWo-dvGQHBmFiXCBfHiXBjZSXl4Yqr8.cache +1 -0
  195. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/jK/jKC50SmETbzuqZGSUFRpjBssfy7IZJq_FQ8B7wCWwto.cache +1 -0
  196. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ja/JaBCQJDmtmApRbd-XrdCFQgxSpmM5alahGMOao_TbK4.cache +0 -0
  197. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ja/jAqY0d5bkhjBZruJajJvsvLGka8yuVhUY0kCzgpOH8E.cache +1 -0
  198. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ja/jAsVGIBTkgv2T9HhEnFqvzu90SE-Y2KUe7iGWb5LCQ8.cache +0 -0
  199. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/je/jEZZ_oo36DqUNRva8N9kc5cgecVw7zJi9GEC_dWEhq4.cache +3 -0
  200. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/je/jesfnTtmRPZwLEX6xIF4xV3v0tm9x9joWbDPTOV0Zc8.cache +0 -0
  201. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ji/JiGKSyAXtYCOyyC-0uD8o2M9TYwRBDLR9mqsiq620bI.cache +4 -0
  202. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/k2/k267wRaJiQ9W8AeXjhlp8xvedmEsampz5Zqa8y5E-L0.cache +0 -0
  203. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/k9/k9O5xwic1W0hAFuiITu0fnga64KhZmirHq_yUSl-4a0.cache +1 -0
  204. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/kF/kF0Cksv3noxNgVqHJbAt_hvcbnNyFWBYATJOBM31B7o.cache +2 -0
  205. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/l0/l0DyHgJhOsha1dh7jwQ5OyKHf7t37JSD5IhQCM8EeyU.cache +3 -0
  206. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/l8/l8avF-sf4o3DYJfkIRXSzVqQNtoYZhp8wQYQDTwx0WE.cache +1 -0
  207. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/lG/lgXFr4rWHb_yHJVNnwuVf9KvqcmxlJm0XbZswUck_Yw.cache +4 -0
  208. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ld/Ldli3IRvrc7jUQ7uXxDK4wJWrcMYKf8oIZ_DcgnDRsc.cache +0 -0
  209. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ld/ldpUbArnQtbv-RMSIiaeluatxJtiMjlFv2fe7ElX8_I.cache +1 -0
  210. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/m3/m3S69JUERC5YBJiHOFXT2xU9pP5-t0jBwhnlEs9K1ow.cache +3 -0
  211. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/m6/m6ssrzsKWrYvEfFhiofhIfcaow0Cz7EVkortrPYj7SY.cache +0 -0
  212. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/mI/mIBMR6S7PxcCDBezMm53aSp5FvpTamnZui3b3AfuQ8w.cache +0 -0
  213. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/md/mdkik0qABcaGcaUUFdrEot6VX19L-Y_xYTIQJAYeZwI.cache +1 -0
  214. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/n_/n_xYqQYhwEMQknb3jFQnjlxxBE9TzMNHCdJ-bEyZFIw.cache +0 -0
  215. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/na/naj5gjNUhAOo29W_2U8PUEUvcKSmM-lv1511XWThVIs.cache +1 -0
  216. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/oF/ofM0whzr9gDoiCmUVQK3ZOCp-CoVa4FEvyr6YTJAUjE.cache +1 -0
  217. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/o_/o_fS6K3ULUiwGzsqwWUka8aaZRQ3vvjPPhefsszbDpY.cache +1 -0
  218. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/p_/p_SA19db6cw4WhMCFSBNL46XZvLYbMOER2JMDGGZQbk.cache +3 -0
  219. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/pd/pdwBzJpjZsXmcIf25xIEkjPCmacOR07SN_ELLAeAdYk.cache +5 -0
  220. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/pn/pnesdMLIbIjTn3CdjFSc4AEzdRh0OexhmwhTrD-s6JU.cache +3 -0
  221. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ps/pSeMubKKGf-xNlsMgrlrgpxI4bwQBLmljpkQy1mGQUQ.cache +1 -0
  222. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ps/pskf_JJ1i8YETFWHUfEUPjBptP3jg7QMn-nYHakLUHM.cache +1 -0
  223. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/q-/q-QRapVuEmGmgFh5WhIXBPJiyEonAGHg3ahg_fF0hHY.cache +1 -0
  224. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/q4/q4XS3VWeTRVDy1lIuDilNWD-sqIWKS5Hd_YUNOrrR4U.cache +1 -0
  225. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/q6/q6eMZYQKC9PFlkACW59vdTQXNi_58Ncs2VnDBln_uyk.cache +0 -0
  226. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/qK/qKed4dYLo8TqwP6k1cRTfHL1cmKMxf4U_R6P0mU2J8w.cache +0 -0
  227. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/qX/Qx3k4HoBLLTm--TE4m9ddgD-3tG00KT5qJJDdvZFHEY.cache +4 -0
  228. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/qX/QxqsvgIYbpnZNmU--1UWAtSjvIia7CL4vCdEhNellwE.cache +4 -0
  229. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/qX/qXeevtEbdJLMaPotlltNMRgumZntBPqOSv4gmWYP60Y.cache +1 -0
  230. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/r0/R01-KakKS38eGy1OIHsB0kX9HUoXDhctZgqgDUvbmh0.cache +3 -0
  231. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/rS/rsDNVavrJEmW0NWNCD5LMjGfnYwQ6Q0rqdZLBr8aITE.cache +1 -0
  232. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/rc/RcWMnR24romwUCkz5-Uymi7ChqvoUy7JoC3HMd3IFqo.cache +1 -0
  233. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/rc/rcvdagGTUNtOUZB8w2HnjxmuuLndSki2wCwJxbhqyQ8.cache +1 -0
  234. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/rq/rqFrlyz6cmie_BVzytgyDMNrKIs8annOy8_Rs-2SO6M.cache +0 -0
  235. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/s3/s3ew6C4JTEaoZSdaIyRwa6oSBgBGcU12lkMgZJuP5rE.cache +0 -0
  236. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/sA/sAZrbOyGkNEy_rksA9lA0niWxr8LKU0qzjmguIJbmmA.cache +3 -0
  237. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/sJ/sJOLo6McRe1YhfgIaGhcDaAoulIdYY7Rs07TAKmrSoY.cache +0 -0
  238. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/sU/sUVdIvJgXLOGxfeduTgVdptS3UESTOlnMfbRffVvcoE.cache +3 -0
  239. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/t1/t140cKnSLjhSCcqAMWArnP1Ll8Uq0j6h9NwHwQHGpdE.cache +1 -0
  240. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/tC/tCf7YMtcSAAwZpADYQBLhHKIh_E23yEpj9l5zyfx2Y4.cache +1 -0
  241. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/tI/tIgTD3RzJAJ3Rtnh3-zBKQZlhs_Qg_YbUlMs19BLHKs.cache +1 -0
  242. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/th/thd-BpMbl7MFFyAwOGPQ_xEbnC8OSYYEzTysN5ucYpo.cache +1 -0
  243. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/tm/tmXa0SJ5xt9UhLHnGRc9OZSzBGoM96chfAhM1l1DqMw.cache +4 -0
  244. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/u4/u4WMxrx0calmHM8whjLQb3YHGaRn5oJiDHw6sMgCJkA.cache +0 -0
  245. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/uU/UUFXxOqhM_QMLEXymzSQasTh1gmeAXPUL5yifiO8sQ8.cache +1 -0
  246. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/uV/uVCWuMeah2A0LQi0Q-4S1kV3FAOeWQUaGOmdfoa_Od8.cache +1 -0
  247. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/uz/uZwQtYmIn9r1Lpxi1ZN7vq4MANxce9Y2uF6FdMEaRp0.cache +3 -0
  248. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/v4/v4jQ3e1ghAsSjlDj5gLLXl88rWQm1AD7mM6N3vN9XEg.cache +0 -0
  249. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/vc/vcQk6UMAZ9YPZ5CuZcFMmFhaWJOLXokJ4rWKd_G-E-c.cache +1 -0
  250. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/w6/w6hNzpLdQgqx5THzyH7JUwjISjvfOcSQoA_sbPBNwng.cache +1 -0
  251. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/wI/wIHCcTrNQztBLEbZAgqHYRdx6ldQwlyO5JSKv_40PEA.cache +0 -0
  252. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/wK/wK5S37PPHfwFm-4mrLMMPdOZ29-H75zo1T2gmErWjLI.cache +0 -0
  253. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/wp/wpmxDE9elG0j8EH5IYVZFaoCZp8jKRjbsWEANUvUOPw.cache +1 -0
  254. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/wv/WVLQgJ4MFrK3oH4JK__HGn1AJ6-SbobmACeo5Ydn78s.cache +1 -0
  255. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/x7/x7PYh8DJvPykcEqpVab2vcY9-GFz-3cqtoMlRAu94Uc.cache +0 -0
  256. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/xU/xU1Dtcu3A5Kaczy-vYbHt-K4vP2YaIvXvDs5zJrLKN4.cache +0 -0
  257. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/xq/xqVLur9WUEmAJuJtMuqm2HJ_etxGmIuhobo5GM0RJQE.cache +0 -0
  258. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/yL/yL18eK6mz71YDVJh6LGFkDUm671QuEuS_NChq1a6igo.cache +1 -0
  259. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/zC/zCtHirLr7cGQc0BoP8xwproGlu3RYXRI-ysdEOT227k.cache +0 -0
  260. data/spec/features/dashborad_spec.rb +3 -0
  261. data/spec/features/workers_spec.rb +3 -0
  262. data/spec/helpers/job_definition_helper_spec.rb +22 -0
  263. metadata +417 -5
  264. data/app/assets/javascripts/kuroko2/definition_linker.js +0 -20
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d47289d5f0680a4d3c54a63d23aa4e81034dfa6f
4
- data.tar.gz: 3c83db1643fda5ff3be5dab4773ea9b65e881020
3
+ metadata.gz: ee9ce17462b9270fa8f45c122123f20175131a84
4
+ data.tar.gz: 2914136d1c86da76c97b0739fa26ab7560c13e52
5
5
  SHA512:
6
- metadata.gz: 0b02fc72c9714dc75228d144975a11660b04e878ebd0cdf7d04a8c8eb0766d015ce1d6e9a3b2ec51af6b035093b906fef7eda9cfbebb48ea01a928683a0c2dd3
7
- data.tar.gz: a25b917a958bdda761f2ae093f951bfb4e095f0573ee46b47dee2cf5c145a44a3a175ec54f12345d866fb5245bb0be73eda9ce8bbe0f16379152c8f6ab6278e2
6
+ metadata.gz: 60988ce35420ffef7b77a3862b518b5b3adff3c15f8d5137acb474d1f8aed098a145d6944d81b920cf7e5bb5cdd39db9bcdf2269f3cf89dfa7696fcfd9339c7a
7
+ data.tar.gz: e59d33a39735b8bb0064e44a5f24882afd809ad62c519d00e9421c51a46a45d3b5fd62d3f564b94292b9933a9d237a2675d0b36b97080cbaa0ee9f0656ae88a4
data/README.md CHANGED
@@ -13,6 +13,10 @@ $ rails new your_kuroko2_application --database=mysql --skip-turbolinks --skip-j
13
13
 
14
14
  And edits "config/kuroko2.yml"
15
15
 
16
+ ## Documentation
17
+
18
+ Documentation is available at [docs/index.md](docs/index.md).
19
+
16
20
  ## Authors
17
21
 
18
22
  - Naoto Takai
@@ -17,3 +17,9 @@
17
17
  .script-input {
18
18
  font-family: 'Inconsolata';
19
19
  }
20
+
21
+ .kuroko-script {
22
+ span.note {
23
+ color: #888;
24
+ }
25
+ }
@@ -34,5 +34,54 @@ module Kuroko2
34
34
  )
35
35
  end
36
36
  end
37
+
38
+ def format_kuroko_script(script_text)
39
+ script_text.each_line.map { |line|
40
+ matched = Kuroko2::Workflow::ScriptParser::LINE_REGEXP.match(line.chomp)
41
+ case matched && matched[:type]
42
+ when 'wait'
43
+ format_wait_task(line, matched)
44
+ when 'sub_process'
45
+ format_sub_process_task(line, matched)
46
+ else
47
+ ERB::Util.html_escape(line)
48
+ end
49
+ }.join('').html_safe
50
+ end
51
+
52
+ private
53
+
54
+ def format_wait_task(line, matched)
55
+ definition_names = []
56
+ formatted_line = line.gsub(Kuroko2::Workflow::Task::Wait::OPTION_REGEXP) { |option|
57
+ definition = Kuroko2::JobDefinition.find_by(id: $1.to_i)
58
+ if definition.present?
59
+ definition_names << definition.name
60
+ link_to(option, job_definition_path(definition.id))
61
+ else
62
+ ERB::Util.html_escape(option)
63
+ end
64
+ }.chomp
65
+
66
+ formatted_line << " "
67
+ formatted_line << content_tag(:span, "# #{definition_names.join(', ')}", class: 'note')
68
+ formatted_line << "\n"
69
+ end
70
+
71
+ def format_sub_process_task(line, matched)
72
+ definition = Kuroko2::JobDefinition.find_by(id: matched[:option].to_i)
73
+ if definition.present?
74
+ formatted_line = link_to(
75
+ line.chomp,
76
+ job_definition_path(definition.id),
77
+ )
78
+
79
+ formatted_line << " "
80
+ formatted_line << content_tag(:span, "# #{definition.name}", class: 'note')
81
+ formatted_line << "\n"
82
+ else
83
+ ERB::Util.html_escape(line)
84
+ end
85
+ end
37
86
  end
38
87
  end
@@ -71,7 +71,7 @@ class Kuroko2::JobSchedule < Kuroko2::ApplicationRecord
71
71
  end
72
72
 
73
73
  def self.launch_scheduled_jobs!(time_from, time_to)
74
- find_each do |schedule|
74
+ includes(job_definition: :job_suspend_schedules).find_each do |schedule|
75
75
  definition = schedule.job_definition
76
76
  suspend_times = schedule.suspend_times(time_from, time_to)
77
77
 
@@ -1,5 +1,6 @@
1
- - @title = 'Dashboard'
2
- - @content_title = '<i class="fa fa-dashboard"></i> Dashboard'
1
+ - content_for :title, 'Dashboard'
2
+ - content_for :content_title do
3
+ <i class="fa fa-dashboard"></i> Dashboard
3
4
 
4
5
  .row
5
6
  .col-md-7
@@ -1,5 +1,6 @@
1
- - @title = 'Executions'
2
- - @content_title = '<i class="fa fa-tasks"></i> Executions'
1
+ - content_for :title, 'Executions'
2
+ - content_for :content_title do
3
+ <i class="fa fa-tasks"></i> Executions
3
4
 
4
5
  .box
5
6
  .box-header
@@ -1,5 +1,6 @@
1
- - @title = 'Job Definition Stats'
2
- - @content_title = '<i class="fa fa-bar-chart"></i> Job Definition Stats'
1
+ - content_for :title, 'Job Definition Stats'
2
+ - content_for :content_title do
3
+ <i class="fa fa-bar-chart"></i> Job Definition Stats
3
4
 
4
5
  - content_for :breadcrumb do
5
6
  ol.breadcrumb
@@ -1,5 +1,5 @@
1
- - @title = "##{@definition.id} #{@definition.name} « Job Definitions"
2
- - @content_title = "##{@definition.id} #{@definition.name}"
1
+ - content_for :title, "##{@definition.id} #{@definition.name} « Job Definitions"
2
+ - content_for :content_title, "##{@definition.id} #{@definition.name}"
3
3
 
4
4
  - content_for :breadcrumb do
5
5
  ol.breadcrumb
@@ -1,5 +1,6 @@
1
- - @title = 'Job Definitions'
2
- - @content_title = '<i class="fa fa-database"></i> Job Definitions'
1
+ - content_for :title, 'Job Definitions'
2
+ - content_for :content_title do
3
+ <i class="fa fa-database"></i> Job Definitions
3
4
 
4
5
  .row
5
6
  .col-md-9
@@ -1,5 +1,6 @@
1
- - @title = 'New Job Definition'
2
- - @content_title = '<i class="fa fa-database"></i> New Job Definition'
1
+ - content_for :title, 'New Job Definition'
2
+ - content_for :content_title do
3
+ <i class="fa fa-database"></i> New Job Definition
3
4
 
4
5
  - content_for :breadcrumb do
5
6
  ol.breadcrumb
@@ -1,5 +1,5 @@
1
- - @title = "##{@definition.id} #{@definition.name} « Job Definitions"
2
- - @content_title = "Job Definition Details"
1
+ - content_for :title, "##{@definition.id} #{@definition.name} « Job Definitions"
2
+ - content_for :content_title, "Job Definition Details"
3
3
 
4
4
  - content_for :breadcrumb do
5
5
  ol.breadcrumb
@@ -29,7 +29,7 @@
29
29
  img.img-rounded src="#{admin.image}" height='20' width='20'
30
30
  .media-body.no-decorate= link_to admin.name, user_path(admin)
31
31
  h3 Script
32
- pre.kuroko-script #{@definition.script}
32
+ pre.kuroko-script= format_kuroko_script(@definition.script)
33
33
 
34
34
  'API execution allowed: #{@definition.api_allowed ? 'Yes' : 'No'}
35
35
 
@@ -33,10 +33,10 @@
33
33
  th Error at
34
34
  td= @instance.error_at || '-'
35
35
  h4 Script
36
- pre.kuroko-script= @instance.script
36
+ pre.kuroko-script= format_kuroko_script(@instance.script)
37
37
  .box-footer
38
38
  .row
39
39
  #cancel-button.col-md-4.col-md-offset-8
40
- = link_to 'Cancel', job_definition_job_instance_path(@definition, @instance), class: 'btn btn-default btn-block', role: 'button', method: :delete, disabled: !@instance.cancelable?
40
+ = link_to 'Cancel', job_definition_job_instance_path(@definition, @instance), class: 'btn btn-default btn-block', role: 'button', method: :delete, disabled: !@instance.cancelable?, data: { confirm: 'Are you sure?' }
41
41
  #force-cancel-button.col-md-4.col-md-offset-8.display-none
42
42
  = link_to 'Force Cancel', force_destroy_job_definition_job_instance_path(@definition, @instance), class: 'btn btn-danger btn-block', role: 'button', method: :delete, disabled: !@instance.working?
@@ -1,5 +1,5 @@
1
- - @title = "##{@definition.id} #{@definition.name} « Jobs"
2
- - @content_title = "Job Instance Details"
1
+ - content_for :title, "##{@definition.id} #{@definition.name} « Jobs"
2
+ - content_for :content_title, "Job Instance Details"
3
3
 
4
4
  - content_for :breadcrumb do
5
5
  ol.breadcrumb
@@ -1,5 +1,6 @@
1
- - @title = "Working Jobs"
2
- - @content_title = '<i class="fa fa-spinner"></i> Working Jobs'
1
+ - content_for :title, "Working Jobs"
2
+ - content_for :content_title do
3
+ <i class="fa fa-spinner"></i> Working Jobs
3
4
 
4
5
  .box
5
6
  .box-header
@@ -1,6 +1,9 @@
1
- - @title = "Job Timelines"
2
- - @content_title = "<i class=\"fa fa-clock-o\"></i> #{@user.name}'s Job Timelines"
3
- - @content_title << " tagged by #{params[:tag].join(',')}" if params[:tag].present?
1
+ - content_for :title, "Job Timelines"
2
+ - content_for :content_title do
3
+ - if params[:tag].present?
4
+ <i class="fa fa-clock-o"></i> #{@user.name}'s Job Timelines tagged by #{params[:tag].join(', ')}
5
+ - else
6
+ <i class="fa fa-clock-o"></i> #{@user.name}'s Job Timelines
4
7
 
5
8
  .row
6
9
  .col-md-12
@@ -1,11 +1,11 @@
1
1
  doctype html
2
2
  html
3
3
  head
4
- title #{@title} « Kuroko 2
4
+ title #{yield(:title)} « Kuroko 2
5
5
  meta charset='UTF-8'
6
6
  meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'
7
7
  link rel='icon' href='/favicon.ico'
8
- link type='application/opensearchdescription+xml' rel='search' href='#{osd_path(format: 'xml')}' title='Kuroko2'
8
+ link type='application/opensearchdescription+xml' rel='search' href='#{osd_path(format: 'xml')}' title='Kuroko2'
9
9
  = csrf_meta_tag
10
10
  = stylesheet_link_tag 'application'
11
11
  = javascript_include_tag 'application'
@@ -59,7 +59,7 @@ html
59
59
 
60
60
  aside.right-side
61
61
  section.content-header
62
- h1= raw(@content_title || @title)
62
+ h1= yield(:content_title).presence || yield(:title)
63
63
  = yield :breadcrumb
64
64
  section.content
65
65
  .container-fluid
@@ -1,9 +1,9 @@
1
- - @title = 'Sign in failure'
1
+ - content_for :title, 'Sign in failure'
2
2
 
3
3
  doctype html
4
4
  html.bg-black
5
5
  head
6
- title #{@title} « Kuroko 2
6
+ title #{yield(:title)} « Kuroko 2
7
7
  meta charset='UTF-8'
8
8
  meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'
9
9
  = stylesheet_link_tag 'kuroko2/application'
@@ -1,9 +1,9 @@
1
- - @title = 'Sign in'
1
+ - content_for :title, 'Sign in'
2
2
 
3
3
  doctype html
4
4
  html.bg-black
5
5
  head
6
- title #{@title} « Kuroko 2
6
+ title #{yield(:title)} « Kuroko 2
7
7
  meta charset='UTF-8'
8
8
  meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'
9
9
  = stylesheet_link_tag 'kuroko2/application'
@@ -1,5 +1,5 @@
1
- - @title = "#{@user.name_was} « Users"
2
- - @content_title = "Edit User"
1
+ - content_for :title, "#{@user.name_was} « Users"
2
+ - content_for :content_title, 'Edit User'
3
3
 
4
4
  - content_for :breadcrumb do
5
5
  ol.breadcrumb
@@ -1,5 +1,6 @@
1
- - @title = 'Users' + (params[:target] == 'group' ? ' > Groups' : '')
2
- - @content_title = "<i class=\"fa fa-users\"></i> Users#{params[:target] == 'group' ? ' <i class="fa fa-angle-double-right"></i> Groups' : ''}"
1
+ - content_for :title, 'Users' + (params[:target] == 'group' ? ' > Groups' : '')
2
+ - content_for :content_title do
3
+ <i class="fa fa-users"></i> Users#{params[:target] == 'group' ? ' <i class="fa fa-angle-double-right"></i> Groups' : ''}
3
4
  - @scope = @users
4
5
 
5
6
  - if @user.errors.any?
@@ -1,5 +1,6 @@
1
- - @title = "#{@user.name} « Users"
2
- - @content_title = "<i class='fa fa-user'></i> User Details"
1
+ - content_for :title, "#{@user.name} « Users"
2
+ - content_for :content_title do
3
+ <i class="fa fa-user"></i> User Details
3
4
 
4
5
  - content_for :breadcrumb do
5
6
  ol.breadcrumb
@@ -1,5 +1,6 @@
1
- - @title = 'Kuroko Workers'
2
- - @content_title = '<i class="fa fa-rocket"></i> Kuroko Workers'
1
+ - content_for :title, 'Kuroko Workers'
2
+ - content_for :content_title do
3
+ <i class="fa fa-rocket"></i> Kuroko Workers
3
4
 
4
5
  .box#workers
5
6
  .box-header
@@ -1,7 +1,7 @@
1
1
  doctype html
2
2
  html
3
3
  head
4
- title #{@title} « Kuroko 2
4
+ title #{yield(:title)} « Kuroko 2
5
5
  meta charset='UTF-8'
6
6
  meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'
7
7
  link rel='icon' href='/favicon.ico'
@@ -63,7 +63,7 @@ html
63
63
 
64
64
  aside.right-side
65
65
  section.content-header
66
- h1= raw(@content_title || @title)
66
+ h1= yield(:content_title).presence || yield(:title)
67
67
  = yield :breadcrumb
68
68
  section.content
69
69
  .container-fluid
@@ -105,8 +105,7 @@ module Kuroko2
105
105
  link_names: 1,
106
106
  attachments: [
107
107
  {
108
- pretext: "[#{level}] #{text}",
109
- title: "##{@definition.id} #{@definition.name}",
108
+ title: "[#{level}] #{text}",
110
109
  title_link: message_builder.job_instance_path,
111
110
  text: body,
112
111
  fallback: "[#{level}] #{text} #{message_builder.job_instance_path}",
@@ -13,8 +13,8 @@ module Kuroko2
13
13
  end
14
14
 
15
15
  def validate
16
- unless /\A\@?[\w_-]{1,180}\z/ === option
17
- raise Workflow::AssertionError, "Queue name must be match with /\A\@?[\w_-]{1,255}\z/: #{option}"
16
+ unless /\A\@?[\w-]{1,180}\z/ === option
17
+ raise Workflow::AssertionError, "Queue name must be match with /\A\@?[\w-]{1,255}\z/: #{option}"
18
18
  end
19
19
 
20
20
  unless Worker.where(queue: option, working: true).exists?
@@ -3,6 +3,7 @@ module Kuroko2
3
3
  module Task
4
4
  class Wait < Base
5
5
  PERIODS = %w(hourly daily weekly monthly)
6
+ OPTION_REGEXP = %r!(\d+)\s*/\s*(#{PERIODS.join('|')})!
6
7
 
7
8
  def execute
8
9
  if token.context['WAIT'].present?
@@ -67,7 +68,7 @@ module Kuroko2
67
68
  wait_option = { "jobs" => [], "timeout" => 60.minutes.to_i / 1.minute }
68
69
  scanner = StringScanner.new(option)
69
70
  until scanner.eos?
70
- if scanner.scan(%r!(\d+)\s*/\s*(#{PERIODS.join('|')})!)
71
+ if scanner.scan(OPTION_REGEXP)
71
72
  start_from, start_to = period_to_time(scanner[2], at: start_at)
72
73
  wait_option["jobs"] << {
73
74
  "job_definition_id" => parse_definition_id(scanner[1]),
@@ -9,10 +9,10 @@ module Kuroko2
9
9
  @config ||= build_config
10
10
  end
11
11
 
12
+ private
13
+
12
14
  def build_config
13
- filename = Rails.root.join('config', 'kuroko2.yml')
14
- yaml = YAML::load(ERB.new(File.read(filename)).result)
15
- Hashie::Mash.new(DEFAULT_CONFIG.merge(yaml[Rails.env]))
15
+ Hashie::Mash.new(DEFAULT_CONFIG.merge(Rails.application.config_for('kuroko2')))
16
16
  end
17
17
  end
18
18
  end
@@ -1,3 +1,3 @@
1
1
  module Kuroko2
2
- VERSION = '0.3.1'
2
+ VERSION = '0.3.2'
3
3
  end