chore: add experimental sqlite to mysql migration script

This commit is contained in:
Ferdinand Mütsch 2021-04-18 10:59:13 +02:00
parent ed35e7b82d
commit e2deadfd44
10 changed files with 710 additions and 400 deletions

View File

@ -1,45 +1,29 @@
mode: set
github.com/muety/wakapi/models/heartbeat.go:32.34,34.2 1 1
github.com/muety/wakapi/models/heartbeat.go:36.65,38.46 2 1
github.com/muety/wakapi/models/heartbeat.go:38.46,39.108 1 1
github.com/muety/wakapi/models/heartbeat.go:39.108,42.4 2 1
github.com/muety/wakapi/models/heartbeat.go:46.50,47.11 1 1
github.com/muety/wakapi/models/heartbeat.go:60.2,60.15 1 1
github.com/muety/wakapi/models/heartbeat.go:64.2,64.12 1 1
github.com/muety/wakapi/models/heartbeat.go:48.22,49.18 1 1
github.com/muety/wakapi/models/heartbeat.go:50.21,51.17 1 1
github.com/muety/wakapi/models/heartbeat.go:52.23,53.19 1 1
github.com/muety/wakapi/models/heartbeat.go:54.17,55.26 1 1
github.com/muety/wakapi/models/heartbeat.go:56.22,57.18 1 1
github.com/muety/wakapi/models/heartbeat.go:60.15,62.3 1 1
github.com/muety/wakapi/models/heartbeat.go:67.37,83.2 1 0
github.com/muety/wakapi/models/heartbeat.go:91.41,93.16 2 0
github.com/muety/wakapi/models/heartbeat.go:96.2,97.10 2 0
github.com/muety/wakapi/models/heartbeat.go:93.16,95.3 1 0
github.com/muety/wakapi/models/interval.go:39.47,40.23 1 0
github.com/muety/wakapi/models/interval.go:45.2,45.14 1 0
github.com/muety/wakapi/models/interval.go:40.23,41.13 1 0
github.com/muety/wakapi/models/interval.go:41.13,43.4 1 0
github.com/muety/wakapi/models/filters.go:16.56,17.16 1 0
github.com/muety/wakapi/models/filters.go:29.2,29.19 1 0
github.com/muety/wakapi/models/filters.go:18.22,19.32 1 0
github.com/muety/wakapi/models/filters.go:20.17,21.27 1 0
github.com/muety/wakapi/models/filters.go:22.23,23.33 1 0
github.com/muety/wakapi/models/filters.go:24.21,25.31 1 0
github.com/muety/wakapi/models/filters.go:26.22,27.32 1 0
github.com/muety/wakapi/models/filters.go:32.47,33.21 1 1
github.com/muety/wakapi/models/filters.go:44.2,44.21 1 1
github.com/muety/wakapi/models/filters.go:33.21,35.3 1 1
github.com/muety/wakapi/models/filters.go:35.8,35.23 1 1
github.com/muety/wakapi/models/filters.go:35.23,37.3 1 0
github.com/muety/wakapi/models/filters.go:37.8,37.29 1 1
github.com/muety/wakapi/models/filters.go:37.29,39.3 1 1
github.com/muety/wakapi/models/filters.go:39.8,39.27 1 1
github.com/muety/wakapi/models/filters.go:39.27,41.3 1 0
github.com/muety/wakapi/models/filters.go:41.8,41.28 1 1
github.com/muety/wakapi/models/filters.go:41.28,43.3 1 0
github.com/muety/wakapi/models/language_mapping.go:11.42,13.2 1 0
github.com/muety/wakapi/models/language_mapping.go:15.51,17.2 1 0
github.com/muety/wakapi/models/language_mapping.go:19.52,21.2 1 0
github.com/muety/wakapi/models/models.go:3.14,5.2 0 1
github.com/muety/wakapi/models/shared.go:35.52,37.2 1 0
github.com/muety/wakapi/models/shared.go:39.52,42.16 3 0
github.com/muety/wakapi/models/shared.go:45.2,47.12 3 0
github.com/muety/wakapi/models/shared.go:42.16,44.3 1 0
github.com/muety/wakapi/models/shared.go:51.52,57.22 2 0
github.com/muety/wakapi/models/shared.go:73.2,76.12 3 0
github.com/muety/wakapi/models/shared.go:58.14,60.17 2 0
github.com/muety/wakapi/models/shared.go:63.13,65.8 2 0
github.com/muety/wakapi/models/shared.go:66.17,68.8 2 0
github.com/muety/wakapi/models/shared.go:69.10,70.64 1 0
github.com/muety/wakapi/models/shared.go:60.17,62.4 1 0
github.com/muety/wakapi/models/shared.go:79.45,81.2 1 0
github.com/muety/wakapi/models/shared.go:83.51,86.2 2 0
github.com/muety/wakapi/models/shared.go:88.37,91.2 2 0
github.com/muety/wakapi/models/shared.go:93.35,95.2 1 0
github.com/muety/wakapi/models/shared.go:97.34,99.2 1 0
github.com/muety/wakapi/models/mail.go:16.44,20.2 3 0
github.com/muety/wakapi/models/mail.go:22.44,26.2 3 0
github.com/muety/wakapi/models/mail.go:28.32,41.2 1 0
github.com/muety/wakapi/models/mail.go:43.41,45.2 1 0
github.com/muety/wakapi/models/summary.go:70.29,72.2 1 1
github.com/muety/wakapi/models/summary.go:74.37,81.2 6 1
github.com/muety/wakapi/models/summary.go:83.35,85.2 1 1
@ -103,24 +87,23 @@ github.com/muety/wakapi/models/alias.go:16.37,17.35 1 0
github.com/muety/wakapi/models/alias.go:22.2,22.14 1 0
github.com/muety/wakapi/models/alias.go:17.35,18.18 1 0
github.com/muety/wakapi/models/alias.go:18.18,20.4 1 0
github.com/muety/wakapi/models/filters.go:16.56,17.16 1 0
github.com/muety/wakapi/models/filters.go:29.2,29.19 1 0
github.com/muety/wakapi/models/filters.go:18.22,19.32 1 0
github.com/muety/wakapi/models/filters.go:20.17,21.27 1 0
github.com/muety/wakapi/models/filters.go:22.23,23.33 1 0
github.com/muety/wakapi/models/filters.go:24.21,25.31 1 0
github.com/muety/wakapi/models/filters.go:26.22,27.32 1 0
github.com/muety/wakapi/models/filters.go:32.47,33.21 1 1
github.com/muety/wakapi/models/filters.go:44.2,44.21 1 1
github.com/muety/wakapi/models/filters.go:33.21,35.3 1 1
github.com/muety/wakapi/models/filters.go:35.8,35.23 1 1
github.com/muety/wakapi/models/filters.go:35.23,37.3 1 0
github.com/muety/wakapi/models/filters.go:37.8,37.29 1 1
github.com/muety/wakapi/models/filters.go:37.29,39.3 1 1
github.com/muety/wakapi/models/filters.go:39.8,39.27 1 1
github.com/muety/wakapi/models/filters.go:39.27,41.3 1 0
github.com/muety/wakapi/models/filters.go:41.8,41.28 1 1
github.com/muety/wakapi/models/filters.go:41.28,43.3 1 0
github.com/muety/wakapi/models/heartbeat.go:32.34,34.2 1 1
github.com/muety/wakapi/models/heartbeat.go:36.65,38.46 2 1
github.com/muety/wakapi/models/heartbeat.go:38.46,39.108 1 1
github.com/muety/wakapi/models/heartbeat.go:39.108,42.4 2 1
github.com/muety/wakapi/models/heartbeat.go:46.50,47.11 1 1
github.com/muety/wakapi/models/heartbeat.go:60.2,60.15 1 1
github.com/muety/wakapi/models/heartbeat.go:64.2,64.12 1 1
github.com/muety/wakapi/models/heartbeat.go:48.22,49.18 1 1
github.com/muety/wakapi/models/heartbeat.go:50.21,51.17 1 1
github.com/muety/wakapi/models/heartbeat.go:52.23,53.19 1 1
github.com/muety/wakapi/models/heartbeat.go:54.17,55.26 1 1
github.com/muety/wakapi/models/heartbeat.go:56.22,57.18 1 1
github.com/muety/wakapi/models/heartbeat.go:60.15,62.3 1 1
github.com/muety/wakapi/models/heartbeat.go:67.37,83.2 1 0
github.com/muety/wakapi/models/heartbeat.go:91.41,93.16 2 0
github.com/muety/wakapi/models/heartbeat.go:96.2,97.10 2 0
github.com/muety/wakapi/models/heartbeat.go:93.16,95.3 1 0
github.com/muety/wakapi/models/heartbeats.go:7.31,9.2 1 0
github.com/muety/wakapi/models/heartbeats.go:11.41,13.2 1 0
github.com/muety/wakapi/models/heartbeats.go:15.36,17.2 1 0
@ -131,10 +114,10 @@ github.com/muety/wakapi/models/heartbeats.go:26.18,28.3 1 0
github.com/muety/wakapi/models/heartbeats.go:32.40,34.18 1 0
github.com/muety/wakapi/models/heartbeats.go:37.2,37.24 1 0
github.com/muety/wakapi/models/heartbeats.go:34.18,36.3 1 0
github.com/muety/wakapi/models/mail.go:16.44,20.2 3 0
github.com/muety/wakapi/models/mail.go:22.44,26.2 3 0
github.com/muety/wakapi/models/mail.go:28.32,41.2 1 0
github.com/muety/wakapi/models/mail.go:43.41,45.2 1 0
github.com/muety/wakapi/models/interval.go:39.47,40.23 1 0
github.com/muety/wakapi/models/interval.go:45.2,45.14 1 0
github.com/muety/wakapi/models/interval.go:40.23,41.13 1 0
github.com/muety/wakapi/models/interval.go:41.13,43.4 1 0
github.com/muety/wakapi/models/mail_address.go:15.13,18.2 2 1
github.com/muety/wakapi/models/mail_address.go:24.38,26.2 1 0
github.com/muety/wakapi/models/mail_address.go:28.35,30.21 2 1
@ -153,97 +136,236 @@ github.com/muety/wakapi/models/mail_address.go:59.40,60.22 1 1
github.com/muety/wakapi/models/mail_address.go:65.2,65.13 1 1
github.com/muety/wakapi/models/mail_address.go:60.22,61.17 1 1
github.com/muety/wakapi/models/mail_address.go:61.17,63.4 1 1
github.com/muety/wakapi/models/models.go:3.14,5.2 0 1
github.com/muety/wakapi/models/shared.go:35.52,37.2 1 0
github.com/muety/wakapi/models/shared.go:39.52,42.16 3 0
github.com/muety/wakapi/models/shared.go:45.2,47.12 3 0
github.com/muety/wakapi/models/shared.go:42.16,44.3 1 0
github.com/muety/wakapi/models/shared.go:51.52,57.22 2 0
github.com/muety/wakapi/models/shared.go:73.2,76.12 3 0
github.com/muety/wakapi/models/shared.go:58.14,60.17 2 0
github.com/muety/wakapi/models/shared.go:63.13,65.8 2 0
github.com/muety/wakapi/models/shared.go:66.17,68.8 2 0
github.com/muety/wakapi/models/shared.go:69.10,70.64 1 0
github.com/muety/wakapi/models/shared.go:60.17,62.4 1 0
github.com/muety/wakapi/models/shared.go:79.45,81.2 1 0
github.com/muety/wakapi/models/shared.go:83.51,86.2 2 0
github.com/muety/wakapi/models/shared.go:88.37,91.2 2 0
github.com/muety/wakapi/models/shared.go:93.35,95.2 1 0
github.com/muety/wakapi/models/shared.go:97.34,99.2 1 0
github.com/muety/wakapi/config/sentry.go:22.35,24.2 1 0
github.com/muety/wakapi/config/sentry.go:26.62,29.2 2 0
github.com/muety/wakapi/config/sentry.go:39.33,46.2 2 0
github.com/muety/wakapi/config/sentry.go:48.79,51.2 2 0
github.com/muety/wakapi/config/sentry.go:53.72,57.2 3 0
github.com/muety/wakapi/config/sentry.go:59.71,63.2 3 0
github.com/muety/wakapi/config/sentry.go:65.71,69.2 3 0
github.com/muety/wakapi/config/sentry.go:71.72,75.2 3 0
github.com/muety/wakapi/config/sentry.go:77.72,81.2 3 0
github.com/muety/wakapi/config/sentry.go:83.67,88.18 4 0
github.com/muety/wakapi/config/sentry.go:100.2,100.28 1 0
github.com/muety/wakapi/config/sentry.go:88.18,89.65 1 0
github.com/muety/wakapi/config/sentry.go:89.65,92.42 3 0
github.com/muety/wakapi/config/sentry.go:95.4,96.10 2 0
github.com/muety/wakapi/config/sentry.go:92.42,94.5 1 0
github.com/muety/wakapi/config/sentry.go:103.50,107.91 1 0
github.com/muety/wakapi/config/sentry.go:107.91,108.29 1 0
github.com/muety/wakapi/config/sentry.go:112.4,115.96 3 0
github.com/muety/wakapi/config/sentry.go:118.4,118.39 1 0
github.com/muety/wakapi/config/sentry.go:121.4,121.69 1 0
github.com/muety/wakapi/config/sentry.go:108.29,110.5 1 0
github.com/muety/wakapi/config/sentry.go:115.96,117.5 1 0
github.com/muety/wakapi/config/sentry.go:118.39,120.5 1 0
github.com/muety/wakapi/config/sentry.go:123.79,124.27 1 0
github.com/muety/wakapi/config/sentry.go:131.4,131.16 1 0
github.com/muety/wakapi/config/sentry.go:124.27,125.84 1 0
github.com/muety/wakapi/config/sentry.go:125.84,126.42 1 0
github.com/muety/wakapi/config/sentry.go:126.42,128.7 1 0
github.com/muety/wakapi/config/sentry.go:133.17,135.3 1 0
github.com/muety/wakapi/config/sentry.go:138.49,142.51 2 0
github.com/muety/wakapi/config/sentry.go:145.2,145.12 1 0
github.com/muety/wakapi/config/sentry.go:142.51,144.3 1 0
github.com/muety/wakapi/config/utils.go:5.78,7.22 2 0
github.com/muety/wakapi/config/utils.go:13.2,13.11 1 0
github.com/muety/wakapi/config/utils.go:7.22,8.18 1 0
github.com/muety/wakapi/config/utils.go:11.3,11.12 1 0
github.com/muety/wakapi/config/utils.go:8.18,10.4 1 0
github.com/muety/wakapi/config/config.go:145.70,147.2 1 0
github.com/muety/wakapi/config/config.go:149.65,151.2 1 0
github.com/muety/wakapi/config/config.go:153.82,163.2 1 0
github.com/muety/wakapi/config/config.go:165.31,167.2 1 0
github.com/muety/wakapi/config/config.go:169.32,171.2 1 0
github.com/muety/wakapi/config/config.go:173.74,174.19 1 0
github.com/muety/wakapi/config/config.go:175.10,176.34 1 0
github.com/muety/wakapi/config/config.go:176.34,177.57 1 0
github.com/muety/wakapi/config/config.go:180.4,180.67 1 0
github.com/muety/wakapi/config/config.go:183.4,183.58 1 0
github.com/muety/wakapi/config/config.go:186.4,186.62 1 0
github.com/muety/wakapi/config/config.go:189.4,189.60 1 0
github.com/muety/wakapi/config/config.go:192.4,192.64 1 0
github.com/muety/wakapi/config/config.go:195.4,195.68 1 0
github.com/muety/wakapi/config/config.go:198.4,198.14 1 0
github.com/muety/wakapi/config/config.go:177.57,179.5 1 0
github.com/muety/wakapi/config/config.go:180.67,182.5 1 0
github.com/muety/wakapi/config/config.go:183.58,185.5 1 0
github.com/muety/wakapi/config/config.go:186.62,188.5 1 0
github.com/muety/wakapi/config/config.go:189.60,191.5 1 0
github.com/muety/wakapi/config/config.go:192.64,194.5 1 0
github.com/muety/wakapi/config/config.go:195.68,197.5 1 0
github.com/muety/wakapi/config/config.go:203.50,204.19 1 0
github.com/muety/wakapi/config/config.go:217.2,217.12 1 0
github.com/muety/wakapi/config/config.go:205.23,209.5 1 0
github.com/muety/wakapi/config/config.go:210.26,213.5 1 0
github.com/muety/wakapi/config/config.go:214.24,215.48 1 0
github.com/muety/wakapi/config/config.go:220.53,231.2 1 1
github.com/muety/wakapi/config/config.go:233.56,235.16 2 1
github.com/muety/wakapi/config/config.go:239.2,246.3 1 1
github.com/muety/wakapi/config/config.go:235.16,237.3 1 0
github.com/muety/wakapi/config/config.go:249.54,251.2 1 1
github.com/muety/wakapi/config/config.go:253.60,255.2 1 0
github.com/muety/wakapi/config/config.go:257.59,259.2 1 0
github.com/muety/wakapi/config/config.go:261.57,263.2 1 0
github.com/muety/wakapi/config/config.go:265.53,267.2 1 0
github.com/muety/wakapi/config/config.go:269.46,271.2 1 0
github.com/muety/wakapi/config/config.go:273.43,275.2 1 0
github.com/muety/wakapi/config/config.go:277.29,279.2 1 1
github.com/muety/wakapi/config/config.go:281.48,291.65 2 0
github.com/muety/wakapi/config/config.go:295.2,295.15 1 0
github.com/muety/wakapi/config/config.go:291.65,293.3 1 0
github.com/muety/wakapi/config/config.go:298.38,299.43 1 0
github.com/muety/wakapi/config/config.go:302.2,302.15 1 0
github.com/muety/wakapi/config/config.go:299.43,301.3 1 0
github.com/muety/wakapi/config/config.go:305.45,306.27 1 0
github.com/muety/wakapi/config/config.go:309.2,309.15 1 0
github.com/muety/wakapi/config/config.go:306.27,308.3 1 0
github.com/muety/wakapi/config/config.go:312.77,313.29 1 0
github.com/muety/wakapi/config/config.go:318.2,318.19 1 0
github.com/muety/wakapi/config/config.go:313.29,314.18 1 0
github.com/muety/wakapi/config/config.go:314.18,316.4 1 0
github.com/muety/wakapi/config/config.go:321.26,323.2 1 0
github.com/muety/wakapi/config/config.go:325.20,327.2 1 0
github.com/muety/wakapi/config/config.go:329.35,334.96 3 0
github.com/muety/wakapi/config/config.go:338.2,346.52 5 0
github.com/muety/wakapi/config/config.go:350.2,350.47 1 0
github.com/muety/wakapi/config/config.go:356.2,356.70 1 0
github.com/muety/wakapi/config/config.go:360.2,360.28 1 0
github.com/muety/wakapi/config/config.go:364.2,364.29 1 0
github.com/muety/wakapi/config/config.go:369.2,369.94 1 0
github.com/muety/wakapi/config/config.go:373.2,374.14 2 0
github.com/muety/wakapi/config/config.go:334.96,336.3 1 0
github.com/muety/wakapi/config/config.go:346.52,348.3 1 0
github.com/muety/wakapi/config/config.go:350.47,351.14 1 0
github.com/muety/wakapi/config/config.go:351.14,353.4 1 0
github.com/muety/wakapi/config/config.go:356.70,358.3 1 0
github.com/muety/wakapi/config/config.go:360.28,362.3 1 0
github.com/muety/wakapi/config/config.go:364.29,367.3 2 0
github.com/muety/wakapi/config/config.go:369.94,371.3 1 0
github.com/muety/wakapi/config/sentry.go:16.64,19.2 2 0
github.com/muety/wakapi/config/sentry.go:21.13,23.2 1 1
github.com/muety/wakapi/config/sentry.go:25.50,29.91 1 0
github.com/muety/wakapi/config/sentry.go:29.91,30.29 1 0
github.com/muety/wakapi/config/sentry.go:34.4,37.96 3 0
github.com/muety/wakapi/config/sentry.go:40.4,40.39 1 0
github.com/muety/wakapi/config/sentry.go:43.4,43.69 1 0
github.com/muety/wakapi/config/sentry.go:30.29,32.5 1 0
github.com/muety/wakapi/config/sentry.go:37.96,39.5 1 0
github.com/muety/wakapi/config/sentry.go:40.39,42.5 1 0
github.com/muety/wakapi/config/sentry.go:45.79,49.27 2 0
github.com/muety/wakapi/config/sentry.go:56.4,56.16 1 0
github.com/muety/wakapi/config/sentry.go:49.27,50.84 1 0
github.com/muety/wakapi/config/sentry.go:50.84,51.57 1 0
github.com/muety/wakapi/config/sentry.go:51.57,53.7 1 0
github.com/muety/wakapi/config/sentry.go:58.17,60.3 1 0
github.com/muety/wakapi/config/config.go:147.70,149.2 1 0
github.com/muety/wakapi/config/config.go:151.65,153.2 1 0
github.com/muety/wakapi/config/config.go:155.82,165.2 1 0
github.com/muety/wakapi/config/config.go:167.31,169.2 1 0
github.com/muety/wakapi/config/config.go:171.32,173.2 1 0
github.com/muety/wakapi/config/config.go:175.74,176.19 1 0
github.com/muety/wakapi/config/config.go:177.10,178.34 1 0
github.com/muety/wakapi/config/config.go:178.34,179.57 1 0
github.com/muety/wakapi/config/config.go:182.4,182.67 1 0
github.com/muety/wakapi/config/config.go:185.4,185.58 1 0
github.com/muety/wakapi/config/config.go:188.4,188.62 1 0
github.com/muety/wakapi/config/config.go:191.4,191.60 1 0
github.com/muety/wakapi/config/config.go:194.4,194.64 1 0
github.com/muety/wakapi/config/config.go:197.4,197.68 1 0
github.com/muety/wakapi/config/config.go:200.4,200.14 1 0
github.com/muety/wakapi/config/config.go:179.57,181.5 1 0
github.com/muety/wakapi/config/config.go:182.67,184.5 1 0
github.com/muety/wakapi/config/config.go:185.58,187.5 1 0
github.com/muety/wakapi/config/config.go:188.62,190.5 1 0
github.com/muety/wakapi/config/config.go:191.60,193.5 1 0
github.com/muety/wakapi/config/config.go:194.64,196.5 1 0
github.com/muety/wakapi/config/config.go:197.68,199.5 1 0
github.com/muety/wakapi/config/config.go:205.50,206.19 1 0
github.com/muety/wakapi/config/config.go:219.2,219.12 1 0
github.com/muety/wakapi/config/config.go:207.23,211.5 1 0
github.com/muety/wakapi/config/config.go:212.26,215.5 1 0
github.com/muety/wakapi/config/config.go:216.24,217.48 1 0
github.com/muety/wakapi/config/config.go:222.53,233.2 1 1
github.com/muety/wakapi/config/config.go:235.56,237.16 2 1
github.com/muety/wakapi/config/config.go:241.2,248.3 1 1
github.com/muety/wakapi/config/config.go:237.16,239.3 1 0
github.com/muety/wakapi/config/config.go:251.54,253.2 1 1
github.com/muety/wakapi/config/config.go:255.60,257.2 1 0
github.com/muety/wakapi/config/config.go:259.59,261.2 1 0
github.com/muety/wakapi/config/config.go:263.57,265.2 1 0
github.com/muety/wakapi/config/config.go:267.53,269.2 1 0
github.com/muety/wakapi/config/config.go:271.46,273.2 1 0
github.com/muety/wakapi/config/config.go:275.43,277.2 1 0
github.com/muety/wakapi/config/config.go:279.29,281.2 1 1
github.com/muety/wakapi/config/config.go:283.48,294.16 2 0
github.com/muety/wakapi/config/config.go:298.2,299.53 2 0
github.com/muety/wakapi/config/config.go:303.2,303.15 1 0
github.com/muety/wakapi/config/config.go:294.16,296.3 1 0
github.com/muety/wakapi/config/config.go:299.53,301.3 1 0
github.com/muety/wakapi/config/config.go:306.38,307.43 1 0
github.com/muety/wakapi/config/config.go:310.2,310.15 1 0
github.com/muety/wakapi/config/config.go:307.43,309.3 1 0
github.com/muety/wakapi/config/config.go:313.45,314.27 1 0
github.com/muety/wakapi/config/config.go:317.2,317.15 1 0
github.com/muety/wakapi/config/config.go:314.27,316.3 1 0
github.com/muety/wakapi/config/config.go:320.77,321.29 1 0
github.com/muety/wakapi/config/config.go:326.2,326.19 1 0
github.com/muety/wakapi/config/config.go:321.29,322.18 1 0
github.com/muety/wakapi/config/config.go:322.18,324.4 1 0
github.com/muety/wakapi/config/config.go:329.26,331.2 1 0
github.com/muety/wakapi/config/config.go:333.20,335.2 1 0
github.com/muety/wakapi/config/config.go:337.35,342.96 3 0
github.com/muety/wakapi/config/config.go:346.2,355.52 6 0
github.com/muety/wakapi/config/config.go:359.2,359.47 1 0
github.com/muety/wakapi/config/config.go:365.2,365.70 1 0
github.com/muety/wakapi/config/config.go:369.2,369.28 1 0
github.com/muety/wakapi/config/config.go:373.2,373.29 1 0
github.com/muety/wakapi/config/config.go:378.2,378.94 1 0
github.com/muety/wakapi/config/config.go:382.2,383.14 2 0
github.com/muety/wakapi/config/config.go:342.96,344.3 1 0
github.com/muety/wakapi/config/config.go:355.52,357.3 1 0
github.com/muety/wakapi/config/config.go:359.47,360.14 1 0
github.com/muety/wakapi/config/config.go:360.14,362.4 1 0
github.com/muety/wakapi/config/config.go:365.70,367.3 1 0
github.com/muety/wakapi/config/config.go:369.28,371.3 1 0
github.com/muety/wakapi/config/config.go:373.29,376.3 2 0
github.com/muety/wakapi/config/config.go:378.94,380.3 1 0
github.com/muety/wakapi/config/fs.go:9.56,10.19 1 0
github.com/muety/wakapi/config/fs.go:13.2,13.19 1 0
github.com/muety/wakapi/config/fs.go:10.19,12.3 1 0
github.com/muety/wakapi/middlewares/logging.go:20.102,21.43 1 0
github.com/muety/wakapi/middlewares/logging.go:21.43,27.3 1 0
github.com/muety/wakapi/middlewares/logging.go:30.80,39.44 7 0
github.com/muety/wakapi/middlewares/logging.go:45.2,54.3 1 0
github.com/muety/wakapi/middlewares/logging.go:39.44,40.38 1 0
github.com/muety/wakapi/middlewares/logging.go:40.38,42.4 1 0
github.com/muety/wakapi/middlewares/logging.go:57.41,59.14 2 0
github.com/muety/wakapi/middlewares/logging.go:62.2,62.14 1 0
github.com/muety/wakapi/middlewares/logging.go:65.2,65.11 1 0
github.com/muety/wakapi/middlewares/logging.go:59.14,61.3 1 0
github.com/muety/wakapi/middlewares/logging.go:62.14,64.3 1 0
github.com/muety/wakapi/middlewares/logging.go:68.41,69.42 1 0
github.com/muety/wakapi/middlewares/logging.go:72.2,72.12 1 0
github.com/muety/wakapi/middlewares/logging.go:69.42,71.3 1 0
github.com/muety/wakapi/middlewares/logging.go:103.52,105.2 1 0
github.com/muety/wakapi/middlewares/logging.go:117.45,118.20 1 0
github.com/muety/wakapi/middlewares/logging.go:118.20,122.3 3 0
github.com/muety/wakapi/middlewares/logging.go:124.54,127.18 3 0
github.com/muety/wakapi/middlewares/logging.go:134.2,135.15 2 0
github.com/muety/wakapi/middlewares/logging.go:127.18,130.17 2 0
github.com/muety/wakapi/middlewares/logging.go:130.17,132.4 1 0
github.com/muety/wakapi/middlewares/logging.go:137.42,138.20 1 0
github.com/muety/wakapi/middlewares/logging.go:138.20,140.3 1 0
github.com/muety/wakapi/middlewares/logging.go:142.36,144.2 1 0
github.com/muety/wakapi/middlewares/logging.go:145.42,147.2 1 0
github.com/muety/wakapi/middlewares/logging.go:148.40,150.2 1 0
github.com/muety/wakapi/middlewares/logging.go:151.52,153.2 1 0
github.com/muety/wakapi/middlewares/principal.go:15.62,17.2 1 0
github.com/muety/wakapi/middlewares/principal.go:19.58,21.2 1 0
github.com/muety/wakapi/middlewares/principal.go:42.71,43.43 1 0
github.com/muety/wakapi/middlewares/principal.go:43.43,45.3 1 0
github.com/muety/wakapi/middlewares/principal.go:48.81,51.2 2 0
github.com/muety/wakapi/middlewares/principal.go:53.55,54.52 1 0
github.com/muety/wakapi/middlewares/principal.go:54.52,56.3 1 0
github.com/muety/wakapi/middlewares/principal.go:59.49,60.52 1 0
github.com/muety/wakapi/middlewares/principal.go:63.2,63.12 1 0
github.com/muety/wakapi/middlewares/principal.go:60.52,62.3 1 0
github.com/muety/wakapi/middlewares/security.go:19.62,20.43 1 0
github.com/muety/wakapi/middlewares/security.go:20.43,22.3 1 0
github.com/muety/wakapi/middlewares/security.go:25.80,26.36 1 0
github.com/muety/wakapi/middlewares/security.go:31.2,31.27 1 0
github.com/muety/wakapi/middlewares/security.go:26.36,27.30 1 0
github.com/muety/wakapi/middlewares/security.go:27.30,29.4 1 0
github.com/muety/wakapi/middlewares/authenticate.go:19.91,25.2 1 1
github.com/muety/wakapi/middlewares/authenticate.go:27.90,30.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:32.90,35.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:37.71,38.71 1 0
github.com/muety/wakapi/middlewares/authenticate.go:38.71,40.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:43.107,47.16 3 0
github.com/muety/wakapi/middlewares/authenticate.go:51.2,51.31 1 0
github.com/muety/wakapi/middlewares/authenticate.go:67.2,68.12 2 0
github.com/muety/wakapi/middlewares/authenticate.go:47.16,49.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:51.31,52.31 1 0
github.com/muety/wakapi/middlewares/authenticate.go:57.3,57.29 1 0
github.com/muety/wakapi/middlewares/authenticate.go:64.3,64.9 1 0
github.com/muety/wakapi/middlewares/authenticate.go:52.31,55.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:57.29,60.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:60.9,63.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:71.70,72.39 1 0
github.com/muety/wakapi/middlewares/authenticate.go:77.2,77.14 1 0
github.com/muety/wakapi/middlewares/authenticate.go:72.39,73.60 1 0
github.com/muety/wakapi/middlewares/authenticate.go:73.60,75.4 1 0
github.com/muety/wakapi/middlewares/authenticate.go:80.92,82.16 2 1
github.com/muety/wakapi/middlewares/authenticate.go:86.2,89.16 4 1
github.com/muety/wakapi/middlewares/authenticate.go:92.2,92.18 1 1
github.com/muety/wakapi/middlewares/authenticate.go:82.16,84.3 1 1
github.com/muety/wakapi/middlewares/authenticate.go:89.16,91.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:95.92,97.16 2 0
github.com/muety/wakapi/middlewares/authenticate.go:101.2,102.16 2 0
github.com/muety/wakapi/middlewares/authenticate.go:109.2,109.18 1 0
github.com/muety/wakapi/middlewares/authenticate.go:97.16,99.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:102.16,104.3 1 0
github.com/muety/wakapi/middlewares/filetype.go:13.83,14.43 1 0
github.com/muety/wakapi/middlewares/filetype.go:14.43,19.3 1 0
github.com/muety/wakapi/middlewares/filetype.go:22.84,24.34 2 0
github.com/muety/wakapi/middlewares/filetype.go:31.2,31.27 1 0
github.com/muety/wakapi/middlewares/filetype.go:24.34,25.50 1 0
github.com/muety/wakapi/middlewares/filetype.go:25.50,29.4 3 0
github.com/muety/wakapi/utils/auth.go:16.79,18.54 2 0
github.com/muety/wakapi/utils/auth.go:22.2,24.16 3 0
github.com/muety/wakapi/utils/auth.go:28.2,30.45 3 0
github.com/muety/wakapi/utils/auth.go:33.2,34.32 2 0
github.com/muety/wakapi/utils/auth.go:18.54,20.3 1 0
github.com/muety/wakapi/utils/auth.go:24.16,26.3 1 0
github.com/muety/wakapi/utils/auth.go:30.45,32.3 1 0
github.com/muety/wakapi/utils/auth.go:37.65,39.85 2 0
github.com/muety/wakapi/utils/auth.go:43.2,44.30 2 0
github.com/muety/wakapi/utils/auth.go:39.85,41.3 1 0
github.com/muety/wakapi/utils/auth.go:47.94,49.16 2 0
github.com/muety/wakapi/utils/auth.go:53.2,53.107 1 0
github.com/muety/wakapi/utils/auth.go:57.2,57.22 1 0
github.com/muety/wakapi/utils/auth.go:49.16,51.3 1 0
github.com/muety/wakapi/utils/auth.go:53.107,55.3 1 0
github.com/muety/wakapi/utils/auth.go:60.56,64.2 3 0
github.com/muety/wakapi/utils/auth.go:66.55,69.16 3 0
github.com/muety/wakapi/utils/auth.go:72.2,72.16 1 0
github.com/muety/wakapi/utils/auth.go:69.16,71.3 1 0
github.com/muety/wakapi/utils/color.go:8.90,10.32 2 0
github.com/muety/wakapi/utils/color.go:15.2,15.15 1 0
github.com/muety/wakapi/utils/color.go:10.32,11.50 1 0
github.com/muety/wakapi/utils/color.go:11.50,13.4 1 0
github.com/muety/wakapi/utils/common.go:10.48,12.2 1 0
github.com/muety/wakapi/utils/common.go:14.52,16.2 1 0
github.com/muety/wakapi/utils/common.go:18.40,20.2 1 0
@ -253,6 +375,19 @@ github.com/muety/wakapi/utils/common.go:30.24,32.2 1 0
github.com/muety/wakapi/utils/common.go:34.56,37.45 3 1
github.com/muety/wakapi/utils/common.go:40.2,40.40 1 1
github.com/muety/wakapi/utils/common.go:37.45,39.3 1 1
github.com/muety/wakapi/utils/http.go:9.73,12.58 3 0
github.com/muety/wakapi/utils/http.go:12.58,14.3 1 0
github.com/muety/wakapi/utils/strings.go:8.34,10.2 1 0
github.com/muety/wakapi/utils/strings.go:12.77,13.29 1 0
github.com/muety/wakapi/utils/strings.go:18.2,18.19 1 0
github.com/muety/wakapi/utils/strings.go:13.29,14.18 1 0
github.com/muety/wakapi/utils/strings.go:14.18,16.4 1 0
github.com/muety/wakapi/utils/template.go:8.41,10.16 2 0
github.com/muety/wakapi/utils/template.go:13.2,13.23 1 0
github.com/muety/wakapi/utils/template.go:10.16,12.3 1 0
github.com/muety/wakapi/utils/template.go:16.37,17.30 1 0
github.com/muety/wakapi/utils/template.go:20.2,20.10 1 0
github.com/muety/wakapi/utils/template.go:17.30,19.3 1 0
github.com/muety/wakapi/utils/date.go:8.31,10.2 1 0
github.com/muety/wakapi/utils/date.go:12.43,14.2 1 0
github.com/muety/wakapi/utils/date.go:16.30,20.2 3 0
@ -260,7 +395,7 @@ github.com/muety/wakapi/utils/date.go:22.31,25.2 2 0
github.com/muety/wakapi/utils/date.go:27.30,30.2 2 0
github.com/muety/wakapi/utils/date.go:33.42,35.2 1 1
github.com/muety/wakapi/utils/date.go:38.41,40.21 2 1
github.com/muety/wakapi/utils/date.go:43.2,43.34 1 1
github.com/muety/wakapi/utils/date.go:43.2,43.36 1 1
github.com/muety/wakapi/utils/date.go:40.21,42.3 1 1
github.com/muety/wakapi/utils/date.go:46.67,49.33 2 0
github.com/muety/wakapi/utils/date.go:58.2,58.18 1 0
@ -275,8 +410,14 @@ github.com/muety/wakapi/utils/date.go:85.2,85.13 1 0
github.com/muety/wakapi/utils/date.go:73.36,76.3 2 0
github.com/muety/wakapi/utils/date.go:77.21,80.3 2 0
github.com/muety/wakapi/utils/date.go:81.21,84.3 2 0
github.com/muety/wakapi/utils/http.go:9.73,12.58 3 0
github.com/muety/wakapi/utils/http.go:12.58,14.3 1 0
github.com/muety/wakapi/utils/filesystem.go:14.68,16.16 2 0
github.com/muety/wakapi/utils/filesystem.go:20.2,21.15 2 0
github.com/muety/wakapi/utils/filesystem.go:33.2,33.15 1 0
github.com/muety/wakapi/utils/filesystem.go:16.16,18.3 1 0
github.com/muety/wakapi/utils/filesystem.go:21.15,23.47 2 0
github.com/muety/wakapi/utils/filesystem.go:23.47,25.23 2 0
github.com/muety/wakapi/utils/filesystem.go:29.4,29.19 1 0
github.com/muety/wakapi/utils/filesystem.go:25.23,27.5 1 0
github.com/muety/wakapi/utils/summary.go:10.66,11.40 1 0
github.com/muety/wakapi/utils/summary.go:16.2,16.48 1 0
github.com/muety/wakapi/utils/summary.go:11.40,12.27 1 0
@ -315,55 +456,66 @@ github.com/muety/wakapi/utils/summary.go:96.18,98.5 1 0
github.com/muety/wakapi/utils/summary.go:112.48,116.51 2 0
github.com/muety/wakapi/utils/summary.go:119.2,119.12 1 0
github.com/muety/wakapi/utils/summary.go:116.51,118.3 1 0
github.com/muety/wakapi/utils/template.go:8.41,10.16 2 0
github.com/muety/wakapi/utils/template.go:13.2,13.23 1 0
github.com/muety/wakapi/utils/template.go:10.16,12.3 1 0
github.com/muety/wakapi/utils/template.go:16.37,17.30 1 0
github.com/muety/wakapi/utils/template.go:20.2,20.10 1 0
github.com/muety/wakapi/utils/template.go:17.30,19.3 1 0
github.com/muety/wakapi/utils/auth.go:16.79,18.54 2 0
github.com/muety/wakapi/utils/auth.go:22.2,24.16 3 0
github.com/muety/wakapi/utils/auth.go:28.2,30.45 3 0
github.com/muety/wakapi/utils/auth.go:33.2,34.32 2 0
github.com/muety/wakapi/utils/auth.go:18.54,20.3 1 0
github.com/muety/wakapi/utils/auth.go:24.16,26.3 1 0
github.com/muety/wakapi/utils/auth.go:30.45,32.3 1 0
github.com/muety/wakapi/utils/auth.go:37.65,39.85 2 0
github.com/muety/wakapi/utils/auth.go:43.2,44.30 2 0
github.com/muety/wakapi/utils/auth.go:39.85,41.3 1 0
github.com/muety/wakapi/utils/auth.go:47.94,49.16 2 0
github.com/muety/wakapi/utils/auth.go:53.2,53.107 1 0
github.com/muety/wakapi/utils/auth.go:57.2,57.22 1 0
github.com/muety/wakapi/utils/auth.go:49.16,51.3 1 0
github.com/muety/wakapi/utils/auth.go:53.107,55.3 1 0
github.com/muety/wakapi/utils/auth.go:60.56,64.2 3 0
github.com/muety/wakapi/utils/auth.go:66.55,69.16 3 0
github.com/muety/wakapi/utils/auth.go:72.2,72.16 1 0
github.com/muety/wakapi/utils/auth.go:69.16,71.3 1 0
github.com/muety/wakapi/utils/color.go:8.90,10.32 2 0
github.com/muety/wakapi/utils/color.go:15.2,15.15 1 0
github.com/muety/wakapi/utils/color.go:10.32,11.50 1 0
github.com/muety/wakapi/utils/color.go:11.50,13.4 1 0
github.com/muety/wakapi/utils/filesystem.go:14.68,16.16 2 0
github.com/muety/wakapi/utils/filesystem.go:20.2,21.15 2 0
github.com/muety/wakapi/utils/filesystem.go:33.2,33.15 1 0
github.com/muety/wakapi/utils/filesystem.go:16.16,18.3 1 0
github.com/muety/wakapi/utils/filesystem.go:21.15,23.47 2 0
github.com/muety/wakapi/utils/filesystem.go:23.47,25.23 2 0
github.com/muety/wakapi/utils/filesystem.go:29.4,29.19 1 0
github.com/muety/wakapi/utils/filesystem.go:25.23,27.5 1 0
github.com/muety/wakapi/utils/strings.go:8.34,10.2 1 0
github.com/muety/wakapi/utils/strings.go:12.77,13.29 1 0
github.com/muety/wakapi/utils/strings.go:18.2,18.19 1 0
github.com/muety/wakapi/utils/strings.go:13.29,14.18 1 0
github.com/muety/wakapi/utils/strings.go:14.18,16.4 1 0
github.com/muety/wakapi/services/key_value.go:14.89,19.2 1 0
github.com/muety/wakapi/services/key_value.go:21.83,23.2 1 0
github.com/muety/wakapi/services/key_value.go:25.78,27.16 2 0
github.com/muety/wakapi/services/key_value.go:33.2,33.11 1 0
github.com/muety/wakapi/services/key_value.go:27.16,32.3 1 0
github.com/muety/wakapi/services/key_value.go:36.72,38.2 1 0
github.com/muety/wakapi/services/key_value.go:40.60,42.2 1 0
github.com/muety/wakapi/services/aggregation.go:24.142,31.2 1 0
github.com/muety/wakapi/services/aggregation.go:40.43,42.37 1 0
github.com/muety/wakapi/services/aggregation.go:46.2,48.19 3 0
github.com/muety/wakapi/services/aggregation.go:42.37,44.3 1 0
github.com/muety/wakapi/services/aggregation.go:51.67,55.40 3 0
github.com/muety/wakapi/services/aggregation.go:59.2,59.50 1 0
github.com/muety/wakapi/services/aggregation.go:64.2,64.60 1 0
github.com/muety/wakapi/services/aggregation.go:70.2,70.35 1 0
github.com/muety/wakapi/services/aggregation.go:55.40,57.3 1 0
github.com/muety/wakapi/services/aggregation.go:59.50,61.3 1 0
github.com/muety/wakapi/services/aggregation.go:64.60,68.3 3 0
github.com/muety/wakapi/services/aggregation.go:73.109,74.24 1 0
github.com/muety/wakapi/services/aggregation.go:74.24,75.111 1 0
github.com/muety/wakapi/services/aggregation.go:75.111,77.4 1 0
github.com/muety/wakapi/services/aggregation.go:77.9,80.4 2 0
github.com/muety/wakapi/services/aggregation.go:84.80,85.33 1 0
github.com/muety/wakapi/services/aggregation.go:85.33,86.60 1 0
github.com/muety/wakapi/services/aggregation.go:86.60,88.4 1 0
github.com/muety/wakapi/services/aggregation.go:92.100,96.59 3 0
github.com/muety/wakapi/services/aggregation.go:111.2,112.16 2 0
github.com/muety/wakapi/services/aggregation.go:118.2,119.16 2 0
github.com/muety/wakapi/services/aggregation.go:125.2,126.44 2 0
github.com/muety/wakapi/services/aggregation.go:131.2,131.41 1 0
github.com/muety/wakapi/services/aggregation.go:145.2,145.12 1 0
github.com/muety/wakapi/services/aggregation.go:96.59,99.3 2 0
github.com/muety/wakapi/services/aggregation.go:99.8,99.47 1 0
github.com/muety/wakapi/services/aggregation.go:99.47,101.30 2 0
github.com/muety/wakapi/services/aggregation.go:101.30,102.43 1 0
github.com/muety/wakapi/services/aggregation.go:102.43,104.5 1 0
github.com/muety/wakapi/services/aggregation.go:106.8,108.3 1 0
github.com/muety/wakapi/services/aggregation.go:112.16,115.3 2 0
github.com/muety/wakapi/services/aggregation.go:119.16,122.3 2 0
github.com/muety/wakapi/services/aggregation.go:126.44,128.3 1 0
github.com/muety/wakapi/services/aggregation.go:131.41,132.21 1 0
github.com/muety/wakapi/services/aggregation.go:132.21,136.4 1 0
github.com/muety/wakapi/services/aggregation.go:136.9,136.62 1 0
github.com/muety/wakapi/services/aggregation.go:136.62,140.4 1 0
github.com/muety/wakapi/services/aggregation.go:148.83,163.41 5 0
github.com/muety/wakapi/services/aggregation.go:163.41,173.3 3 0
github.com/muety/wakapi/services/aggregation.go:176.34,179.2 2 0
github.com/muety/wakapi/services/heartbeat.go:17.141,23.2 1 0
github.com/muety/wakapi/services/heartbeat.go:25.72,27.2 1 0
github.com/muety/wakapi/services/heartbeat.go:29.80,34.32 3 0
github.com/muety/wakapi/services/heartbeat.go:41.2,41.55 1 0
github.com/muety/wakapi/services/heartbeat.go:34.32,35.36 1 0
github.com/muety/wakapi/services/heartbeat.go:35.36,38.4 2 0
github.com/muety/wakapi/services/heartbeat.go:44.53,46.2 1 0
github.com/muety/wakapi/services/heartbeat.go:48.76,50.2 1 0
github.com/muety/wakapi/services/heartbeat.go:52.96,54.2 1 0
github.com/muety/wakapi/services/heartbeat.go:56.111,58.16 2 0
github.com/muety/wakapi/services/heartbeat.go:61.2,61.43 1 0
github.com/muety/wakapi/services/heartbeat.go:58.16,60.3 1 0
github.com/muety/wakapi/services/heartbeat.go:64.116,66.2 1 0
github.com/muety/wakapi/services/heartbeat.go:68.78,70.2 1 0
github.com/muety/wakapi/services/heartbeat.go:72.62,74.2 1 0
github.com/muety/wakapi/services/heartbeat.go:76.116,78.16 2 0
github.com/muety/wakapi/services/heartbeat.go:82.2,82.28 1 0
github.com/muety/wakapi/services/heartbeat.go:86.2,86.24 1 0
github.com/muety/wakapi/services/heartbeat.go:78.16,80.3 1 0
github.com/muety/wakapi/services/heartbeat.go:82.28,84.3 1 0
github.com/muety/wakapi/services/language_mapping.go:18.118,24.2 1 0
github.com/muety/wakapi/services/language_mapping.go:26.86,28.2 1 0
github.com/muety/wakapi/services/language_mapping.go:30.96,31.53 1 0
@ -406,91 +558,6 @@ github.com/muety/wakapi/services/misc.go:113.2,116.17 1 0
github.com/muety/wakapi/services/misc.go:101.30,104.3 2 0
github.com/muety/wakapi/services/misc.go:109.17,111.3 1 0
github.com/muety/wakapi/services/misc.go:116.17,118.3 1 0
github.com/muety/wakapi/services/user.go:19.73,25.2 1 0
github.com/muety/wakapi/services/user.go:27.74,28.40 1 0
github.com/muety/wakapi/services/user.go:32.2,33.16 2 0
github.com/muety/wakapi/services/user.go:37.2,38.15 2 0
github.com/muety/wakapi/services/user.go:28.40,30.3 1 0
github.com/muety/wakapi/services/user.go:33.16,35.3 1 0
github.com/muety/wakapi/services/user.go:41.72,42.37 1 0
github.com/muety/wakapi/services/user.go:46.2,47.16 2 0
github.com/muety/wakapi/services/user.go:51.2,52.15 2 0
github.com/muety/wakapi/services/user.go:42.37,44.3 1 0
github.com/muety/wakapi/services/user.go:47.16,49.3 1 0
github.com/muety/wakapi/services/user.go:55.76,57.2 1 0
github.com/muety/wakapi/services/user.go:59.86,61.2 1 0
github.com/muety/wakapi/services/user.go:63.58,65.2 1 0
github.com/muety/wakapi/services/user.go:67.61,70.2 2 0
github.com/muety/wakapi/services/user.go:72.48,74.2 1 0
github.com/muety/wakapi/services/user.go:76.102,85.93 2 0
github.com/muety/wakapi/services/user.go:91.2,91.38 1 0
github.com/muety/wakapi/services/user.go:85.93,87.3 1 0
github.com/muety/wakapi/services/user.go:87.8,89.3 1 0
github.com/muety/wakapi/services/user.go:94.73,97.2 2 0
github.com/muety/wakapi/services/user.go:99.78,103.2 3 0
github.com/muety/wakapi/services/user.go:105.99,108.2 2 0
github.com/muety/wakapi/services/user.go:110.106,113.96 3 0
github.com/muety/wakapi/services/user.go:118.2,118.68 1 0
github.com/muety/wakapi/services/user.go:113.96,115.3 1 0
github.com/muety/wakapi/services/user.go:115.8,117.3 1 0
github.com/muety/wakapi/services/user.go:121.85,123.2 1 0
github.com/muety/wakapi/services/user.go:125.57,128.2 2 0
github.com/muety/wakapi/services/user.go:130.38,132.2 1 0
github.com/muety/wakapi/services/alias.go:17.77,22.2 1 1
github.com/muety/wakapi/services/alias.go:26.60,27.43 1 1
github.com/muety/wakapi/services/alias.go:30.2,30.14 1 1
github.com/muety/wakapi/services/alias.go:27.43,29.3 1 1
github.com/muety/wakapi/services/alias.go:33.62,35.16 2 1
github.com/muety/wakapi/services/alias.go:38.2,38.12 1 1
github.com/muety/wakapi/services/alias.go:35.16,37.3 1 1
github.com/muety/wakapi/services/alias.go:41.76,43.16 2 0
github.com/muety/wakapi/services/alias.go:46.2,46.21 1 0
github.com/muety/wakapi/services/alias.go:43.16,45.3 1 0
github.com/muety/wakapi/services/alias.go:49.113,51.16 2 0
github.com/muety/wakapi/services/alias.go:54.2,54.21 1 0
github.com/muety/wakapi/services/alias.go:51.16,53.3 1 0
github.com/muety/wakapi/services/alias.go:57.108,58.32 1 1
github.com/muety/wakapi/services/alias.go:64.2,65.46 2 1
github.com/muety/wakapi/services/alias.go:70.2,70.19 1 1
github.com/muety/wakapi/services/alias.go:58.32,59.52 1 1
github.com/muety/wakapi/services/alias.go:59.52,61.4 1 1
github.com/muety/wakapi/services/alias.go:65.46,66.48 1 1
github.com/muety/wakapi/services/alias.go:66.48,68.4 1 1
github.com/muety/wakapi/services/alias.go:73.77,75.16 2 0
github.com/muety/wakapi/services/alias.go:78.2,79.20 2 0
github.com/muety/wakapi/services/alias.go:75.16,77.3 1 0
github.com/muety/wakapi/services/alias.go:82.60,83.24 1 0
github.com/muety/wakapi/services/alias.go:86.2,88.12 3 0
github.com/muety/wakapi/services/alias.go:83.24,85.3 1 0
github.com/muety/wakapi/services/alias.go:91.69,94.28 3 0
github.com/muety/wakapi/services/alias.go:102.2,104.31 2 0
github.com/muety/wakapi/services/alias.go:108.2,108.12 1 0
github.com/muety/wakapi/services/alias.go:94.28,95.21 1 0
github.com/muety/wakapi/services/alias.go:98.3,99.16 2 0
github.com/muety/wakapi/services/alias.go:95.21,97.4 1 0
github.com/muety/wakapi/services/alias.go:104.31,106.3 1 0
github.com/muety/wakapi/services/alias.go:111.52,112.51 1 0
github.com/muety/wakapi/services/alias.go:112.51,114.3 1 0
github.com/muety/wakapi/services/heartbeat.go:17.141,23.2 1 0
github.com/muety/wakapi/services/heartbeat.go:25.72,27.2 1 0
github.com/muety/wakapi/services/heartbeat.go:29.80,34.32 3 0
github.com/muety/wakapi/services/heartbeat.go:41.2,41.55 1 0
github.com/muety/wakapi/services/heartbeat.go:34.32,35.36 1 0
github.com/muety/wakapi/services/heartbeat.go:35.36,38.4 2 0
github.com/muety/wakapi/services/heartbeat.go:44.53,46.2 1 0
github.com/muety/wakapi/services/heartbeat.go:48.76,50.2 1 0
github.com/muety/wakapi/services/heartbeat.go:52.96,54.2 1 0
github.com/muety/wakapi/services/heartbeat.go:56.111,58.16 2 0
github.com/muety/wakapi/services/heartbeat.go:61.2,61.43 1 0
github.com/muety/wakapi/services/heartbeat.go:58.16,60.3 1 0
github.com/muety/wakapi/services/heartbeat.go:64.116,66.2 1 0
github.com/muety/wakapi/services/heartbeat.go:68.78,70.2 1 0
github.com/muety/wakapi/services/heartbeat.go:72.62,74.2 1 0
github.com/muety/wakapi/services/heartbeat.go:76.116,78.16 2 0
github.com/muety/wakapi/services/heartbeat.go:82.2,82.28 1 0
github.com/muety/wakapi/services/heartbeat.go:86.2,86.24 1 0
github.com/muety/wakapi/services/heartbeat.go:78.16,80.3 1 0
github.com/muety/wakapi/services/heartbeat.go:82.28,84.3 1 0
github.com/muety/wakapi/services/summary.go:27.149,35.2 1 1
github.com/muety/wakapi/services/summary.go:39.136,42.66 2 1
github.com/muety/wakapi/services/summary.go:47.2,47.44 1 1
@ -582,120 +649,75 @@ github.com/muety/wakapi/services/summary.go:333.54,335.3 1 1
github.com/muety/wakapi/services/summary.go:340.59,342.25 2 1
github.com/muety/wakapi/services/summary.go:345.2,345.32 1 1
github.com/muety/wakapi/services/summary.go:342.25,344.3 1 1
github.com/muety/wakapi/services/aggregation.go:24.142,31.2 1 0
github.com/muety/wakapi/services/aggregation.go:40.43,42.37 1 0
github.com/muety/wakapi/services/aggregation.go:46.2,48.19 3 0
github.com/muety/wakapi/services/aggregation.go:42.37,44.3 1 0
github.com/muety/wakapi/services/aggregation.go:51.67,55.40 3 0
github.com/muety/wakapi/services/aggregation.go:59.2,59.50 1 0
github.com/muety/wakapi/services/aggregation.go:64.2,64.60 1 0
github.com/muety/wakapi/services/aggregation.go:70.2,70.35 1 0
github.com/muety/wakapi/services/aggregation.go:55.40,57.3 1 0
github.com/muety/wakapi/services/aggregation.go:59.50,61.3 1 0
github.com/muety/wakapi/services/aggregation.go:64.60,68.3 3 0
github.com/muety/wakapi/services/aggregation.go:73.109,74.24 1 0
github.com/muety/wakapi/services/aggregation.go:74.24,75.111 1 0
github.com/muety/wakapi/services/aggregation.go:75.111,77.4 1 0
github.com/muety/wakapi/services/aggregation.go:77.9,80.4 2 0
github.com/muety/wakapi/services/aggregation.go:84.80,85.33 1 0
github.com/muety/wakapi/services/aggregation.go:85.33,86.60 1 0
github.com/muety/wakapi/services/aggregation.go:86.60,88.4 1 0
github.com/muety/wakapi/services/aggregation.go:92.100,96.59 3 0
github.com/muety/wakapi/services/aggregation.go:111.2,112.16 2 0
github.com/muety/wakapi/services/aggregation.go:118.2,119.16 2 0
github.com/muety/wakapi/services/aggregation.go:125.2,126.44 2 0
github.com/muety/wakapi/services/aggregation.go:131.2,131.41 1 0
github.com/muety/wakapi/services/aggregation.go:145.2,145.12 1 0
github.com/muety/wakapi/services/aggregation.go:96.59,99.3 2 0
github.com/muety/wakapi/services/aggregation.go:99.8,99.47 1 0
github.com/muety/wakapi/services/aggregation.go:99.47,101.30 2 0
github.com/muety/wakapi/services/aggregation.go:101.30,102.43 1 0
github.com/muety/wakapi/services/aggregation.go:102.43,104.5 1 0
github.com/muety/wakapi/services/aggregation.go:106.8,108.3 1 0
github.com/muety/wakapi/services/aggregation.go:112.16,115.3 2 0
github.com/muety/wakapi/services/aggregation.go:119.16,122.3 2 0
github.com/muety/wakapi/services/aggregation.go:126.44,128.3 1 0
github.com/muety/wakapi/services/aggregation.go:131.41,132.21 1 0
github.com/muety/wakapi/services/aggregation.go:132.21,136.4 1 0
github.com/muety/wakapi/services/aggregation.go:136.9,136.62 1 0
github.com/muety/wakapi/services/aggregation.go:136.62,140.4 1 0
github.com/muety/wakapi/services/aggregation.go:148.83,163.41 5 0
github.com/muety/wakapi/services/aggregation.go:163.41,173.3 3 0
github.com/muety/wakapi/services/aggregation.go:176.34,179.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:19.91,25.2 1 1
github.com/muety/wakapi/middlewares/authenticate.go:27.90,30.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:32.90,35.2 2 0
github.com/muety/wakapi/middlewares/authenticate.go:37.71,38.71 1 0
github.com/muety/wakapi/middlewares/authenticate.go:38.71,40.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:43.107,47.16 3 0
github.com/muety/wakapi/middlewares/authenticate.go:51.2,51.31 1 0
github.com/muety/wakapi/middlewares/authenticate.go:67.2,68.12 2 0
github.com/muety/wakapi/middlewares/authenticate.go:47.16,49.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:51.31,52.31 1 0
github.com/muety/wakapi/middlewares/authenticate.go:57.3,57.29 1 0
github.com/muety/wakapi/middlewares/authenticate.go:64.3,64.9 1 0
github.com/muety/wakapi/middlewares/authenticate.go:52.31,55.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:57.29,60.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:60.9,63.4 2 0
github.com/muety/wakapi/middlewares/authenticate.go:71.70,72.39 1 0
github.com/muety/wakapi/middlewares/authenticate.go:77.2,77.14 1 0
github.com/muety/wakapi/middlewares/authenticate.go:72.39,73.60 1 0
github.com/muety/wakapi/middlewares/authenticate.go:73.60,75.4 1 0
github.com/muety/wakapi/middlewares/authenticate.go:80.92,82.16 2 1
github.com/muety/wakapi/middlewares/authenticate.go:86.2,89.16 4 1
github.com/muety/wakapi/middlewares/authenticate.go:92.2,92.18 1 1
github.com/muety/wakapi/middlewares/authenticate.go:82.16,84.3 1 1
github.com/muety/wakapi/middlewares/authenticate.go:89.16,91.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:95.92,97.16 2 0
github.com/muety/wakapi/middlewares/authenticate.go:101.2,102.16 2 0
github.com/muety/wakapi/middlewares/authenticate.go:109.2,109.18 1 0
github.com/muety/wakapi/middlewares/authenticate.go:97.16,99.3 1 0
github.com/muety/wakapi/middlewares/authenticate.go:102.16,104.3 1 0
github.com/muety/wakapi/middlewares/filetype.go:13.83,14.43 1 0
github.com/muety/wakapi/middlewares/filetype.go:14.43,19.3 1 0
github.com/muety/wakapi/middlewares/filetype.go:22.84,24.34 2 0
github.com/muety/wakapi/middlewares/filetype.go:31.2,31.27 1 0
github.com/muety/wakapi/middlewares/filetype.go:24.34,25.50 1 0
github.com/muety/wakapi/middlewares/filetype.go:25.50,29.4 3 0
github.com/muety/wakapi/middlewares/logging.go:20.102,21.43 1 0
github.com/muety/wakapi/middlewares/logging.go:21.43,27.3 1 0
github.com/muety/wakapi/middlewares/logging.go:30.80,39.44 7 0
github.com/muety/wakapi/middlewares/logging.go:45.2,54.3 1 0
github.com/muety/wakapi/middlewares/logging.go:39.44,40.38 1 0
github.com/muety/wakapi/middlewares/logging.go:40.38,42.4 1 0
github.com/muety/wakapi/middlewares/logging.go:57.41,59.14 2 0
github.com/muety/wakapi/middlewares/logging.go:62.2,62.14 1 0
github.com/muety/wakapi/middlewares/logging.go:65.2,65.11 1 0
github.com/muety/wakapi/middlewares/logging.go:59.14,61.3 1 0
github.com/muety/wakapi/middlewares/logging.go:62.14,64.3 1 0
github.com/muety/wakapi/middlewares/logging.go:68.41,69.42 1 0
github.com/muety/wakapi/middlewares/logging.go:72.2,72.12 1 0
github.com/muety/wakapi/middlewares/logging.go:69.42,71.3 1 0
github.com/muety/wakapi/middlewares/logging.go:103.52,105.2 1 0
github.com/muety/wakapi/middlewares/logging.go:117.45,118.20 1 0
github.com/muety/wakapi/middlewares/logging.go:118.20,122.3 3 0
github.com/muety/wakapi/middlewares/logging.go:124.54,127.18 3 0
github.com/muety/wakapi/middlewares/logging.go:134.2,135.15 2 0
github.com/muety/wakapi/middlewares/logging.go:127.18,130.17 2 0
github.com/muety/wakapi/middlewares/logging.go:130.17,132.4 1 0
github.com/muety/wakapi/middlewares/logging.go:137.42,138.20 1 0
github.com/muety/wakapi/middlewares/logging.go:138.20,140.3 1 0
github.com/muety/wakapi/middlewares/logging.go:142.36,144.2 1 0
github.com/muety/wakapi/middlewares/logging.go:145.42,147.2 1 0
github.com/muety/wakapi/middlewares/logging.go:148.40,150.2 1 0
github.com/muety/wakapi/middlewares/logging.go:151.52,153.2 1 0
github.com/muety/wakapi/middlewares/principal.go:15.62,17.2 1 0
github.com/muety/wakapi/middlewares/principal.go:19.58,21.2 1 0
github.com/muety/wakapi/middlewares/principal.go:42.71,43.43 1 0
github.com/muety/wakapi/middlewares/principal.go:43.43,45.3 1 0
github.com/muety/wakapi/middlewares/principal.go:48.81,51.2 2 0
github.com/muety/wakapi/middlewares/principal.go:53.55,54.52 1 0
github.com/muety/wakapi/middlewares/principal.go:54.52,56.3 1 0
github.com/muety/wakapi/middlewares/principal.go:59.49,60.52 1 0
github.com/muety/wakapi/middlewares/principal.go:63.2,63.12 1 0
github.com/muety/wakapi/middlewares/principal.go:60.52,62.3 1 0
github.com/muety/wakapi/middlewares/sentry.go:14.60,15.43 1 0
github.com/muety/wakapi/middlewares/sentry.go:15.43,19.3 1 0
github.com/muety/wakapi/middlewares/sentry.go:22.78,25.54 3 0
github.com/muety/wakapi/middlewares/sentry.go:25.54,26.43 1 0
github.com/muety/wakapi/middlewares/sentry.go:26.43,28.4 1 0
github.com/muety/wakapi/services/alias.go:17.77,22.2 1 1
github.com/muety/wakapi/services/alias.go:26.60,27.43 1 1
github.com/muety/wakapi/services/alias.go:30.2,30.14 1 1
github.com/muety/wakapi/services/alias.go:27.43,29.3 1 1
github.com/muety/wakapi/services/alias.go:33.62,35.16 2 1
github.com/muety/wakapi/services/alias.go:38.2,38.12 1 1
github.com/muety/wakapi/services/alias.go:35.16,37.3 1 1
github.com/muety/wakapi/services/alias.go:41.76,43.16 2 0
github.com/muety/wakapi/services/alias.go:46.2,46.21 1 0
github.com/muety/wakapi/services/alias.go:43.16,45.3 1 0
github.com/muety/wakapi/services/alias.go:49.113,51.16 2 0
github.com/muety/wakapi/services/alias.go:54.2,54.21 1 0
github.com/muety/wakapi/services/alias.go:51.16,53.3 1 0
github.com/muety/wakapi/services/alias.go:57.108,58.32 1 1
github.com/muety/wakapi/services/alias.go:64.2,65.46 2 1
github.com/muety/wakapi/services/alias.go:70.2,70.19 1 1
github.com/muety/wakapi/services/alias.go:58.32,59.52 1 1
github.com/muety/wakapi/services/alias.go:59.52,61.4 1 1
github.com/muety/wakapi/services/alias.go:65.46,66.48 1 1
github.com/muety/wakapi/services/alias.go:66.48,68.4 1 1
github.com/muety/wakapi/services/alias.go:73.77,75.16 2 0
github.com/muety/wakapi/services/alias.go:78.2,79.20 2 0
github.com/muety/wakapi/services/alias.go:75.16,77.3 1 0
github.com/muety/wakapi/services/alias.go:82.60,83.24 1 0
github.com/muety/wakapi/services/alias.go:86.2,88.12 3 0
github.com/muety/wakapi/services/alias.go:83.24,85.3 1 0
github.com/muety/wakapi/services/alias.go:91.69,94.28 3 0
github.com/muety/wakapi/services/alias.go:102.2,104.31 2 0
github.com/muety/wakapi/services/alias.go:108.2,108.12 1 0
github.com/muety/wakapi/services/alias.go:94.28,95.21 1 0
github.com/muety/wakapi/services/alias.go:98.3,99.16 2 0
github.com/muety/wakapi/services/alias.go:95.21,97.4 1 0
github.com/muety/wakapi/services/alias.go:104.31,106.3 1 0
github.com/muety/wakapi/services/alias.go:111.52,112.51 1 0
github.com/muety/wakapi/services/alias.go:112.51,114.3 1 0
github.com/muety/wakapi/services/key_value.go:14.89,19.2 1 0
github.com/muety/wakapi/services/key_value.go:21.83,23.2 1 0
github.com/muety/wakapi/services/key_value.go:25.78,27.16 2 0
github.com/muety/wakapi/services/key_value.go:33.2,33.11 1 0
github.com/muety/wakapi/services/key_value.go:27.16,32.3 1 0
github.com/muety/wakapi/services/key_value.go:36.72,38.2 1 0
github.com/muety/wakapi/services/key_value.go:40.60,42.2 1 0
github.com/muety/wakapi/services/user.go:19.73,25.2 1 0
github.com/muety/wakapi/services/user.go:27.74,28.40 1 0
github.com/muety/wakapi/services/user.go:32.2,33.16 2 0
github.com/muety/wakapi/services/user.go:37.2,38.15 2 0
github.com/muety/wakapi/services/user.go:28.40,30.3 1 0
github.com/muety/wakapi/services/user.go:33.16,35.3 1 0
github.com/muety/wakapi/services/user.go:41.72,42.37 1 0
github.com/muety/wakapi/services/user.go:46.2,47.16 2 0
github.com/muety/wakapi/services/user.go:51.2,52.15 2 0
github.com/muety/wakapi/services/user.go:42.37,44.3 1 0
github.com/muety/wakapi/services/user.go:47.16,49.3 1 0
github.com/muety/wakapi/services/user.go:55.76,57.2 1 0
github.com/muety/wakapi/services/user.go:59.86,61.2 1 0
github.com/muety/wakapi/services/user.go:63.58,65.2 1 0
github.com/muety/wakapi/services/user.go:67.61,70.2 2 0
github.com/muety/wakapi/services/user.go:72.48,74.2 1 0
github.com/muety/wakapi/services/user.go:76.102,85.93 2 0
github.com/muety/wakapi/services/user.go:91.2,91.38 1 0
github.com/muety/wakapi/services/user.go:85.93,87.3 1 0
github.com/muety/wakapi/services/user.go:87.8,89.3 1 0
github.com/muety/wakapi/services/user.go:94.73,97.2 2 0
github.com/muety/wakapi/services/user.go:99.78,103.2 3 0
github.com/muety/wakapi/services/user.go:105.99,108.2 2 0
github.com/muety/wakapi/services/user.go:110.106,113.96 3 0
github.com/muety/wakapi/services/user.go:118.2,118.68 1 0
github.com/muety/wakapi/services/user.go:113.96,115.3 1 0
github.com/muety/wakapi/services/user.go:115.8,117.3 1 0
github.com/muety/wakapi/services/user.go:121.85,123.2 1 0
github.com/muety/wakapi/services/user.go:125.57,128.2 2 0
github.com/muety/wakapi/services/user.go:130.38,132.2 1 0

View File

@ -9,6 +9,11 @@ type AliasRepositoryMock struct {
mock.Mock
}
func (m *AliasRepositoryMock) GetAll() ([]*models.Alias, error) {
args := m.Called()
return args.Get(0).([]*models.Alias), args.Error(1)
}
func (m *AliasRepositoryMock) GetByUser(s string) ([]*models.Alias, error) {
args := m.Called(s)
return args.Get(0).([]*models.Alias), args.Error(1)

View File

@ -15,6 +15,11 @@ func (m *SummaryRepositoryMock) Insert(summary *models.Summary) error {
return args.Error(0)
}
func (m *SummaryRepositoryMock) GetAll() ([]*models.Summary, error) {
args := m.Called()
return args.Get(0).([]*models.Summary), args.Error(1)
}
func (m *SummaryRepositoryMock) GetByUserWithin(user *models.User, time time.Time, time2 time.Time) ([]*models.Summary, error) {
args := m.Called(user, time, time2)
return args.Get(0).([]*models.Summary), args.Error(1)

View File

@ -14,6 +14,14 @@ func NewAliasRepository(db *gorm.DB) *AliasRepository {
return &AliasRepository{db: db}
}
func (r *AliasRepository) GetAll() ([]*models.Alias, error) {
var aliases []*models.Alias
if err := r.db.Find(&aliases).Error; err != nil {
return nil, err
}
return aliases, nil
}
func (r *AliasRepository) GetByUser(userId string) ([]*models.Alias, error) {
var aliases []*models.Alias
if err := r.db.

View File

@ -15,6 +15,15 @@ func NewHeartbeatRepository(db *gorm.DB) *HeartbeatRepository {
return &HeartbeatRepository{db: db}
}
// Use with caution!!
func (r *HeartbeatRepository) GetAll() ([]*models.Heartbeat, error) {
var heartbeats []*models.Heartbeat
if err := r.db.Find(&heartbeats).Error; err != nil {
return nil, err
}
return heartbeats, nil
}
func (r *HeartbeatRepository) InsertBatch(heartbeats []*models.Heartbeat) error {
if err := r.db.
Clauses(clause.OnConflict{

View File

@ -15,6 +15,14 @@ func NewKeyValueRepository(db *gorm.DB) *KeyValueRepository {
return &KeyValueRepository{db: db}
}
func (r *KeyValueRepository) GetAll() ([]*models.KeyStringValue, error) {
var keyValues []*models.KeyStringValue
if err := r.db.Find(&keyValues).Error; err != nil {
return nil, err
}
return keyValues, nil
}
func (r *KeyValueRepository) GetString(key string) (*models.KeyStringValue, error) {
kv := &models.KeyStringValue{}
if err := r.db.

View File

@ -16,6 +16,14 @@ func NewLanguageMappingRepository(db *gorm.DB) *LanguageMappingRepository {
return &LanguageMappingRepository{config: config.Get(), db: db}
}
func (r *LanguageMappingRepository) GetAll() ([]*models.LanguageMapping, error) {
var mappings []*models.LanguageMapping
if err := r.db.Find(&mappings).Error; err != nil {
return nil, err
}
return mappings, nil
}
func (r *LanguageMappingRepository) GetById(id uint) (*models.LanguageMapping, error) {
mapping := &models.LanguageMapping{}
if err := r.db.Where(&models.LanguageMapping{ID: id}).First(mapping).Error; err != nil {

View File

@ -9,6 +9,7 @@ type IAliasRepository interface {
Insert(*models.Alias) (*models.Alias, error)
Delete(uint) error
DeleteBatch([]uint) error
GetAll() ([]*models.Alias, error)
GetByUser(string) ([]*models.Alias, error)
GetByUserAndKey(string, string) ([]*models.Alias, error)
GetByUserAndKeyAndType(string, string, uint8) ([]*models.Alias, error)
@ -17,6 +18,7 @@ type IAliasRepository interface {
type IHeartbeatRepository interface {
InsertBatch([]*models.Heartbeat) error
GetAll() ([]*models.Heartbeat, error)
GetAllWithin(time.Time, time.Time, *models.User) ([]*models.Heartbeat, error)
GetFirstByUsers() ([]*models.TimeByUser, error)
GetLastByUsers() ([]*models.TimeByUser, error)
@ -28,12 +30,14 @@ type IHeartbeatRepository interface {
}
type IKeyValueRepository interface {
GetAll() ([]*models.KeyStringValue, error)
GetString(string) (*models.KeyStringValue, error)
PutString(*models.KeyStringValue) error
DeleteString(string) error
}
type ILanguageMappingRepository interface {
GetAll() ([]*models.LanguageMapping, error)
GetById(uint) (*models.LanguageMapping, error)
GetByUser(string) ([]*models.LanguageMapping, error)
Insert(*models.LanguageMapping) (*models.LanguageMapping, error)
@ -42,6 +46,7 @@ type ILanguageMappingRepository interface {
type ISummaryRepository interface {
Insert(*models.Summary) error
GetAll() ([]*models.Summary, error)
GetByUserWithin(*models.User, time.Time, time.Time) ([]*models.Summary, error)
GetLastByUser() ([]*models.TimeByUser, error)
DeleteByUser(string) error

View File

@ -14,6 +14,14 @@ func NewSummaryRepository(db *gorm.DB) *SummaryRepository {
return &SummaryRepository{db: db}
}
func (r *SummaryRepository) GetAll() ([]*models.Summary, error) {
var summaries []*models.Summary
if err := r.db.Find(&summaries).Error; err != nil {
return nil, err
}
return summaries, nil
}
func (r *SummaryRepository) Insert(summary *models.Summary) error {
if err := r.db.Create(summary).Error; err != nil {
return err

232
scripts/sqlite2mysql.go Normal file
View File

@ -0,0 +1,232 @@
package main
/*
Usage:
---
1. Set up a MySQL instance (see docker_mysql.sh for example)
2. Create config file (e.g. migrate.yml) as shown below
3. go run sqlite2mysql.go
Example: migrate.yml
---
# SQLite
source:
# Example: ../wakapi_db.db (relative to script path)
name:
# MySQL
target:
host:
port:
user:
password:
name:
*/
import (
"flag"
"fmt"
"github.com/jinzhu/configor"
"github.com/muety/wakapi/models"
"github.com/muety/wakapi/repositories"
"gorm.io/driver/mysql"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
"log"
"os"
)
type config struct {
Source dbConfig // sqlite
Target dbConfig // mysql
}
type dbConfig struct {
Host string
Port uint
User string
Password string
Name string
}
var cfg *config
var dbSource, dbTarget *gorm.DB
var cFlag *string
func init() {
cfg = &config{}
if f := flag.Lookup("config"); f == nil {
cFlag = flag.String("config", "sqlite2mysql.yml", "config file location")
} else {
ff := f.Value.(flag.Getter).Get().(string)
cFlag = &ff
}
flag.Parse()
if err := configor.New(&configor.Config{}).Load(cfg, mustConfigPath()); err != nil {
log.Fatalln("failed to read config", err)
}
log.Println("attempting to open sqlite database as Source")
if db, err := gorm.Open(sqlite.Open(cfg.Source.Name), &gorm.Config{}); err != nil {
log.Fatalln(err)
} else {
dbSource = db
}
log.Println("attempting to open mysql database as Target")
if db, err := gorm.Open(mysql.New(mysql.Config{
DriverName: "mysql",
DSN: fmt.Sprintf("%s:%s@tcp(%s:%d)/%s?charset=%s&parseTime=true&loc=%s&sql_mode=ANSI_QUOTES",
cfg.Target.User,
cfg.Target.Password,
cfg.Target.Host,
cfg.Target.Port,
cfg.Target.Name,
"utf8mb4",
"Local",
),
}), &gorm.Config{}); err != nil {
log.Fatalln(err)
} else {
dbTarget = db
}
}
func destroy() {
if db, _ := dbSource.DB(); db != nil {
db.Close()
}
if db, _ := dbTarget.DB(); db != nil {
db.Close()
}
}
func main() {
defer destroy()
if err := createSchema(); err != nil {
log.Fatalln(err)
}
keyValueSource := repositories.NewKeyValueRepository(dbSource)
keyValueTarget := repositories.NewKeyValueRepository(dbTarget)
userSource := repositories.NewUserRepository(dbSource)
userTarget := repositories.NewUserRepository(dbTarget)
languageMappingSource := repositories.NewLanguageMappingRepository(dbSource)
languageMappingTarget := repositories.NewLanguageMappingRepository(dbTarget)
aliasSource := repositories.NewAliasRepository(dbSource)
aliasTarget := repositories.NewAliasRepository(dbTarget)
summarySource := repositories.NewSummaryRepository(dbSource)
summaryTarget := repositories.NewSummaryRepository(dbTarget)
heartbeatSource := repositories.NewHeartbeatRepository(dbSource)
heartbeatTarget := repositories.NewHeartbeatRepository(dbTarget)
// TODO: things could be optimized through batch-inserts / inserts within a single transaction
log.Println("Migrating key-value pairs ...")
if data, err := keyValueSource.GetAll(); err == nil {
for _, e := range data {
if err := keyValueTarget.PutString(e); err != nil {
log.Fatalln(err)
}
}
} else {
log.Fatalln(err)
}
log.Println("Migrating users ...")
if data, err := userSource.GetAll(); err == nil {
for _, e := range data {
if _, _, err := userTarget.InsertOrGet(e); err != nil {
log.Fatalln(err)
}
}
} else {
log.Fatalln(err)
}
log.Println("Migrating language mappings ...")
if data, err := languageMappingSource.GetAll(); err == nil {
for _, e := range data {
e.ID = 0
if _, err := languageMappingTarget.Insert(e); err != nil {
log.Fatalln(err)
}
}
} else {
log.Fatalln(err)
}
log.Println("Migrating aliases ...")
if data, err := aliasSource.GetAll(); err == nil {
for _, e := range data {
e.ID = 0
if _, err := aliasTarget.Insert(e); err != nil {
log.Fatalln(err)
}
}
} else {
log.Fatalln(err)
}
log.Println("Migrating summaries ...")
if data, err := summarySource.GetAll(); err == nil {
for _, e := range data {
e.ID = 0
if err := summaryTarget.Insert(e); err != nil {
log.Fatalln(err)
}
}
} else {
log.Fatalln(err)
}
// TODO: copy in mini-batches instead of loading all heartbeats into memory (potentially millions)
log.Println("Migrating heartbeats ...")
if data, err := heartbeatSource.GetAll(); err == nil {
log.Printf("Got %d heartbeats loaded into memory. Batch-inserting them now ...\n", len(data))
if err := heartbeatTarget.InsertBatch(data); err != nil {
log.Fatalln(err)
}
} else {
log.Fatalln(err)
}
}
func createSchema() error {
if err := dbTarget.AutoMigrate(&models.User{}); err != nil {
return err
}
if err := dbTarget.AutoMigrate(&models.KeyStringValue{}); err != nil {
return err
}
if err := dbTarget.AutoMigrate(&models.Alias{}); err != nil {
return err
}
if err := dbTarget.AutoMigrate(&models.Heartbeat{}); err != nil {
return err
}
if err := dbTarget.AutoMigrate(&models.Summary{}); err != nil {
return err
}
if err := dbTarget.AutoMigrate(&models.SummaryItem{}); err != nil {
return err
}
if err := dbTarget.AutoMigrate(&models.LanguageMapping{}); err != nil {
return err
}
return nil
}
func mustConfigPath() string {
if _, err := os.Stat(*cFlag); err != nil {
log.Fatalln("failed to find config file at", *cFlag)
}
return *cFlag
}