Compare commits
2716 commits
Author | SHA1 | Date | |
---|---|---|---|
dfe52c6fd0 | |||
0a33d97af5 | |||
b58ad5e8c7 | |||
3816fce38f | |||
821ed24af7 | |||
|
1a3bb21202 | ||
|
ca3d438432 | ||
|
eb4ef6c667 | ||
|
fa1feddf44 | ||
|
d0c72806ac | ||
|
1e610613ba | ||
|
e41ea75a58 | ||
|
6d1eb34177 | ||
|
0618b4b530 | ||
|
46828887c0 | ||
|
a0947625f3 | ||
|
033a348ddd | ||
|
97e30b9257 | ||
|
81eef67aeb | ||
|
09a3d48e67 | ||
|
6780c9291c | ||
|
c1c742e3b1 | ||
|
6bf248749a | ||
|
b7748ec830 | ||
|
452f3530e2 | ||
|
3921773f8e | ||
|
b0e9689d1b | ||
|
0657555170 | ||
|
a01de85be9 | ||
|
ef771409aa | ||
|
ebf5a229dd | ||
|
6b9f29be07 | ||
|
9b799e0416 | ||
|
4acb22dcf4 | ||
|
cd7efbb4bb | ||
|
7d40eb947b | ||
|
88e89c8dd5 | ||
|
42dca7827b | ||
|
2b1ff2592a | ||
|
23cff2923a | ||
|
1c4a64e886 | ||
|
943bc47f23 | ||
|
373223c649 | ||
|
7ff458b718 | ||
|
dbd3d92e43 | ||
|
a902e85c8c | ||
|
6a9971feea | ||
|
476587688b | ||
|
f87c4d536a | ||
|
68c65fd975 | ||
|
02a284f75c | ||
|
8654aca67e | ||
|
11588340cb | ||
|
c799085432 | ||
|
dcb63cc8d2 | ||
|
7d0597e91e | ||
|
1e0ea7acf0 | ||
|
a7870d2fca | ||
|
fde6479d6e | ||
|
f6c5ca7d1e | ||
|
104b71e19a | ||
|
2210f617c6 | ||
|
03f640df8e | ||
|
ce450673bd | ||
|
9e65721c14 | ||
|
71bc568de3 | ||
|
8ed4c9e591 | ||
|
c5ad9b7818 | ||
|
eae9439ec7 | ||
|
b80a813e47 | ||
|
30051702d9 | ||
|
a0854947d6 | ||
|
7f353826fd | ||
|
7fb6c85ea6 | ||
|
7427361bf9 | ||
|
ae701463d0 | ||
|
b826767173 | ||
|
1344d14743 | ||
|
11aee6014e | ||
|
43bec5faae | ||
|
b7e1d0e50e | ||
|
672c571e6e | ||
|
4184472e05 | ||
|
f527a44525 | ||
|
1641eb0644 | ||
|
a09f1a0b6a | ||
|
28dd175b34 | ||
|
64878fdf75 | ||
|
5dcd31ff47 | ||
|
502d191909 | ||
|
4dd821f42a | ||
|
367b97fd1d | ||
|
c619a98905 | ||
|
96fc5d0dcb | ||
|
ec5314ff10 | ||
|
f6f51b81ed | ||
|
763cef3d09 | ||
|
76217a5aad | ||
|
9697cdffc6 | ||
|
33a6625bdf | ||
|
01b99a9694 | ||
|
32fa698f2d | ||
|
ec64e23107 | ||
|
ebb1fe9bfc | ||
|
9020bb1f23 | ||
|
3da29d95d9 | ||
|
a7773b9ac0 | ||
|
4ff5d4bc85 | ||
|
5b52dd6f69 | ||
|
0cbeecd23e | ||
|
aa3a133a79 | ||
|
502fbf1ee9 | ||
|
72d421c803 | ||
|
b7f3194870 | ||
|
f2d0844df0 | ||
|
1bad4b743f | ||
|
69ac24a3e7 | ||
|
91b937df7c | ||
|
ab94f9b678 | ||
|
c450c5971a | ||
|
da40a43ad0 | ||
|
e8cf06222c | ||
|
3458f0483f | ||
|
3f7d936709 | ||
|
3fe89fef8b | ||
|
bf09d4c020 | ||
|
54839806c4 | ||
|
9d621bf2e1 | ||
|
7d1be4b01e | ||
|
ecd99207e9 | ||
|
b0e263f174 | ||
|
0e1b1f286b | ||
|
c0f328e759 | ||
|
2a7dc528d2 | ||
|
9d7691c9e2 | ||
|
03530721b4 | ||
|
f36950b341 | ||
|
9eacaaceb4 | ||
|
b608575eda | ||
|
48a7cd8248 | ||
|
02edd76c73 | ||
|
23fffdce9c | ||
|
2a14c7bd83 | ||
|
08fe0d965d | ||
|
7663d385f6 | ||
|
e1b23495b8 | ||
|
18e29cc8d2 | ||
|
e3a8ab2069 | ||
|
2609e0e449 | ||
|
ec5a9ffc08 | ||
|
296055b4ef | ||
|
c5c9fd0a0c | ||
|
d2f43cd1d4 | ||
|
1c52967185 | ||
|
ed397fc514 | ||
|
6c5f915b35 | ||
|
c4a7db34d2 | ||
|
9005cd8f6d | ||
|
1f84c73daf | ||
|
0f1a7fde93 | ||
|
2fdaaec856 | ||
|
e2d10f3f39 | ||
|
c519eac57f | ||
|
bc3835294d | ||
|
df89b40b06 | ||
|
dd09b37815 | ||
|
f641ff7cf2 | ||
|
a8cfd6de3a | ||
|
8838c54510 | ||
|
08619a9814 | ||
|
4494a1038b | ||
|
28638a38a2 | ||
|
f2daaa1489 | ||
|
5b97640203 | ||
|
ab8ee2a101 | ||
|
0d63d601ef | ||
|
4b04e7e52c | ||
|
33e8868f47 | ||
|
366b53f1d7 | ||
|
168065dc08 | ||
|
615ac8dd1f | ||
|
587963225c | ||
|
4cce113ad1 | ||
|
b6f6675395 | ||
|
14720a2d90 | ||
|
7d06182b1d | ||
|
93c1e6d67d | ||
|
a3377f4ab8 | ||
|
60a6c94da3 | ||
|
8ec612e4e8 | ||
|
7a465ecc9b | ||
|
28ec29caf7 | ||
|
f142dbd410 | ||
|
903d6fbaf6 | ||
|
b9b24d50c2 | ||
|
7ad048086f | ||
|
5206ed0e13 | ||
|
9f612b364d | ||
|
b6bdeac1c6 | ||
|
d442bfe2ca | ||
|
6f2cf6325f | ||
|
5591ed7ee9 | ||
|
17b3c4deb7 | ||
|
6463b326f5 | ||
|
70bcfdd6a0 | ||
|
21f29d0ca4 | ||
|
f8b33a9675 | ||
|
831176fbfe | ||
|
f6733182cb | ||
|
0bc3225c6b | ||
|
805fbd7767 | ||
|
60d6134bd9 | ||
|
2fdfb5ba05 | ||
|
b0e603a14e | ||
|
344ab67f83 | ||
|
bd8bdde03f | ||
|
eae846ab74 | ||
|
70b3ddc3c6 | ||
|
5a60ca8fea | ||
|
159620bd77 | ||
|
0f8803d9f2 | ||
|
171e897f1b | ||
|
61f09c5d0b | ||
|
153513f531 | ||
|
f4b2ebe90e | ||
|
71715d0794 | ||
|
8f80abca94 | ||
|
95a113df74 | ||
|
9645f8990d | ||
|
bbee0d67f2 | ||
|
d2afcf5f6b | ||
|
e9d4e397aa | ||
|
d6a8d3b8ee | ||
|
e0b2c50a43 | ||
|
16fc54e109 | ||
|
68901de2f9 | ||
|
37eadeca90 | ||
|
e7df0faa67 | ||
|
8c2a450a3c | ||
|
9390741f2e | ||
|
78ae1b7543 | ||
|
f8170dde31 | ||
|
81209c0e90 | ||
|
809e4b556e | ||
|
5e478b0826 | ||
|
63bc5e73b7 | ||
|
be4b19edf4 | ||
|
b17abaf252 | ||
|
ea5404c573 | ||
|
9a6364fe81 | ||
|
f080289c95 | ||
|
a9b040837a | ||
|
95c2e8048a | ||
|
cda87b2f45 | ||
|
3ac9af2a62 | ||
|
8c046d1111 | ||
|
f0dd6eed4b | ||
|
588a0a8276 | ||
|
c15e82650f | ||
|
eb38aab56a | ||
|
cbde52b44e | ||
|
01b0a95f64 | ||
|
1d5c8c3053 | ||
|
9555f3f34b | ||
|
0de364ead2 | ||
|
786deddd56 | ||
|
412afa21f8 | ||
|
dfddbc2d08 | ||
|
9c23cc72e8 | ||
|
fd1dca6fe3 | ||
|
c9129ff26b | ||
|
fa9c26eeda | ||
|
b680879516 | ||
|
8c2849a3bd | ||
|
066fa41e88 | ||
|
47fd4b9369 | ||
|
780d188414 | ||
|
d0e1d59131 | ||
|
47cfd6c282 | ||
|
1f2d45f822 | ||
|
76a73ea0fc | ||
|
460bf4d090 | ||
|
7042ba4935 | ||
|
8bff93719f | ||
|
4af37c07bb | ||
|
1a17c9f8ef | ||
|
1afce9f23a | ||
|
7e490ce8d4 | ||
|
2f3c8b06da | ||
|
070252e62e | ||
|
ab4c4f2568 | ||
|
215caf9bce | ||
|
506a08384a | ||
|
b8ba1236e7 | ||
|
0dcbe0ed9f | ||
|
daf8fb9380 | ||
|
4f1e508477 | ||
|
cad5c3b6e9 | ||
|
4111d9a9b6 | ||
|
7f41c89970 | ||
|
8ddcf301b8 | ||
|
cb6963ba41 | ||
|
3948cf0a2a | ||
|
17a7bccde7 | ||
|
da4b3e8879 | ||
|
8fd2085456 | ||
|
9067a27979 | ||
|
1a1cd418b6 | ||
|
5e2c9a97a4 | ||
|
8dccc823be | ||
|
f4af2127d0 | ||
|
ed2a868d23 | ||
|
a3e7ac11d8 | ||
|
73c638aef3 | ||
|
cf58b65260 | ||
|
1fadc36945 | ||
|
1dd3a33174 | ||
|
0007b9b5ce | ||
|
74509ade4e | ||
|
7aeddece60 | ||
|
ede5703325 | ||
|
21a93550b0 | ||
|
a3720d3121 | ||
|
04c1ff772d | ||
|
a968c77299 | ||
|
c435995ad4 | ||
|
3493b8b53e | ||
|
145966838f | ||
|
e939c5e75c | ||
|
d33c0052e7 | ||
|
b3b01277af | ||
|
3c10849204 | ||
|
60a6dc8da2 | ||
|
46b2f93f0e | ||
|
478b71c67b | ||
|
8e048edb1f | ||
|
8e17b97066 | ||
|
a517185329 | ||
|
9c5bb3a432 | ||
|
367154476c | ||
|
c81ce798d3 | ||
|
343fab58ec | ||
|
0be71800bd | ||
|
cc70e05ac1 | ||
|
d842f69759 | ||
|
98e444746f | ||
|
c88f6b2bed | ||
|
419d556a21 | ||
|
02a9df14d4 | ||
|
6832e9f529 | ||
|
2863444a25 | ||
|
93a8ffa0e6 | ||
|
fc70086aa1 | ||
|
e744da84c8 | ||
|
3a13373367 | ||
|
f7b8d2c2c9 | ||
|
6dc31234b0 | ||
|
63a14ed45d | ||
|
66c64859dc | ||
|
178d2a97ae | ||
|
0431e648d7 | ||
|
5fa21f7a2d | ||
|
862267bc5d | ||
|
33f1d4df75 | ||
|
f52e9a3a85 | ||
|
f587e6f183 | ||
|
3835bf1301 | ||
|
40a5e35635 | ||
|
9798801c05 | ||
|
fb0a8b4389 | ||
|
28fa6f76fb | ||
|
7df15b8516 | ||
|
b7d63309f2 | ||
|
c1f2c6ea96 | ||
|
86b15ce2b7 | ||
|
0af1e4731a | ||
|
b3e67d50c6 | ||
|
33dbfafd80 | ||
|
e27977b73e | ||
|
11a7abff4f | ||
|
6394ef6e55 | ||
|
dac9ce41cc | ||
|
4274d4d45e | ||
|
03dedc826f | ||
|
d1d126e844 | ||
|
992b9cf694 | ||
|
c39e15ea9f | ||
|
df75b822cf | ||
|
d3caf65777 | ||
|
2564e827ed | ||
|
ad12974701 | ||
|
41cd387647 | ||
|
5b1839d50c | ||
|
3612b637d6 | ||
|
75b1f8188f | ||
|
8ae2112e74 | ||
|
625d342bd0 | ||
|
cfba73385b | ||
|
c96f6dcdbf | ||
|
e681dbba8d | ||
|
86d44d376c | ||
|
315b69841c | ||
|
ebc7656751 | ||
|
638a5b2cfa | ||
|
397357d4a6 | ||
|
491551f56e | ||
|
4b1f2fff85 | ||
|
8a2046ad45 | ||
|
a662de8f89 | ||
|
83500c16ee | ||
|
cc79b2bf1f | ||
|
970d07b0c9 | ||
|
cd2ae7a1d9 | ||
|
3609e13a1c | ||
|
509e622831 | ||
|
73459d6424 | ||
|
468c333144 | ||
|
2c087856cc | ||
|
9ec2389e94 | ||
|
daeea7adc8 | ||
|
42abcc7994 | ||
|
e2eeffe5dc | ||
|
3607edbc5d | ||
|
0a8552d99d | ||
|
3f20769523 | ||
|
b9544852f2 | ||
|
ba3a5ea205 | ||
|
716d398d41 | ||
|
8804f2dc83 | ||
|
6df538c3c1 | ||
|
53db5290d4 | ||
|
97204a4bea | ||
|
ee10b5c887 | ||
|
f9cc170785 | ||
|
f80f671f78 | ||
|
fef750d687 | ||
|
e1c21b132b | ||
|
d35a285316 | ||
|
17c1261892 | ||
|
d00da40e08 | ||
|
398f356712 | ||
|
1a7bb9b642 | ||
|
7d421291df | ||
|
77f7eb63bf | ||
|
ad185d4fe5 | ||
|
36de66b07a | ||
|
4ae4671472 | ||
|
43416ee97d | ||
|
1a25c27275 | ||
|
ac1c9f9ba3 | ||
|
7b4d52505d | ||
|
b778eb63a9 | ||
|
e456053620 | ||
|
bc37520631 | ||
|
8da35bec51 | ||
|
e3bb51fb33 | ||
|
4a9bb0dbfe | ||
|
24efc58fa7 | ||
|
444b1e740b | ||
|
11639f79c4 | ||
|
56ce90ad98 | ||
|
a07dea71c7 | ||
|
7b826e1de7 | ||
|
197d691777 | ||
|
6256e6891a | ||
|
dc858f77b5 | ||
|
1acbae39b8 | ||
|
b02a0bcf00 | ||
|
6ab01fcdba | ||
|
945f3ac2e7 | ||
|
bad5f10577 | ||
|
c6e0fd4135 | ||
|
7fcc141a2e | ||
|
c0297ce272 | ||
|
631c8dd7b9 | ||
|
35424cbf81 | ||
|
6967805d17 | ||
|
374b0ec808 | ||
|
cb0bb2f245 | ||
|
7be813505b | ||
|
f540e31ac2 | ||
|
224ff17833 | ||
|
4930273285 | ||
|
ac0abaacaf | ||
|
014f2be462 | ||
|
4ac5cedcbf | ||
|
9279d3cff1 | ||
|
70dbca020d | ||
|
f755b8ceae | ||
|
7aa669f7ed | ||
|
48e939e598 | ||
|
914b3d1872 | ||
|
cb1b58703f | ||
|
0bcd46527f | ||
|
e135864ffa | ||
|
03ff48a997 | ||
|
ed44479d24 | ||
|
3bbd721fc3 | ||
|
75824f5514 | ||
|
3dc6d3f09b | ||
|
d6c246ac63 | ||
|
b0606e5100 | ||
|
c94ce0c0dd | ||
|
cd96b1229a | ||
|
217cc28279 | ||
|
27478f47b8 | ||
|
4890a8a4f6 | ||
|
e95d8cf57d | ||
|
da12140b9a | ||
|
fa9aa61b49 | ||
|
df98e9fba0 | ||
|
7d872c506e | ||
|
a0e6cc2626 | ||
|
a7270347cf | ||
|
e3bd3d3d08 | ||
|
814e57608e | ||
|
3823096c59 | ||
|
0c81fb0d22 | ||
|
c5616dd459 | ||
|
81063307aa | ||
|
5909466264 | ||
|
1bcb4acac8 | ||
|
27a7b7ef1f | ||
|
d3a2479614 | ||
|
e7bda00cca | ||
|
f6c30f3a0d | ||
|
7d9bd6d2e4 | ||
|
fa672767c3 | ||
|
de88e1146b | ||
|
6ec2a132e1 | ||
|
4f387a08bc | ||
|
6d061c1333 | ||
|
b3da4f290b | ||
|
3afd1d6651 | ||
|
e353ca15c0 | ||
|
30313f3072 | ||
|
7b3bd15cdc | ||
|
8badeed3e5 | ||
|
524e02e468 | ||
|
d7a59cb6b5 | ||
|
bd0a194965 | ||
|
961fb706d5 | ||
|
630bcf8d08 | ||
|
95554b29b2 | ||
|
86b266c8ed | ||
|
ee188aa69d | ||
|
1ee4f8772b | ||
|
e3c1b1baff | ||
|
ec640f827b | ||
|
63dbbb33e2 | ||
|
a240492479 | ||
|
3cfb60517b | ||
|
98cd7bfd8e | ||
|
8bc51979c6 | ||
|
60e7c731c5 | ||
|
274d8be34f | ||
|
12905e534a | ||
|
713f2e1161 | ||
|
a8845b769d | ||
|
daca4c5fd6 | ||
|
36bdb97738 | ||
|
fd2331cd65 | ||
|
a798ef112a | ||
|
b07acac134 | ||
|
5f6094489d | ||
|
e702d624af | ||
|
97d7d949e4 | ||
|
768ee498e8 | ||
|
7479abe471 | ||
|
704227c1ff | ||
|
cc5a1794ac | ||
|
b0ff007e84 | ||
|
3ecfb50b3d | ||
|
2166516d83 | ||
|
89d9cbce42 | ||
|
0a98dbda3b | ||
|
684df5604e | ||
|
9b03fe71bd | ||
|
41bcf3cda5 | ||
|
998664b918 | ||
|
443b0fd2ea | ||
|
a55c2dc6a9 | ||
|
bd823d3c84 | ||
|
309ccd81e6 | ||
|
82b2ef464e | ||
|
9adaa9b51a | ||
|
4e28766cc0 | ||
|
2179e4d594 | ||
|
6039dda4d6 | ||
|
bd4ed8f3e0 | ||
|
538b117167 | ||
|
0495c56792 | ||
|
8bac81f8e8 | ||
|
23eeaa097f | ||
|
014a4e65d1 | ||
|
6ccaddeba4 | ||
|
c649c25dbb | ||
|
de9fa4053e | ||
|
99853b47cb | ||
|
2fd95a0807 | ||
|
b71697f5f9 | ||
|
99c75becf3 | ||
|
8aebb619f3 | ||
|
8de7e15af5 | ||
|
59fd6d1756 | ||
|
977271857d | ||
|
ce3b8db129 | ||
|
2ee22179fb | ||
|
be7e61c63e | ||
|
e353b2665a | ||
|
b0ff9938b4 | ||
|
7b8d5abea0 | ||
|
b445b2273a | ||
|
4e647c893c | ||
|
e345adcc5d | ||
|
75e536bf7a | ||
|
575540fd7e | ||
|
29b73ae3aa | ||
|
7e88869458 | ||
|
fe065618ae | ||
|
8261391b25 | ||
|
0a8f4002d4 | ||
|
c2d303ff88 | ||
|
7492f31907 | ||
|
34cad7c7e1 | ||
|
98741d55b7 | ||
|
901e46aa79 | ||
|
6ffe122398 | ||
|
2d47476f46 | ||
|
816883e743 | ||
|
6c5a8b737f | ||
|
eaabfef43f | ||
|
d621a64387 | ||
|
44ff9a321b | ||
|
db2c994a67 | ||
|
51594d4a58 | ||
|
8d88b2aefc | ||
|
cd9a0f35ed | ||
|
938ef19b16 | ||
|
8ea1af2fc7 | ||
|
b5ca8e35e3 | ||
|
a2094ba48c | ||
|
8f936015f6 | ||
|
0f63328fab | ||
|
54171e33f7 | ||
|
77e7dcf5e3 | ||
|
7cb02d213a | ||
|
e1927013bc | ||
|
1658f2e0a2 | ||
|
18ff04ab77 | ||
|
e293c6c2fb | ||
|
1f9a380741 | ||
|
6f31a51519 | ||
|
6a0a4e2d68 | ||
|
66763597fd | ||
|
4dd5333b38 | ||
|
3c5d53bb4d | ||
|
8e4dd2d649 | ||
|
e535fd4fd5 | ||
|
4365c59b4f | ||
|
70d4865e32 | ||
|
ead17b17d6 | ||
|
cbe3ddfc6a | ||
|
dc8ff1e815 | ||
|
d62cfca0ad | ||
|
88d9c276e6 | ||
|
e087feee83 | ||
|
be82141550 | ||
|
aa040cbfac | ||
|
949b7a85ed | ||
|
c40962c542 | ||
|
6f1a91da8e | ||
|
65c436d655 | ||
|
46909a7fbc | ||
|
5434991abd | ||
|
b29dd36697 | ||
|
479a61f83e | ||
|
7c2b577635 | ||
|
6f341559d5 | ||
|
41dda6d589 | ||
|
7ed664d1de | ||
|
035298663f | ||
|
fe2cd4c979 | ||
|
bdd3986cba | ||
|
0206859040 | ||
|
3945471fc8 | ||
|
0b96d9e2bc | ||
|
43df5d0233 | ||
|
87d79396df | ||
|
4e710148d8 | ||
|
49d40037b4 | ||
|
79a45d57de | ||
|
9abef1b71a | ||
|
fcd4be54e3 | ||
|
16fd3660ec | ||
|
dd8f94c6bf | ||
|
53dc81de58 | ||
|
222dfe0deb | ||
|
f28d3cb20b | ||
|
4a8c79befd | ||
|
92c41d0a87 | ||
|
6bb9cd71a9 | ||
|
68734dc350 | ||
|
5b84b1f2f7 | ||
|
649ae0b4e6 | ||
|
6a8dc1efe9 | ||
|
b9bf4c6f03 | ||
|
e50d3c2428 | ||
|
c63789a24b | ||
|
9b82a72575 | ||
|
112f239cc2 | ||
|
3762ce7927 | ||
|
b00a598b4a | ||
|
3a87c3cd40 | ||
|
36e3dabe46 | ||
|
47c982349b | ||
|
aacc6aff43 | ||
|
94d94ca391 | ||
|
a6379ea974 | ||
|
e81d35de62 | ||
|
3708ec6724 | ||
|
8019570c78 | ||
|
785641d6a9 | ||
|
b2b023cf11 | ||
|
fb4a3edd3d | ||
|
366d0ee64f | ||
|
1a28b41c02 | ||
|
13e4655d38 | ||
|
c7042f454c | ||
|
c5dab90c1d | ||
|
5182dad647 | ||
|
2620c5d9ee | ||
|
b9c8ff8132 | ||
|
8ba09e0eca | ||
|
0c17662c38 | ||
|
480c32fefa | ||
|
d157e5907e | ||
|
f1fdd2f3bc | ||
|
049080c254 | ||
|
95c14a45b5 | ||
|
98494e29e0 | ||
|
ec99b221c6 | ||
|
123c8172fc | ||
|
d73cf3936e | ||
|
5443516750 | ||
|
5e8055944a | ||
|
735863d103 | ||
|
55e0fe2d9c | ||
|
57b415a5ed | ||
|
1d029133f1 | ||
|
7166c1fe5a | ||
|
86f390906a | ||
|
6461b4967b | ||
|
8b1cce8f6e | ||
|
61e9debdfc | ||
|
ce52c5454e | ||
|
09c5818416 | ||
|
9c09ef5fa1 | ||
|
0c03e108fa | ||
|
4cc517f352 | ||
|
440b22b2eb | ||
|
0c019fe1e6 | ||
|
86a86a9f9b | ||
|
22ad87f3bd | ||
|
1419178527 | ||
|
68b2dd3dc0 | ||
|
956a715cff | ||
|
c196da8e5f | ||
|
1602088de6 | ||
|
40295f4802 | ||
|
5b711cebeb | ||
|
ee25de4c33 | ||
|
e397d61429 | ||
|
1811005b7d | ||
|
aa8127b610 | ||
|
3faba10c9b | ||
|
adec0870be | ||
|
c6d931219a | ||
|
052bee989a | ||
|
46c263f6d0 | ||
|
dd409e762a | ||
|
ed25957479 | ||
|
05384b004b | ||
|
834a4b05cd | ||
|
25a8246c66 | ||
|
61378937c8 | ||
|
3de9ecc79f | ||
|
1bb206ff8d | ||
|
1946da8153 | ||
|
679d8f7388 | ||
|
13921c34c4 | ||
|
b6d27d6260 | ||
|
1cce217602 | ||
|
3e898d927a | ||
|
4008f28cda | ||
|
8aac399057 | ||
|
fb2c1694e4 | ||
|
25a80afd1c | ||
|
a3abb79dc6 | ||
|
2042d04fcb | ||
|
f63a04369f | ||
|
198aecd858 | ||
|
d3cb5b11de | ||
|
47d16f1c2d | ||
|
9c63f7bcc8 | ||
|
036e5a5f03 | ||
|
cd599381b8 | ||
|
48bb63180b | ||
|
361bdbb4b2 | ||
|
0c236aef7c | ||
|
0a1bff920a | ||
|
c7eaf98957 | ||
|
39d4f542f3 | ||
|
731a844332 | ||
|
c26db89090 | ||
|
f63ed07031 | ||
|
998aa7b49c | ||
|
80a083b0e2 | ||
|
387c3be4e5 | ||
|
8971fcc4b6 | ||
|
039bc183d9 | ||
|
4e452e009e | ||
|
75843f6e51 | ||
|
8dfcbfef9e | ||
|
3331c8051f | ||
|
92f46e4aad | ||
|
2e1107c47d | ||
|
9d7949c2bb | ||
|
3dfe0174e1 | ||
|
f2ef523b6c | ||
|
63c700cdf4 | ||
|
ea93cba9ae | ||
|
5899de818a | ||
|
3095c928ef | ||
|
c0ac72472c | ||
|
272c1cb9d1 | ||
|
2b81774ab4 | ||
|
1caf9bb2d1 | ||
|
cd669944da | ||
|
17611c86a3 | ||
|
fa5f0e7560 | ||
|
fde38bf386 | ||
|
0b481ea17d | ||
|
9944b2a412 | ||
|
47f77a302b | ||
|
2305c4714c | ||
|
7e01fb8c99 | ||
|
7e28affa35 | ||
|
883b38ed1d | ||
|
6864290656 | ||
|
91ab30850b | ||
|
74190f631b | ||
|
4254efa908 | ||
|
d6be420864 | ||
|
b61133ee6f | ||
|
4e5a3c2e9b | ||
|
3f232b0728 | ||
|
25c3c7be86 | ||
|
632f30fe6f | ||
|
74037ab738 | ||
|
4e34de6884 | ||
|
bcb984ad78 | ||
|
4f1cbbb6ef | ||
|
4e50c73fe8 | ||
|
4c6805ace2 | ||
|
36c4da153f | ||
|
eee8c8c885 | ||
|
b3a4056897 | ||
|
e28ade6223 | ||
|
238b7ff9c4 | ||
|
6cd286d859 | ||
|
5989e83688 | ||
|
b823a15e93 | ||
|
df79fe94f4 | ||
|
1a1fbfab4f | ||
|
e75be1633d | ||
|
674729f1cf | ||
|
7001dd292f | ||
|
0f12e77197 | ||
|
e0218ee61f | ||
|
c0b6e4bab2 | ||
|
db168f6b65 | ||
|
2c8e51bcbc | ||
|
eec7436b59 | ||
|
8e489d1485 | ||
|
d2fb3946a2 | ||
|
fc2622f376 | ||
|
0604d3516d | ||
|
e48c3747e9 | ||
|
0babc585f0 | ||
|
7fe0eb7332 | ||
|
3dafb02b66 | ||
|
ae1bd4aba3 | ||
|
6e3fc06352 | ||
|
42703f4431 | ||
|
fd9705e969 | ||
|
43b4c567b2 | ||
|
1a208ccf6a | ||
|
5be0d7896b | ||
|
52bb51e5bf | ||
|
579d544110 | ||
|
c3aeb112bd | ||
|
5b9f267876 | ||
|
c4d9fa7d9e | ||
|
f4606b16c9 | ||
|
80dec2332a | ||
|
67a60267e7 | ||
|
0fb65a92ab | ||
|
6d5be2487f | ||
|
a56e333970 | ||
|
2189cbc0d5 | ||
|
6b0cba4791 | ||
|
fef46eb7e7 | ||
|
6ab12f82bb | ||
|
7f53325c79 | ||
|
b7805d56ca | ||
|
3044a0a626 | ||
|
20133602fd | ||
|
8142c89133 | ||
|
e34e73a42a | ||
|
07da1765d7 | ||
|
96205d3782 | ||
|
f68f06a658 | ||
|
b79255c7c9 | ||
|
9fc8874428 | ||
|
8ccba90157 | ||
|
00272311f0 | ||
|
a24a856a6c | ||
|
fbcb173b0c | ||
|
f9e0ea3581 | ||
|
febdb44177 | ||
|
32d5daa771 | ||
|
9d95c466b0 | ||
|
5a0901da96 | ||
|
f2c54b1123 | ||
|
63298a3ec1 | ||
|
c94e43b910 | ||
|
dec3e625ab | ||
|
46a6010195 | ||
|
1e3087460f | ||
|
05542edbb8 | ||
|
9c7431dd64 | ||
|
e2104d2833 | ||
|
0d4ba35fa5 | ||
|
7d7a86b690 | ||
|
4d670bbf2d | ||
|
e8fdc94ca8 | ||
|
37b291790a | ||
|
8c3ba002ea | ||
|
cc5a5f1738 | ||
|
f1b9898e30 | ||
|
b799f37c93 | ||
|
9f33f574b8 | ||
|
06cac047f9 | ||
|
dc7a5d4b4a | ||
|
29999ff085 | ||
|
2bfe7510f4 | ||
|
6df336dc67 | ||
|
886ef337c4 | ||
|
45ce97f7af | ||
|
d44588583f | ||
|
95fd5c6f06 | ||
|
f20934b035 | ||
|
b0746d46d1 | ||
|
d1fadde153 | ||
|
4d727aeff8 | ||
|
04bda8531c | ||
|
95b522dc72 | ||
|
dc7fd7be84 | ||
|
3651e61851 | ||
|
65e21b3ae4 | ||
|
dd848e864e | ||
|
0abc996aea | ||
|
f5dc88739e | ||
|
03bb7949cb | ||
|
ab59c8d20c | ||
|
ae15ed391d | ||
|
2c628a8940 | ||
|
3115d2f649 | ||
|
b6d8554e0a | ||
|
72bd1f8ecc | ||
|
f17ba195be | ||
|
1f516b8f3e | ||
|
a70fd075bb | ||
|
7e3000de07 | ||
|
c29c22af69 | ||
|
f1598ef01d | ||
|
70e8a4f1b1 | ||
|
ff5cdde5df | ||
|
e5abe73c33 | ||
|
701b363263 | ||
|
f65d131fc8 | ||
|
a4fe2b39e9 | ||
|
c60f881f37 | ||
|
699d0fc414 | ||
|
53e7c83df9 | ||
|
5fe7feb007 | ||
|
b9ef6c3c9d | ||
|
40c1ea2e9c | ||
|
2ba7fe9767 | ||
|
c9ecb600cf | ||
|
b0de306b0e | ||
|
b3269fd1f3 | ||
|
4c6fe1f7e8 | ||
|
74e828ae7b | ||
|
5cbe61f93b | ||
|
fddcb77d95 | ||
|
97009eb964 | ||
|
8dc700535c | ||
|
98ea1da6eb | ||
|
548a14dc91 | ||
|
250224e364 | ||
|
9d45611290 | ||
|
df6ec68d08 | ||
|
9c9c70aabc | ||
|
c737b85fae | ||
|
b7d16c0b32 | ||
|
edc029b8cb | ||
|
68ca0f29de | ||
|
a433ff52a7 | ||
|
f0d8ad33f0 | ||
|
a0df5ccec2 | ||
|
b709681391 | ||
|
d6c96a53f2 | ||
|
1060278311 | ||
|
fd1ecefc28 | ||
|
11d4be7bf8 | ||
|
403834169a | ||
|
780a54263c | ||
|
b6afa4afb0 | ||
|
bf317f6fe2 | ||
|
74574186b6 | ||
|
fd36c93328 | ||
|
56e497ffa1 | ||
|
2e1f1c655c | ||
|
fefd6c4c21 | ||
|
e9f968aa76 | ||
|
64adace59b | ||
|
3e562a1b66 | ||
|
29b4dbaa51 | ||
|
efa1331877 | ||
|
6b7be3dca5 | ||
|
8aceb46208 | ||
|
8289231bfb | ||
|
77a6b41e8b | ||
|
eed9a5b83d | ||
|
34dfe8a9aa | ||
|
d364fbfbf6 | ||
|
a4e1294be1 | ||
|
dec276452e | ||
|
0527bc7a5e | ||
|
c48a1dbd7b | ||
|
8fad47fa89 | ||
|
45d72b0e4e | ||
|
b84166eff2 | ||
|
41e76c33a1 | ||
|
6c52be0543 | ||
|
36b541110f | ||
|
abb2f6dd38 | ||
|
1f8663ade8 | ||
|
b0334fef43 | ||
|
ff9590b38b | ||
|
15954a9b7f | ||
|
e7af794152 | ||
|
45ce89c93e | ||
|
9d6df11a27 | ||
|
86274ece36 | ||
|
b918a049b5 | ||
|
165a56c99f | ||
|
8f028be15f | ||
|
cedc726ca6 | ||
|
63bf46dca8 | ||
|
e40793ca16 | ||
|
bf144385f8 | ||
|
1b11b79726 | ||
|
5701398f41 | ||
|
40d5ef01bf | ||
|
36d3527b54 | ||
|
7d320a4c3f | ||
|
01d2d8b829 | ||
|
e9b8ed4427 | ||
|
8f981ffde8 | ||
|
583785a02f | ||
|
c210b0b5e2 | ||
|
91b31e792f | ||
|
7aca50f823 | ||
|
1e0bc37ef0 | ||
|
6df9b62547 | ||
|
935951ddec | ||
|
c53677ca62 | ||
|
b918168f98 | ||
|
d808028c80 | ||
|
62661f24ee | ||
|
3c6f33daec | ||
|
a780c8ea83 | ||
|
e165c9e297 | ||
|
906460e61f | ||
|
f8ae4e32fe | ||
|
dc4a6cf4da | ||
|
cd1b3d5ac5 | ||
|
0db1ed4b34 | ||
|
95fd7eae80 | ||
|
4e24b40abb | ||
|
7c745a8784 | ||
|
c537c1337d | ||
|
38f7d08512 | ||
|
73aafe0802 | ||
|
cd558437ba | ||
|
cee6dbc62e | ||
|
784006d8c0 | ||
|
576758ab35 | ||
|
829b8ad6b5 | ||
|
01bf1c6eb1 | ||
|
47c46d68fc | ||
|
fcc9d85a53 | ||
|
b8f05922b4 | ||
|
4ec5ee0e82 | ||
|
a70866eae7 | ||
|
6b776fae71 | ||
|
42c93ca0a5 | ||
|
8ad3f84daf | ||
|
e507ef15b2 | ||
|
834a17e807 | ||
|
2e60ff4e0e | ||
|
ba6a01f21d | ||
|
d1a7d1f41e | ||
|
15920a3121 | ||
|
f5512f95d5 | ||
|
90966dbd2f | ||
|
0112e889cf | ||
|
b0c021b41f | ||
|
bf5c977da5 | ||
|
64669d7607 | ||
|
c4219e34fd | ||
|
0fc02c2f69 | ||
|
4d2550e06a | ||
|
b33ac019af | ||
|
a89de87903 | ||
|
97b613afc0 | ||
|
ae077fa651 | ||
|
d248e7aa95 | ||
|
4209277517 | ||
|
ca524d42e2 | ||
|
9108c2ba8d | ||
|
fdbc192148 | ||
|
27aecb2bbb | ||
|
f2bfe580fb | ||
|
5a57cfbd23 | ||
|
7ecb891e8f | ||
|
845c9fc2fe | ||
|
c5013e8230 | ||
|
e21c503a8b | ||
|
7104481907 | ||
|
f3a1a07aaa | ||
|
0878d391fa | ||
|
e261f2f0ba | ||
|
0de7cdbb9c | ||
|
8c27418630 | ||
|
b659e4f8d1 | ||
|
e581225eda | ||
|
1f0b46dc88 | ||
|
f0453acbe1 | ||
|
91588ebb9a | ||
|
acfb2107b8 | ||
|
033d4b14eb | ||
|
800985b450 | ||
|
ca129b8928 | ||
|
9c0250c08b | ||
|
aa82105a72 | ||
|
55bebb797c | ||
|
631bb28f09 | ||
|
bb045fed42 | ||
|
51d8c823d1 | ||
|
2e79ead5dd | ||
|
4f2f3915d0 | ||
|
a609649553 | ||
|
808b0d308d | ||
|
c3b1108e7b | ||
|
30a3e4922e | ||
|
7ec39ded36 | ||
|
f871274f6f | ||
|
4b6f37e177 | ||
|
f76bc84284 | ||
|
7606d40c2f | ||
|
519786022b | ||
|
56c3f8d582 | ||
|
bc92554850 | ||
|
c5c5a5b1dc | ||
|
45cfa155ee | ||
|
a8f45c21a1 | ||
|
18cedcf17c | ||
|
6a1f51db1f | ||
|
c6609f7656 | ||
|
39afa6b569 | ||
|
fd273c7f0c | ||
|
2b670955e2 | ||
|
48c6133b9f | ||
|
4881d7708d | ||
|
7ea420d238 | ||
|
7fe7a8335d | ||
|
4a6c079ef0 | ||
|
271c7a7671 | ||
|
b022540ee0 | ||
|
4747de8887 | ||
|
0356a7b7e8 | ||
|
b2234c6fe0 | ||
|
02d171a673 | ||
|
f1ff453fd7 | ||
|
e2bc5149f6 | ||
|
f5d1c1fd15 | ||
|
364ea88bd9 | ||
|
a140b234c7 | ||
|
dffb5523fb | ||
|
e1bac13994 | ||
|
4c3140342c | ||
|
afc4fa9433 | ||
|
7757644e89 | ||
|
f5f962c399 | ||
|
240cdb3fce | ||
|
e3e1b6de81 | ||
|
571cac576e | ||
|
742c9f437a | ||
|
96fa737425 | ||
|
7def25d4d1 | ||
|
c83ddacfc7 | ||
|
50375a5cdd | ||
|
4057edebda | ||
|
c5c7324974 | ||
|
f625c4af4d | ||
|
0842e6c77b | ||
|
9d2e3c67ca | ||
|
c0538d0ff8 | ||
|
6eefd2da4c | ||
|
86141753e8 | ||
|
97c7bb74e9 | ||
|
dbce0600c5 | ||
|
73951b7177 | ||
|
36348b3624 | ||
|
6e7d6daa74 | ||
|
7376ad73dc | ||
|
d67625bbc7 | ||
|
d9d0a463d0 | ||
|
e5197861ed | ||
|
a74597b7ef | ||
|
34d7b3d5ca | ||
|
20ffda35d8 | ||
|
8cf52f3a75 | ||
|
19d35b2765 | ||
|
513d59e324 | ||
|
0382d1ae54 | ||
|
c3288c805b | ||
|
86421cc06c | ||
|
da6367271f | ||
|
ec75b63d26 | ||
|
bb6bb71047 | ||
|
2daca23eca | ||
|
eef3c64f13 | ||
|
3480b69932 | ||
|
9f9fbdb595 | ||
|
e4883831b4 | ||
|
4983fd12d1 | ||
|
b8b192b414 | ||
|
6ed702ba40 | ||
|
a0f7db6e23 | ||
|
9a39874ad4 | ||
|
20fe75e0a5 | ||
|
edd69c7b2d | ||
|
f0e043d339 | ||
|
b04eb8c857 | ||
|
4dc27d6355 | ||
|
1107367b46 | ||
|
ce6655ffd1 | ||
|
b82f23302c | ||
|
8a38a199b1 | ||
|
d1170dd3a6 | ||
|
fd8726cf02 | ||
|
be92ed278a | ||
|
36faa84000 | ||
|
45e2e10ace | ||
|
deb547ef73 | ||
|
1446d8385e | ||
|
03126720c2 | ||
|
4bca70b516 | ||
|
ad0d778a3b | ||
|
8a1f098df3 | ||
|
cc00d41238 | ||
|
f15e6a15a1 | ||
|
95f0c0ff12 | ||
|
ee31e980e9 | ||
|
af2cd3bde3 | ||
|
8db93dc562 | ||
|
d3b5027d6a | ||
|
688ef3ecba | ||
|
bb1f27cd5d | ||
|
cdc1b05afe | ||
|
a6391fb51b | ||
|
2b78405ee2 | ||
|
6ccc6565b2 | ||
|
de0ef9f240 | ||
|
72723286f7 | ||
|
5e38d68984 | ||
|
fc73d1c672 | ||
|
7292979a11 | ||
|
84c5b23ca9 | ||
|
9e37335c56 | ||
|
e8a8570199 | ||
|
2e195067e7 | ||
|
f7f86f622a | ||
|
2a3f5104a2 | ||
|
1aa9618b85 | ||
|
57e40bf3b0 | ||
|
84f8cb92ee | ||
|
def209a37b | ||
|
3b48cd06ea | ||
|
0b96d56b31 | ||
|
d13ef26fe3 | ||
|
9ebbf3e31b | ||
|
618748c37d | ||
|
df44416e5d | ||
|
e4101ca0fa | ||
|
67c526921e | ||
|
8c6542c046 | ||
|
715105270f | ||
|
c227b12644 | ||
|
72095cd455 | ||
|
4285743f63 | ||
|
42edcd3694 | ||
|
ad11324c19 | ||
|
3ecb8267ca | ||
|
713c417864 | ||
|
7633184bd7 | ||
|
84e1180dd3 | ||
|
52f4ec98a2 | ||
|
d3e20aa434 | ||
|
b84a04fb24 | ||
|
96b4a398b2 | ||
|
4f5cb69473 | ||
|
91cb4f525c | ||
|
74d861d179 | ||
|
930b173c8b | ||
|
0e5f19e402 | ||
|
c3b07bf09b | ||
|
7293705393 | ||
|
8cb3f74f52 | ||
|
9cba97a0f0 | ||
|
83c7501c26 | ||
|
97af045d6e | ||
|
9c0ae08772 | ||
|
24b7527dde | ||
|
cd78470267 | ||
|
e53469079d | ||
|
d8e0908633 | ||
|
db6e4bc45c | ||
|
b4d85bffed | ||
|
d106cda2f1 | ||
|
381f17dfcf | ||
|
5cdc6a46c3 | ||
|
acd33773dc | ||
|
6bcf6e159f | ||
|
8d3716f78c | ||
|
4eacc13567 | ||
|
94815042ff | ||
|
703fbcc41e | ||
|
7043a3f3b5 | ||
|
b960044a5b | ||
|
75cb152793 | ||
|
8d5a2ebf0f | ||
|
b5eae23a5d | ||
|
d23a63cf1b | ||
|
fa5a783454 | ||
|
65c34987a4 | ||
|
394d62b06e | ||
|
00ca37f5d9 | ||
|
a3ca76cb88 | ||
|
0992045963 | ||
|
be062d56f2 | ||
|
bf8b095abe | ||
|
a0d812b440 | ||
|
cdee8d5140 | ||
|
a6e14171be | ||
|
b954a1adb5 | ||
|
4cd14ed1c2 | ||
|
094e408385 | ||
|
4c65ba56e1 | ||
|
afa3a914fd | ||
|
a233316a77 | ||
|
1acd00dc1e | ||
|
fb1a16b423 | ||
|
20d47c212c | ||
|
77e5b2c195 | ||
|
7c1914a00a | ||
|
9a9d5f0bef | ||
|
632e36e758 | ||
|
ebd740859e | ||
|
aa8775e974 | ||
|
6a6651c0af | ||
|
dfcbc7d970 | ||
|
a6c13ce3b5 | ||
|
6f9529cc78 | ||
|
98c6f15bc9 | ||
|
2f1aa4583f | ||
|
cd21646c66 | ||
|
0f44576248 | ||
|
9a2e7a3d17 | ||
|
1730a38f1c | ||
|
d822bc8110 | ||
|
5a90db87f7 | ||
|
d1412c0ef5 | ||
|
e027f55b03 | ||
|
f7791ef5ea | ||
|
8682e2a54f | ||
|
0425796c6b | ||
|
3d3b7c0faa | ||
|
e60aa79f1e | ||
|
74d498596b | ||
|
e93789a259 | ||
|
e243bafc9b | ||
|
88178d6b0c | ||
|
f01e92ca67 | ||
|
a7e56fdfcc | ||
|
72cb5f8f42 | ||
|
63309241a4 | ||
|
4fbec836d2 | ||
|
00f73ea7df | ||
|
01c45f19a5 | ||
|
31dc6eda08 | ||
|
9599e87ae3 | ||
|
7e4892df08 | ||
|
4c9e74537c | ||
|
0ae906adad | ||
|
dde79fbd00 | ||
|
dbf55cc3b7 | ||
|
8fd1b31a61 | ||
|
bf0122a7f6 | ||
|
13769c502e | ||
|
bfbede42ad | ||
|
f6c9df2d5d | ||
|
1393660c05 | ||
|
fabb91da5b | ||
|
d461da30b8 | ||
|
134d89c93d | ||
|
8f98c93cfa | ||
|
37a649e3b3 | ||
|
416f224b43 | ||
|
49c72b9976 | ||
|
7ffe579a93 | ||
|
cc0447cea6 | ||
|
c645e122bb | ||
|
6bc2d85f7b | ||
|
ac53515c13 | ||
|
65a2ae3b42 | ||
|
62c4265d29 | ||
|
e4453685a4 | ||
|
cf2db36437 | ||
|
2f34fa724b | ||
|
459d83b9c8 | ||
|
d583248458 | ||
|
8cdc515a6d | ||
|
320f25e5a5 | ||
|
6328108eda | ||
|
97b3bd362a | ||
|
a6c5b7cb89 | ||
|
d5fe0f94f1 | ||
|
7fb73ff66d | ||
|
7bc018b2b8 | ||
|
394b793376 | ||
|
ee75f0f716 | ||
|
b4d3571df8 | ||
|
1ef6c104f7 | ||
|
ae03eadb7b | ||
|
65dd8e1597 | ||
|
82a33ceb93 | ||
|
e345e3de97 | ||
|
d2fe3c484a | ||
|
f2636f0fcc | ||
|
410d4c4ce0 | ||
|
4603606b20 | ||
|
21dc2c293e | ||
|
adb3f9a7ea | ||
|
efca0c78ce | ||
|
db132aedf0 | ||
|
765f748f62 | ||
|
262552607f | ||
|
9038cc4149 | ||
|
c7456244d7 | ||
|
20ec8dc0a9 | ||
|
a378c70a7c | ||
|
1a4c79f9c9 | ||
|
78d95b6bba | ||
|
6f41084f7a | ||
|
31b8c37178 | ||
|
6cfc40f263 | ||
|
20a881471c | ||
|
849e2a9ef2 | ||
|
739cdc7332 | ||
|
a4a65b4d7b | ||
|
5c43195ed2 | ||
|
5d32bb6e11 | ||
|
d549bfbb1a | ||
|
452626d55f | ||
|
b3919618a3 | ||
|
38ab7ea8a0 | ||
|
3713340850 | ||
|
82a9a4fe74 | ||
|
e2d5eb1a46 | ||
|
6737450494 | ||
|
1664dc6551 | ||
|
d3b9396216 | ||
|
20f37b513e | ||
|
917f909d6e | ||
|
418df50088 | ||
|
19404659d0 | ||
|
27cc757df3 | ||
|
e93d7a1329 | ||
|
1ca641458d | ||
|
34f90111be | ||
|
eb89ba37d7 | ||
|
c6263ab04e | ||
|
50e78083b0 | ||
|
120688d555 | ||
|
dad4e0dafe | ||
|
9be3c2fcaf | ||
|
5909e0a10d | ||
|
fa73e1e155 | ||
|
f7f4b58364 | ||
|
086651cd74 | ||
|
cfd869b722 | ||
|
8198101422 | ||
|
29cb4e3228 | ||
|
3216e440bf | ||
|
af3883e6ac | ||
|
34275bc4ad | ||
|
dc51d6e1e3 | ||
|
844d59b87a | ||
|
6ef141ac37 | ||
|
0eb002f4d7 | ||
|
6b65f4dab7 | ||
|
4af4929f64 | ||
|
467153b419 | ||
|
744ce4c9dd | ||
|
57e681e784 | ||
|
45fd157907 | ||
|
ed8478a249 | ||
|
d7beef17b3 | ||
|
af99d1618d | ||
|
562e132c6e | ||
|
90f076db32 | ||
|
7477192ca9 | ||
|
676dae15cd | ||
|
138356e226 | ||
|
95d1659c4a | ||
|
49afe053ee | ||
|
1fb51b2ec9 | ||
|
a2c0f9478c | ||
|
03dd3696b5 | ||
|
60e4b4f1f8 | ||
|
5bf2c35883 | ||
|
afed34ba3b | ||
|
0b1ca0fcb7 | ||
|
503de87f72 | ||
|
6802f62b1d | ||
|
9998918b17 | ||
|
cfa971508f | ||
|
ea6a49adbe | ||
|
31040b1715 | ||
|
460acdb35f | ||
|
ef232b12d6 | ||
|
dbbfd34d01 | ||
|
b03d5ba9ab | ||
|
85a98abced | ||
|
540e6131f8 | ||
|
1b01282ee4 | ||
|
a16915ae2f | ||
|
9cbefd80a6 | ||
|
1fa195819c | ||
|
81dbd85cb2 | ||
|
d98d183440 | ||
|
a413aa848e | ||
|
a100c25dc7 | ||
|
817822b770 | ||
|
bb0212bfb5 | ||
|
155cc97423 | ||
|
856d41b8b7 | ||
|
664bfec179 | ||
|
92c1238e29 | ||
|
e8804dd7b1 | ||
|
8f98f06935 | ||
|
fbfd7b9f0c | ||
|
e7e1bdf31c | ||
|
973d502ef1 | ||
|
703dbc9023 | ||
|
ad34c02a21 | ||
|
af8da3120a | ||
|
06514dff8e | ||
|
783bc8432c | ||
|
b3e81c1955 | ||
|
7df360b842 | ||
|
3bc6e226ce | ||
|
b6e5ac0106 | ||
|
92a74b6aaa | ||
|
d8db64134b | ||
|
01c3cde3f6 | ||
|
30f4a86af1 | ||
|
fe15e9e04f | ||
|
9066e2d87e | ||
|
317c39634c | ||
|
38503e3f52 | ||
|
d09c58e541 | ||
|
c794d645dd | ||
|
09ebef6214 | ||
|
20c400e4e4 | ||
|
1c5c24cd8f | ||
|
8110b429a5 | ||
|
08016043ad | ||
|
6dd2eb13f7 | ||
|
7669270580 | ||
|
d767532b4e | ||
|
843488ce2e | ||
|
4a40e0c5d0 | ||
|
1a48f77018 | ||
|
4aedf560e7 | ||
|
a72ca86192 | ||
|
6eccbab227 | ||
|
ce781b2619 | ||
|
19ea70c804 | ||
|
d99528f914 | ||
|
79d51ab403 | ||
|
5c8cd7452e | ||
|
65fad5c6ae | ||
|
acd46e29f0 | ||
|
54a2f60739 | ||
|
3038f48412 | ||
|
7302d251cb | ||
|
49931d92b2 | ||
|
48e83ad41e | ||
|
855426d518 | ||
|
0ab431c304 | ||
|
77c78a3f93 | ||
|
846e192278 | ||
|
349fa4dddd | ||
|
b8ef6d4cdc | ||
|
bdd7cb7923 | ||
|
53b1b3b9c1 | ||
|
ca22081a78 | ||
|
6d783f2167 | ||
|
f0628bd24c | ||
|
97f7614c5b | ||
|
4cb6d07fe7 | ||
|
3267e03389 | ||
|
70a230bb7e | ||
|
b5a15fb368 | ||
|
14dd7ea239 | ||
|
992e4b68f0 | ||
|
e7a9c8bfb9 | ||
|
513a79f6ab | ||
|
73bc94f367 | ||
|
8c8db5af6c | ||
|
e06295b3e0 | ||
|
8ccd4db00e | ||
|
f052aa3af8 | ||
|
0125a4859d | ||
|
5f129c7dec | ||
|
01af6b17bb | ||
|
ce1c7a9921 | ||
|
a823c99d6c | ||
|
bb85602534 | ||
|
42a8e904e2 | ||
|
1c50ce0726 | ||
|
8f0df06c7c | ||
|
bc55a2bc45 | ||
|
2f94f4d91e | ||
|
3e60a44b30 | ||
|
dead43f69d | ||
|
99cd046955 | ||
|
64954c5cbe | ||
|
3261f0d30f | ||
|
2a125fff38 | ||
|
8c2127108b | ||
|
cf216f886d | ||
|
5d34383ed9 | ||
|
ae59dbf672 | ||
|
b6c662bc48 | ||
|
d06650f8e9 | ||
|
ca3485e31f | ||
|
340c2f4f25 | ||
|
0c2e730735 | ||
|
24280c27f3 | ||
|
47134e777a | ||
|
78b925fd30 | ||
|
448628f984 | ||
|
6c13c714c2 | ||
|
c46d449533 | ||
|
e908693969 | ||
|
9097078d16 | ||
|
3378a82786 | ||
|
808a85ee71 | ||
|
62aac29d23 | ||
|
9065a49551 | ||
|
b37e927d55 | ||
|
ccd6093f3b | ||
|
b998560fec | ||
|
88da6da317 | ||
|
42a1aa3564 | ||
|
c3f63be05a | ||
|
b595094f3f | ||
|
2cada181ee | ||
|
8a12bacaba | ||
|
22022c4cbb | ||
|
3ddd53cf97 | ||
|
1a1d85effb | ||
|
eba77b60b9 | ||
|
f22fda7616 | ||
|
0c8cd4dccd | ||
|
dd5841918b | ||
|
a401281db8 | ||
|
2d746ee9a2 | ||
|
7184853716 | ||
|
ee91b49906 | ||
|
1d65a303f5 | ||
|
1dcbb7ad35 | ||
|
b6bd6ad978 | ||
|
54afefca59 | ||
|
eea7e16523 | ||
|
f1f75e18d0 | ||
|
fe6dbef187 | ||
|
0f08004d1f | ||
|
563be5f7f0 | ||
|
6d4922bb7c | ||
|
8419bc5a55 | ||
|
324609ebe3 | ||
|
ed4be79eef | ||
|
ab6cd18448 | ||
|
d9f41d8139 | ||
|
59f9a1be02 | ||
|
7f6a82660b | ||
|
7bfdae1eaa | ||
|
7c381b64c4 | ||
|
59bab3ed47 | ||
|
a4c1248499 | ||
|
5cd9c34d18 | ||
|
b83ed301a5 | ||
|
5fb986d5b5 | ||
|
24f4a7496e | ||
|
142716c02b | ||
|
291eaaa2c8 | ||
|
cda4589813 | ||
|
eb6ebe6417 | ||
|
7a96ea9415 | ||
|
d67fcacee2 | ||
|
08901ce51a | ||
|
f2d44084dc | ||
|
b9f2d25561 | ||
|
23d874964a | ||
|
9e82ee6d91 | ||
|
7efefc06fb | ||
|
286257652b | ||
|
8bcd27c5aa | ||
|
6725cd44d0 | ||
|
18398a2f8f | ||
|
f5f611eec3 | ||
|
a47ba1fb6a | ||
|
56331bb9fe | ||
|
46c7d8d897 | ||
|
ea679071f8 | ||
|
b861ab3fff | ||
|
6e808e20a0 | ||
|
c486e2f3d4 | ||
|
af2d9e8d7a | ||
|
43fd2404bf | ||
|
42286ef273 | ||
|
8261d3dcc5 | ||
|
729d26b16d | ||
|
7c5d6cd0dd | ||
|
f2e56e0d18 | ||
|
7c881d5605 | ||
|
be6b5d0c15 | ||
|
0665442fe7 | ||
|
940dcde86a | ||
|
0437fc8246 | ||
|
5dc5101f06 | ||
|
85f97d6113 | ||
|
bb2db26932 | ||
|
a3cf7834a4 | ||
|
d35a892149 | ||
|
95228b78e7 | ||
|
749c471666 | ||
|
3d4ad3e536 | ||
|
13c837be81 | ||
|
e9e692c89c | ||
|
6815f38379 | ||
|
62affc810b | ||
|
d91112ff81 | ||
|
542cdffefe | ||
|
0ec6ab4476 | ||
|
09de59dd63 | ||
|
1518225895 | ||
|
ec4417671d | ||
|
8f5dc575d9 | ||
|
e71e374c7f | ||
|
9a6241d565 | ||
|
b7c8171931 | ||
|
db39333642 | ||
|
efab522bee | ||
|
369acfbadf | ||
|
4349ea1c38 | ||
|
13088ebe2c | ||
|
9410785f7a | ||
|
845360da31 | ||
|
fc14a15c98 | ||
|
ee25f8147b | ||
|
d72042c834 | ||
|
94d7f3b18d | ||
|
f8e51f4b93 | ||
|
9795ea552f | ||
|
24f7fe97bd | ||
|
0a9133aa00 | ||
|
28a5621974 | ||
|
0fca49167d | ||
|
c4aec24b1c | ||
|
e930ede140 | ||
|
eff29f7fae | ||
|
247927138c | ||
|
33db7bee6c | ||
|
3fc2774930 | ||
|
e5fb637032 | ||
|
c6ec4c7136 | ||
|
d626986354 | ||
|
bf943ef801 | ||
|
4574c88a7c | ||
|
1ffb582697 | ||
|
3be81a883d | ||
|
558f194c06 | ||
|
a1423d278a | ||
|
93b5160611 | ||
|
14d8f10bf7 | ||
|
302dbd50e4 | ||
|
0d76bc527a | ||
|
d04e1a7cff | ||
|
e7f6290a1e | ||
|
bd9f7088b3 | ||
|
44e2f14de0 | ||
|
24f4bce393 | ||
|
b7803bead1 | ||
|
0fe4b08442 | ||
|
cba1141158 | ||
|
979c5f2332 | ||
|
b3aafb3fcd | ||
|
ed799aec7c | ||
|
8965f123ab | ||
|
9c632eddb6 | ||
|
6e758cd33e | ||
|
938b64d13e | ||
|
6432792916 | ||
|
c7efa4cee7 | ||
|
4fb6378723 | ||
|
dcb7bf1a15 | ||
|
d89bff8a7f | ||
|
887121af56 | ||
|
4dd9805ac8 | ||
|
44cb4f8790 | ||
|
9da239f78e | ||
|
8e04ec9382 | ||
|
c1edf85766 | ||
|
1542674154 | ||
|
1e1a87cd3b | ||
|
536948887f | ||
|
c693f57be9 | ||
|
d2d0f660c8 | ||
|
385845ec8f | ||
|
ec58d79656 | ||
|
9d7b2f0778 | ||
|
15d5a26790 | ||
|
64dce4e79c | ||
|
7cf57f4eb8 | ||
|
bc6958ae7a | ||
|
7241318db4 | ||
|
91401687c3 | ||
|
ea241dd970 | ||
|
f198d87199 | ||
|
55a2db1d4e | ||
|
fe9de28786 | ||
|
8152bb431f | ||
|
9a257e780b | ||
|
1b01da6667 | ||
|
ac68fae02e | ||
|
54f0d8896a | ||
|
22de637298 | ||
|
993946077e | ||
|
e40cb82195 | ||
|
51514c0001 | ||
|
a470003cf3 | ||
|
7fa2ea01ff | ||
|
46b101a574 | ||
|
83189ec0e0 | ||
|
8816d45e94 | ||
|
eb28b21c7e | ||
|
c60a09eae5 | ||
|
755450b380 | ||
|
8f15e1d4c6 | ||
|
b3a957ee4c | ||
|
d754030ccd | ||
|
ba96466d12 | ||
|
50856123c5 | ||
|
165203a3ac | ||
|
a1599c35ed | ||
|
582df940da | ||
|
a2d65f9c61 | ||
|
8ed3768bb3 | ||
|
20c77e7cb7 | ||
|
a99872e5ec | ||
|
c9148dc95f | ||
|
dfd1eeb536 | ||
|
c995b35751 | ||
|
33eb420ac6 | ||
|
f92b012a7a | ||
|
849cb09aef | ||
|
3fb54e9d80 | ||
|
661540e604 | ||
|
d301f672d5 | ||
|
4633e24a80 | ||
|
885dd87a97 | ||
|
07c6693120 | ||
|
4a4a221846 | ||
|
623f0fdf01 | ||
|
e154dc50b8 | ||
|
2c9069326b | ||
|
f0c3fe8a12 | ||
|
1cdb908f64 | ||
|
f5117976df | ||
|
1b59512170 | ||
|
8b09472f29 | ||
|
ac1dd4c0e1 | ||
|
c160045850 | ||
|
ea2bc36da2 | ||
|
996abf57ec | ||
|
1b9c7f9902 | ||
|
51aefea655 | ||
|
43da0d9f91 | ||
|
57f3d06e39 | ||
|
15cca163fd | ||
|
d9a8b7a138 | ||
|
374c768315 | ||
|
3da5397ff6 | ||
|
76f03adf07 | ||
|
00cbdaf00c | ||
|
80f8263a91 | ||
|
6556581a8f | ||
|
0077c22366 | ||
|
6d395c25f1 | ||
|
0c01eefe99 | ||
|
4a0116a160 | ||
|
379bb93191 | ||
|
b241eca5c4 | ||
|
7b0c240daa | ||
|
aaeb178579 | ||
|
a93ae2eb50 | ||
|
585d4a4df2 | ||
|
8290440f60 | ||
|
f1432c8088 | ||
|
5e31e3a779 | ||
|
e9468976bf | ||
|
4d062a0ae9 | ||
|
26cf41833b | ||
|
e352a4ee97 | ||
|
413fee7b5a | ||
|
8a552c1dfc | ||
|
df90f8ac01 | ||
|
edec704950 | ||
|
418b1b81b1 | ||
|
e7430db19d | ||
|
1359e5823c | ||
|
3af768d09c | ||
|
3f6ff4d1cc | ||
|
ce30b1fbca | ||
|
d218fa9635 | ||
|
ef6bd2ff56 | ||
|
b45e5c30dd | ||
|
f6c070a8a4 | ||
|
4d3caf404e | ||
|
65ba7a4d90 | ||
|
6191f39f04 | ||
|
ea03af6494 | ||
|
409cb7ff71 | ||
|
8b24c3e122 | ||
|
3b03776010 | ||
|
e93e182b51 | ||
|
95eb72f16e | ||
|
e5c8be30a2 | ||
|
68333e44ff | ||
|
41a7b6bbde | ||
|
05e2a1c18c | ||
|
152ccdb742 | ||
|
16060c7f34 | ||
|
daece03c7a | ||
|
370503b349 | ||
|
7c8d4af18b | ||
|
26ada91777 | ||
|
d847112468 | ||
|
12432f43ff | ||
|
932ed3eeb6 | ||
|
87d881b29d | ||
|
aa8e1151bb | ||
|
12fd2001a6 | ||
|
f0360bd323 | ||
|
41d8f78b21 | ||
|
acb835f01d | ||
|
ab9ea999ea | ||
|
9b20daae7c | ||
|
fb3c87aa9e | ||
|
81752befcb | ||
|
e57dfd51b9 | ||
|
7f114369bb | ||
|
2c65775852 | ||
|
4110fdec98 | ||
|
653f70569c | ||
|
75ded92652 | ||
|
8f51fea04c | ||
|
593134fb57 | ||
|
c3af39e1eb | ||
|
64a0e02610 | ||
|
c2b3bb1cdb | ||
|
1a7a539c41 | ||
|
ef978463e4 | ||
|
ac68f3fdbc | ||
|
3814882c6d | ||
|
8c772dd4ee | ||
|
8dfff33346 | ||
|
cb863b6347 | ||
|
5dc6d368ad | ||
|
2658775868 | ||
|
786598c9f6 | ||
|
af2cdc6bd5 | ||
|
0e9baf7a25 | ||
|
38f8504a5b | ||
|
c73c4cab7d | ||
|
f8281d6503 | ||
|
2bba569340 | ||
|
7fd83a3073 | ||
|
4a90582846 | ||
|
25682c191c | ||
|
d9fc5faa64 | ||
|
a3e6979930 | ||
|
7122f0748d | ||
|
d0178113b2 | ||
|
03b360059e | ||
|
a04ef9fcd0 | ||
|
d6bd3b07be | ||
|
b0baf69655 | ||
|
44d9bd6905 | ||
|
a335c64a6f | ||
|
1fe434c71d | ||
|
a267db40c7 | ||
|
ef145c1ca9 | ||
|
acd121d1cc | ||
|
2c1fbc7a73 | ||
|
2bb8ceff19 | ||
|
e5f75c1bdb | ||
|
f0b1953ac7 | ||
|
10ae047e35 | ||
|
a8a166e54e | ||
|
549c1c3f82 | ||
|
1e8a0824c8 | ||
|
ecbf4da4ef | ||
|
48a8cbd0b0 | ||
|
aff2b22cb2 | ||
|
bedcf58bb7 | ||
|
6f15d802bd | ||
|
be299832ee | ||
|
46c87e29b2 | ||
|
2b6e59dbdb | ||
|
4fe3bd7897 | ||
|
a1b6de3dad | ||
|
3e42d2f975 | ||
|
8a692aaf0c | ||
|
3f3f10222b | ||
|
199c5f1ca5 | ||
|
3818dcf65a | ||
|
5bb32036dd | ||
|
1c8b469376 | ||
|
a27a0e6b1a | ||
|
72532ad17c | ||
|
854614e002 | ||
|
a9632cf86e | ||
|
ecac818d7e | ||
|
d2ee25cb3b | ||
|
8419bd6a48 | ||
|
047687548c | ||
|
62fe446e36 | ||
|
fa561738d8 | ||
|
670c75eb04 | ||
|
8d9dd0d4e9 | ||
|
68dcf3289f | ||
|
ac32bfc38e | ||
|
458ff9aa9b | ||
|
86f3a872cb | ||
|
47c58a90d4 | ||
|
67b2bd5ec9 | ||
|
ddec89ed71 | ||
|
5a88445914 | ||
|
a58b494eff | ||
|
474b2687eb | ||
|
e1302c7daf | ||
|
ce0d0d9f26 | ||
|
d51bda25bb | ||
|
7e45979cfa | ||
|
1d3f2aacb0 | ||
|
3639372421 | ||
|
6550c2551f | ||
|
c5baa3e444 | ||
|
b6b07f7a7e | ||
|
3eb1850f48 | ||
|
4ae717b571 | ||
|
60a18fc9e1 | ||
|
de9ef1f963 | ||
|
8eb7d72a07 | ||
|
289237207a | ||
|
3e998dfc5b | ||
|
33b160c633 | ||
|
136d25fb5f | ||
|
06a48b338b | ||
|
f0c41767d2 | ||
|
b87c9d803e | ||
|
e3d680065c | ||
|
94ca29297a | ||
|
397754dce1 | ||
|
6713b461b3 | ||
|
81b210a2f9 | ||
|
d3e1cc1784 | ||
|
1d66631389 | ||
|
c41776ae82 | ||
|
509241b79d | ||
|
684c546f9a | ||
|
47236db82a | ||
|
d806b1d4c5 | ||
|
5300f5a8db | ||
|
07c6cdb26c | ||
|
2e0a2c6834 | ||
|
c8606c6731 | ||
|
d090e715ec | ||
|
823ccdf9fb | ||
|
dac0c3c5ca | ||
|
970f314751 | ||
|
ad2295affc | ||
|
aff87e25cf | ||
|
be09c2008b | ||
|
c1cba611d9 | ||
|
bcc36f76b2 | ||
|
abf6eb15cd | ||
|
284ce55cae | ||
|
55394021f2 | ||
|
c6533171ee | ||
|
90248657ec | ||
|
973653590e | ||
|
5506fed6b5 | ||
|
49de153b1d | ||
|
17f5cf8efd | ||
|
5bf8445034 | ||
|
f213958b65 | ||
|
5ab33f4c7f | ||
|
bdf4314790 | ||
|
c81e8421c1 | ||
|
049733d10d | ||
|
3bfbb7aafa | ||
|
422fa81782 | ||
|
184238ef63 | ||
|
1cb605e1d8 | ||
|
a9d7e3362d | ||
|
e350278c66 | ||
|
7869d2a3f7 | ||
|
590763e211 | ||
|
e777b7be25 | ||
|
e0ed448cf7 | ||
|
388d1951fc | ||
|
2e41d2b0a3 | ||
|
2568098b28 | ||
|
cf52b49f3a | ||
|
2d30d5dc0f | ||
|
0e43ba3ff5 | ||
|
86a23e2ba3 | ||
|
b9c599f239 | ||
|
d1eb11e602 | ||
|
a00a4d5093 | ||
|
4d8567fd50 | ||
|
e62f6d1fb5 | ||
|
7fcf9650f1 | ||
|
260607d0ed | ||
|
3deed8f868 | ||
|
efa420e390 | ||
|
a4e5b02e56 | ||
|
9b74180f71 | ||
|
ed782bcb80 | ||
|
f847e666cd | ||
|
2d1626f56f | ||
|
2ab4686a66 | ||
|
74c5ae7ee0 | ||
|
398a37ae59 | ||
|
18ccf5e5b8 | ||
|
17de5f1790 | ||
|
280e4a81b5 | ||
|
805b5bf884 | ||
|
24f4e26010 | ||
|
1cd0ab6740 | ||
|
a6e3214527 | ||
|
d73fd0dd66 | ||
|
d987b6228e | ||
|
24516b13a5 | ||
|
3c95b32a4d | ||
|
6a26d3cf9d | ||
|
a400c3c782 | ||
|
15280457bd | ||
|
39da97ddce | ||
|
98359842f0 | ||
|
c99e13e558 | ||
|
7354baa025 | ||
|
3be84292d1 | ||
|
2c47b94326 | ||
|
e23803cc48 | ||
|
1e17fd44c9 | ||
|
f17c0f5a1b | ||
|
7631d53536 | ||
|
d286940d3c | ||
|
9da14d2ba5 | ||
|
26b727b949 | ||
|
e7d06e85c2 | ||
|
0e15a8af4b | ||
|
143f31f605 | ||
|
bfde34fe25 | ||
|
2dd9d8e37b | ||
|
dc40a2f570 | ||
|
9d6cc9736b | ||
|
7767f90971 | ||
|
a9ab9796cd | ||
|
ad43e56218 | ||
|
2630e4008b | ||
|
300e3d6562 | ||
|
b1f5274b53 | ||
|
8a8e9e8a8c | ||
|
6a62ca7fd8 | ||
|
aa0c7c4f1f | ||
|
c949aba93d | ||
|
c9b101eec2 | ||
|
1f59634196 | ||
|
251b0eb422 | ||
|
1a0b49fe08 | ||
|
1463b74c07 | ||
|
39a2bfd88a | ||
|
68078685d6 | ||
|
8020a96a01 | ||
|
40b43b735d | ||
|
7dc074633b | ||
|
81630832e5 | ||
|
71941da8be | ||
|
9649e3b1dc | ||
|
869a24f41e | ||
|
c805cc9eef | ||
|
a9ebe1bc53 | ||
|
7ef398a164 | ||
|
35848950c3 | ||
|
2d8014dee1 | ||
|
cba29a1faf | ||
|
3d17922f7f | ||
|
bd72b5a956 | ||
|
31c66da8de | ||
|
1b38165bff | ||
|
404502f470 | ||
|
6206489e19 | ||
|
2ea8045ece | ||
|
3222f65db1 | ||
|
96be15493e | ||
|
2de0907374 | ||
|
1e50d9c7a3 | ||
|
f6f9ad8416 | ||
|
a75de423dc | ||
|
f5e3df084d | ||
|
29d0946ca6 | ||
|
408e0194d9 | ||
|
251b8e32bb | ||
|
3da6b75b4d | ||
|
3277b180cf | ||
|
81a1650006 | ||
|
af5ffd6d09 | ||
|
c6385db896 | ||
|
b63ec6d162 | ||
|
5e81b74803 | ||
|
d431465499 | ||
|
895c350f4a | ||
|
4502604cf3 | ||
|
133e4229d4 | ||
|
0075a707fb | ||
|
120eb121b2 | ||
|
dc97a1a4c3 | ||
|
3d34ef4aea | ||
|
fda2204ff8 | ||
|
8b9650420b | ||
|
6c11ef47f9 | ||
|
24b514f047 | ||
|
8bbb8b17df | ||
|
dfa945f163 | ||
|
a00d81b6ce | ||
|
4ccd2394ea | ||
|
3c1fecaec9 | ||
|
52e933fe30 | ||
|
b5071952bf | ||
|
b8a243f476 | ||
|
6e94392784 | ||
|
8c7b3458fb | ||
|
d1abae29bf | ||
|
f21767a701 | ||
|
f8d182f21e | ||
|
f724c7d0b3 | ||
|
e25b4c4384 | ||
|
c8006c87ac | ||
|
47c16d2fe5 | ||
|
e68e86fec2 | ||
|
dd546f8a8d | ||
|
490f282a5a | ||
|
ac978c5cbd | ||
|
1fcefa4553 | ||
|
ad998d906b | ||
|
3b26830969 | ||
|
7fc97ee4a2 | ||
|
d5e765bbfe | ||
|
beb47e181f | ||
|
ad6b514bd3 | ||
|
ae820c4aeb | ||
|
2e61a668a2 | ||
|
a4e59c05d8 | ||
|
b0967c9241 | ||
|
d4d931cac0 | ||
|
1e1bab6fb4 | ||
|
0fad2fabb9 | ||
|
354d864101 | ||
|
01dab416e5 | ||
|
bd3d98ef0a | ||
|
e7ab706f71 | ||
|
3974530347 | ||
|
36bae5730e | ||
|
3ba2b5b56c | ||
|
235a16129c | ||
|
acc8e90105 | ||
|
51780a5223 | ||
|
b4acc27d4e | ||
|
1d6314556e | ||
|
06dbba6f5d | ||
|
4841aff2d4 | ||
|
d793dafb1f | ||
|
6ba4b8a918 | ||
|
26b2d24ad7 | ||
|
5e57c26a17 | ||
|
5d1565da32 | ||
|
56a999065b | ||
|
3c1489343b | ||
|
30705191ef | ||
|
bb5383b4cf | ||
|
0927b13b27 | ||
|
beffbdf3ee | ||
|
6023c32517 | ||
|
ae52e6cd89 | ||
|
37a6efbbaa | ||
|
b479925436 | ||
|
6474e1165a | ||
|
428aade405 | ||
|
a1746c5fa0 | ||
|
9e86aa5a1a | ||
|
bcfcb14820 | ||
|
5471c93b13 | ||
|
c40b9fc787 | ||
|
58ebc5700a | ||
|
3d25ed3b03 | ||
|
6e6da4ebfa | ||
|
f656491a73 | ||
|
b6f1bbfcc0 | ||
|
124022d62c | ||
|
2bb60520ca | ||
|
cc0689a262 | ||
|
f57fd08e4e | ||
|
e81778ff80 | ||
|
d8e19a4295 | ||
|
92b29bd03f | ||
|
be482dd9d0 | ||
|
9216344eed | ||
|
08d0f07005 | ||
|
2734f0a9fc | ||
|
651f4d51d5 | ||
|
78cc74f3c5 | ||
|
98df064022 | ||
|
4ccabc22ca | ||
|
7b1c595b19 | ||
|
c711544bdb | ||
|
b42334ad96 | ||
|
1babca66f4 | ||
|
2286e3c817 | ||
|
a5ec27954a | ||
|
1398eae1fa | ||
|
dfb2de91e3 | ||
|
3a1a6bd420 | ||
|
c2604b1c2c | ||
|
6fb438e2b0 | ||
|
cfd763ce5b | ||
|
a9ac6ab664 | ||
|
7ec784ea3e | ||
|
7a9c8cdaed | ||
|
8e2adcb028 | ||
|
ee2d4382dc | ||
|
dd9668fac9 | ||
|
2f0f8af4e8 | ||
|
dd0d0b7db4 | ||
|
2ef2ae7d8d | ||
|
f470f67925 | ||
|
b731561839 | ||
|
e7b6777216 | ||
|
e1a6f889a3 | ||
|
e50ef9202e | ||
|
2307619413 | ||
|
75f6123baa | ||
|
262ff0b254 | ||
|
76fb55e12b | ||
|
d3154a8bbd | ||
|
673f0f5a8e | ||
|
9eb83cdaec | ||
|
73cd87dcd0 | ||
|
1fa17d8af6 | ||
|
8f3961c19d | ||
|
7774b05920 | ||
|
f472a3891e | ||
|
ac1f91b5c4 | ||
|
cc11e53141 | ||
|
0b05de1029 | ||
|
643711fcd3 | ||
|
aff3e6f134 | ||
|
ac540fdb5a | ||
|
3f04a89506 | ||
|
08d11256ac | ||
|
2581dd2c74 | ||
|
83e4782137 | ||
|
8631f0349d | ||
|
19119ba864 | ||
|
c9f1de6558 | ||
|
906a9bf66f | ||
|
8181537299 | ||
|
ad4b3078cb | ||
|
e588efcd23 | ||
|
e602990e9e | ||
|
219627f095 | ||
|
db893ad00e | ||
|
945b5ce7f9 | ||
|
801c0bccf6 | ||
|
2a885bfef0 | ||
|
996ecc1620 | ||
|
e50a5a702d | ||
|
a0fee04300 | ||
|
dd1d297758 | ||
|
7b55f3176f | ||
|
0af85ca569 | ||
|
19fed519d5 | ||
|
638edb5111 | ||
|
b8a1493724 | ||
|
b73de2efb5 | ||
|
773852cc9d | ||
|
33b719893d | ||
|
e57c0f6ce7 | ||
|
8312c51259 | ||
|
e77afc3a96 | ||
|
31e23343a4 | ||
|
df06b5accc | ||
|
d5c1f366b7 | ||
|
f6579beb52 | ||
|
3c88a26d92 | ||
|
c9c8640f27 | ||
|
4368c6419f | ||
|
0c07aeb69b | ||
|
8440115c38 | ||
|
38c7c683bb | ||
|
7a159fb956 | ||
|
5f16cf6bd1 | ||
|
be8e4693d7 | ||
|
c771ef0c84 | ||
|
423a6a4500 | ||
|
ff1fafd650 | ||
|
5583220b06 | ||
|
de19f1b0ee | ||
|
96f9585ef3 | ||
|
56d07ffb16 | ||
|
8ec1d3e4f5 | ||
|
3337700a44 | ||
|
718791deee | ||
|
c1c59c7c75 | ||
|
9ad2da39ec | ||
|
3b93c6148c | ||
|
def791b4a0 | ||
|
94edbca68b | ||
|
f70df3b117 | ||
|
5d4f9f0ec1 | ||
|
a8869649b8 | ||
|
757cee6e00 | ||
|
b8a8f4d7c1 | ||
|
7e693ff6d0 | ||
|
6cc844c8ed | ||
|
8c976d2669 | ||
|
b171ae4b7d | ||
|
faa80bdc5f | ||
|
6daadc819d | ||
|
86620fda03 | ||
|
5b3d8719ea | ||
|
eb38b5efe4 | ||
|
6db7d7c211 | ||
|
8f191e58a6 | ||
|
6941764e2a | ||
|
c6218be868 | ||
|
e70cf0ab41 | ||
|
c60fb206ce | ||
|
9643c77c7a | ||
|
6fbf639024 | ||
|
3fea10bcac | ||
|
ce19c43d74 | ||
|
7961aa8e9f | ||
|
791a06f9bd | ||
|
2a4aa94400 | ||
|
904dda7a91 | ||
|
21467fb7d9 | ||
|
f69bffb628 | ||
|
ca08fd48cc | ||
|
cfeda7f743 | ||
|
a810882857 | ||
|
21d2216d5a | ||
|
26609afffb | ||
|
a58cdff026 | ||
|
bdd35cc7f9 | ||
|
d8a8b95e72 | ||
|
29e0176c88 | ||
|
fb329b5d90 | ||
|
15fca2bedb | ||
|
d92abf5549 | ||
|
dabe76a187 | ||
|
84467a2373 | ||
|
dc99cea053 | ||
|
9042a52889 | ||
|
dc3bb567a0 | ||
|
3691cf2fac | ||
|
daa3d11ba8 | ||
|
2bfc9fb939 | ||
|
ddef8051c3 | ||
|
77b2c1ab56 | ||
|
77c535494f | ||
|
b571cb35b9 | ||
|
1c2f7121e5 | ||
|
e13004a1e8 | ||
|
2ec80cff3a | ||
|
f088f9ca37 | ||
|
512750dd3d | ||
|
c2a9e51b5b | ||
|
1856c76cb3 | ||
|
7e24e49def | ||
|
8fddb0ebe0 | ||
|
c912924208 | ||
|
b1a87d7d8f | ||
|
d0fba6adcc | ||
|
d846717fa9 | ||
|
15d989004b | ||
|
60c7cdb301 | ||
|
527c5fc2be | ||
|
60a50cdb75 | ||
|
d1f11a5d09 | ||
|
b8e63d2236 | ||
|
d23e0d8c3d | ||
|
d90166cb63 | ||
|
73a0990704 | ||
|
31e97114c7 | ||
|
19a41b921f | ||
|
631386f955 | ||
|
20e1643aff | ||
|
4f29068dcd | ||
|
3708e55179 | ||
|
e746a7e6a2 | ||
|
082217a132 | ||
|
cf420b1ad4 | ||
|
7fe3b30b15 | ||
|
3fd1ebb15b | ||
|
051a936621 | ||
|
eadcbccc20 | ||
|
eed9e7149c | ||
|
a292291723 | ||
|
17c6c4946f | ||
|
d6f6afe9be | ||
|
9e3a7afddd | ||
|
dfbdde8280 | ||
|
517d4746fd | ||
|
d94d1c5ef8 | ||
|
ec7fd08352 | ||
|
c191de487d | ||
|
899b5c51c2 | ||
|
57bc1087cc | ||
|
2220dea286 | ||
|
8b8eb0955f | ||
|
e6f6742539 | ||
|
6f0ba22606 | ||
|
44e2882fb7 | ||
|
1e885470d0 | ||
|
5384313b41 | ||
|
2614237393 | ||
|
17660bb6b1 | ||
|
3710d30ea2 | ||
|
6cbbf28cc1 | ||
|
6f4af34b27 | ||
|
710a48aa68 | ||
|
d351782a38 | ||
|
1dc996728f | ||
|
f7ca08b540 | ||
|
264985b4dc | ||
|
6cc6cdbabb | ||
|
1a7038f240 | ||
|
30a45d62d8 | ||
|
6bdfba8d68 | ||
|
7e5e325bc2 | ||
|
39561c1c7f | ||
|
d44ad1bea3 | ||
|
0d8223f8e8 | ||
|
0a25e32367 | ||
|
df0e0d8de3 | ||
|
84c78b6d70 | ||
|
68edff9823 | ||
|
de3783179e | ||
|
aac7b62ec3 | ||
|
542f5d9cde | ||
|
c07534e5dd | ||
|
6a3c137c9b | ||
|
7e469ef585 | ||
|
8c69f688e0 | ||
|
6d7998718d | ||
|
f1b5a7b8e7 | ||
|
2504cff6ec | ||
|
a824ddc210 | ||
|
8a64ac3312 | ||
|
c862aed4dd | ||
|
444dee6d38 | ||
|
5c378df245 | ||
|
f520ccd03d | ||
|
8003dab804 | ||
|
38f6320a80 | ||
|
f12a732161 | ||
|
891ece063b | ||
|
f2a1c8b67a | ||
|
546fee6c16 | ||
|
08374a6ca2 | ||
|
8fec017cac | ||
|
43d2ade5a2 | ||
|
5ca1cf9f5b | ||
|
447d2e2261 | ||
|
f47a63883e | ||
|
893d7395d2 | ||
|
e7fa57d0ca | ||
|
300d47b312 | ||
|
d137234e63 | ||
|
00bdd7c957 | ||
|
ec97b0d742 | ||
|
e929cb6a8c | ||
|
4e8113845f | ||
|
8d76a5baec | ||
|
e87b162414 | ||
|
aa2a91a443 | ||
|
773b13065c | ||
|
ea9f78cc80 | ||
|
c2342d6dd7 | ||
|
6befb62661 | ||
|
aeee1ddceb | ||
|
799697e27e | ||
|
34f30ce585 | ||
|
2bdb60b6b2 | ||
|
22270e9f37 | ||
|
40d6b624f1 | ||
|
0c330c108e | ||
|
b36dd456b1 | ||
|
7ac88bb173 | ||
|
1715e8fcfb | ||
|
825564a656 | ||
|
880dfd72c5 | ||
|
6de9582dd0 | ||
|
08014e9654 | ||
|
11a8b3c9a4 | ||
|
9e9b246f8b | ||
|
bcee54769d | ||
|
ee788a8b65 | ||
|
ef97de7b16 | ||
|
0531015a2b | ||
|
613a939a79 | ||
|
7ddef9ac59 | ||
|
29b99b479a | ||
|
a7228ec127 | ||
|
a1c108656c | ||
|
77a9cafa8a | ||
|
9615fdbc1a | ||
|
86ff585755 | ||
|
ca4caa597a | ||
|
5e5d69706b | ||
|
9c1aedca65 | ||
|
e8f875ef58 | ||
|
08850f9e7e | ||
|
d94b8f2f1f | ||
|
b173b7ed8d | ||
|
28059229b2 | ||
|
81b08e2a3e | ||
|
a272966c3b | ||
|
35ac1b2e6a | ||
|
1ab3090c1a | ||
|
9327ce6b25 | ||
|
80939adbee | ||
|
0a035406b7 | ||
|
0d9b0a09b6 | ||
|
6155d54628 | ||
|
cbd34c4c8b | ||
|
e8abe79287 | ||
|
2652cb3595 | ||
|
b2337bfa35 | ||
|
eb25430711 | ||
|
a0fe064782 | ||
|
5f9aa5aba2 |
94 changed files with 14228 additions and 0 deletions
3
debian/.gitattributes
vendored
Normal file
3
debian/.gitattributes
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
.gitattributes export-ignore
|
||||||
|
gbp.conf export-ignore
|
||||||
|
salsa-ci.yml export-ignore
|
47
debian/.gitlab-ci.yml
vendored
Normal file
47
debian/.gitlab-ci.yml
vendored
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
---
|
||||||
|
# https://docs.gitlab.com/ce/ci/yaml/#include
|
||||||
|
include:
|
||||||
|
- remote: https://salsa.debian.org/onlyjob/ci/raw/master/onlyjob-ci.yml
|
||||||
|
|
||||||
|
## "amd64-unstable+lintian" job always runs by default (except on
|
||||||
|
## "buster-backports" branches).
|
||||||
|
|
||||||
|
## Only for arch:all packages:
|
||||||
|
binary-indep:
|
||||||
|
extends: .build-indep
|
||||||
|
|
||||||
|
## Job to check Build-Depends versioning:
|
||||||
|
amd64-testing_unstable:
|
||||||
|
extends: .build
|
||||||
|
except:
|
||||||
|
- buster-backports
|
||||||
|
- tags
|
||||||
|
variables:
|
||||||
|
arch: amd64
|
||||||
|
dist: testing_unstable
|
||||||
|
|
||||||
|
i386-unstable:
|
||||||
|
extends: .build
|
||||||
|
except:
|
||||||
|
- buster-backports
|
||||||
|
- tags
|
||||||
|
variables:
|
||||||
|
arch: i386
|
||||||
|
dist: unstable
|
||||||
|
|
||||||
|
amd64-experimental:
|
||||||
|
extends: .build
|
||||||
|
except:
|
||||||
|
- buster-backports
|
||||||
|
- tags
|
||||||
|
variables:
|
||||||
|
arch: amd64
|
||||||
|
dist: experimental
|
||||||
|
|
||||||
|
amd64-stable:
|
||||||
|
extends: .build
|
||||||
|
when: manual
|
||||||
|
allow_failure: true
|
||||||
|
variables:
|
||||||
|
arch: amd64
|
||||||
|
dist: stable
|
88
debian/Gemfile.autopkgtest
vendored
Normal file
88
debian/Gemfile.autopkgtest
vendored
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
# --- Special code for migrating to Rails 5.0 ---
|
||||||
|
def rails5?
|
||||||
|
%w[1 true].include?(ENV["RAILS5"])
|
||||||
|
end
|
||||||
|
|
||||||
|
gem_versions = {}
|
||||||
|
gem_versions['activerecord_sane_schema_dumper'] = rails5? ? '1.0' : '0.2'
|
||||||
|
gem_versions['default_value_for'] = rails5? ? '~> 3.0.5' : '~> 3.0'
|
||||||
|
gem_versions['rails'] = rails5? ? '5.0.7' : '4.2.10'
|
||||||
|
gem_versions['rails-i18n'] = rails5? ? '~> 5.1' : '~> 4.0.9'
|
||||||
|
# --- The end of special code for migrating to Rails 5.0 ---
|
||||||
|
|
||||||
|
source 'https://rubygems.org'
|
||||||
|
gem 'rails', gem_versions['rails']
|
||||||
|
|
||||||
|
# Use packaged native gems
|
||||||
|
gem 'rake', '12.3.1'
|
||||||
|
gem 'rails-dom-testing', '1.0.6'
|
||||||
|
gem 'nokogiri', '1.8.4'
|
||||||
|
gem 'pg', '~> 0.19.0'
|
||||||
|
gem 'rack', '~> 1.6.4'
|
||||||
|
gem 'sprockets-rails', '~> 2.3.2'
|
||||||
|
|
||||||
|
if ENV["INCLUDE_TEST_DEPENDS"] == "true"
|
||||||
|
gem 'bootsnap', '~> 1.3'
|
||||||
|
gem 'pry-byebug', '~> 3.4.1', platform: :mri
|
||||||
|
gem 'pry-rails', '~> 0.3.4'
|
||||||
|
|
||||||
|
gem 'awesome_print', require: false
|
||||||
|
gem 'fuubar', '~> 2.2.0'
|
||||||
|
|
||||||
|
gem 'database_cleaner', '~> 1.5.0'
|
||||||
|
gem 'factory_bot_rails', '~> 4.8.2'
|
||||||
|
gem 'rspec-rails', '~> 3.7' # Use packaged version
|
||||||
|
gem 'rspec-retry', '~> 0.4.5'
|
||||||
|
gem 'rspec_profiling', '~> 0.0.5'
|
||||||
|
gem 'rspec-set', '~> 0.1.3'
|
||||||
|
gem 'rspec-parameterized', require: false
|
||||||
|
|
||||||
|
# Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
|
||||||
|
gem 'minitest', '~> 5.7.0'
|
||||||
|
|
||||||
|
# Generate Fake data
|
||||||
|
gem 'ffaker', '~> 2.4'
|
||||||
|
|
||||||
|
gem 'capybara', '~> 2.15'
|
||||||
|
gem 'capybara-screenshot', '~> 1.0.0'
|
||||||
|
gem 'selenium-webdriver', '~> 3.12'
|
||||||
|
|
||||||
|
gem 'spring', '~> 2.0.0'
|
||||||
|
gem 'spring-commands-rspec', '~> 1.0.4'
|
||||||
|
|
||||||
|
gem 'gitlab-styles', '~> 2.4', require: false
|
||||||
|
# Pin these dependencies, otherwise a new rule could break the CI pipelines
|
||||||
|
gem 'rubocop', '~> 0.54.0'
|
||||||
|
gem 'rubocop-rspec', '~> 1.22.1'
|
||||||
|
|
||||||
|
gem 'scss_lint', '~> 0.56.0', require: false
|
||||||
|
gem 'haml_lint', '~> 0.26.0', require: false
|
||||||
|
gem 'simplecov', '~> 0.14.0', require: false
|
||||||
|
gem 'bundler-audit', '~> 0.5.0', require: false
|
||||||
|
|
||||||
|
gem 'benchmark-ips', '~> 2.3.0', require: false
|
||||||
|
|
||||||
|
gem 'license_finder', '~> 5.4', require: false
|
||||||
|
gem 'knapsack', '~> 1.16'
|
||||||
|
|
||||||
|
gem 'activerecord_sane_schema_dumper', gem_versions['activerecord_sane_schema_dumper']
|
||||||
|
|
||||||
|
gem 'stackprof', '~> 0.2.10', require: false
|
||||||
|
|
||||||
|
gem 'simple_po_parser', '~> 1.1.2', require: false
|
||||||
|
|
||||||
|
gem 'timecop', '~> 0.8.0'
|
||||||
|
#end
|
||||||
|
|
||||||
|
#group :test do
|
||||||
|
gem 'shoulda-matchers', '~> 3.1.2', require: false
|
||||||
|
gem 'email_spec', '~> 2.2.0'
|
||||||
|
gem 'json-schema', '~> 2.8.0'
|
||||||
|
gem 'webmock', '>= 2.3.2'
|
||||||
|
gem 'rails-controller-testing' if rails5? # Rails5 only gem.
|
||||||
|
gem 'test_after_commit', '~> 1.1' unless rails5? # Remove this gem when migrated to rails 5.0. It's been integrated to rails 5.0.
|
||||||
|
gem 'sham_rack', '~> 1.3.6'
|
||||||
|
gem 'concurrent-ruby', '~> 1.0.5'
|
||||||
|
gem 'test-prof', '~> 0.2.5'
|
||||||
|
gem 'rspec_junit_formatter'
|
||||||
|
end
|
161
debian/README.Debian
vendored
Normal file
161
debian/README.Debian
vendored
Normal file
|
@ -0,0 +1,161 @@
|
||||||
|
Debian specific changes in gitlab
|
||||||
|
=================================
|
||||||
|
|
||||||
|
1. Redis connection: redis-server package in debian follows upstream default
|
||||||
|
and listens on tcp port 6379. So gitlab package in debian is configured to use
|
||||||
|
tcp sockets. gitlab developers recommend using unix sockets. You can change to
|
||||||
|
using unix sockets by changing the following configuration files.
|
||||||
|
|
||||||
|
/etc/redis/redis.conf, /etc/gitlab/resque.yml, and /etc/gitlab/cable.yml
|
||||||
|
|
||||||
|
2. wiki backend: debian package uses gollum-rugged_adapter whereas gitlab
|
||||||
|
upstream still use gollum-grit_adapter. grit is no longer maintained and grit
|
||||||
|
developers recommend switching to rugged. gollum-lib developers have announced
|
||||||
|
their intention to switch to rugged_adapter by default and this is in progress.
|
||||||
|
|
||||||
|
3. default paths: debian package has changed some default values for paths
|
||||||
|
which you can see at /etc/gitlab/gitlab-debian.conf
|
||||||
|
|
||||||
|
4. database: gitlab package configures postgresql database with peer
|
||||||
|
authentication.
|
||||||
|
|
||||||
|
5. gem versions: some gem dependency requirements are relaxed to work with
|
||||||
|
their packaged version in debian.
|
||||||
|
|
||||||
|
You can find the list of gems required by gitlab and their corresponding
|
||||||
|
package versions in debian at
|
||||||
|
http://debian.fosscommunity.in/status/?appname=gitlab&sort=satisfied
|
||||||
|
|
||||||
|
6. vendored js files: some embedded javascript files in
|
||||||
|
vendor/assets/javascripts are replaced by their packaged version.
|
||||||
|
|
||||||
|
7. root directory of rails is read only (/usr/share/gitlab); following symbolic
|
||||||
|
links are added to enable write access to gitlab app
|
||||||
|
|
||||||
|
> config -> /etc/gitlab
|
||||||
|
> Gemfile.lock -> /var/lib/gitlab/Gemfile.lock
|
||||||
|
> log -> /var/log/gitlab
|
||||||
|
> builds -> /var/log/gitlab/builds
|
||||||
|
> tmp -> /run/gitlab
|
||||||
|
> /run/gitlab/cache -> var/lib/gitlab/cache
|
||||||
|
> public -> /var/lib/gitlab/public
|
||||||
|
> shared -> /var/lib/gitlab/shared
|
||||||
|
> db -> /var/lib/gitlab/db
|
||||||
|
> /usr/share/gitlab/.secret -> /var/lib/gitlab/.secret
|
||||||
|
|
||||||
|
8. ssl certificates: This package tries to use letsencrypt package to obtain
|
||||||
|
ssl certificates, if it is installed (via Recommends). If letsencrypt is not
|
||||||
|
required, you can copy ssl certificate and key to /etc/gitlab/ssl as gitlab.crt
|
||||||
|
and gitlab.key. If letsencrypt option is selected, symbolic links are added for
|
||||||
|
certificates obtained using letsencrypt to /etc/gitlab/ssl.
|
||||||
|
|
||||||
|
9. exim compatibility issue: If you use exim as your mta, then see
|
||||||
|
https://github.com/gitlabhq/gitlabhq/issues/4866#issuecomment-145784636
|
||||||
|
|
||||||
|
Useful diagnostics
|
||||||
|
==================
|
||||||
|
|
||||||
|
Upstream documentation will instruct to run commands like the following:
|
||||||
|
|
||||||
|
$ sudo -u gitlab -H bundle exec rake XXX RAILS_ENV=production
|
||||||
|
|
||||||
|
Where XXX is something like "db:migrate", "gitlab:check" or "gitlab:env:info".
|
||||||
|
In Debian, the rake command has to be called by the gitlab user from app home
|
||||||
|
directory /usr/share/gitlab and with the environment variables from
|
||||||
|
/etc/gitlab/gitlab-debian.conf set. So above command could be run like:
|
||||||
|
|
||||||
|
$ runuser -u gitlab -- sh -c 'cd /usr/share/gitlab && . /etc/gitlab/gitlab-debian.conf && export DB RAILS_ENV && bundle exec rake XXX RAILS_ENV=production'
|
||||||
|
|
||||||
|
One useful command to run in this environment is:
|
||||||
|
|
||||||
|
$ bundle exec rake gitlab:check RAILS_ENV=production
|
||||||
|
|
||||||
|
Which will output helpful diagnostics about the state of your system including
|
||||||
|
how to fix possible problems. Another one is:
|
||||||
|
|
||||||
|
$ bundle exec rake gitlab:env:info RAILS_ENV=production
|
||||||
|
|
||||||
|
To see service status with systemd, you can use:
|
||||||
|
|
||||||
|
$ systemctl status gitlab.service -l
|
||||||
|
$ systemctl status gitlab-unicorn.service -l
|
||||||
|
$ systemctl status gitlab-sidekiq.service -l
|
||||||
|
$ systemctl status gitlab-workhorse.service -l
|
||||||
|
$ journalctl -xn
|
||||||
|
|
||||||
|
It is advised to attach the output of above commands to bugreports.
|
||||||
|
|
||||||
|
Migrating from non-Debian gitlab
|
||||||
|
================================
|
||||||
|
|
||||||
|
0. Backup everything you don't want to loose like:
|
||||||
|
- the postgresql database used by your gitlab instance
|
||||||
|
- the repositories/ directory
|
||||||
|
- the public/uploads/ directory
|
||||||
|
- your .ssh/authorized_keys
|
||||||
|
1. Remove the init script for your old gitlab installation, like:
|
||||||
|
$ rm /etc/init.d/gitlab
|
||||||
|
2. Install Debian gitlab:
|
||||||
|
$ apt-get install gitlab
|
||||||
|
3. Stop gitlab services:
|
||||||
|
$ systemctl stop gitlab.service
|
||||||
|
4. Rename your old database to gitlab_production and set the user gitlab as
|
||||||
|
its owner and the owner of all its tables, sequences and views
|
||||||
|
$ su - postgres
|
||||||
|
$ psql
|
||||||
|
# drop database gitlab_production;
|
||||||
|
# alter database gitlabhq_production rename to gitlab_production;
|
||||||
|
# alter database gitlab_production owner to gitlab;
|
||||||
|
# \q
|
||||||
|
$ for tbl in `psql -qAt -c "select tablename from pg_tables where schemaname = 'public';" gitlab_production` ; do psql -c "alter table \"$tbl\" owner to gitlab" gitlab_production ; done
|
||||||
|
$ for tbl in `psql -qAt -c "select sequence_name from information_schema.sequences where sequence_schema = 'public';" gitlab_production` ; do psql -c "alter table \"$tbl\" owner to gitlab" gitlab_production ; done
|
||||||
|
5. Copy your old repository directory to /var/lib/gitlab/repositories/
|
||||||
|
6. Copy your old public/uploads/ directory to /var/lib/gitlab/public/uploads/
|
||||||
|
7. Copy your old .ssh/authorized_keys to /var/lib/gitlab/.ssh/authorized_keys
|
||||||
|
8. Fix your /var/lib/gitlab/.ssh/authorized_keys to contain the right path to gitlab-shell like:
|
||||||
|
$ sed -i 's/^command="[^ ]\+gitlab-shell /command="\/usr\/share\/gitlab-shell\/bin\/gitlab-shell /' /usr/share/gitlab/.ssh/authorized_keys
|
||||||
|
9. Fix permission:
|
||||||
|
$ chown -R gitlab:gitlab /var/lib/gitlab/repositories/ /var/lib/gitlab/public/uploads/ /var/lib/gitlab/.ssh/authorized_keys
|
||||||
|
$ chmod -R ug+rwX,o-rwx /var/lib/gitlab/repositories/
|
||||||
|
$ find /var/lib/gitlab/public/uploads -type f -exec chmod 0644 {} \;
|
||||||
|
$ find /var/lib/gitlab/public/uploads -type d -not -path /var/lib/gitlab/public/uploads -exec chmod 0700 {} \;
|
||||||
|
10. Migrate the database:
|
||||||
|
$ runuser -u gitlab -- sh -c 'cd /usr/share/gitlab && . /etc/gitlab/gitlab-debian.conf && export DB RAILS_ENV && bundle exec rake db:migrate RAILS_ENV=production'
|
||||||
|
11. Fix hooks:
|
||||||
|
# su gitlab
|
||||||
|
$ /usr/share/gitlab-shell/bin/create-hooks
|
||||||
|
12. Start gitlab:
|
||||||
|
$ systemctl start gitlab.service
|
||||||
|
13. Check the installation:
|
||||||
|
$ runuser -u gitlab -- sh -c 'cd /usr/share/gitlab && . /etc/gitlab/gitlab-debian.conf && export DB RAILS_ENV && bundle exec rake gitlab:check RAILS_ENV=production'
|
||||||
|
|
||||||
|
Resetting admin password without web interface
|
||||||
|
==============================================
|
||||||
|
The steps involve dropping into rails console as gitlab user for production environment and then resetting the admin password via the user object.
|
||||||
|
$ gitlab-rails-console
|
||||||
|
irb(main):001:0> user = User.where(admin: true).first
|
||||||
|
irb(main):002:0> user.password = 'secret_pass'
|
||||||
|
irb(main):003:0> user.password_confirmation = 'secret_pass'
|
||||||
|
irb(main):004:0> user.save!
|
||||||
|
|
||||||
|
Activating a newly registered user
|
||||||
|
======================================
|
||||||
|
The steps involve dropping into rails console as gitlab user for production environment and running the following commands.
|
||||||
|
$ gitlab-rails-console
|
||||||
|
irb(main):001:0> user = User.find_by(email: 'useraddress@domain')
|
||||||
|
irb(main):004:0> user.state='active'
|
||||||
|
irb(main):005:0> user.save
|
||||||
|
|
||||||
|
Granting an existing user admin access
|
||||||
|
======================================
|
||||||
|
The steps involve dropping into rails console as gitlab user for production environment and running the following commands.
|
||||||
|
$ gitlab-rails-console
|
||||||
|
irb(main):001:0> user = User.find_by(email: 'useraddress@domain')
|
||||||
|
irb(main):003:0> user.admin=true
|
||||||
|
irb(main):004:0> user.state='active'
|
||||||
|
irb(main):005:0> user.save
|
||||||
|
|
||||||
|
Latest information regarding supported versions
|
||||||
|
===============================================
|
||||||
|
Subscribe to https://wiki.debian.org/gitlab to get updates about new package
|
||||||
|
versions in unofficial repositories.
|
14
debian/README.source
vendored
Normal file
14
debian/README.source
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
Git Branches and meanings:
|
||||||
|
|
||||||
|
master :always current development, now 9.x in contrib, using npm
|
||||||
|
syslibs :now 9.x in main, needs packages in NEW
|
||||||
|
master-8 :created to continue working on gitlab 8.x when master moved
|
||||||
|
to 9 (since 9.x upload in unstable, this branch is not relevant)
|
||||||
|
stretch-updates :now 8.x in main, security updates for stretch
|
||||||
|
|
||||||
|
Create master-10 till 10.x is ready for unstable. Security updates should be
|
||||||
|
in stretch-updates branch or in temporary branches created from it.
|
||||||
|
|
||||||
|
certain go dependencies of gitlab-workhorse is not yet packaged.So you'll have
|
||||||
|
to rename the previous workhorse orig tar when importing a new verision of gitlab
|
||||||
|
|
3311
debian/changelog
vendored
Normal file
3311
debian/changelog
vendored
Normal file
File diff suppressed because it is too large
Load diff
4
debian/check-ruby-syntax.sh
vendored
Normal file
4
debian/check-ruby-syntax.sh
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# For whole tree
|
||||||
|
find . -name \*.rb -exec ruby -wc {} \; 2>&1 | grep error
|
||||||
|
# For changed files
|
||||||
|
for i in `git diff --name-only debian/13.1.1-1 HEAD | grep \.rb\$`; do ruby -wc $i; done
|
48
debian/clean
vendored
Normal file
48
debian/clean
vendored
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
## Debian CI:
|
||||||
|
debian/.gitlab-ci.yml
|
||||||
|
|
||||||
|
# Build directory
|
||||||
|
_build/
|
||||||
|
|
||||||
|
# We don't need lint tasks
|
||||||
|
lib/tasks/haml-lint.rake
|
||||||
|
lib/tasks/rubocop.rake
|
||||||
|
lib/tasks/scss-lint.rake
|
||||||
|
|
||||||
|
debian/upstream-file-list.new
|
||||||
|
debian/upstream-config-file-list.new
|
||||||
|
|
||||||
|
# We have rails > 6.0.2
|
||||||
|
config/initializers/active_record_fix_insert_all.rb
|
||||||
|
|
||||||
|
# We have sidekiq 6
|
||||||
|
config/initializers/mailer_retries.rb
|
||||||
|
|
||||||
|
# We have puma 5.2.2
|
||||||
|
config/initializers/puma_client_tempfile_patch.rb
|
||||||
|
|
||||||
|
# For workhorse
|
||||||
|
## Failing tests that require test data from the Internet:
|
||||||
|
workhorse/main_test.go
|
||||||
|
workhorse/authorization_test.go
|
||||||
|
workhorse/channel_test.go
|
||||||
|
workhorse/gitaly_integration_test.go
|
||||||
|
workhorse/gitaly_test.go
|
||||||
|
workhorse/jobs_test.go
|
||||||
|
workhorse/sendfile_test.go
|
||||||
|
workhorse/upload_test.go
|
||||||
|
workhorse/internal/upload/*_test.go
|
||||||
|
workhorse/internal/objectstore/*_test.go
|
||||||
|
workhorse/internal/redis/*_test.go
|
||||||
|
## Need definitions from excluded test files
|
||||||
|
workhorse/cable_test.go
|
||||||
|
## Need github.com/johannesboyne/gofakes3/backend/s3mem
|
||||||
|
workhorse/internal/objectstore/s3_object_test.go
|
||||||
|
workhorse/internal/objectstore/test/s3_stub.go
|
||||||
|
workhorse/internal/filestore/file_handler_test.go
|
||||||
|
workhorse/internal/upload/destination/objectstore/test/s3_stub.go
|
||||||
|
workhorse/internal/upload/destination/objectstore/s3_object_test.go
|
||||||
|
workhorse/internal/upload/destination/destination_test.go
|
||||||
|
## Failing tests
|
||||||
|
workhorse/internal/gitaly/gitaly_test.go
|
||||||
|
workhorse/internal/gitaly/unmarshal_test.go
|
9
debian/conf/cable.yml
vendored
Normal file
9
debian/conf/cable.yml
vendored
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
production:
|
||||||
|
adapter: redis
|
||||||
|
url: redis://localhost:6379
|
||||||
|
development:
|
||||||
|
adapter: redis
|
||||||
|
url: redis://localhost:6379
|
||||||
|
test:
|
||||||
|
adapter: redis
|
||||||
|
url: redis://localhost:6379
|
51
debian/conf/database.yml
vendored
Normal file
51
debian/conf/database.yml
vendored
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
#
|
||||||
|
# PRODUCTION
|
||||||
|
#
|
||||||
|
production:
|
||||||
|
main:
|
||||||
|
adapter: postgresql
|
||||||
|
host: /var/run/postgresql
|
||||||
|
encoding: unicode
|
||||||
|
database: gitlab_production
|
||||||
|
pool: 10
|
||||||
|
# username: git
|
||||||
|
# password:
|
||||||
|
# host: localhost
|
||||||
|
# port: 5432
|
||||||
|
|
||||||
|
#
|
||||||
|
# Development specific
|
||||||
|
#
|
||||||
|
development:
|
||||||
|
main:
|
||||||
|
adapter: postgresql
|
||||||
|
encoding: unicode
|
||||||
|
database: gitlabhq_development
|
||||||
|
pool: 5
|
||||||
|
username: postgres
|
||||||
|
password:
|
||||||
|
|
||||||
|
#
|
||||||
|
# Staging specific
|
||||||
|
#
|
||||||
|
staging:
|
||||||
|
main:
|
||||||
|
adapter: postgresql
|
||||||
|
encoding: unicode
|
||||||
|
database: gitlabhq_staging
|
||||||
|
pool: 5
|
||||||
|
username: postgres
|
||||||
|
password:
|
||||||
|
|
||||||
|
# Warning: The database defined as "test" will be erased and
|
||||||
|
# re-generated from your development database when you run "rake".
|
||||||
|
# Do not set this db to the same as development or production.
|
||||||
|
test: &test
|
||||||
|
main:
|
||||||
|
adapter: postgresql
|
||||||
|
encoding: unicode
|
||||||
|
host: /var/run/postgresql
|
||||||
|
database: gitlab_test
|
||||||
|
pool: 5
|
||||||
|
#username: postgres
|
||||||
|
password:
|
73
debian/conf/gitlab
vendored
Executable file
73
debian/conf/gitlab
vendored
Executable file
|
@ -0,0 +1,73 @@
|
||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
# Copy this lib/support/init.d/gitlab.default.example file to
|
||||||
|
# /etc/default/gitlab in order for it to apply to your system.
|
||||||
|
|
||||||
|
# RAILS_ENV defines the type of installation that is running.
|
||||||
|
# Normal values are "production", "test" and "development".
|
||||||
|
RAILS_ENV="production"
|
||||||
|
|
||||||
|
# Read debian specific configuration
|
||||||
|
. /etc/gitlab/gitlab-debian.conf
|
||||||
|
. /etc/gitlab-common/gitlab-common.conf
|
||||||
|
|
||||||
|
for i in $(grep -v '#' /etc/gitlab/gitlab-debian.conf | cut -d= -f 1)
|
||||||
|
do
|
||||||
|
export $i
|
||||||
|
done
|
||||||
|
|
||||||
|
# app_user defines the user that GitLab is run as.
|
||||||
|
# The default is "git".
|
||||||
|
export app_user=${gitlab_user}
|
||||||
|
|
||||||
|
# app_root defines the folder in which gitlab and it's components are installed.
|
||||||
|
# The default is "/home/$app_user/gitlab"
|
||||||
|
app_root=${gitlab_app_root}
|
||||||
|
|
||||||
|
# gitlab_log_dir is defined in /etc/gitlab/gitlab-debian.conf
|
||||||
|
|
||||||
|
# pid_path defines a folder in which the gitlab and it's components place their pids.
|
||||||
|
# This variable is also used below to define the relevant pids for the gitlab components.
|
||||||
|
# The default is "$app_root/tmp/pids"
|
||||||
|
pid_path="${gitlab_pid_path}"
|
||||||
|
|
||||||
|
# socket_path defines the folder in which gitlab places the sockets
|
||||||
|
#The default is "$app_root/tmp/sockets"
|
||||||
|
socket_path="${gitlab_pid_path}"
|
||||||
|
|
||||||
|
# web_server_pid_path defines the path in which to create the pid file fo the web_server
|
||||||
|
# The default is "$pid_path/unicorn.pid"
|
||||||
|
web_server_pid_path="$pid_path/unicorn.pid"
|
||||||
|
|
||||||
|
# sidekiq_pid_path defines the path in which to create the pid file for sidekiq
|
||||||
|
# The default is "$pid_path/sidekiq.pid"
|
||||||
|
sidekiq_pid_path="$pid_path/sidekiq.pid"
|
||||||
|
|
||||||
|
# sidekiq_logfile defines log file used by sidekiq
|
||||||
|
sidekiq_logfile="${gitlab_log_dir}/sidekiq.log"
|
||||||
|
|
||||||
|
gitlab_workhorse_pid_path="$pid_path/gitlab-workhorse.pid"
|
||||||
|
# The -listenXxx settings determine where gitlab-workhorse
|
||||||
|
# listens for connections from NGINX. To listen on localhost:8181, write
|
||||||
|
# '-listenNetwork tcp -listenAddr localhost:8181'.
|
||||||
|
# The -authBackend setting tells gitlab-workhorse where it can reach
|
||||||
|
# Unicorn.
|
||||||
|
gitlab_workhorse_options="-listenUmask 0 -listenNetwork unix -listenAddr $socket_path/gitlab-workhorse.socket -authBackend http://127.0.0.1:8080"
|
||||||
|
gitlab_workhorse_log="${gitlab_log_dir}/gitlab-workhorse.log"
|
||||||
|
|
||||||
|
# mail_room_enabled specifies whether mail_room, which is used to process incoming email, is enabled.
|
||||||
|
# This is required for the Reply by email feature.
|
||||||
|
# The default is "false"
|
||||||
|
mail_room_enabled=false
|
||||||
|
|
||||||
|
# mail_room_pid_path defines the path in which to create the pid file for mail_room
|
||||||
|
# The default is "$pid_path/mail_room.pid"
|
||||||
|
mail_room_pid_path="$pid_path/mail_room.pid"
|
||||||
|
|
||||||
|
# mail_room_logfile defines log file used by mailroom
|
||||||
|
mail_room_logfile="${gitlab_log_dir}/mail_room.log"
|
||||||
|
|
||||||
|
# shell_path defines the path of shell for "$app_user" in case you are using
|
||||||
|
# shell other than "bash"
|
||||||
|
# The default is "/bin/bash"
|
||||||
|
shell_path="/bin/bash"
|
12
debian/conf/gitlab-debian.conf.example
vendored
Normal file
12
debian/conf/gitlab-debian.conf.example
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
# Variables with all small letters are debian specific
|
||||||
|
# Variables with all caps are passed to gitlab app
|
||||||
|
RAILS_ENV=production
|
||||||
|
DB=postgres
|
||||||
|
GEM_HOME=/var/lib/gitlab/.gem
|
||||||
|
# This will be replaced by debian/rules at the time of build.
|
||||||
|
GITLAB_DEBIAN_VERSION="__NEW_VERSION__"
|
||||||
|
SALSA_TAG_URL="https://salsa.debian.org/ruby-team/gitlab/tags/debian/"
|
||||||
|
gitlab_app_root=/usr/share/gitlab
|
||||||
|
gitlab_data_dir=/var/lib/gitlab
|
||||||
|
gitlab_pid_path=/run/gitlab
|
||||||
|
gitlab_log_dir=/var/log/gitlab
|
14
debian/conf/gitlab.target
vendored
Normal file
14
debian/conf/gitlab.target
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#####################################################
|
||||||
|
#
|
||||||
|
# GitLab version : 5.x - 7.x
|
||||||
|
# Contributors : davispuh, mtorromeo, axilleas, boeserwolf91, Stefan Tatschner (rumpelsepp)
|
||||||
|
# Downloaded from : https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/init/systemd
|
||||||
|
#
|
||||||
|
####################################################
|
||||||
|
|
||||||
|
[Unit]
|
||||||
|
Description=GitLab Service
|
||||||
|
Requires=gitlab-puma.service gitlab-sidekiq.service gitlab-mailroom.service gitlab-workhorse.service
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
744
debian/conf/gitlab.yml.example
vendored
Normal file
744
debian/conf/gitlab.yml.example
vendored
Normal file
|
@ -0,0 +1,744 @@
|
||||||
|
# # # # # # # # # # # # # # # # # #
|
||||||
|
# GitLab application config file #
|
||||||
|
# # # # # # # # # # # # # # # # # #
|
||||||
|
#
|
||||||
|
########################### NOTE #####################################
|
||||||
|
# This file should not receive new settings. All configuration options #
|
||||||
|
# * are being moved to ApplicationSetting model! #
|
||||||
|
# If a setting requires an application restart say so in that screen. #
|
||||||
|
# If you change this file in a Merge Request, please also create #
|
||||||
|
# a MR on https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests #
|
||||||
|
########################################################################
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# How to use:
|
||||||
|
# 1. Copy file as gitlab.yml
|
||||||
|
# 2. Update gitlab -> host with your fully qualified domain name
|
||||||
|
# 3. Update gitlab -> email_from
|
||||||
|
# 4. If you installed Git from source, change git -> bin_path to /usr/local/bin/git
|
||||||
|
# IMPORTANT: If Git was installed in a different location use that instead.
|
||||||
|
# You can check with `which git`. If a wrong path of Git is specified, it will
|
||||||
|
# result in various issues such as failures of GitLab CI builds.
|
||||||
|
# 5. Review this configuration file for other settings you may want to adjust
|
||||||
|
|
||||||
|
# For Debian specific changes: See /usr/share/doc/README.Debian
|
||||||
|
|
||||||
|
production: &base
|
||||||
|
#
|
||||||
|
# 1. GitLab app settings
|
||||||
|
# ==========================
|
||||||
|
|
||||||
|
## GitLab settings
|
||||||
|
gitlab:
|
||||||
|
## Web server settings (note: host is the FQDN, do not include http://)
|
||||||
|
#host: localhost
|
||||||
|
#port: 80 # Set to 443 if using HTTPS, see installation.md#using-https for additional HTTPS configuration details
|
||||||
|
https: false # Set to true if using HTTPS, see installation.md#using-https for additional HTTPS configuration details
|
||||||
|
|
||||||
|
# Uncommment this line below if your ssh host is different from HTTP/HTTPS one
|
||||||
|
# (you'd obviously need to replace ssh.host_example.com with your own host).
|
||||||
|
# Otherwise, ssh host will be set to the `host:` value above
|
||||||
|
# ssh_host: ssh.host_example.com
|
||||||
|
|
||||||
|
# Relative URL support
|
||||||
|
# WARNING: We recommend using an FQDN to host GitLab in a root path instead
|
||||||
|
# of using a relative URL.
|
||||||
|
# Documentation: http://doc.gitlab.com/ce/install/relative_url.html
|
||||||
|
# Uncomment and customize the following line to run in a non-root path
|
||||||
|
#
|
||||||
|
# relative_url_root: /gitlab
|
||||||
|
|
||||||
|
# Trusted Proxies
|
||||||
|
# Customize if you have GitLab behind a reverse proxy which is running on a different machine.
|
||||||
|
# Add the IP address for your reverse proxy to the list, otherwise users will appear signed in from that address.
|
||||||
|
trusted_proxies:
|
||||||
|
# Examples:
|
||||||
|
#- 192.168.1.0/24
|
||||||
|
#- 192.168.2.1
|
||||||
|
#- 2001:0db8::/32
|
||||||
|
|
||||||
|
# Uncomment and customize if you can't use the default user to run GitLab (default: 'git')
|
||||||
|
user: git #gitlab_user (DON'T REMOVE THIS COMMENT)
|
||||||
|
user_home: /var/lib/gitlab
|
||||||
|
|
||||||
|
## Date & Time settings
|
||||||
|
# Uncomment and customize if you want to change the default time zone of GitLab application.
|
||||||
|
# To see all available zones, run `bundle exec rake time:zones:all RAILS_ENV=production`
|
||||||
|
# time_zone: 'UTC'
|
||||||
|
|
||||||
|
## Email settings
|
||||||
|
# Uncomment and set to false if you need to disable email sending from GitLab (default: true)
|
||||||
|
# email_enabled: true
|
||||||
|
# Email address used in the "From" field in mails sent by GitLab
|
||||||
|
# Using environmental variables from /etc/gitlab/gitlab-debian.conf
|
||||||
|
# email_from: example@example.com
|
||||||
|
# email_display_name: GitLab
|
||||||
|
# email_reply_to: noreply@example.com
|
||||||
|
# email_subject_suffix: ''
|
||||||
|
|
||||||
|
# Email server smtp settings are in config/initializers/smtp_settings.rb.sample
|
||||||
|
|
||||||
|
# default_can_create_group: false # default: true
|
||||||
|
# username_changing_enabled: false # default: true - User can change her username/namespace
|
||||||
|
|
||||||
|
## Automatic issue closing
|
||||||
|
# If a commit message matches this regular expression, all issues referenced from the matched text will be closed.
|
||||||
|
# This happens when the commit is pushed or merged into the default branch of a project.
|
||||||
|
# When not specified the default issue_closing_pattern as specified below will be used.
|
||||||
|
# Tip: you can test your closing pattern at http://rubular.com.
|
||||||
|
# issue_closing_pattern: '((?:[Cc]los(?:e[sd]?|ing)|[Ff]ix(?:e[sd]|ing)?|[Rr]esolv(?:e[sd]?|ing))(:?) +(?:(?:issues? +)?%{issue_ref}(?:(?:, *| +and +)?)|([A-Z][A-Z0-9_]+-\d+))+)'
|
||||||
|
|
||||||
|
## Default project features settings
|
||||||
|
default_projects_features:
|
||||||
|
issues: true
|
||||||
|
merge_requests: true
|
||||||
|
wiki: true
|
||||||
|
snippets: true
|
||||||
|
builds: true
|
||||||
|
container_registry: true
|
||||||
|
|
||||||
|
## Webhook settings
|
||||||
|
# Number of seconds to wait for HTTP response after sending webhook HTTP POST request (default: 10)
|
||||||
|
# webhook_timeout: 10
|
||||||
|
|
||||||
|
## Repository downloads directory
|
||||||
|
# When a user clicks e.g. 'Download zip' on a project, a temporary zip file is created in the following directory.
|
||||||
|
# The default is 'shared/cache/archive/' relative to the root of the Rails app.
|
||||||
|
# repository_downloads_path: shared/cache/archive/
|
||||||
|
|
||||||
|
## Reply by email
|
||||||
|
# Allow users to comment on issues and merge requests by replying to notification emails.
|
||||||
|
# For documentation on how to set this up, see http://doc.gitlab.com/ce/administration/reply_by_email.html
|
||||||
|
incoming_email:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# The email address including the `%{key}` placeholder that will be replaced to reference the item being replied to.
|
||||||
|
# The placeholder can be omitted but if present, it must appear in the "user" part of the address (before the `@`).
|
||||||
|
address: "gitlab-incoming+%{key}@gmail.com"
|
||||||
|
|
||||||
|
# Email account username
|
||||||
|
# With third party providers, this is usually the full email address.
|
||||||
|
# With self-hosted email servers, this is usually the user part of the email address.
|
||||||
|
user: "gitlab-incoming@gmail.com"
|
||||||
|
# Email account password
|
||||||
|
password: "[REDACTED]"
|
||||||
|
|
||||||
|
# IMAP server host
|
||||||
|
host: "imap.gmail.com"
|
||||||
|
# IMAP server port
|
||||||
|
port: 993
|
||||||
|
# Whether the IMAP server uses SSL
|
||||||
|
ssl: true
|
||||||
|
# Whether the IMAP server uses StartTLS
|
||||||
|
start_tls: false
|
||||||
|
|
||||||
|
# The mailbox where incoming mail will end up. Usually "inbox".
|
||||||
|
mailbox: "inbox"
|
||||||
|
# The IDLE command timeout.
|
||||||
|
idle_timeout: 60
|
||||||
|
|
||||||
|
## Build Artifacts
|
||||||
|
artifacts:
|
||||||
|
enabled: true
|
||||||
|
# The location where build artifacts are stored (default: shared/artifacts).
|
||||||
|
# path: shared/artifacts
|
||||||
|
|
||||||
|
## Git LFS
|
||||||
|
lfs:
|
||||||
|
enabled: true
|
||||||
|
# The location where LFS objects are stored (default: shared/lfs-objects).
|
||||||
|
# storage_path: shared/lfs-objects
|
||||||
|
|
||||||
|
## GitLab Pages
|
||||||
|
pages:
|
||||||
|
enabled: false
|
||||||
|
# The location where pages are stored (default: shared/pages).
|
||||||
|
# path: shared/pages
|
||||||
|
|
||||||
|
# The domain under which the pages are served:
|
||||||
|
# http://group.example.com/project
|
||||||
|
# or project path can be a group page: group.example.com
|
||||||
|
host: example.com
|
||||||
|
port: 80 # Set to 443 if you serve the pages with HTTPS
|
||||||
|
https: false # Set to true if you serve the pages with HTTPS
|
||||||
|
# external_http: ["1.1.1.1:80", "[2001::1]:80"] # If defined, enables custom domain support in GitLab Pages
|
||||||
|
# external_https: ["1.1.1.1:443", "[2001::1]:443"] # If defined, enables custom domain and certificate support in GitLab Pages
|
||||||
|
|
||||||
|
## Mattermost
|
||||||
|
## For enabling Add to Mattermost button
|
||||||
|
mattermost:
|
||||||
|
enabled: false
|
||||||
|
host: 'https://mattermost.example.com'
|
||||||
|
|
||||||
|
## Gravatar
|
||||||
|
## For Libravatar see: http://doc.gitlab.com/ce/customization/libravatar.html
|
||||||
|
gravatar:
|
||||||
|
# gravatar urls: possible placeholders: %{hash} %{size} %{email} %{username}
|
||||||
|
# plain_url: "http://..." # default: http://www.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
|
||||||
|
# ssl_url: "https://..." # default: https://secure.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
|
||||||
|
|
||||||
|
## Auxiliary jobs
|
||||||
|
# Periodically executed jobs, to self-heal Gitlab, do external synchronizations, etc.
|
||||||
|
# Please read here for more information: https://github.com/ondrejbartas/sidekiq-cron#adding-cron-job
|
||||||
|
cron_jobs:
|
||||||
|
# Flag stuck CI jobs as failed
|
||||||
|
stuck_ci_jobs_worker:
|
||||||
|
cron: "0 * * * *"
|
||||||
|
# Execute scheduled triggers
|
||||||
|
pipeline_schedule_worker:
|
||||||
|
cron: "19 * * * *"
|
||||||
|
# Remove expired build artifacts
|
||||||
|
expire_build_artifacts_worker:
|
||||||
|
cron: "50 * * * *"
|
||||||
|
# Periodically run 'git fsck' on all repositories. If started more than
|
||||||
|
# once per hour you will have concurrent 'git fsck' jobs.
|
||||||
|
repository_check_worker:
|
||||||
|
cron: "20 * * * *"
|
||||||
|
# Send admin emails once a week
|
||||||
|
admin_email_worker:
|
||||||
|
cron: "0 0 * * 0"
|
||||||
|
|
||||||
|
# Remove outdated repository archives
|
||||||
|
repository_archive_cache_worker:
|
||||||
|
cron: "0 * * * *"
|
||||||
|
|
||||||
|
registry:
|
||||||
|
# enabled: true
|
||||||
|
# host: registry.example.com
|
||||||
|
# port: 5005
|
||||||
|
# api_url: http://localhost:5000/ # internal address to the registry, will be used by GitLab to directly communicate with API
|
||||||
|
# key: config/registry.key
|
||||||
|
# path: shared/registry
|
||||||
|
# issuer: gitlab-issuer
|
||||||
|
|
||||||
|
#
|
||||||
|
# 2. GitLab CI settings
|
||||||
|
# ==========================
|
||||||
|
|
||||||
|
gitlab_ci:
|
||||||
|
# Default project notifications settings:
|
||||||
|
#
|
||||||
|
# Send emails only on broken builds (default: true)
|
||||||
|
# all_broken_builds: true
|
||||||
|
#
|
||||||
|
# Add pusher to recipients list (default: false)
|
||||||
|
# add_pusher: true
|
||||||
|
|
||||||
|
# The location where build traces are stored (default: builds/). Relative paths are relative to Rails.root
|
||||||
|
# builds_path: builds/
|
||||||
|
|
||||||
|
#
|
||||||
|
# 3. Auth settings
|
||||||
|
# ==========================
|
||||||
|
|
||||||
|
## LDAP settings
|
||||||
|
# You can test connections and inspect a sample of the LDAP users with login
|
||||||
|
# access by running:
|
||||||
|
# bundle exec rake gitlab:ldap:check RAILS_ENV=production
|
||||||
|
ldap:
|
||||||
|
enabled: false
|
||||||
|
servers:
|
||||||
|
##########################################################################
|
||||||
|
#
|
||||||
|
# Since GitLab 7.4, LDAP servers get ID's (below the ID is 'main'). GitLab
|
||||||
|
# Enterprise Edition now supports connecting to multiple LDAP servers.
|
||||||
|
#
|
||||||
|
# If you are updating from the old (pre-7.4) syntax, you MUST give your
|
||||||
|
# old server the ID 'main'.
|
||||||
|
#
|
||||||
|
##########################################################################
|
||||||
|
main: # 'main' is the GitLab 'provider ID' of this LDAP server
|
||||||
|
## label
|
||||||
|
#
|
||||||
|
# A human-friendly name for your LDAP server. It is OK to change the label later,
|
||||||
|
# for instance if you find out it is too large to fit on the web page.
|
||||||
|
#
|
||||||
|
# Example: 'Paris' or 'Acme, Ltd.'
|
||||||
|
label: 'LDAP'
|
||||||
|
|
||||||
|
# Example: 'ldap.mydomain.com'
|
||||||
|
host: '_your_ldap_server'
|
||||||
|
# This port is an example, it is sometimes different but it is always an integer and not a string
|
||||||
|
port: 389 # usually 636 for SSL
|
||||||
|
uid: 'sAMAccountName' # This should be the attribute, not the value that maps to uid.
|
||||||
|
|
||||||
|
# Examples: 'america\\momo' or 'CN=Gitlab Git,CN=Users,DC=mydomain,DC=com'
|
||||||
|
bind_dn: '_the_full_dn_of_the_user_you_will_bind_with'
|
||||||
|
password: '_the_password_of_the_bind_user'
|
||||||
|
|
||||||
|
# Encryption method. The "method" key is deprecated in favor of
|
||||||
|
# "encryption".
|
||||||
|
#
|
||||||
|
# Examples: "start_tls" or "simple_tls" or "plain"
|
||||||
|
#
|
||||||
|
# Deprecated values: "tls" was replaced with "start_tls" and "ssl" was
|
||||||
|
# replaced with "simple_tls".
|
||||||
|
#
|
||||||
|
encryption: 'plain'
|
||||||
|
|
||||||
|
# Enables SSL certificate verification if encryption method is
|
||||||
|
# "start_tls" or "simple_tls". (Defaults to false for backward-
|
||||||
|
# compatibility)
|
||||||
|
verify_certificates: false
|
||||||
|
|
||||||
|
# Specifies the path to a file containing a PEM-format CA certificate,
|
||||||
|
# e.g. if you need to use an internal CA.
|
||||||
|
#
|
||||||
|
# Example: '/etc/ca.pem'
|
||||||
|
#
|
||||||
|
ca_file: ''
|
||||||
|
|
||||||
|
# Specifies the SSL version for OpenSSL to use, if the OpenSSL default
|
||||||
|
# is not appropriate.
|
||||||
|
#
|
||||||
|
# Example: 'TLSv1_1'
|
||||||
|
#
|
||||||
|
ssl_version: ''
|
||||||
|
|
||||||
|
# Set a timeout, in seconds, for LDAP queries. This helps avoid blocking
|
||||||
|
# a request if the LDAP server becomes unresponsive.
|
||||||
|
# A value of 0 means there is no timeout.
|
||||||
|
timeout: 10
|
||||||
|
|
||||||
|
# This setting specifies if LDAP server is Active Directory LDAP server.
|
||||||
|
# For non AD servers it skips the AD specific queries.
|
||||||
|
# If your LDAP server is not AD, set this to false.
|
||||||
|
active_directory: true
|
||||||
|
|
||||||
|
# If allow_username_or_email_login is enabled, GitLab will ignore everything
|
||||||
|
# after the first '@' in the LDAP username submitted by the user on login.
|
||||||
|
#
|
||||||
|
# Example:
|
||||||
|
# - the user enters 'jane.doe@example.com' and 'p@ssw0rd' as LDAP credentials;
|
||||||
|
# - GitLab queries the LDAP server with 'jane.doe' and 'p@ssw0rd'.
|
||||||
|
#
|
||||||
|
# If you are using "uid: 'userPrincipalName'" on ActiveDirectory you need to
|
||||||
|
# disable this setting, because the userPrincipalName contains an '@'.
|
||||||
|
allow_username_or_email_login: false
|
||||||
|
|
||||||
|
# To maintain tight control over the number of active users on your GitLab installation,
|
||||||
|
# enable this setting to keep new users blocked until they have been cleared by the admin
|
||||||
|
# (default: false).
|
||||||
|
block_auto_created_users: false
|
||||||
|
|
||||||
|
# Base where we can search for users
|
||||||
|
#
|
||||||
|
# Ex. 'ou=People,dc=gitlab,dc=example' or 'DC=mydomain,DC=com'
|
||||||
|
#
|
||||||
|
base: ''
|
||||||
|
|
||||||
|
# Filter LDAP users
|
||||||
|
#
|
||||||
|
# Format: RFC 4515 https://tools.ietf.org/search/rfc4515
|
||||||
|
# Ex. (employeeType=developer)
|
||||||
|
#
|
||||||
|
# Note: GitLab does not support omniauth-ldap's custom filter syntax.
|
||||||
|
#
|
||||||
|
# Example for getting only specific users:
|
||||||
|
# '(&(objectclass=user)(|(samaccountname=momo)(samaccountname=toto)))'
|
||||||
|
#
|
||||||
|
user_filter: ''
|
||||||
|
|
||||||
|
# LDAP attributes that GitLab will use to create an account for the LDAP user.
|
||||||
|
# The specified attribute can either be the attribute name as a string (e.g. 'mail'),
|
||||||
|
# or an array of attribute names to try in order (e.g. ['mail', 'email']).
|
||||||
|
# Note that the user's LDAP login will always be the attribute specified as `uid` above.
|
||||||
|
attributes:
|
||||||
|
# The username will be used in paths for the user's own projects
|
||||||
|
# (like `gitlab.example.com/username/project`) and when mentioning
|
||||||
|
# them in issues, merge request and comments (like `@username`).
|
||||||
|
# If the attribute specified for `username` contains an email address,
|
||||||
|
# the GitLab username will be the part of the email address before the '@'.
|
||||||
|
username: ['uid', 'userid', 'sAMAccountName']
|
||||||
|
email: ['mail', 'email', 'userPrincipalName']
|
||||||
|
|
||||||
|
# If no full name could be found at the attribute specified for `name`,
|
||||||
|
# the full name is determined using the attributes specified for
|
||||||
|
# `first_name` and `last_name`.
|
||||||
|
name: 'cn'
|
||||||
|
first_name: 'givenName'
|
||||||
|
last_name: 'sn'
|
||||||
|
|
||||||
|
# GitLab EE only: add more LDAP servers
|
||||||
|
# Choose an ID made of a-z and 0-9 . This ID will be stored in the database
|
||||||
|
# so that GitLab can remember which LDAP server a user belongs to.
|
||||||
|
# uswest2:
|
||||||
|
# label:
|
||||||
|
# host:
|
||||||
|
# ....
|
||||||
|
|
||||||
|
|
||||||
|
## OmniAuth settings
|
||||||
|
omniauth:
|
||||||
|
# Allow login via Twitter, Google, etc. using OmniAuth providers
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# Uncomment this to automatically sign in with a specific omniauth provider's without
|
||||||
|
# showing GitLab's sign-in page (default: show the GitLab sign-in page)
|
||||||
|
# auto_sign_in_with_provider: saml
|
||||||
|
|
||||||
|
# Sync user's email address from the specified Omniauth provider every time the user logs
|
||||||
|
# in (default: nil). And consequently make this field read-only.
|
||||||
|
# sync_email_from_provider: cas3
|
||||||
|
|
||||||
|
# CAUTION!
|
||||||
|
# This allows users to login without having a user account first. Define the allowed providers
|
||||||
|
# using an array, e.g. ["saml", "twitter"], or as true/false to allow all providers or none.
|
||||||
|
# User accounts will be created automatically when authentication was successful.
|
||||||
|
allow_single_sign_on: ["saml"]
|
||||||
|
|
||||||
|
# Locks down those users until they have been cleared by the admin (default: true).
|
||||||
|
block_auto_created_users: true
|
||||||
|
# Look up new users in LDAP servers. If a match is found (same uid), automatically
|
||||||
|
# link the omniauth identity with the LDAP account. (default: false)
|
||||||
|
auto_link_ldap_user: false
|
||||||
|
|
||||||
|
# Allow users with existing accounts to login and auto link their account via SAML
|
||||||
|
# login, without having to do a manual login first and manually add SAML
|
||||||
|
# (default: false)
|
||||||
|
auto_link_saml_user: false
|
||||||
|
|
||||||
|
# Set different Omniauth providers as external so that all users creating accounts
|
||||||
|
# via these providers will not be able to have access to internal projects. You
|
||||||
|
# will need to use the full name of the provider, like `google_oauth2` for Google.
|
||||||
|
# Refer to the examples below for the full names of the supported providers.
|
||||||
|
# (default: [])
|
||||||
|
external_providers: []
|
||||||
|
|
||||||
|
## Auth providers
|
||||||
|
# Uncomment the following lines and fill in the data of the auth provider you want to use
|
||||||
|
# If your favorite auth provider is not listed you can use others:
|
||||||
|
# see https://github.com/gitlabhq/gitlab-public-wiki/wiki/Custom-omniauth-provider-configurations
|
||||||
|
# The 'app_id' and 'app_secret' parameters are always passed as the first two
|
||||||
|
# arguments, followed by optional 'args' which can be either a hash or an array.
|
||||||
|
# Documentation for this is available at http://doc.gitlab.com/ce/integration/omniauth.html
|
||||||
|
providers:
|
||||||
|
# See omniauth-cas3 for more configuration details
|
||||||
|
# - { name: 'cas3',
|
||||||
|
# label: 'cas3',
|
||||||
|
# args: {
|
||||||
|
# url: 'https://sso.example.com',
|
||||||
|
# disable_ssl_verification: false,
|
||||||
|
# login_url: '/cas/login',
|
||||||
|
# service_validate_url: '/cas/p3/serviceValidate',
|
||||||
|
# logout_url: '/cas/logout'} }
|
||||||
|
# - { name: 'authentiq',
|
||||||
|
# # for client credentials (client ID and secret), go to https://www.authentiq.com/developers
|
||||||
|
# app_id: 'YOUR_CLIENT_ID',
|
||||||
|
# app_secret: 'YOUR_CLIENT_SECRET',
|
||||||
|
# args: {
|
||||||
|
# scope: 'aq:name email~rs address aq:push'
|
||||||
|
# # callback_url parameter is optional except when 'gitlab.host' in this file is set to 'localhost'
|
||||||
|
# # callback_url: 'YOUR_CALLBACK_URL'
|
||||||
|
# }
|
||||||
|
# }
|
||||||
|
# - { name: 'github',
|
||||||
|
# app_id: 'YOUR_APP_ID',
|
||||||
|
# app_secret: 'YOUR_APP_SECRET',
|
||||||
|
# url: "https://github.com/",
|
||||||
|
# verify_ssl: true,
|
||||||
|
# args: { scope: 'user:email' } }
|
||||||
|
# - { name: 'bitbucket',
|
||||||
|
# app_id: 'YOUR_APP_ID',
|
||||||
|
# app_secret: 'YOUR_APP_SECRET' }
|
||||||
|
# - { name: 'gitlab',
|
||||||
|
# app_id: 'YOUR_APP_ID',
|
||||||
|
# app_secret: 'YOUR_APP_SECRET',
|
||||||
|
# args: { scope: 'api' } }
|
||||||
|
# - { name: 'google_oauth2',
|
||||||
|
# app_id: 'YOUR_APP_ID',
|
||||||
|
# app_secret: 'YOUR_APP_SECRET',
|
||||||
|
# args: { access_type: 'offline', approval_prompt: '' } }
|
||||||
|
# - { name: 'facebook',
|
||||||
|
# app_id: 'YOUR_APP_ID',
|
||||||
|
# app_secret: 'YOUR_APP_SECRET' }
|
||||||
|
# - { name: 'twitter',
|
||||||
|
# app_id: 'YOUR_APP_ID',
|
||||||
|
# app_secret: 'YOUR_APP_SECRET' }
|
||||||
|
#
|
||||||
|
# - { name: 'saml',
|
||||||
|
# label: 'Our SAML Provider',
|
||||||
|
# groups_attribute: 'Groups',
|
||||||
|
# external_groups: ['Contractors', 'Freelancers'],
|
||||||
|
# args: {
|
||||||
|
# assertion_consumer_service_url: 'https://gitlab.example.com/users/auth/saml/callback',
|
||||||
|
# idp_cert_fingerprint: '43:51:43:a1:b5:fc:8b:b7:0a:3a:a9:b1:0f:66:73:a8',
|
||||||
|
# idp_sso_target_url: 'https://login.example.com/idp',
|
||||||
|
# issuer: 'https://gitlab.example.com',
|
||||||
|
# name_identifier_format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:transient'
|
||||||
|
# } }
|
||||||
|
#
|
||||||
|
# - { name: 'crowd',
|
||||||
|
# args: {
|
||||||
|
# crowd_server_url: 'CROWD SERVER URL',
|
||||||
|
# application_name: 'YOUR_APP_NAME',
|
||||||
|
# application_password: 'YOUR_APP_PASSWORD' } }
|
||||||
|
#
|
||||||
|
# - { name: 'auth0',
|
||||||
|
# args: {
|
||||||
|
# client_id: 'YOUR_AUTH0_CLIENT_ID',
|
||||||
|
# client_secret: 'YOUR_AUTH0_CLIENT_SECRET',
|
||||||
|
# namespace: 'YOUR_AUTH0_DOMAIN' } }
|
||||||
|
|
||||||
|
# SSO maximum session duration in seconds. Defaults to CAS default of 8 hours.
|
||||||
|
# cas3:
|
||||||
|
# session_duration: 28800
|
||||||
|
|
||||||
|
# Shared file storage settings
|
||||||
|
shared:
|
||||||
|
# path: /mnt/gitlab # Default: shared
|
||||||
|
|
||||||
|
# Gitaly settings
|
||||||
|
gitaly:
|
||||||
|
# Path to the directory containing Gitaly client executables.
|
||||||
|
client_path: /usr/bin
|
||||||
|
# Default Gitaly authentication token. Can be overriden per storage. Can
|
||||||
|
# be left blank when Gitaly is running locally on a Unix socket, which
|
||||||
|
# is the normal way to deploy Gitaly.
|
||||||
|
token:
|
||||||
|
|
||||||
|
#
|
||||||
|
# 4. Advanced settings
|
||||||
|
# ==========================
|
||||||
|
|
||||||
|
## Repositories settings
|
||||||
|
repositories:
|
||||||
|
# Paths where repositories can be stored. Give the canonicalized absolute pathname.
|
||||||
|
# IMPORTANT: None of the path components may be symlink, because
|
||||||
|
# gitlab-shell invokes Dir.pwd inside the repository path and that results
|
||||||
|
# real path not the symlink.
|
||||||
|
storages: # You must have at least a `default` storage path.
|
||||||
|
default:
|
||||||
|
path: /var/lib/gitlab/repositories/
|
||||||
|
gitaly_address: unix:/run/gitlab/sockets/private/gitaly.socket # TCP connections are supported too (e.g. tcp://host:port)
|
||||||
|
# gitaly_token: 'special token' # Optional: override global gitaly.token for this storage.
|
||||||
|
failure_count_threshold: 10 # number of failures before stopping attempts
|
||||||
|
failure_wait_time: 30 # Seconds after an access failure before allowing access again
|
||||||
|
failure_reset_time: 1800 # Time in seconds to expire failures
|
||||||
|
storage_timeout: 5 # Time in seconds to wait before aborting a storage access attempt
|
||||||
|
|
||||||
|
|
||||||
|
## Backup settings
|
||||||
|
backup:
|
||||||
|
path: "tmp/backups" # Relative paths are relative to Rails.root (default: tmp/backups/)
|
||||||
|
# archive_permissions: 0640 # Permissions for the resulting backup.tar file (default: 0600)
|
||||||
|
# keep_time: 604800 # default: 0 (forever) (in seconds)
|
||||||
|
# pg_schema: public # default: nil, it means that all schemas will be backed up
|
||||||
|
# upload:
|
||||||
|
# # Fog storage connection settings, see http://fog.io/storage/ .
|
||||||
|
# connection:
|
||||||
|
# provider: AWS
|
||||||
|
# region: eu-west-1
|
||||||
|
# aws_access_key_id: AKIAKIAKI
|
||||||
|
# aws_secret_access_key: 'secret123'
|
||||||
|
# # The remote 'directory' to store your backups. For S3, this would be the bucket name.
|
||||||
|
# remote_directory: 'my.s3.bucket'
|
||||||
|
# # Use multipart uploads when file size reaches 100MB, see
|
||||||
|
# # http://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
|
||||||
|
# multipart_chunk_size: 104857600
|
||||||
|
# # Turns on AWS Server-Side Encryption with Amazon S3-Managed Keys for backups, this is optional
|
||||||
|
# # encryption: 'AES256'
|
||||||
|
# # Specifies Amazon S3 storage class to use for backups, this is optional
|
||||||
|
# # storage_class: 'STANDARD'
|
||||||
|
|
||||||
|
## GitLab Shell settings
|
||||||
|
gitlab_shell:
|
||||||
|
path: /usr/share/gitlab-shell/
|
||||||
|
hooks_path: /usr/share/gitlab-shell/hooks/
|
||||||
|
|
||||||
|
# File that contains the secret key for verifying access for gitlab-shell.
|
||||||
|
# Default is '.gitlab_shell_secret' relative to Rails.root (i.e. root of the GitLab app).
|
||||||
|
# secret_file: /var/lib/gitlab/.gitlab_shell_secret
|
||||||
|
|
||||||
|
# Git over HTTP
|
||||||
|
upload_pack: true
|
||||||
|
receive_pack: true
|
||||||
|
|
||||||
|
# Git import/fetch timeout
|
||||||
|
# git_timeout: 800
|
||||||
|
|
||||||
|
# If you use non-standard ssh port you need to specify it
|
||||||
|
# ssh_port: 22
|
||||||
|
|
||||||
|
workhorse:
|
||||||
|
# File that contains the secret key for verifying access for gitlab-workhorse.
|
||||||
|
# Default is '.gitlab_workhorse_secret' relative to Rails.root (i.e. root of the GitLab app).
|
||||||
|
# secret_file: /var/lib/gitlab/.gitlab_workhorse_secret
|
||||||
|
|
||||||
|
## Git settings
|
||||||
|
# CAUTION!
|
||||||
|
# Use the default values unless you really know what you are doing
|
||||||
|
git:
|
||||||
|
bin_path: /usr/bin/git
|
||||||
|
# The next value is the maximum memory size grit can use
|
||||||
|
# Given in number of bytes per git object (e.g. a commit)
|
||||||
|
# This value can be increased if you have very large commits
|
||||||
|
max_size: 20971520 # 20.megabytes
|
||||||
|
# Git timeout to read a commit, in seconds
|
||||||
|
timeout: 10
|
||||||
|
|
||||||
|
## Webpack settings
|
||||||
|
# If enabled, this will tell rails to serve frontend assets from the webpack-dev-server running
|
||||||
|
# on a given port instead of serving directly from /assets/webpack. This is only indended for use
|
||||||
|
# in development.
|
||||||
|
webpack:
|
||||||
|
# dev_server:
|
||||||
|
# enabled: true
|
||||||
|
# host: localhost
|
||||||
|
# port: 3808
|
||||||
|
|
||||||
|
## Monitoring
|
||||||
|
# Built in monitoring settings
|
||||||
|
monitoring:
|
||||||
|
# Time between sampling of unicorn socket metrics, in seconds
|
||||||
|
# unicorn_sampler_interval: 10
|
||||||
|
# IP whitelist to access monitoring endpoints
|
||||||
|
ip_whitelist:
|
||||||
|
- 127.0.0.0/8
|
||||||
|
|
||||||
|
# Sidekiq exporter is webserver built in to Sidekiq to expose Prometheus metrics
|
||||||
|
sidekiq_exporter:
|
||||||
|
# enabled: true
|
||||||
|
# address: localhost
|
||||||
|
# port: 3807
|
||||||
|
|
||||||
|
#
|
||||||
|
# 5. Extra customization
|
||||||
|
# ==========================
|
||||||
|
|
||||||
|
extra:
|
||||||
|
## Google analytics. Uncomment if you want it
|
||||||
|
# google_analytics_id: '_your_tracking_id'
|
||||||
|
|
||||||
|
## Piwik analytics.
|
||||||
|
# piwik_url: '_your_piwik_url'
|
||||||
|
# piwik_site_id: '_your_piwik_site_id'
|
||||||
|
|
||||||
|
rack_attack:
|
||||||
|
git_basic_auth:
|
||||||
|
# Rack Attack IP banning enabled
|
||||||
|
# enabled: true
|
||||||
|
#
|
||||||
|
# Whitelist requests from 127.0.0.1 for web proxies (NGINX/Apache) with incorrect headers
|
||||||
|
# ip_whitelist: ["127.0.0.1"]
|
||||||
|
#
|
||||||
|
# Limit the number of Git HTTP authentication attempts per IP
|
||||||
|
# maxretry: 10
|
||||||
|
#
|
||||||
|
# Reset the auth attempt counter per IP after 60 seconds
|
||||||
|
# findtime: 60
|
||||||
|
#
|
||||||
|
# Ban an IP for one hour (3600s) after too many auth attempts
|
||||||
|
# bantime: 3600
|
||||||
|
|
||||||
|
development:
|
||||||
|
<<: *base
|
||||||
|
|
||||||
|
test:
|
||||||
|
<<: *base
|
||||||
|
gravatar:
|
||||||
|
enabled: true
|
||||||
|
lfs:
|
||||||
|
enabled: false
|
||||||
|
gitlab:
|
||||||
|
host: localhost
|
||||||
|
port: 80
|
||||||
|
|
||||||
|
# When you run tests we clone and setup gitlab-shell
|
||||||
|
# In order to setup it correctly you need to specify
|
||||||
|
# your system username you use to run GitLab
|
||||||
|
# user: YOUR_USERNAME
|
||||||
|
pages:
|
||||||
|
path: tmp/tests/pages
|
||||||
|
repositories:
|
||||||
|
storages:
|
||||||
|
default:
|
||||||
|
path: tmp/tests/repositories/
|
||||||
|
gitaly_address: unix:tmp/tests/gitaly/gitaly.socket
|
||||||
|
failure_count_threshold: 999999
|
||||||
|
failure_wait_time: 0
|
||||||
|
storage_timeout: 30
|
||||||
|
broken:
|
||||||
|
path: tmp/tests/non-existent-repositories
|
||||||
|
gitaly_address: unix:tmp/tests/gitaly/gitaly.socket
|
||||||
|
|
||||||
|
gitaly:
|
||||||
|
enabled: true
|
||||||
|
token: secret
|
||||||
|
backup:
|
||||||
|
path: tmp/tests/backups
|
||||||
|
gitlab_shell:
|
||||||
|
path: tmp/tests/gitlab-shell/
|
||||||
|
hooks_path: tmp/tests/gitlab-shell/hooks/
|
||||||
|
issues_tracker:
|
||||||
|
redmine:
|
||||||
|
title: "Redmine"
|
||||||
|
project_url: "http://redmine/projects/:issues_tracker_id"
|
||||||
|
issues_url: "http://redmine/:project_id/:issues_tracker_id/:id"
|
||||||
|
new_issue_url: "http://redmine/projects/:issues_tracker_id/issues/new"
|
||||||
|
jira:
|
||||||
|
title: "JIRA"
|
||||||
|
url: https://sample_company.atlassian.net
|
||||||
|
project_key: PROJECT
|
||||||
|
|
||||||
|
omniauth:
|
||||||
|
enabled: true
|
||||||
|
allow_single_sign_on: true
|
||||||
|
external_providers: []
|
||||||
|
|
||||||
|
providers:
|
||||||
|
- { name: 'cas3',
|
||||||
|
label: 'cas3',
|
||||||
|
args: { url: 'https://sso.example.com',
|
||||||
|
disable_ssl_verification: false,
|
||||||
|
login_url: '/cas/login',
|
||||||
|
service_validate_url: '/cas/p3/serviceValidate',
|
||||||
|
logout_url: '/cas/logout'} }
|
||||||
|
- { name: 'github',
|
||||||
|
app_id: 'YOUR_APP_ID',
|
||||||
|
app_secret: 'YOUR_APP_SECRET',
|
||||||
|
url: "https://github.com/",
|
||||||
|
verify_ssl: false,
|
||||||
|
args: { scope: 'user:email' } }
|
||||||
|
- { name: 'bitbucket',
|
||||||
|
app_id: 'YOUR_APP_ID',
|
||||||
|
app_secret: 'YOUR_APP_SECRET' }
|
||||||
|
- { name: 'gitlab',
|
||||||
|
app_id: 'YOUR_APP_ID',
|
||||||
|
app_secret: 'YOUR_APP_SECRET',
|
||||||
|
args: { scope: 'api' } }
|
||||||
|
- { name: 'google_oauth2',
|
||||||
|
app_id: 'YOUR_APP_ID',
|
||||||
|
app_secret: 'YOUR_APP_SECRET',
|
||||||
|
args: { access_type: 'offline', approval_prompt: '' } }
|
||||||
|
- { name: 'facebook',
|
||||||
|
app_id: 'YOUR_APP_ID',
|
||||||
|
app_secret: 'YOUR_APP_SECRET' }
|
||||||
|
- { name: 'twitter',
|
||||||
|
app_id: 'YOUR_APP_ID',
|
||||||
|
app_secret: 'YOUR_APP_SECRET' }
|
||||||
|
- { name: 'auth0',
|
||||||
|
args: {
|
||||||
|
client_id: 'YOUR_AUTH0_CLIENT_ID',
|
||||||
|
client_secret: 'YOUR_AUTH0_CLIENT_SECRET',
|
||||||
|
namespace: 'YOUR_AUTH0_DOMAIN' } }
|
||||||
|
- { name: 'authentiq',
|
||||||
|
app_id: 'YOUR_CLIENT_ID',
|
||||||
|
app_secret: 'YOUR_CLIENT_SECRET',
|
||||||
|
args: { scope: 'aq:name email~rs address aq:push' } }
|
||||||
|
ldap:
|
||||||
|
enabled: false
|
||||||
|
servers:
|
||||||
|
main:
|
||||||
|
label: ldap
|
||||||
|
host: 127.0.0.1
|
||||||
|
port: 3890
|
||||||
|
uid: 'uid'
|
||||||
|
encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
|
||||||
|
base: 'dc=example,dc=com'
|
||||||
|
user_filter: ''
|
||||||
|
group_base: 'ou=groups,dc=example,dc=com'
|
||||||
|
admin_group: ''
|
||||||
|
|
||||||
|
staging:
|
||||||
|
<<: *base
|
121
debian/conf/nginx.conf.example
vendored
Normal file
121
debian/conf/nginx.conf.example
vendored
Normal file
|
@ -0,0 +1,121 @@
|
||||||
|
## GitLab
|
||||||
|
##
|
||||||
|
## Lines starting with two hashes (##) are comments with information.
|
||||||
|
## Lines starting with one hash (#) are configuration parameters that can be uncommented.
|
||||||
|
##
|
||||||
|
##################################
|
||||||
|
## CONTRIBUTING ##
|
||||||
|
##################################
|
||||||
|
##
|
||||||
|
## If you change this file in a Merge Request, please also create
|
||||||
|
## a Merge Request on https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests
|
||||||
|
##
|
||||||
|
###################################
|
||||||
|
## configuration ##
|
||||||
|
###################################
|
||||||
|
##
|
||||||
|
## See installation.md#using-https for additional HTTPS configuration details.
|
||||||
|
|
||||||
|
upstream gitlab-workhorse {
|
||||||
|
# GitLab socket file,
|
||||||
|
# for Omnibus this would be: unix:/var/opt/gitlab/gitlab-workhorse/socket
|
||||||
|
server unix:/run/gitlab/gitlab-workhorse.socket fail_timeout=0;
|
||||||
|
}
|
||||||
|
|
||||||
|
map $http_upgrade $connection_upgrade_gitlab {
|
||||||
|
default upgrade;
|
||||||
|
'' close;
|
||||||
|
}
|
||||||
|
|
||||||
|
## NGINX 'combined' log format with filtered query strings
|
||||||
|
log_format gitlab_access $remote_addr - $remote_user [$time_local] "$request_method $gitlab_filtered_request_uri $server_protocol" $status $body_bytes_sent "$gitlab_filtered_http_referer" "$http_user_agent";
|
||||||
|
|
||||||
|
## Remove private_token from the request URI
|
||||||
|
# In: /foo?private_token=unfiltered&authenticity_token=unfiltered&feed_token=unfiltered&...
|
||||||
|
# Out: /foo?private_token=[FILTERED]&authenticity_token=unfiltered&feed_token=unfiltered&...
|
||||||
|
map $request_uri $gitlab_temp_request_uri_1 {
|
||||||
|
default $request_uri;
|
||||||
|
~(?i)^(?<start>.*)(?<temp>[\?&]private[\-_]token)=[^&]*(?<rest>.*)$ "$start$temp=[FILTERED]$rest";
|
||||||
|
}
|
||||||
|
|
||||||
|
## Remove authenticity_token from the request URI
|
||||||
|
# In: /foo?private_token=[FILTERED]&authenticity_token=unfiltered&feed_token=unfiltered&...
|
||||||
|
# Out: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&feed_token=unfiltered&...
|
||||||
|
map $gitlab_temp_request_uri_1 $gitlab_temp_request_uri_2 {
|
||||||
|
default $gitlab_temp_request_uri_1;
|
||||||
|
~(?i)^(?<start>.*)(?<temp>[\?&]authenticity[\-_]token)=[^&]*(?<rest>.*)$ "$start$temp=[FILTERED]$rest";
|
||||||
|
}
|
||||||
|
|
||||||
|
## Remove feed_token from the request URI
|
||||||
|
# In: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&feed_token=unfiltered&...
|
||||||
|
# Out: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&feed_token=[FILTERED]&...
|
||||||
|
map $gitlab_temp_request_uri_2 $gitlab_filtered_request_uri {
|
||||||
|
default $gitlab_temp_request_uri_2;
|
||||||
|
~(?i)^(?<start>.*)(?<temp>[\?&]feed[\-_]token)=[^&]*(?<rest>.*)$ "$start$temp=[FILTERED]$rest";
|
||||||
|
}
|
||||||
|
|
||||||
|
## A version of the referer without the query string
|
||||||
|
map $http_referer $gitlab_filtered_http_referer {
|
||||||
|
default $http_referer;
|
||||||
|
~^(?<temp>.*)\? $temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
## Normal HTTP host
|
||||||
|
server {
|
||||||
|
## Either remove "default_server" from the listen line below,
|
||||||
|
## or delete the /etc/nginx/sites-enabled/default file. This will cause gitlab
|
||||||
|
## to be served if you visit any address that your server responds to, eg.
|
||||||
|
## the ip address of the server (http://x.x.x.x/)n 0.0.0.0:80 default_server;
|
||||||
|
listen 0.0.0.0:80;
|
||||||
|
listen [::]:80;
|
||||||
|
server_name YOUR_SERVER_FQDN; ## Replace this with something like gitlab.example.com
|
||||||
|
server_tokens off; ## Don't show the nginx version number, a security best practice
|
||||||
|
|
||||||
|
## See app/controllers/application_controller.rb for headers set
|
||||||
|
|
||||||
|
## Real IP Module Config
|
||||||
|
## http://nginx.org/en/docs/http/ngx_http_realip_module.html
|
||||||
|
real_ip_header X-Real-IP; ## X-Real-IP or X-Forwarded-For or proxy_protocol
|
||||||
|
real_ip_recursive off; ## If you enable 'on'
|
||||||
|
## If you have a trusted IP address, uncomment it and set it
|
||||||
|
# set_real_ip_from YOUR_TRUSTED_ADDRESS; ## Replace this with something like 192.168.1.0/24
|
||||||
|
|
||||||
|
## Individual nginx logs for this GitLab vhost
|
||||||
|
access_log /var/log/nginx/gitlab_access.log gitlab_access;
|
||||||
|
error_log /var/log/nginx/gitlab_error.log;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
client_max_body_size 0;
|
||||||
|
gzip off;
|
||||||
|
|
||||||
|
## https://github.com/gitlabhq/gitlabhq/issues/694
|
||||||
|
## Some requests take more than 30 seconds.
|
||||||
|
proxy_read_timeout 300;
|
||||||
|
proxy_connect_timeout 300;
|
||||||
|
proxy_redirect off;
|
||||||
|
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection $connection_upgrade_gitlab;
|
||||||
|
|
||||||
|
proxy_pass http://gitlab-workhorse;
|
||||||
|
}
|
||||||
|
|
||||||
|
error_page 404 /404.html;
|
||||||
|
error_page 422 /422.html;
|
||||||
|
error_page 500 /500.html;
|
||||||
|
error_page 502 /502.html;
|
||||||
|
error_page 503 /503.html;
|
||||||
|
location ~ ^/(404|422|500|502|503)\.html$ {
|
||||||
|
# Location to the GitLab's public directory,
|
||||||
|
# for Omnibus this would be: /opt/gitlab/embedded/service/gitlab-rails/public.
|
||||||
|
root /usr/share/gitlab/public;
|
||||||
|
internal;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
170
debian/conf/nginx.ssl.conf.example
vendored
Normal file
170
debian/conf/nginx.ssl.conf.example
vendored
Normal file
|
@ -0,0 +1,170 @@
|
||||||
|
## GitLab
|
||||||
|
##
|
||||||
|
## Modified from nginx http version
|
||||||
|
## Modified from http://blog.phusion.nl/2012/04/21/tutorial-setting-up-gitlab-on-debian-6/
|
||||||
|
## Modified from https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html
|
||||||
|
##
|
||||||
|
## Lines starting with two hashes (##) are comments with information.
|
||||||
|
## Lines starting with one hash (#) are configuration parameters that can be uncommented.
|
||||||
|
##
|
||||||
|
##################################
|
||||||
|
## CONTRIBUTING ##
|
||||||
|
##################################
|
||||||
|
##
|
||||||
|
## If you change this file in a Merge Request, please also create
|
||||||
|
## a Merge Request on https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests
|
||||||
|
##
|
||||||
|
###################################
|
||||||
|
## configuration ##
|
||||||
|
###################################
|
||||||
|
##
|
||||||
|
## See installation.md#using-https for additional HTTPS configuration details.
|
||||||
|
|
||||||
|
upstream gitlab-workhorse {
|
||||||
|
# GitLab socket file,
|
||||||
|
# for Omnibus this would be: unix:/var/opt/gitlab/gitlab-workhorse/socket
|
||||||
|
server unix:/run/gitlab/gitlab-workhorse.socket fail_timeout=0;
|
||||||
|
}
|
||||||
|
|
||||||
|
map $http_upgrade $connection_upgrade_gitlab_ssl {
|
||||||
|
default upgrade;
|
||||||
|
'' close;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
## NGINX 'combined' log format with filtered query strings
|
||||||
|
log_format gitlab_ssl_access $remote_addr - $remote_user [$time_local] "$request_method $gitlab_ssl_filtered_request_uri $server_protocol" $status $body_bytes_sent "$gitlab_ssl_filtered_http_referer" "$http_user_agent";
|
||||||
|
|
||||||
|
## Remove private_token from the request URI
|
||||||
|
# In: /foo?private_token=unfiltered&authenticity_token=unfiltered&feed_token=unfiltered&...
|
||||||
|
# Out: /foo?private_token=[FILTERED]&authenticity_token=unfiltered&feed_token=unfiltered&...
|
||||||
|
map $request_uri $gitlab_ssl_temp_request_uri_1 {
|
||||||
|
default $request_uri;
|
||||||
|
~(?i)^(?<start>.*)(?<temp>[\?&]private[\-_]token)=[^&]*(?<rest>.*)$ "$start$temp=[FILTERED]$rest";
|
||||||
|
}
|
||||||
|
|
||||||
|
## Remove authenticity_token from the request URI
|
||||||
|
# In: /foo?private_token=[FILTERED]&authenticity_token=unfiltered&feed_token=unfiltered&...
|
||||||
|
# Out: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&feed_token=unfiltered&...
|
||||||
|
map $gitlab_ssl_temp_request_uri_1 $gitlab_ssl_temp_request_uri_2 {
|
||||||
|
default $gitlab_ssl_temp_request_uri_1;
|
||||||
|
~(?i)^(?<start>.*)(?<temp>[\?&]authenticity[\-_]token)=[^&]*(?<rest>.*)$ "$start$temp=[FILTERED]$rest";
|
||||||
|
}
|
||||||
|
|
||||||
|
## Remove feed_token from the request URI
|
||||||
|
# In: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&feed_token=unfiltered&...
|
||||||
|
# Out: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&feed_token=[FILTERED]&...
|
||||||
|
map $gitlab_ssl_temp_request_uri_2 $gitlab_ssl_filtered_request_uri {
|
||||||
|
default $gitlab_ssl_temp_request_uri_2;
|
||||||
|
~(?i)^(?<start>.*)(?<temp>[\?&]feed[\-_]token)=[^&]*(?<rest>.*)$ "$start$temp=[FILTERED]$rest";
|
||||||
|
}
|
||||||
|
|
||||||
|
## A version of the referer without the query string
|
||||||
|
map $http_referer $gitlab_ssl_filtered_http_referer {
|
||||||
|
default $http_referer;
|
||||||
|
~^(?<temp>.*)\? $temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
## Redirects all HTTP traffic to the HTTPS host
|
||||||
|
server {
|
||||||
|
## Either remove "default_server" from the listen line below,
|
||||||
|
## or delete the /etc/nginx/sites-enabled/default file. This will cause gitlab
|
||||||
|
## to be served if you visit any address that your server responds to, eg.
|
||||||
|
## the ip address of the server (http://x.x.x.x/)
|
||||||
|
listen 0.0.0.0:80;
|
||||||
|
listen [::]:80 ipv6only=on;
|
||||||
|
server_name YOUR_SERVER_FQDN; ## Replace this with something like gitlab.example.com
|
||||||
|
server_tokens off; ## Don't show the nginx version number, a security best practice
|
||||||
|
return 301 https://$http_host$request_uri;
|
||||||
|
access_log /var/log/nginx/gitlab_access.log gitlab_ssl_access;
|
||||||
|
error_log /var/log/nginx/gitlab_error.log;
|
||||||
|
}
|
||||||
|
|
||||||
|
## HTTPS host
|
||||||
|
server {
|
||||||
|
listen 0.0.0.0:443 ssl;
|
||||||
|
listen [::]:443 ipv6only=on ssl;
|
||||||
|
server_name YOUR_SERVER_FQDN; ## Replace this with something like gitlab.example.com
|
||||||
|
server_tokens off; ## Don't show the nginx version number, a security best practice
|
||||||
|
|
||||||
|
## Strong SSL Security
|
||||||
|
## https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html & https://cipherli.st/
|
||||||
|
ssl on;
|
||||||
|
ssl_certificate /etc/gitlab/ssl/gitlab.crt;
|
||||||
|
ssl_certificate_key /etc/gitlab/ssl/gitlab.key;
|
||||||
|
|
||||||
|
# GitLab needs backwards compatible ciphers to retain compatibility with Java IDEs
|
||||||
|
ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
|
||||||
|
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
|
||||||
|
ssl_prefer_server_ciphers on;
|
||||||
|
ssl_session_cache shared:SSL:10m;
|
||||||
|
ssl_session_timeout 5m;
|
||||||
|
|
||||||
|
## See app/controllers/application_controller.rb for headers set
|
||||||
|
|
||||||
|
## [Optional] If your certficate has OCSP, enable OCSP stapling to reduce the overhead and latency of running SSL.
|
||||||
|
## Replace with your ssl_trusted_certificate. For more info see:
|
||||||
|
## - https://medium.com/devops-programming/4445f4862461
|
||||||
|
## - https://www.ruby-forum.com/topic/4419319
|
||||||
|
## - https://www.digitalocean.com/community/tutorials/how-to-configure-ocsp-stapling-on-apache-and-nginx
|
||||||
|
# ssl_stapling on;
|
||||||
|
# ssl_stapling_verify on;
|
||||||
|
# ssl_trusted_certificate /etc/nginx/ssl/stapling.trusted.crt;
|
||||||
|
# resolver 208.67.222.222 208.67.222.220 valid=300s; # Can change to your DNS resolver if desired
|
||||||
|
# resolver_timeout 5s;
|
||||||
|
|
||||||
|
## [Optional] Generate a stronger DHE parameter:
|
||||||
|
## sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 4096
|
||||||
|
##
|
||||||
|
# ssl_dhparam /etc/ssl/certs/dhparam.pem;
|
||||||
|
|
||||||
|
## [Optional] Enable HTTP Strict Transport Security
|
||||||
|
# add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
|
||||||
|
|
||||||
|
## Real IP Module Config
|
||||||
|
## http://nginx.org/en/docs/http/ngx_http_realip_module.html
|
||||||
|
real_ip_header X-Real-IP; ## X-Real-IP or X-Forwarded-For or proxy_protocol
|
||||||
|
real_ip_recursive off; ## If you enable 'on'
|
||||||
|
## If you have a trusted IP address, uncomment it and set it
|
||||||
|
# set_real_ip_from YOUR_TRUSTED_ADDRESS; ## Replace this with something like 192.168.1.0/24
|
||||||
|
|
||||||
|
## Individual nginx logs for this GitLab vhost
|
||||||
|
access_log /var/log/nginx/gitlab_access.log gitlab_ssl_access;
|
||||||
|
error_log /var/log/nginx/gitlab_error.log;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
client_max_body_size 0;
|
||||||
|
gzip off;
|
||||||
|
|
||||||
|
## https://github.com/gitlabhq/gitlabhq/issues/694
|
||||||
|
## Some requests take more than 30 seconds.
|
||||||
|
proxy_read_timeout 300;
|
||||||
|
proxy_connect_timeout 300;
|
||||||
|
proxy_redirect off;
|
||||||
|
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-Ssl on;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection $connection_upgrade_gitlab_ssl;
|
||||||
|
|
||||||
|
proxy_pass http://gitlab-workhorse;
|
||||||
|
}
|
||||||
|
|
||||||
|
error_page 404 /404.html;
|
||||||
|
error_page 422 /422.html;
|
||||||
|
error_page 500 /500.html;
|
||||||
|
error_page 502 /502.html;
|
||||||
|
error_page 503 /503.html;
|
||||||
|
location ~ ^/(404|422|500|502|503)\.html$ {
|
||||||
|
# Location to the GitLab's public directory,
|
||||||
|
# for Omnibus this would be: /opt/gitlab/embedded/service/gitlab-rails/public
|
||||||
|
root /usr/share/gitlab/public;
|
||||||
|
internal;
|
||||||
|
}
|
||||||
|
}
|
78
debian/conf/puma.rb
vendored
Normal file
78
debian/conf/puma.rb
vendored
Normal file
|
@ -0,0 +1,78 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
# Load "path" as a rackup file.
|
||||||
|
#
|
||||||
|
# The default is "config.ru".
|
||||||
|
#
|
||||||
|
rackup 'config.ru'
|
||||||
|
pidfile "#{ENV['gitlab_pid_path']}/puma.pid"
|
||||||
|
state_path "#{ENV['gitlab_pid_path']}/puma.state"
|
||||||
|
|
||||||
|
stdout_redirect File.join(ENV['gitlab_log_dir'],"puma.stdout.log"),
|
||||||
|
File.join(ENV['gitlab_log_dir'],"puma.stderr.log"),
|
||||||
|
true
|
||||||
|
|
||||||
|
# Configure "min" to be the minimum number of threads to use to answer
|
||||||
|
# requests and "max" the maximum.
|
||||||
|
#
|
||||||
|
# The default is "0, 16".
|
||||||
|
#
|
||||||
|
threads 1, 16
|
||||||
|
|
||||||
|
# By default, workers accept all requests and queue them to pass to handlers.
|
||||||
|
# When false, workers accept the number of simultaneous requests configured.
|
||||||
|
#
|
||||||
|
# Queueing requests generally improves performance, but can cause deadlocks if
|
||||||
|
# the app is waiting on a request to itself. See https://github.com/puma/puma/issues/612
|
||||||
|
#
|
||||||
|
# When set to false this may require a reverse proxy to handle slow clients and
|
||||||
|
# queue requests before they reach puma. This is due to disabling HTTP keepalive
|
||||||
|
queue_requests false
|
||||||
|
|
||||||
|
# Bind the server to "url". "tcp://", "unix://" and "ssl://" are the only
|
||||||
|
# accepted protocols.
|
||||||
|
bind "unix://#{ENV['gitlab_pid_path']}/gitlab.socket"
|
||||||
|
|
||||||
|
workers 3
|
||||||
|
|
||||||
|
require_relative "#{ENV['gitlab_app_root']}/lib/gitlab/cluster/lifecycle_events"
|
||||||
|
require_relative "#{ENV['gitlab_app_root']}/lib/gitlab/cluster/puma_worker_killer_initializer"
|
||||||
|
|
||||||
|
on_restart do
|
||||||
|
# Signal application hooks that we're about to restart
|
||||||
|
Gitlab::Cluster::LifecycleEvents.do_before_master_restart
|
||||||
|
end
|
||||||
|
|
||||||
|
before_fork do
|
||||||
|
# Signal to the puma killer
|
||||||
|
Gitlab::Cluster::PumaWorkerKillerInitializer.start @config.options unless ENV['DISABLE_PUMA_WORKER_KILLER']
|
||||||
|
|
||||||
|
# Signal application hooks that we're about to fork
|
||||||
|
Gitlab::Cluster::LifecycleEvents.do_before_fork
|
||||||
|
end
|
||||||
|
|
||||||
|
Gitlab::Cluster::LifecycleEvents.set_puma_options @config.options
|
||||||
|
on_worker_boot do
|
||||||
|
# Signal application hooks of worker start
|
||||||
|
Gitlab::Cluster::LifecycleEvents.do_worker_start
|
||||||
|
end
|
||||||
|
|
||||||
|
# Preload the application before starting the workers; this conflicts with
|
||||||
|
# phased restart feature. (off by default)
|
||||||
|
preload_app!
|
||||||
|
|
||||||
|
tag 'gitlab-puma-worker'
|
||||||
|
|
||||||
|
# Verifies that all workers have checked in to the master process within
|
||||||
|
# the given timeout. If not the worker process will be restarted. Default
|
||||||
|
# value is 60 seconds.
|
||||||
|
#
|
||||||
|
worker_timeout 60
|
||||||
|
|
||||||
|
# Use json formatter
|
||||||
|
require_relative "#{ENV['gitlab_app_root']}/lib/gitlab/puma_logging/json_formatter"
|
||||||
|
|
||||||
|
json_formatter = Gitlab::PumaLogging::JSONFormatter.new
|
||||||
|
log_formatter do |str|
|
||||||
|
json_formatter.call(str)
|
||||||
|
end
|
8
debian/conf/resque.yml
vendored
Normal file
8
debian/conf/resque.yml
vendored
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# If you change this file in a Merge Request, please also create
|
||||||
|
# a Merge Request on https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests
|
||||||
|
#
|
||||||
|
development: redis://localhost:6379
|
||||||
|
test: redis://localhost:6379
|
||||||
|
# default redis configuration in debian is tcp
|
||||||
|
#production: unix:/var/run/redis/redis.sock
|
||||||
|
production: redis://localhost:6379
|
15
debian/conf/smtp_settings.rb
vendored
Normal file
15
debian/conf/smtp_settings.rb
vendored
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
# To enable smtp email delivery for your GitLab instance do the following:
|
||||||
|
# 1. Rename this file to smtp_settings.rb
|
||||||
|
# 2. Edit settings inside this file
|
||||||
|
# 3. Restart GitLab instance
|
||||||
|
#
|
||||||
|
# For full list of options and their values see http://api.rubyonrails.org/classes/ActionMailer/Base.html
|
||||||
|
#
|
||||||
|
# If you change this file in a Merge Request, please also create a Merge Request on https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests
|
||||||
|
|
||||||
|
if Rails.env.production?
|
||||||
|
Rails.application.config.action_mailer.delivery_method = :sendmail
|
||||||
|
Rails.application.config.action_mailer.default_options = {from: "#{ENV['GITLAB_EMAIL_FROM']}" || "#{Settings.gitlab['email_from']}" || ''}
|
||||||
|
|
||||||
|
ActionMailer::Base.sendmail_settings = {}
|
||||||
|
end
|
2
debian/conf/tmpfiles.d/gitlab.conf
vendored
Normal file
2
debian/conf/tmpfiles.d/gitlab.conf
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
L /run/gitlab/cache - - - - /var/cache/gitlab
|
||||||
|
L /run/gitlab/backups - - - - /var/lib/gitlab/backups
|
578
debian/control
vendored
Normal file
578
debian/control
vendored
Normal file
|
@ -0,0 +1,578 @@
|
||||||
|
Source: gitlab
|
||||||
|
Section: net
|
||||||
|
Priority: optional
|
||||||
|
Maintainer: Debian Ruby Team <pkg-ruby-extras-maintainers@lists.alioth.debian.org>
|
||||||
|
Uploaders: Cédric Boutillier <boutil@debian.org>,
|
||||||
|
Pirate Praveen <praveen@debian.org>,
|
||||||
|
Balasankar C <balasankarc@debian.org>,
|
||||||
|
Sruthi Chandran <srud@debian.org>,
|
||||||
|
Utkarsh Gupta <utkarsh@debian.org>
|
||||||
|
Build-Depends: debhelper-compat (= 13),
|
||||||
|
gem2deb,
|
||||||
|
dh-golang,
|
||||||
|
# See #1016217 (gccgo and x/net don't work well together right now)
|
||||||
|
# golang-any (>= 2:1.17~),
|
||||||
|
golang-go (>= 2:1.18~),
|
||||||
|
bc,
|
||||||
|
golang-github-alecthomas-chroma-v2-dev,
|
||||||
|
golang-github-aws-aws-sdk-go-dev,
|
||||||
|
golang-github-azure-azure-storage-blob-go-dev (>= 0.10~),
|
||||||
|
golang-github-beorn7-perks-dev,
|
||||||
|
golang-github-client9-reopen-dev,
|
||||||
|
golang-github-davecgh-go-spew-dev,
|
||||||
|
golang-github-dgrijalva-jwt-go-dev (>= 3.2.0~),
|
||||||
|
golang-github-disintegration-imaging-dev,
|
||||||
|
golang-github-fzambia-sentinel-dev,
|
||||||
|
golang-github-garyburd-redigo-dev,
|
||||||
|
golang-github-golang-jwt-jwt-dev (>= 4.4.3~),
|
||||||
|
golang-github-google-uuid-dev,
|
||||||
|
golang-github-golang-protobuf-1-5-dev,
|
||||||
|
golang-github-getsentry-raven-go-dev (>= 0.2~),
|
||||||
|
golang-github-gomodule-redigo-dev,
|
||||||
|
# protobuf-1-5
|
||||||
|
# golang-github-grpc-ecosystem-go-grpc-prometheus-dev,
|
||||||
|
golang-github-hashicorp-yamux-dev (>= 0.0+git20210316.a95892c~),
|
||||||
|
golang-github-jfbus-httprs-dev,
|
||||||
|
golang-github-jtolds-gls-dev (>= 4.20~),
|
||||||
|
golang-github-jpillora-backoff-dev,
|
||||||
|
golang-github-mitchellh-copystructure-dev,
|
||||||
|
golang-github-mitchellh-reflectwalk-dev,
|
||||||
|
golang-github-pmezard-go-difflib-dev,
|
||||||
|
# protobuf-1-5
|
||||||
|
# golang-github-prometheus-client-golang-dev,
|
||||||
|
golang-github-cespare-xxhash-dev,
|
||||||
|
# golang-github-prometheus-client-model-dev,
|
||||||
|
# golang-github-prometheus-common-dev,
|
||||||
|
golang-github-ryszard-goskiplist-dev,
|
||||||
|
golang-github-sebest-xff-dev,
|
||||||
|
golang-github-sirupsen-logrus-dev,
|
||||||
|
golang-github-stretchr-testify-dev (>= 1.4~),
|
||||||
|
golang-gitlab-gitlab-org-gitaly-dev (>= 16~),
|
||||||
|
golang-github-beevik-ntp-dev,
|
||||||
|
# protobuf-1-5
|
||||||
|
# golang-gitlab-gitlab-org-labkit-dev (>= 1.14~),
|
||||||
|
golang-github-oklog-ulid-dev,
|
||||||
|
# golang-gocloud-dev,
|
||||||
|
golang-golang-x-crypto-dev,
|
||||||
|
golang-golang-x-net-dev,
|
||||||
|
golang-golang-x-sys-dev (>= 0.0~git20180510.7dfd129~),
|
||||||
|
# protobuf-1-5
|
||||||
|
# golang-google-genproto-dev,
|
||||||
|
golang-honnef-go-tools-dev,
|
||||||
|
golang-procfs-dev,
|
||||||
|
# protobuf-1-5
|
||||||
|
# golang-protobuf-extensions-dev,
|
||||||
|
golang-toml-dev,
|
||||||
|
golang-websocket-dev,
|
||||||
|
# protobuf-1-5
|
||||||
|
# golang-google-grpc-dev (>= 1.38~),
|
||||||
|
libimage-exiftool-perl,
|
||||||
|
golang-github-kylelemons-godebug-dev,
|
||||||
|
golang-github-cli-browser-dev
|
||||||
|
Standards-Version: 4.6.1
|
||||||
|
Vcs-Git: https://salsa.debian.org/ruby-team/gitlab.git
|
||||||
|
Vcs-Browser: https://salsa.debian.org/ruby-team/gitlab
|
||||||
|
Homepage: https://about.gitlab.com/
|
||||||
|
XS-Ruby-Versions: all
|
||||||
|
XS-Go-Import-Path: gitlab.com/gitlab-org/gitlab
|
||||||
|
Rules-Requires-Root: no
|
||||||
|
|
||||||
|
Package: gitlab
|
||||||
|
Section: contrib/net
|
||||||
|
Architecture: all
|
||||||
|
XB-Ruby-Versions: ${ruby:Versions}
|
||||||
|
Depends: ${shlibs:Depends}, ${misc:Depends},
|
||||||
|
gitlab-common (>= 16~),
|
||||||
|
ruby (>= 1:2.7~),
|
||||||
|
rubygems-integration (>= 1.18~),
|
||||||
|
lsb-base (>= 3.0-6),
|
||||||
|
rake (>= 12.3.0~),
|
||||||
|
bundler (>= 1.17.3~),
|
||||||
|
postgresql-client,
|
||||||
|
postgresql-contrib (>= 12~),
|
||||||
|
dbconfig-pgsql | dbconfig-no-thanks,
|
||||||
|
bc,
|
||||||
|
redis-server (>= 5:6.0.12~),
|
||||||
|
# See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=956211
|
||||||
|
nodejs (>= 12~),
|
||||||
|
nginx | httpd,
|
||||||
|
default-mta | postfix | exim4 | mail-transport-agent,
|
||||||
|
openssh-client,
|
||||||
|
bzip2,
|
||||||
|
ucf,
|
||||||
|
gitlab-workhorse (>= ${source:Version}),
|
||||||
|
ruby-rails (>= 2:6.1.7.2~),
|
||||||
|
ruby-websocket-extensions (>= 0.1.5~),
|
||||||
|
ruby-zeitwerk (>= 2.6.1~),
|
||||||
|
ruby-bootsnap (>= 1.15~),
|
||||||
|
ruby-ipaddr (>= 1.2.5~),
|
||||||
|
ruby-responders (>= 3.0~),
|
||||||
|
ruby-sprockets (>= 3.7~),
|
||||||
|
ruby-view-component (>= 2.82~),
|
||||||
|
ruby-pg (>= 1.5.3~),
|
||||||
|
ruby-neighbor (>= 0.2.3~),
|
||||||
|
ruby-rugged (>= 1.2~),
|
||||||
|
ruby-grape-path-helpers (>= 1.7.1~),
|
||||||
|
ruby-faraday (>= 1.0~),
|
||||||
|
ruby-marginalia (>= 1.11.1~),
|
||||||
|
# Authorization
|
||||||
|
ruby-declarative-policy (>= 1.1),
|
||||||
|
# Authentication libraries
|
||||||
|
ruby-devise (>= 4.8.1~),
|
||||||
|
ruby-bcrypt (>= 3.1.14~),
|
||||||
|
ruby-doorkeeper (>= 5.6.6~),
|
||||||
|
ruby-doorkeeper-openid-connect (>= 1.8.6~),
|
||||||
|
ruby-rexml (>= 3.2.3.1~),
|
||||||
|
ruby-saml (>= 1.13~),
|
||||||
|
ruby-omniauth (>= 2.1~),
|
||||||
|
ruby-omniauth-auth0 (>= 3.1~),
|
||||||
|
ruby-omniauth-azure-activedirectory-v2 (>= 2.0~),
|
||||||
|
ruby-omniauth-dingtalk-oauth2 (>= 1.0.1~),
|
||||||
|
ruby-omniauth-alicloud (>= 2.0.1~),
|
||||||
|
ruby-omniauth-facebook (>= 4.0~),
|
||||||
|
ruby-omniauth-github (>= 2.0.1~),
|
||||||
|
ruby-omniauth-gitlab (>= 1.0.2~),
|
||||||
|
ruby-omniauth-google-oauth2 (>= 1.1~),
|
||||||
|
ruby-omniauth-kerberos (>= 0.3.0-3~),
|
||||||
|
ruby-omniauth-oauth2-generic (>= 0.2.2~),
|
||||||
|
ruby-omniauth-saml (>= 2.1~),
|
||||||
|
ruby-omniauth-twitter (>= 1.4~),
|
||||||
|
ruby-omniauth-oauth (>= 1.2~),
|
||||||
|
ruby-omniauth-authentiq (>= 0.3.3~),
|
||||||
|
ruby-omniauth-openid-connect (>= 0.10~),
|
||||||
|
ruby-openid-connect (>= 1.3~),
|
||||||
|
ruby-omniauth-atlassian-oauth2 (>= 0.2.0~),
|
||||||
|
ruby-rack-oauth2 (>= 1.21.3~),
|
||||||
|
ruby-jwt (>= 2.1~),
|
||||||
|
# Spam and anti-bot protection
|
||||||
|
ruby-recaptcha (>= 5.12~),
|
||||||
|
ruby-akismet (>= 3.0~),
|
||||||
|
ruby-invisible-captcha (>= 2.0~),
|
||||||
|
# Two-factor authentication
|
||||||
|
ruby-devise-two-factor (>= 4.0.2~),
|
||||||
|
ruby-rqrcode-rails3 (>= 0.1.7-2~),
|
||||||
|
ruby-rqrcode (>= 1.2~),
|
||||||
|
# GitLab Pages
|
||||||
|
ruby-validates-hostname (>= 1.0.11~),
|
||||||
|
ruby-zip (>= 2.3.2~),
|
||||||
|
# GitLab Pages letsencrypt support
|
||||||
|
ruby-acme-client (>= 2.0.9~),
|
||||||
|
# Browser detection
|
||||||
|
ruby-browser (>= 5.3.1~),
|
||||||
|
# OS detection for usage ping
|
||||||
|
ohai (>= 17.9.0~),
|
||||||
|
# GPG
|
||||||
|
ruby-gpgme (>= 2.0.22~),
|
||||||
|
# LDAP Auth
|
||||||
|
ruby-omniauth-ldap (>= 2.2~),
|
||||||
|
ruby-ntlm (>= 0.6.1~),
|
||||||
|
ruby-net-ldap (>= 0.17.1~),
|
||||||
|
# API
|
||||||
|
ruby-grape (>= 1.7~),
|
||||||
|
ruby-grape-entity (>= 0.10~),
|
||||||
|
ruby-rack-cors (>= 1.0.6~),
|
||||||
|
# GraphQL API
|
||||||
|
ruby-graphql (>= 1.13.12~),
|
||||||
|
ruby-graphiql-rails (>= 1.4.10~),
|
||||||
|
ruby-apollo-upload-server (>= 2.1~),
|
||||||
|
# Used by BulkImport feature (group::import)
|
||||||
|
ruby-graphlient (>= 0.4.0),
|
||||||
|
#
|
||||||
|
ruby-hashie (>= 5.0~),
|
||||||
|
# Pagination
|
||||||
|
ruby-kaminari (>= 1.2.2~),
|
||||||
|
# HAML
|
||||||
|
ruby-hamlit (>= 2.15~),
|
||||||
|
# Files attachments
|
||||||
|
ruby-carrierwave (>= 1.3.2~),
|
||||||
|
ruby-mini-magick (>= 4.10.1~),
|
||||||
|
# for backups
|
||||||
|
ruby-fog-aws (>= 3.18~),
|
||||||
|
ruby-fog-core (>= 2.1~),
|
||||||
|
ruby-excon (>= 0.72~),
|
||||||
|
ruby-fog-google (>= 1.19~),
|
||||||
|
ruby-fog-local (>= 0.8~),
|
||||||
|
ruby-fog-aliyun (>= 0.4.0~),
|
||||||
|
ruby-gitlab-fog-azure-rm (>= 1.7~),
|
||||||
|
ruby-azure-storage-blob (>= 2.0.0-3~),
|
||||||
|
ruby-azure-storage-common (>= 2.0.1-5~),
|
||||||
|
# for Google storage
|
||||||
|
ruby-google-apis-core (>= 0.10~),
|
||||||
|
ruby-google-apis-compute-v1 (>= 0.57~),
|
||||||
|
ruby-google-apis-container-v1beta1 (>= 0.43~),
|
||||||
|
ruby-google-apis-container-v1 (>= 0.43~),
|
||||||
|
ruby-google-apis-cloudbilling-v1 (>= 0.21~),
|
||||||
|
ruby-google-apis-cloudresourcemanager-v1 (>= 0.31~),
|
||||||
|
ruby-google-apis-iam-v1 (>= 0.36~),
|
||||||
|
ruby-google-apis-serviceusage-v1 (>= 0.28~),
|
||||||
|
ruby-google-apis-sqladmin-v1beta4 (>= 0.41~),
|
||||||
|
ruby-google-apis-androidpublisher-v3 (>= 0.34~),
|
||||||
|
# for aws storage
|
||||||
|
ruby-unf (>= 0.1.4-2~),
|
||||||
|
ruby-unf-ext (>= 0.0.7.4),
|
||||||
|
# Seed data
|
||||||
|
ruby-seed-fu (>= 2.3.7~),
|
||||||
|
# Search
|
||||||
|
ruby-elasticsearch-model (>= 7.2~),
|
||||||
|
ruby-elasticsearch (>= 5.0.3~),
|
||||||
|
ruby-elasticsearch-rails (>= 7.2~),
|
||||||
|
ruby-elasticsearch-api (>= 7.13.3~),
|
||||||
|
ruby-aws-sdk-core (>= 3.172~),
|
||||||
|
ruby-aws-sdk-cloudformation (>= 1.0~),
|
||||||
|
ruby-aws-sdk-s3 (>= 1.122~),
|
||||||
|
ruby-faraday-middleware-aws-sigv4,
|
||||||
|
ruby-typhoeus (>= 1.4~),
|
||||||
|
# Markdown and HTML processing
|
||||||
|
ruby-html-pipeline (>= 2.14.3~),
|
||||||
|
ruby-task-list (>= 2.3.1~),
|
||||||
|
ruby-gitlab-markup (>= 1.9~),
|
||||||
|
ruby-github-markup (>= 1.7~),
|
||||||
|
ruby-commonmarker (>= 0.23.6~),
|
||||||
|
ruby-kramdown (>= 2.3.1~),
|
||||||
|
ruby-redcloth (>= 4.3.2-3~),
|
||||||
|
# rdoc is built-in with ruby
|
||||||
|
ruby-org (>= 0.9.12-2~),
|
||||||
|
ruby-creole (>= 0.5.0~),
|
||||||
|
ruby-wikicloth (>= 0.8.1~),
|
||||||
|
asciidoctor (>= 2.0.17~),
|
||||||
|
ruby-asciidoctor-include-ext (>= 0.4~),
|
||||||
|
ruby-asciidoctor-plantuml (>= 0.0.16~),
|
||||||
|
ruby-asciidoctor-kroki (>= 0.8~),
|
||||||
|
ruby-rouge (>= 4.1~),
|
||||||
|
ruby-truncato (>= 0.7.12~),
|
||||||
|
ruby-bootstrap-form (>= 4.2~),
|
||||||
|
ruby-nokogiri (>= 1.14.3~),
|
||||||
|
ruby-escape-utils (>= 1.2.1~),
|
||||||
|
# Calendar rendering
|
||||||
|
ruby-icalendar,
|
||||||
|
# Diffs
|
||||||
|
ruby-diffy (>= 3.4~),
|
||||||
|
ruby-diff-match-patch (>= 0.1~),
|
||||||
|
# Application server
|
||||||
|
ruby-rack (>= 2.2.7~),
|
||||||
|
ruby-rack-timeout (>= 0.6.0~),
|
||||||
|
puma (>= 5.6.5~),
|
||||||
|
ruby-puma-worker-killer (>= 0.3.1~),
|
||||||
|
ruby-sd-notify,
|
||||||
|
# State machine
|
||||||
|
ruby-state-machines-activerecord (>= 0.8~),
|
||||||
|
ruby-state-machines-activemodel (>= 0.7.1~),
|
||||||
|
# Issue tags
|
||||||
|
ruby-acts-as-taggable-on (>= 9.0~),
|
||||||
|
# Background jobs
|
||||||
|
ruby-sidekiq (>= 6.5.7~),
|
||||||
|
ruby-sidekiq-cron (>= 1.8~),
|
||||||
|
ruby-redis-namespace (>= 1.9~),
|
||||||
|
# Cron Parser
|
||||||
|
ruby-fugit (>= 1.8.1~),
|
||||||
|
# HTTP requests
|
||||||
|
ruby-httparty (>= 0.16.4~),
|
||||||
|
# Colored output to console
|
||||||
|
ruby-rainbow (>= 3.0~),
|
||||||
|
# Progress bar
|
||||||
|
ruby-progressbar (>= 1.10~),
|
||||||
|
# Linear-time regex library for untrusted regular expressions
|
||||||
|
ruby-re2 (>= 1.5~),
|
||||||
|
# Misc
|
||||||
|
ruby-semver-dialects (>= 1.2.1~),
|
||||||
|
ruby-version-sorter (>= 2.3~),
|
||||||
|
# Export Ruby Regex to Javascript
|
||||||
|
ruby-js-regex (>= 3.8~),
|
||||||
|
# User agent parsing
|
||||||
|
ruby-device-detector,
|
||||||
|
# Redis
|
||||||
|
ruby-redis (>= 4.7~),
|
||||||
|
ruby-connection-pool (>= 2.0~),
|
||||||
|
# Redis session store
|
||||||
|
ruby-redis-actionpack (>= 5.3~),
|
||||||
|
# Discord integration
|
||||||
|
ruby-discordrb-webhooks (>= 3.4~),
|
||||||
|
# JIRA integration
|
||||||
|
ruby-jira (>= 2.1.4~),
|
||||||
|
# Flowdock integration
|
||||||
|
ruby-flowdock (>= 0.7~),
|
||||||
|
ruby-posix-spawn (>= 0.3.13~),
|
||||||
|
# Slack integration
|
||||||
|
ruby-slack-messenger (>= 2.3.3~),
|
||||||
|
# Hangouts Chat integration
|
||||||
|
ruby-hangouts-chat (>= 0.0.5),
|
||||||
|
# Asana integration
|
||||||
|
ruby-asana (>= 0.10.13~),
|
||||||
|
# FogBugz integration
|
||||||
|
ruby-fogbugz (>= 0.3.0~),
|
||||||
|
# Kubernetes integration
|
||||||
|
ruby-kubeclient (>= 4.11~),
|
||||||
|
ruby-recursive-open-struct (>= 1.1.1~),
|
||||||
|
ruby-http (>= 4.4~),
|
||||||
|
# AI
|
||||||
|
ruby-ruby-openai (>= 3.7~),
|
||||||
|
ruby-circuitbox (>= 2.0~),
|
||||||
|
# Sanitize user input
|
||||||
|
ruby-sanitize (>= 6.0~),
|
||||||
|
ruby-babosa (>= 1.0.3~),
|
||||||
|
# Sanitizes SVG input
|
||||||
|
ruby-loofah (>= 2.20.0~),
|
||||||
|
# Working with license
|
||||||
|
ruby-licensee (>= 9.14.1~),
|
||||||
|
# Protect against bruteforcing
|
||||||
|
ruby-rack-attack (>= 6.6.1~),
|
||||||
|
# Ace editor
|
||||||
|
ruby-ace-rails-ap (>= 4.1~),
|
||||||
|
# Detect and convert string character encoding
|
||||||
|
ruby-charlock-holmes (>= 0.7.5~),
|
||||||
|
# Detect mime content type from content
|
||||||
|
ruby-ruby-magic (>= 0.6~),
|
||||||
|
# Faster blank
|
||||||
|
ruby-fast-blank,
|
||||||
|
# Parse time & duration
|
||||||
|
ruby-gitlab-chronic (>= 0.10.5~),
|
||||||
|
ruby-gitlab-chronic-duration (>= 0.10.6.2~),
|
||||||
|
#
|
||||||
|
ruby-webpack-rails (>= 0.9.10~),
|
||||||
|
# Many node modules are still in NEW, some are yet to be packaged
|
||||||
|
# so we use yarn to downlod those and hence gitlab is in contrib
|
||||||
|
yarnpkg (>= 1.22.4~),
|
||||||
|
ruby-rack-proxy (>= 0.7.6~),
|
||||||
|
#
|
||||||
|
ruby-sassc-rails (>= 2.1~),
|
||||||
|
ruby-sassc (>= 2.0~),
|
||||||
|
ruby-autoprefixer-rails (>= 10.2.5.1~),
|
||||||
|
ruby-terser (>= 1.0.2~),
|
||||||
|
#
|
||||||
|
ruby-addressable (>= 2.8~),
|
||||||
|
ruby-tanuki-emoji (>= 0.6~),
|
||||||
|
ruby-gon (>= 6.4~),
|
||||||
|
ruby-request-store (>= 1.5.1~),
|
||||||
|
ruby-virtus (>= 1.0.5-3~),
|
||||||
|
ruby-base32 (>= 0.3.0~),
|
||||||
|
# Sentry integration
|
||||||
|
ruby-sentry-raven (>= 3.1~),
|
||||||
|
ruby-sentry-ruby (>= 5.9~),
|
||||||
|
ruby-sentry-rails (>= 5.9~),
|
||||||
|
ruby-sentry-sidekiq (>= 5.9~),
|
||||||
|
# PostgreSQL query parsing
|
||||||
|
ruby-pg-query (>= 2.2.1~),
|
||||||
|
#
|
||||||
|
ruby-premailer-rails (>= 1.10.3-2~),
|
||||||
|
# LabKit: Tracing and Correlation
|
||||||
|
ruby-gitlab-labkit (>= 0.32~),
|
||||||
|
# Thrift is a dependency of gitlab-labkit, we want a version higher than 0.14.0
|
||||||
|
# because of https://gitlab.com/gitlab-org/gitlab/-/issues/321900
|
||||||
|
ruby-thrift (>= 0.16~),
|
||||||
|
# I18n
|
||||||
|
ruby-ruby-parser (>= 3.20~),
|
||||||
|
ruby-whitequark-parser (>= 3.0~),
|
||||||
|
ruby-rails-i18n (>= 7.0~),
|
||||||
|
ruby-gettext-i18n-rails (>= 1.8~),
|
||||||
|
ruby-gettext-i18n-rails-js (>= 1.3~),
|
||||||
|
ruby-gettext (>= 3.3.3~),
|
||||||
|
#
|
||||||
|
ruby-batch-loader (>= 2.0.1~),
|
||||||
|
# Perf bar
|
||||||
|
ruby-peek (>= 1.1~),
|
||||||
|
# Snowplow events tracking
|
||||||
|
ruby-snowplow-tracker (>= 0.8~),
|
||||||
|
# Metrics
|
||||||
|
ruby-method-source (>= 1.0~),
|
||||||
|
ruby-webrick (>= 1.8.1~),
|
||||||
|
ruby-prometheus-client-mmap (>= 0.23~),
|
||||||
|
#
|
||||||
|
ruby-warning (>= 1.3~),
|
||||||
|
#
|
||||||
|
ruby-octokit (>= 4.15~),
|
||||||
|
#
|
||||||
|
ruby-mail-room (>= 0.10.0+really0.0.23~),
|
||||||
|
#
|
||||||
|
ruby-email-reply-trimmer (>= 0.1~),
|
||||||
|
ruby-html2text,
|
||||||
|
#
|
||||||
|
ruby-prof (>= 1.3~),
|
||||||
|
ruby-stackprof (>= 0.2.23~),
|
||||||
|
ruby-rbtrace (>= 0.4~),
|
||||||
|
ruby-memory-profiler (>= 1.0~),
|
||||||
|
ruby-activerecord-explain-analyze (>= 0.1~),
|
||||||
|
# OAuth
|
||||||
|
ruby-oauth2 (>= 2.0~),
|
||||||
|
# oauth2 2.0 is installed from rubygems.org
|
||||||
|
ruby-omniauth-oauth2 (>= 1.7.3~),
|
||||||
|
# Health check
|
||||||
|
ruby-health-check (>= 3.0~),
|
||||||
|
# System information
|
||||||
|
ruby-vmstat (>= 2.3~),
|
||||||
|
ruby-sys-filesystem (>= 1.4.3~),
|
||||||
|
# NTP client
|
||||||
|
ruby-net-ntp,
|
||||||
|
# SSH keys support
|
||||||
|
ruby-ssh-data (>= 1.2~),
|
||||||
|
# Spamcheck GRPC protocol definitions
|
||||||
|
ruby-spamcheck (>= 1.10.1~),
|
||||||
|
# Gitaly GRPC client
|
||||||
|
ruby-gitaly (>= 15.11~),
|
||||||
|
# KAS GRPC protocol definitions
|
||||||
|
ruby-kas-grpc (>= 16~),
|
||||||
|
#
|
||||||
|
ruby-grpc (>= 1.42~),
|
||||||
|
#
|
||||||
|
ruby-google-protobuf (>= 3.19.4~),
|
||||||
|
#
|
||||||
|
ruby-toml-rb (>= 2.2~),
|
||||||
|
# Feature toggles
|
||||||
|
ruby-flipper (>= 0.25~),
|
||||||
|
ruby-flipper-active-record (>= 0.25~),
|
||||||
|
ruby-flipper-active-support-cache-store (>= 0.25~),
|
||||||
|
ruby-unleash (>= 3.2.2~),
|
||||||
|
ruby-gitlab-experiment (>= 0.7.1~),
|
||||||
|
# Structured logging
|
||||||
|
ruby-lograge (>= 0.10~),
|
||||||
|
ruby-grape-logging (>= 1.8~),
|
||||||
|
# DNS Lookup
|
||||||
|
ruby-gitlab-net-dns (>= 0.9.2~),
|
||||||
|
# Countries list
|
||||||
|
ruby-countries (>= 4.0~),
|
||||||
|
ruby-retriable (>= 3.1.2~),
|
||||||
|
# LRU cache
|
||||||
|
ruby-lru-redux,
|
||||||
|
ruby-erubi (>= 1.9~),
|
||||||
|
ruby-mail (>= 2.8.1),
|
||||||
|
# File encryption
|
||||||
|
ruby-lockbox (>= 1.1.1~),
|
||||||
|
# Email validation
|
||||||
|
ruby-valid-email,
|
||||||
|
# JSON
|
||||||
|
ruby-json (>= 2.6.3~),
|
||||||
|
ruby-json-schema (>= 2.8.1-2~),
|
||||||
|
ruby-json-schemer (>= 0.2.12~),
|
||||||
|
ruby-oj (>= 3.14.1-2~),
|
||||||
|
ruby-oj-introspect(>= 0.7.1-3~),
|
||||||
|
ruby-multi-json (>= 1.14.1~),
|
||||||
|
ruby-yajl (>= 1.4.3~),
|
||||||
|
ruby-webauthn (>= 3.0~),
|
||||||
|
ruby-parslet,
|
||||||
|
ruby-ipynbdiff (>= 0.4.7~),
|
||||||
|
ruby-ed25519 (>= 1.3~),
|
||||||
|
# Vulnerability advisories
|
||||||
|
ruby-cvss-suite,
|
||||||
|
# Apple plist parsing
|
||||||
|
ruby-cfpropertylist (>= 3.0~),
|
||||||
|
ruby-app-store-connect,
|
||||||
|
# For phone verification
|
||||||
|
ruby-telesign (>= 2.2.4~),
|
||||||
|
# for ruby 3.1
|
||||||
|
ruby-net-http-persistent (>= 4.0~),
|
||||||
|
ruby-telesignenterprise,
|
||||||
|
# for google-cloud-storage
|
||||||
|
ruby-digest-crc,
|
||||||
|
# packaged node modules - all node packages are not packaged yet
|
||||||
|
node-rails-actioncable,
|
||||||
|
node-autosize (>= 4.0.2~dfsg1-5~),
|
||||||
|
node-axios (>= 0.17.1~),
|
||||||
|
node-babel7,
|
||||||
|
node-babel-loader (>= 8.0~),
|
||||||
|
node-babel-plugin-lodash,
|
||||||
|
node-bootstrap,
|
||||||
|
node-brace-expansion (>= 1.1.8~),
|
||||||
|
node-cache-loader (>= 4.1~),
|
||||||
|
node-clipboard (>= 2.0.8~),
|
||||||
|
node-compression-webpack-plugin (>= 3.0.1~),
|
||||||
|
node-copy-webpack-plugin (>= 5.0~),
|
||||||
|
node-core-js (>= 3.2.1~),
|
||||||
|
node-cron-validator,
|
||||||
|
node-css-loader (>= 5.0~),
|
||||||
|
# node-d3 includes d3-sankey
|
||||||
|
node-d3 (>= 5.16~),
|
||||||
|
node-d3-selection (>= 1.2~),
|
||||||
|
node-dateformat (>= 5.0.1~),
|
||||||
|
node-deckar01-task-list (>= 2.2.1),
|
||||||
|
node-dompurify (>= 2.3.6~),
|
||||||
|
node-exports-loader (>= 0.7~),
|
||||||
|
node-imports-loader (>= 0.8~),
|
||||||
|
node-file-loader (>= 5.0~),
|
||||||
|
node-font-awesome,
|
||||||
|
node-fuzzaldrin-plus (>= 0.5~),
|
||||||
|
node-glob (>= 7.1.6~),
|
||||||
|
node-jed (>= 1.1.1-2~),
|
||||||
|
node-jquery (>= 3.5~),
|
||||||
|
node-jquery-ujs,
|
||||||
|
# Broken
|
||||||
|
# node-jquery.waitforimages,
|
||||||
|
node-js-cookie (>= 3.0~),
|
||||||
|
node-js-yaml (>= 3.13.1~),
|
||||||
|
node-jszip,
|
||||||
|
node-jszip-utils (>= 0.0.2+dfsg-2~),
|
||||||
|
node-katex (>= 0.13~),
|
||||||
|
node-lodash (>= 4.17.21+dfsg+~cs8.31.198.20210220-9~bpo11+2),
|
||||||
|
node-marked (>= 0.3~),
|
||||||
|
# node-mermaid (>= 8.13.10~),
|
||||||
|
node-minimatch,
|
||||||
|
node-miragejs,
|
||||||
|
node-mousetrap,
|
||||||
|
node-pdfjs-dist,
|
||||||
|
# Include node-pikaday only after @gitlab/ui is accepted
|
||||||
|
# node-pikaday (>= 1.8.0-2~),
|
||||||
|
node-popper.js (>= 1.16.1~),
|
||||||
|
node-postcss (>= 8.4.5~),
|
||||||
|
node-prismjs (>= 1.6~),
|
||||||
|
node-prosemirror-markdown (>= 1.5.2~),
|
||||||
|
node-prosemirror-model (>= 1.16.1~),
|
||||||
|
node-prosemirror-state (>= 1.3.4~),
|
||||||
|
node-prosemirror-view,
|
||||||
|
node-raven-js,
|
||||||
|
node-raw-loader (>= 4.0~),
|
||||||
|
node-style-loader (>= 1.0~),
|
||||||
|
node-three-orbit-controls (>= 82.1.0-3~),
|
||||||
|
node-three-stl-loader (>= 1.0.4~),
|
||||||
|
node-timeago.js (>= 4.0~),
|
||||||
|
node-underscore (>= 1.9~),
|
||||||
|
node-url-loader (>= 3.0~),
|
||||||
|
node-uuid (>= 8.1~),
|
||||||
|
node-vue (>= 2.6.10~),
|
||||||
|
node-vue-resource (>= 1.5.1~),
|
||||||
|
# Blocked by #927254
|
||||||
|
# node-vue-router,
|
||||||
|
webpack (>= 4.43~),
|
||||||
|
node-webpack-stats-plugin,
|
||||||
|
node-worker-loader (>= 2.0~),
|
||||||
|
node-xterm,
|
||||||
|
node-yaml,
|
||||||
|
# using yarn install for remaining node modules as it is in contrib
|
||||||
|
# node-babel-core,
|
||||||
|
# node-babel-eslint,
|
||||||
|
# node-babel-loader,
|
||||||
|
# node-babel-plugin-transform-define,
|
||||||
|
# node-babel-preset-latest,
|
||||||
|
# node-babel-preset-stage-2,
|
||||||
|
# node-debug (>= 3.1.0~),
|
||||||
|
# node-katex,
|
||||||
|
# node-marked,
|
||||||
|
# gitlab-sidekiq was failing without puma
|
||||||
|
puma
|
||||||
|
Recommends: certbot,
|
||||||
|
gitaly (>= 16~),
|
||||||
|
openssh-server
|
||||||
|
Conflicts: libruby2.5
|
||||||
|
Description: git powered software platform to collaborate on code (non-omnibus)
|
||||||
|
gitlab provides web based interface to host source code and track issues.
|
||||||
|
It allows anyone for fork a repository and send merge requests. Code review
|
||||||
|
is possible using merge request workflow. Using groups and roles project
|
||||||
|
access can be controlled.
|
||||||
|
.
|
||||||
|
Unlike the official package from GitLab Inc., this package does not use
|
||||||
|
omnibus.
|
||||||
|
.
|
||||||
|
Note: Currently this package is in contrib because it uses yarn to install
|
||||||
|
some of its front end dependencies.
|
||||||
|
|
||||||
|
Package: gitlab-workhorse
|
||||||
|
Section: net
|
||||||
|
Architecture: any
|
||||||
|
Depends: ${misc:Depends},
|
||||||
|
${shlibs:Depends}
|
||||||
|
Built-Using: ${misc:Built-Using}
|
||||||
|
Description: unloads Git HTTP traffic from the GitLab Rails app (Unicorn)
|
||||||
|
gitlab-workhorse was designed to unload Git HTTP traffic from the GitLab Rails
|
||||||
|
app (Unicorn) to a separate daemon. It also serves 'git archive' downloads for
|
||||||
|
GitLab. All authentication and authorization logic is still handled by the
|
||||||
|
GitLab Rails app.
|
||||||
|
.
|
||||||
|
Architecture: Git client -> NGINX -> gitlab-workhorse (makes auth request to
|
||||||
|
GitLab Rails app) -> git-upload-pack
|
674
debian/copyright
vendored
Normal file
674
debian/copyright
vendored
Normal file
|
@ -0,0 +1,674 @@
|
||||||
|
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||||
|
Upstream-Name: gitlab-foss
|
||||||
|
Source: https://gitlab.com/gitlab-org/gitlab-foss
|
||||||
|
Comment: This package installs front end dependencies (nodejs modules) using
|
||||||
|
yarn package manager from outside debian. This can go to main when all
|
||||||
|
those nodejs modules are packaged in main.
|
||||||
|
|
||||||
|
Files: *
|
||||||
|
Copyright: 2011-2015 GitLab B.V.
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: app/assets/stylesheets/framework/animations.scss
|
||||||
|
Copyright: 2016 Daniel Eden
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: config/initializers/postgresql_cte.rb
|
||||||
|
Copyright: 2012 Dan McClain
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: config/initializers/postgresql_opclasses_support.rb
|
||||||
|
Copyright: 2004-2016 David Heinemeier Hansson
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: debian/*
|
||||||
|
Copyright: 2015-2020 Pirate Praveen <praveen@debian.org>
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: doc/legal/*_contributor_license_agreement.md
|
||||||
|
Copyright: the Google Open Source Programs Office
|
||||||
|
License: CC-BY-3.0
|
||||||
|
|
||||||
|
Files: snowplow-javascript-tracker/*
|
||||||
|
Copyright: 2010 Anthon Pang
|
||||||
|
2012 Snowplow Analytics Ltd
|
||||||
|
License: BSD-3-clause
|
||||||
|
|
||||||
|
Files: vendor/Dockerfile/hexo/themes/landscape/Gruntfile.js*
|
||||||
|
vendor/gitlab-ci-yml/*
|
||||||
|
Copyright: 2016-2017, GitLab.org
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: vendor/gitignore/*
|
||||||
|
Copyright: Github, Inc
|
||||||
|
License: CC0-1.0
|
||||||
|
|
||||||
|
Files: vendor/assets/javascripts/jasmine-jquery.js
|
||||||
|
Copyright: 2010-2014 Wojciech Zawistowski, Travis Jeffery
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: vendor/assets/javascripts/jquery.endless-scroll.js
|
||||||
|
Copyright: 2008 Fred Wu
|
||||||
|
License: Expat or GPL-3+
|
||||||
|
|
||||||
|
Files: vendor/assets/javascripts/u2f.js
|
||||||
|
Copyright: 2014-2015, Google Inc.
|
||||||
|
License: BSD-3-clause
|
||||||
|
|
||||||
|
Files: vendor/assets/javascripts/jquery.scrollTo.js
|
||||||
|
Copyright: 2007-2015, Ariel Flesler - aflesler<a>gmail<d>com | http://flesler.blogspot.com
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: vendor/assets/javascripts/snowplow/sp.js
|
||||||
|
Copyright: Anthon Pang, Snowplow Analytics Ltd
|
||||||
|
License: BSD-2-clause
|
||||||
|
|
||||||
|
Files: vendor/assets/stylesheets/cropper.css
|
||||||
|
Copyright: 2014-2016, Fengyuan Chen and contributors
|
||||||
|
License: Expat
|
||||||
|
|
||||||
|
Files: vendor/assets/javascripts/latinise.js
|
||||||
|
Copyright: Ed (http://semplicewebsites.com/removing-accents-javascript)
|
||||||
|
License: public-domain
|
||||||
|
|
||||||
|
Files: vendor/project_templates/hugo.tar.gz
|
||||||
|
Copyright: 2014 Spencer Lyon
|
||||||
|
2015 Dean Attali,
|
||||||
|
2017 Michael Romero
|
||||||
|
2011-2015 Twitter, Inc.
|
||||||
|
2005, 2014 jQuery Foundation, Inc.
|
||||||
|
License: Expat
|
||||||
|
Comment: hugo.tar.gz has project.bundle which contains these notices
|
||||||
|
|
||||||
|
Files: vendor/project_templates/hexo.tar.gz
|
||||||
|
Copyright: 2013 Tommy Chen
|
||||||
|
2012 Janis Skarnelis - janis@fancyapps.com
|
||||||
|
2018 Font Awesome
|
||||||
|
License: Expat and GPL-3+ and Font-Awesome-Free-License
|
||||||
|
Comment: hexo.tar.gz has project.bundle which contains these notices
|
||||||
|
|
||||||
|
Files: vendor/project_templates/gatsby.tar.gz
|
||||||
|
Copyright: 2015 gatsbyjs
|
||||||
|
License: Expat
|
||||||
|
Comment: gatsby.tar.gz has project.bundle which contains the above notice
|
||||||
|
|
||||||
|
Files: vendor/project_templates/nfhexo.tar.gz
|
||||||
|
Copyright: 2013 Tommy Chen
|
||||||
|
2012 Janis Skarnelis - janis@fancyapps.com
|
||||||
|
2018 Font Awesome
|
||||||
|
License: Expat and GPL-3+ and Font-Awesome-Free-License
|
||||||
|
Comment: nfhexo.tar.gz has project.bundle which contains these notices
|
||||||
|
|
||||||
|
Files: vendor/project_templates/nfhugo.tar.gz
|
||||||
|
Copyright: 2014 Spencer Lyon
|
||||||
|
2015 Dean Attali,
|
||||||
|
2017 Michael Romero
|
||||||
|
2011-2015 Twitter, Inc.
|
||||||
|
2005, 2014 jQuery Foundation, Inc.
|
||||||
|
License: Expat
|
||||||
|
Comment: nfhugo.tar.gz has project.bundle which contains these notices
|
||||||
|
|
||||||
|
Files: vendor/project_templates/spring.tar.gz
|
||||||
|
Copyright: 2004 Apache Software Foundation (ASF)
|
||||||
|
License: Apache-2.0
|
||||||
|
Comment: spring.tar.gz has project.bundle which contains this notice
|
||||||
|
|
||||||
|
License: Apache-2.0
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
.
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
.
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
.
|
||||||
|
On Debian systems, the full text of the Apache-2.0 license
|
||||||
|
can be found in the file '/usr/share/common-licenses/Apache-2.0'
|
||||||
|
|
||||||
|
License: BSD-2-clause
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions
|
||||||
|
are met:
|
||||||
|
.
|
||||||
|
1. Redistributions of source code must retain the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer.
|
||||||
|
.
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer in the
|
||||||
|
documentation and/or other materials provided with the distribution.
|
||||||
|
.
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||||
|
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||||
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||||
|
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||||
|
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
|
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
|
SUCH DAMAGE.
|
||||||
|
|
||||||
|
License: BSD-3-clause
|
||||||
|
All rights reserved.
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
.
|
||||||
|
* Redistributions of source code must retain the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer.
|
||||||
|
* Redistributions in binary form must reproduce the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer in the
|
||||||
|
documentation and/or other materials provided with the distribution.
|
||||||
|
* Neither the name of highlight.js nor the names of its contributors
|
||||||
|
may be used to endorse or promote products derived from this software
|
||||||
|
without specific prior written permission.
|
||||||
|
.
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
|
||||||
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
|
||||||
|
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
License: CC-BY-3.0
|
||||||
|
THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS
|
||||||
|
CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS
|
||||||
|
PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK
|
||||||
|
OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS
|
||||||
|
PROHIBITED.
|
||||||
|
.
|
||||||
|
BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND
|
||||||
|
AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS
|
||||||
|
LICENSE MAY BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE
|
||||||
|
RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS
|
||||||
|
AND CONDITIONS.
|
||||||
|
.
|
||||||
|
1. Definitions
|
||||||
|
.
|
||||||
|
1. "Adaptation" means a work based upon the Work, or upon the Work
|
||||||
|
and other pre-existing works, such as a translation, adaptation,
|
||||||
|
derivative work, arrangement of music or other alterations of a
|
||||||
|
literary or artistic work, or phonogram or performance and
|
||||||
|
includes cinematographic adaptations or any other form in which
|
||||||
|
the Work may be recast, transformed, or adapted including in any
|
||||||
|
form recognizably derived from the original, except that a work
|
||||||
|
that constitutes a Collection will not be considered an Adaptation
|
||||||
|
for the purpose of this License. For the avoidance of doubt, where
|
||||||
|
the Work is a musical work, performance or phonogram, the
|
||||||
|
synchronization of the Work in timed-relation with a moving image
|
||||||
|
("synching") will be considered an Adaptation for the purpose of
|
||||||
|
this License.
|
||||||
|
2. "Collection" means a collection of literary or artistic works,
|
||||||
|
such as encyclopedias and anthologies, or performances, phonograms
|
||||||
|
or broadcasts, or other works or subject matter other than works
|
||||||
|
listed in Section 1(f) below, which, by reason of the selection
|
||||||
|
and arrangement of their contents, constitute intellectual
|
||||||
|
creations, in which the Work is included in its entirety in
|
||||||
|
unmodified form along with one or more other contributions, each
|
||||||
|
constituting separate and independent works in themselves, which
|
||||||
|
together are assembled into a collective whole. A work that
|
||||||
|
constitutes a Collection will not be considered an Adaptation (as
|
||||||
|
defined above) for the purposes of this License.
|
||||||
|
3. "Distribute" means to make available to the public the original
|
||||||
|
and copies of the Work or Adaptation, as appropriate, through sale
|
||||||
|
or other transfer of ownership.
|
||||||
|
4. "Licensor" means the individual, individuals, entity or entities
|
||||||
|
that offer(s) the Work under the terms of this License.
|
||||||
|
5. "Original Author" means, in the case of a literary or artistic
|
||||||
|
work, the individual, individuals, entity or entities who created
|
||||||
|
the Work or if no individual or entity can be identified, the
|
||||||
|
publisher; and in addition (i) in the case of a performance the
|
||||||
|
actors, singers, musicians, dancers, and other persons who act,
|
||||||
|
sing, deliver, declaim, play in, interpret or otherwise perform
|
||||||
|
literary or artistic works or expressions of folklore; (ii) in the
|
||||||
|
case of a phonogram the producer being the person or legal entity
|
||||||
|
who first fixes the sounds of a performance or other sounds; and,
|
||||||
|
(iii) in the case of broadcasts, the organization that transmits
|
||||||
|
the broadcast.
|
||||||
|
6. "Work" means the literary and/or artistic work offered under the
|
||||||
|
terms of this License including without limitation any production
|
||||||
|
in the literary, scientific and artistic domain, whatever may be
|
||||||
|
the mode or form of its expression including digital form, such as
|
||||||
|
a book, pamphlet and other writing; a lecture, address, sermon or
|
||||||
|
other work of the same nature; a dramatic or dramatico-musical
|
||||||
|
work; a choreographic work or entertainment in dumb show; a
|
||||||
|
musical composition with or without words; a cinematographic work
|
||||||
|
to which are assimilated works expressed by a process analogous to
|
||||||
|
cinematography; a work of drawing, painting, architecture,
|
||||||
|
sculpture, engraving or lithography; a photographic work to which
|
||||||
|
are assimilated works expressed by a process analogous to
|
||||||
|
photography; a work of applied art; an illustration, map, plan,
|
||||||
|
sketch or three-dimensional work relative to geography,
|
||||||
|
topography, architecture or science; a performance; a broadcast; a
|
||||||
|
phonogram; a compilation of data to the extent it is protected as
|
||||||
|
a copyrightable work; or a work performed by a variety or circus
|
||||||
|
performer to the extent it is not otherwise considered a literary
|
||||||
|
or artistic work.
|
||||||
|
7. "You" means an individual or entity exercising rights under this
|
||||||
|
License who has not previously violated the terms of this License
|
||||||
|
with respect to the Work, or who has received express permission
|
||||||
|
from the Licensor to exercise rights under this License despite a
|
||||||
|
previous violation.
|
||||||
|
8. "Publicly Perform" means to perform public recitations of the Work
|
||||||
|
and to communicate to the public those public recitations, by any
|
||||||
|
means or process, including by wire or wireless means or public
|
||||||
|
digital performances; to make available to the public Works in
|
||||||
|
such a way that members of the public may access these Works from
|
||||||
|
a place and at a place individually chosen by them; to perform the
|
||||||
|
Work to the public by any means or process and the communication
|
||||||
|
to the public of the performances of the Work, including by public
|
||||||
|
digital performance; to broadcast and rebroadcast the Work by any
|
||||||
|
means including signs, sounds or images.
|
||||||
|
9. "Reproduce" means to make copies of the Work by any means
|
||||||
|
including without limitation by sound or visual recordings and the
|
||||||
|
right of fixation and reproducing fixations of the Work, including
|
||||||
|
storage of a protected performance or phonogram in digital form or
|
||||||
|
other electronic medium.
|
||||||
|
.
|
||||||
|
2. Fair Dealing Rights. Nothing in this License is intended to reduce,
|
||||||
|
limit, or restrict any uses free from copyright or rights arising
|
||||||
|
from limitations or exceptions that are provided for in connection
|
||||||
|
with the copyright protection under copyright law or other
|
||||||
|
applicable laws.
|
||||||
|
.
|
||||||
|
3. License Grant. Subject to the terms and conditions of this License,
|
||||||
|
Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
|
||||||
|
perpetual (for the duration of the applicable copyright) license to
|
||||||
|
exercise the rights in the Work as stated below:
|
||||||
|
.
|
||||||
|
1. to Reproduce the Work, to incorporate the Work into one or more
|
||||||
|
Collections, and to Reproduce the Work as incorporated in the
|
||||||
|
Collections;
|
||||||
|
2. to create and Reproduce Adaptations provided that any such
|
||||||
|
Adaptation, including any translation in any medium, takes
|
||||||
|
reasonable steps to clearly label, demarcate or otherwise identify
|
||||||
|
that changes were made to the original Work. For example, a
|
||||||
|
translation could be marked "The original work was translated from
|
||||||
|
English to Spanish," or a modification could indicate "The
|
||||||
|
original work has been modified.";
|
||||||
|
3. to Distribute and Publicly Perform the Work including as
|
||||||
|
incorporated in Collections; and,
|
||||||
|
4. to Distribute and Publicly Perform Adaptations.
|
||||||
|
5.
|
||||||
|
.
|
||||||
|
For the avoidance of doubt:
|
||||||
|
1. Non-waivable Compulsory License Schemes. In those
|
||||||
|
jurisdictions in which the right to collect royalties
|
||||||
|
through any statutory or compulsory licensing scheme cannot
|
||||||
|
be waived, the Licensor reserves the exclusive right to
|
||||||
|
collect such royalties for any exercise by You of the rights
|
||||||
|
granted under this License;
|
||||||
|
2. Waivable Compulsory License Schemes. In those jurisdictions
|
||||||
|
in which the right to collect royalties through any
|
||||||
|
statutory or compulsory licensing scheme can be waived, the
|
||||||
|
Licensor waives the exclusive right to collect such
|
||||||
|
royalties for any exercise by You of the rights granted
|
||||||
|
under this License; and,
|
||||||
|
3. Voluntary License Schemes. The Licensor waives the right to
|
||||||
|
collect royalties, whether individually or, in the event
|
||||||
|
that the Licensor is a member of a collecting society that
|
||||||
|
administers voluntary licensing schemes, via that society,
|
||||||
|
from any exercise by You of the rights granted under this
|
||||||
|
License.
|
||||||
|
.
|
||||||
|
The above rights may be exercised in all media and formats whether now
|
||||||
|
known or hereafter devised. The above rights include the right to make
|
||||||
|
such modifications as are technically necessary to exercise the rights
|
||||||
|
in other media and formats. Subject to Section 8(f), all rights not
|
||||||
|
expressly granted by Licensor are hereby reserved.
|
||||||
|
.
|
||||||
|
4. Restrictions. The license granted in Section 3 above is expressly
|
||||||
|
made subject to and limited by the following restrictions:
|
||||||
|
.
|
||||||
|
1. You may Distribute or Publicly Perform the Work only under the
|
||||||
|
terms of this License. You must include a copy of, or the Uniform
|
||||||
|
Resource Identifier (URI) for, this License with every copy of the
|
||||||
|
Work You Distribute or Publicly Perform. You may not offer or
|
||||||
|
impose any terms on the Work that restrict the terms of this
|
||||||
|
License or the ability of the recipient of the Work to exercise
|
||||||
|
the rights granted to that recipient under the terms of the
|
||||||
|
License. You may not sublicense the Work. You must keep intact all
|
||||||
|
notices that refer to this License and to the disclaimer of
|
||||||
|
warranties with every copy of the Work You Distribute or Publicly
|
||||||
|
Perform. When You Distribute or Publicly Perform the Work, You may
|
||||||
|
not impose any effective technological measures on the Work that
|
||||||
|
restrict the ability of a recipient of the Work from You to
|
||||||
|
exercise the rights granted to that recipient under the terms of
|
||||||
|
the License. This Section 4(a) applies to the Work as incorporated
|
||||||
|
in a Collection, but this does not require the Collection apart
|
||||||
|
from the Work itself to be made subject to the terms of this
|
||||||
|
License. If You create a Collection, upon notice from any Licensor
|
||||||
|
You must, to the extent practicable, remove from the Collection
|
||||||
|
any credit as required by Section 4(b), as requested. If You
|
||||||
|
create an Adaptation, upon notice from any Licensor You must, to
|
||||||
|
the extent practicable, remove from the Adaptation any credit as
|
||||||
|
required by Section 4(b), as requested.
|
||||||
|
2. If You Distribute, or Publicly Perform the Work or any Adaptations
|
||||||
|
or Collections, You must, unless a request has been made pursuant
|
||||||
|
to Section 4(a), keep intact all copyright notices for the Work
|
||||||
|
and provide, reasonable to the medium or means You are utilizing:
|
||||||
|
(i) the name of the Original Author (or pseudonym, if applicable)
|
||||||
|
if supplied, and/or if the Original Author and/or Licensor
|
||||||
|
designate another party or parties (e.g., a sponsor institute,
|
||||||
|
publishing entity, journal) for attribution ("Attribution
|
||||||
|
Parties") in Licensor's copyright notice, terms of service or by
|
||||||
|
other reasonable means, the name of such party or parties; (ii)
|
||||||
|
the title of the Work if supplied; (iii) to the extent reasonably
|
||||||
|
practicable, the URI, if any, that Licensor specifies to be
|
||||||
|
associated with the Work, unless such URI does not refer to the
|
||||||
|
copyright notice or licensing information for the Work; and (iv) ,
|
||||||
|
consistent with Section 3(b), in the case of an Adaptation, a
|
||||||
|
credit identifying the use of the Work in the Adaptation (e.g.,
|
||||||
|
"French translation of the Work by Original Author," or
|
||||||
|
"Screenplay based on original Work by Original Author"). The
|
||||||
|
credit required by this Section 4 (b) may be implemented in any
|
||||||
|
reasonable manner; provided, however, that in the case of a
|
||||||
|
Adaptation or Collection, at a minimum such credit will appear,
|
||||||
|
if a credit for all contributing authors of the Adaptation or
|
||||||
|
Collection appears, then as part of these credits and in a manner
|
||||||
|
at least as prominent as the credits for the other contributing
|
||||||
|
authors. For the avoidance of doubt, You may only use the credit
|
||||||
|
required by this Section for the purpose of attribution in the
|
||||||
|
manner set out above and, by exercising Your rights under this
|
||||||
|
License, You may not implicitly or explicitly assert or imply any
|
||||||
|
connection with, sponsorship or endorsement by the Original
|
||||||
|
Author, Licensor and/or Attribution Parties, as appropriate, of
|
||||||
|
You or Your use of the Work, without the separate, express prior
|
||||||
|
written permission of the Original Author, Licensor and/or
|
||||||
|
Attribution Parties.
|
||||||
|
3. Except as otherwise agreed in writing by the Licensor or as may be
|
||||||
|
otherwise permitted by applicable law, if You Reproduce,
|
||||||
|
Distribute or Publicly Perform the Work either by itself or as
|
||||||
|
part of any Adaptations or Collections, You must not distort,
|
||||||
|
mutilate, modify or take other derogatory action in relation to
|
||||||
|
the Work which would be prejudicial to the Original Author's honor
|
||||||
|
or reputation. Licensor agrees that in those jurisdictions (e.g.
|
||||||
|
Japan), in which any exercise of the right granted in Section 3(b)
|
||||||
|
of this License (the right to make Adaptations) would be deemed to
|
||||||
|
be a distortion, mutilation, modification or other derogatory
|
||||||
|
action prejudicial to the Original Author's honor and reputation,
|
||||||
|
the Licensor will waive or not assert, as appropriate, this
|
||||||
|
Section, to the fullest extent permitted by the applicable
|
||||||
|
national law, to enable You to reasonably exercise Your right
|
||||||
|
under Section 3(b) of this License (right to make Adaptations) but
|
||||||
|
not otherwise.
|
||||||
|
.
|
||||||
|
5. Representations, Warranties and Disclaimer
|
||||||
|
.
|
||||||
|
UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
|
||||||
|
OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
|
||||||
|
KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
|
||||||
|
INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
|
||||||
|
LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF
|
||||||
|
ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW
|
||||||
|
THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO
|
||||||
|
YOU.
|
||||||
|
.
|
||||||
|
6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE
|
||||||
|
LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY
|
||||||
|
FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
|
||||||
|
DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
|
||||||
|
LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||||
|
.
|
||||||
|
7. Termination
|
||||||
|
.
|
||||||
|
1. This License and the rights granted hereunder will terminate
|
||||||
|
automatically upon any breach by You of the terms of this License.
|
||||||
|
Individuals or entities who have received Adaptations or
|
||||||
|
Collections from You under this License, however, will not have
|
||||||
|
their licenses terminated provided such individuals or entities
|
||||||
|
remain in full compliance with those licenses. Sections 1, 2, 5,
|
||||||
|
6, 7, and 8 will survive any termination of this License.
|
||||||
|
2. Subject to the above terms and conditions, the license granted
|
||||||
|
here is perpetual (for the duration of the applicable copyright in
|
||||||
|
the Work). Notwithstanding the above, Licensor reserves the right
|
||||||
|
to release the Work under different license terms or to stop
|
||||||
|
distributing the Work at any time; provided, however that any such
|
||||||
|
election will not serve to withdraw this License (or any other
|
||||||
|
license that has been, or is required to be, granted under the
|
||||||
|
terms of this License), and this License will continue in full
|
||||||
|
force and effect unless terminated as stated above.
|
||||||
|
.
|
||||||
|
8. Miscellaneous
|
||||||
|
.
|
||||||
|
1. Each time You Distribute or Publicly Perform the Work or a
|
||||||
|
Collection, the Licensor offers to the recipient a license to the
|
||||||
|
Work on the same terms and conditions as the license granted to
|
||||||
|
You under this License.
|
||||||
|
2. Each time You Distribute or Publicly Perform an Adaptation,
|
||||||
|
Licensor offers to the recipient a license to the original Work on
|
||||||
|
the same terms and conditions as the license granted to You under
|
||||||
|
this License.
|
||||||
|
3. If any provision of this License is invalid or unenforceable under
|
||||||
|
applicable law, it shall not affect the validity or enforceability
|
||||||
|
of the remainder of the terms of this License, and without further
|
||||||
|
action by the parties to this agreement, such provision shall be
|
||||||
|
reformed to the minimum extent necessary to make such provision
|
||||||
|
valid and enforceable.
|
||||||
|
4. No term or provision of this License shall be deemed waived and no
|
||||||
|
breach consented to unless such waiver or consent shall be in
|
||||||
|
writing and signed by the party to be charged with such waiver or
|
||||||
|
consent.
|
||||||
|
5. This License constitutes the entire agreement between the parties
|
||||||
|
with respect to the Work licensed here. There are no
|
||||||
|
understandings, agreements or representations with respect to the
|
||||||
|
Work not specified here. Licensor shall not be bound by any
|
||||||
|
additional provisions that may appear in any communication from
|
||||||
|
You. This License may not be modified without the mutual written
|
||||||
|
agreement of the Licensor and You.
|
||||||
|
6. The rights granted under, and the subject matter referenced, in
|
||||||
|
this License were drafted utilizing the terminology of the Berne
|
||||||
|
Convention for the Protection of Literary and Artistic Works (as
|
||||||
|
amended on September 28, 1979), the Rome Convention of 1961, the
|
||||||
|
WIPO Copyright Treaty of 1996, the WIPO Performances and
|
||||||
|
Phonograms Treaty of 1996 and the Universal Copyright Convention
|
||||||
|
(as revised on July 24, 1971). These rights and subject matter
|
||||||
|
take effect in the relevant jurisdiction in which the License
|
||||||
|
terms are sought to be enforced according to the corresponding
|
||||||
|
provisions of the implementation of those treaty provisions in the
|
||||||
|
applicable national law. If the standard suite of rights granted
|
||||||
|
under applicable copyright law includes additional rights not
|
||||||
|
granted under this License, such additional rights are deemed to
|
||||||
|
be included in the License; this License is not intended to
|
||||||
|
restrict the license of any rights under applicable law.
|
||||||
|
|
||||||
|
License: CC0-1.0
|
||||||
|
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL
|
||||||
|
SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT
|
||||||
|
RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS.
|
||||||
|
CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR
|
||||||
|
THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR
|
||||||
|
DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR
|
||||||
|
WORKS PROVIDED HEREUNDER.
|
||||||
|
.
|
||||||
|
Statement of Purpose
|
||||||
|
.
|
||||||
|
The laws of most jurisdictions throughout the world automatically confer
|
||||||
|
exclusive Copyright and Related Rights (defined below) upon the creator and
|
||||||
|
subsequent owner(s) (each and all, an "owner") of an original work of
|
||||||
|
authorship and/or a database (each, a "Work").
|
||||||
|
.
|
||||||
|
Certain owners wish to permanently relinquish those rights to a Work for the
|
||||||
|
purpose of contributing to a commons of creative, cultural and scientific
|
||||||
|
works ("Commons") that the public can reliably and without fear of later
|
||||||
|
claims of infringement build upon, modify, incorporate in other works, reuse
|
||||||
|
and redistribute as freely as possible in any form whatsoever and for any
|
||||||
|
purposes, including without limitation commercial purposes. These owners may
|
||||||
|
contribute to the Commons to promote the ideal of a free culture and the
|
||||||
|
further production of creative, cultural and scientific works, or to gain
|
||||||
|
reputation or greater distribution for their Work in part through the use
|
||||||
|
and efforts of others.
|
||||||
|
.
|
||||||
|
For these and/or other purposes and motivations, and without any expectation
|
||||||
|
of additional consideration or compensation, the person associating CC0 with
|
||||||
|
a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright
|
||||||
|
and Related Rights in the Work, voluntarily elects to apply CC0 to the Work
|
||||||
|
and publicly distribute the Work under its terms, with knowledge of his or her
|
||||||
|
Copyright and Related Rights in the Work and the meaning and intended legal
|
||||||
|
effect of CC0 on those rights.
|
||||||
|
.
|
||||||
|
Copyright and Related Rights. A Work made available under CC0 may be protected
|
||||||
|
by copyright and related or neighboring rights ("Copyright and Related
|
||||||
|
Rights"). Copyright and Related Rights include, but are not limited to,
|
||||||
|
the following:
|
||||||
|
.
|
||||||
|
the right to reproduce, adapt, distribute, perform, display, communicate,
|
||||||
|
and translate a Work;
|
||||||
|
moral rights retained by the original author(s) and/or performer(s);
|
||||||
|
publicity and privacy rights pertaining to a person's image or likeness
|
||||||
|
depicted in a Work;
|
||||||
|
rights protecting against unfair competition in regards to a Work, subject
|
||||||
|
to the limitations in paragraph 4(a), below;
|
||||||
|
rights protecting the extraction, dissemination, use and reuse of data
|
||||||
|
in a Work;
|
||||||
|
database rights (such as those arising under Directive 96/9/EC of the European
|
||||||
|
Parliament and of the Council of 11 March 1996 on the legal protection of
|
||||||
|
databases, and under any national implementation thereof, including any
|
||||||
|
amended or successor version of such directive); and
|
||||||
|
other similar, equivalent or corresponding rights throughout the world
|
||||||
|
based on applicable law or treaty, and any national implementations thereof.
|
||||||
|
.
|
||||||
|
2. Waiver. To the greatest extent permitted by, but not in contravention of,
|
||||||
|
applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and
|
||||||
|
unconditionally waives, abandons, and surrenders all of Affirmer's Copyright
|
||||||
|
and Related Rights and associated claims and causes of action, whether now
|
||||||
|
known or unknown (including existing as well as future claims and causes of
|
||||||
|
action), in the Work (i) in all territories worldwide, (ii) for the maximum
|
||||||
|
duration provided by applicable law or treaty (including future time
|
||||||
|
extensions), (iii) in any current or future medium and for any number of
|
||||||
|
copies, and (iv) for any purpose whatsoever, including without limitation
|
||||||
|
commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes
|
||||||
|
the Waiver for the benefit of each member of the public at large and to the
|
||||||
|
detriment of Affirmer's heirs and successors, fully intending that such Waiver
|
||||||
|
shall not be subject to revocation, rescission, cancellation, termination,
|
||||||
|
or any other legal or equitable action to disrupt the quiet enjoyment of the
|
||||||
|
Work by the public as contemplated by Affirmer's express Statement of Purpose.
|
||||||
|
.
|
||||||
|
3. Public License Fallback. Should any part of the Waiver for any reason be
|
||||||
|
judged legally invalid or ineffective under applicable law, then the Waiver
|
||||||
|
shall be preserved to the maximum extent permitted taking into account
|
||||||
|
Affirmer's express Statement of Purpose. In addition, to the extent the Waiver
|
||||||
|
is so judged Affirmer hereby grants to each affected person a royalty-free,
|
||||||
|
non transferable, non sublicensable, non exclusive, irrevocable and
|
||||||
|
unconditional license to exercise Affirmer's Copyright and Related Rights
|
||||||
|
in the Work (i) in all territories worldwide, (ii) for the maximum duration
|
||||||
|
provided by applicable law or treaty (including future time extensions),
|
||||||
|
(iii) in any current or future medium and for any number of copies, and (iv)
|
||||||
|
for any purpose whatsoever, including without limitation commercial,
|
||||||
|
advertising or promotional purposes (the "License"). The License shall be
|
||||||
|
deemed effective as of the date CC0 was applied by Affirmer to the Work.
|
||||||
|
Should any part of the License for any reason be judged legally invalid or
|
||||||
|
ineffective under applicable law, such partial invalidity or ineffectiveness
|
||||||
|
shall not invalidate the remainder of the License, and in such case Affirmer
|
||||||
|
hereby affirms that he or she will not (i) exercise any of his or her
|
||||||
|
remaining Copyright and Related Rights in the Work or (ii) assert any
|
||||||
|
associated claims and causes of action with respect to the Work, in either
|
||||||
|
case contrary to Affirmer's express Statement of Purpose.
|
||||||
|
.
|
||||||
|
4. Limitations and Disclaimers.
|
||||||
|
.
|
||||||
|
No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||||
|
surrendered, licensed or otherwise affected by this document.
|
||||||
|
Affirmer offers the Work as-is and makes no representations or warranties
|
||||||
|
of any kind concerning the Work, express, implied, statutory or otherwise,
|
||||||
|
including without limitation warranties of title, merchantability, fitness
|
||||||
|
for a particular purpose, non infringement, or the absence of latent or
|
||||||
|
other defects, accuracy, or the present or absence of errors, whether
|
||||||
|
or not discoverable, all to the greatest extent permissible under applicable
|
||||||
|
law.
|
||||||
|
.
|
||||||
|
Affirmer disclaims responsibility for clearing rights of other persons that
|
||||||
|
may apply to the Work or any use thereof, including without limitation any
|
||||||
|
person's Copyright and Related Rights in the Work. Further, Affirmer
|
||||||
|
disclaims responsibility for obtaining any necessary consents,
|
||||||
|
permissions or other rights required for any use of the Work.
|
||||||
|
.
|
||||||
|
Affirmer understands and acknowledges that Creative Commons is not a party
|
||||||
|
to this document and has no duty or obligation with respect to this CC0 or
|
||||||
|
use of the Work.
|
||||||
|
|
||||||
|
License: Expat
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
.
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
.
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
||||||
|
|
||||||
|
License: Font-Awesome-Free-License
|
||||||
|
Font Awesome Free is free, open source, and GPL friendly. You can use it for
|
||||||
|
commercial projects, open source projects, or really almost whatever you want.
|
||||||
|
Full Font Awesome Free license: https://fontawesome.com/license/free.
|
||||||
|
.
|
||||||
|
# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
|
||||||
|
In the Font Awesome Free download, the CC BY 4.0 license applies to all icons
|
||||||
|
packaged as SVG and JS file types.
|
||||||
|
.
|
||||||
|
# Fonts: SIL OFL 1.1 License (https://scripts.sil.org/OFL)
|
||||||
|
In the Font Awesome Free download, the SIL OFL license applies to all icons
|
||||||
|
packaged as web and desktop font files.
|
||||||
|
.
|
||||||
|
# Code: MIT License (https://opensource.org/licenses/MIT)
|
||||||
|
In the Font Awesome Free download, the MIT license applies to all non-font and
|
||||||
|
non-icon files.
|
||||||
|
.
|
||||||
|
# Attribution
|
||||||
|
Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font
|
||||||
|
Awesome Free files already contain embedded comments with sufficient
|
||||||
|
attribution, so you shouldn't need to do anything additional when using these
|
||||||
|
files normally.
|
||||||
|
.
|
||||||
|
We've kept attribution comments terse, so we ask that you do not actively work
|
||||||
|
to remove them from files, especially code. They're a great way for folks to
|
||||||
|
learn about Font Awesome.
|
||||||
|
.
|
||||||
|
# Brand Icons
|
||||||
|
All brand icons are trademarks of their respective owners. The use of these
|
||||||
|
trademarks does not indicate endorsement of the trademark holder by Font
|
||||||
|
Awesome, nor vice versa. **Please do not use brand logos for any purpose except
|
||||||
|
to represent the company, product, or service to which they refer.**
|
||||||
|
|
||||||
|
License: GPL-3+
|
||||||
|
This program is free software; you can redistribute it
|
||||||
|
and/or modify it under the terms of the GNU General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 3 of the License, or (at your option) any later
|
||||||
|
version.
|
||||||
|
.
|
||||||
|
This program is distributed in the hope that it will be
|
||||||
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||||
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE. See the GNU General Public License for more
|
||||||
|
details.
|
||||||
|
.
|
||||||
|
You should have received a copy of the GNU General Public
|
||||||
|
License along with this package; if not, write to the Free
|
||||||
|
Software Foundation, Inc., 51 Franklin St, Fifth Floor,
|
||||||
|
Boston, MA 02110-1301 USA
|
||||||
|
.
|
||||||
|
On Debian systems, the full text of the GNU General Public
|
||||||
|
License version 3 can be found in the file
|
||||||
|
`/usr/share/common-licenses/GPL-3'.
|
||||||
|
|
||||||
|
License: public-domain
|
||||||
|
All scripts are Public Domain.
|
2
debian/gbp.conf
vendored
Normal file
2
debian/gbp.conf
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[DEFAULT]
|
||||||
|
component = [ 'snowplow-javascript-tracker', 'workhorse-vendor' ]
|
12
debian/gitlab-rails-console.sh
vendored
Executable file
12
debian/gitlab-rails-console.sh
vendored
Executable file
|
@ -0,0 +1,12 @@
|
||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Read debian specific configuration
|
||||||
|
. /etc/gitlab-common/gitlab-common.conf
|
||||||
|
. /etc/gitlab/gitlab-debian.conf
|
||||||
|
export DB RAILS_ENV GEM_HOME
|
||||||
|
|
||||||
|
cd /usr/share/gitlab
|
||||||
|
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "/usr/bin/bundle exec rails console -e production"
|
12
debian/gitlab-rake.sh
vendored
Executable file
12
debian/gitlab-rake.sh
vendored
Executable file
|
@ -0,0 +1,12 @@
|
||||||
|
#! /bin/bash
|
||||||
|
# Using bash for ${variable@Q} option for passing quotes from command line argument to rake
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Read debian specific configuration
|
||||||
|
. /etc/gitlab-common/gitlab-common.conf
|
||||||
|
. /etc/gitlab/gitlab-debian.conf
|
||||||
|
export DB RAILS_ENV GEM_HOME
|
||||||
|
|
||||||
|
cd /usr/share/gitlab
|
||||||
|
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "/usr/bin/bundle exec rake ${@@Q}"
|
16
debian/gitlab-update-gemfile-lock.sh
vendored
Executable file
16
debian/gitlab-update-gemfile-lock.sh
vendored
Executable file
|
@ -0,0 +1,16 @@
|
||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Read debian specific configuration
|
||||||
|
. /etc/gitlab-common/gitlab-common.conf
|
||||||
|
. /etc/gitlab/gitlab-debian.conf
|
||||||
|
export DB RAILS_ENV
|
||||||
|
|
||||||
|
cd /usr/share/gitlab
|
||||||
|
|
||||||
|
# Remove all lines from Gemfile.lock
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "touch ${gitlab_data_dir}/Gemfile.lock && \
|
||||||
|
truncate -s 0 ${gitlab_data_dir}/Gemfile.lock"
|
||||||
|
# Regenerate Gemfile.lock
|
||||||
|
runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle install --local'
|
1
debian/gitlab-workhorse.install
vendored
Normal file
1
debian/gitlab-workhorse.install
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
debian/tmp/usr/bin
|
63
debian/gitlab.config
vendored
Executable file
63
debian/gitlab.config
vendored
Executable file
|
@ -0,0 +1,63 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# config maintainer script for gitlab
|
||||||
|
|
||||||
|
CONFIGFILE=/etc/gitlab/gitlab-debian.conf
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# source debconf stuffs
|
||||||
|
. /usr/share/debconf/confmodule
|
||||||
|
|
||||||
|
# Load config file, if it exists.
|
||||||
|
if [ -e $CONFIGFILE ]; then
|
||||||
|
. $CONFIGFILE || true
|
||||||
|
|
||||||
|
# Store values from config file into
|
||||||
|
# debconf db.
|
||||||
|
db_set gitlab/fqdn "$GITLAB_HOST"
|
||||||
|
db_set gitlab/ssl "${GITLAB_HTTPS:-false}"
|
||||||
|
db_set gitlab/letsencrypt "${gitlab_letsencrypt:-false}"
|
||||||
|
if [ -n "$gitlab_letsencrypt_email" ]; then
|
||||||
|
db_set gitlab/letsencrypt_email "${gitlab_letsencrypt_email}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# What is your fqdn?
|
||||||
|
db_input high gitlab/fqdn || true
|
||||||
|
db_go
|
||||||
|
|
||||||
|
# Do you want https?
|
||||||
|
db_input high gitlab/ssl || true
|
||||||
|
db_go
|
||||||
|
|
||||||
|
# Don't prompt for letsencrypt if not installed
|
||||||
|
if command -v letsencrypt >/dev/null; then
|
||||||
|
# Do you want Let's Encrypt?
|
||||||
|
db_get gitlab/ssl
|
||||||
|
if [ "${RET}" = "true" ]
|
||||||
|
then
|
||||||
|
db_input high gitlab/letsencrypt || true
|
||||||
|
db_go
|
||||||
|
db_get gitlab/letsencrypt
|
||||||
|
gitlab_letsencrypt=$RET
|
||||||
|
if [ "$gitlab_letsencrypt" = "true" ]; then
|
||||||
|
# Get email for letsencrypt updates
|
||||||
|
db_input high gitlab/letsencrypt_email || true
|
||||||
|
db_go
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
db_get gitlab-common/user
|
||||||
|
gitlab_user=$RET
|
||||||
|
|
||||||
|
# source dbconfig-common shell library, and call the hook function
|
||||||
|
if [ -f /usr/share/dbconfig-common/dpkg/config ]; then
|
||||||
|
. /usr/share/dbconfig-common/dpkg/config
|
||||||
|
|
||||||
|
dbc_dbtypes="pgsql"
|
||||||
|
dbc_dbname="gitlab_production"
|
||||||
|
dbc_dbuser="$gitlab_user"
|
||||||
|
|
||||||
|
dbc_go gitlab "$@"
|
||||||
|
fi
|
3
debian/gitlab.dirs
vendored
Normal file
3
debian/gitlab.dirs
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
/var/cache/gitlab
|
||||||
|
/var/log/gitlab
|
||||||
|
/var/log/gitlab-shell
|
2
debian/gitlab.docs
vendored
Normal file
2
debian/gitlab.docs
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
README.md
|
||||||
|
debian/README.Debian
|
19
debian/gitlab.gitlab-mailroom.service
vendored
Normal file
19
debian/gitlab.gitlab-mailroom.service
vendored
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Gitlab mailroom Worker
|
||||||
|
PartOf=gitlab.target
|
||||||
|
Requires=gitlab-puma.service
|
||||||
|
Wants=gitlab-puma.service
|
||||||
|
After=gitlab-puma.service
|
||||||
|
PartOf=gitlab.service
|
||||||
|
ReloadPropagatedFrom=gitlab-puma.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
WorkingDirectory=/usr/share/gitlab
|
||||||
|
EnvironmentFile=/etc/gitlab/gitlab-debian.conf
|
||||||
|
SyslogIdentifier=gitlab-mailroom
|
||||||
|
ExecStart=/usr/bin/bundle exec mail_room -q -c /etc/gitlab/mail_room.yml
|
||||||
|
Restart=on-abnormal
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=gitlab.target
|
22
debian/gitlab.gitlab-puma.service
vendored
Normal file
22
debian/gitlab.gitlab-puma.service
vendored
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
[Unit]
|
||||||
|
Description=GitLab Puma Server
|
||||||
|
PartOf=gitlab.target
|
||||||
|
Wants=redis-server.service
|
||||||
|
Wants=postgresql.service
|
||||||
|
After=redis-server.service postgresql.service
|
||||||
|
PartOf=gitlab.service
|
||||||
|
ReloadPropagatedFrom=gitlab.service
|
||||||
|
Conflicts=gitlab-unicorn.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
WorkingDirectory=/usr/share/gitlab
|
||||||
|
EnvironmentFile=/etc/gitlab/gitlab-debian.conf
|
||||||
|
EnvironmentFile=-/etc/default/gitlab
|
||||||
|
SyslogIdentifier=gitlab-puma
|
||||||
|
ExecStart=/usr/bin/bundle exec puma -C config/puma.rb -e $RAILS_ENV
|
||||||
|
ExecReload=/bin/kill -USR2 $MAINPID
|
||||||
|
Restart=on-abnormal
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=gitlab.target
|
25
debian/gitlab.gitlab-sidekiq.service
vendored
Normal file
25
debian/gitlab.gitlab-sidekiq.service
vendored
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
[Unit]
|
||||||
|
Description=GitLab Sidekiq Worker
|
||||||
|
PartOf=gitlab.target
|
||||||
|
Wants=redis-server.service
|
||||||
|
Wants=postgresql.service
|
||||||
|
After=redis-server.service postgresql.service
|
||||||
|
PartOf=gitlab.service
|
||||||
|
ReloadPropagatedFrom=gitlab.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
WorkingDirectory=/usr/share/gitlab
|
||||||
|
EnvironmentFile=/etc/gitlab/gitlab-debian.conf
|
||||||
|
Environment=SIDEKIQ_QUEUES=*
|
||||||
|
SyslogIdentifier=gitlab-sidekiq
|
||||||
|
ExecStartPre=truncate -s 0 Gemfile.lock
|
||||||
|
ExecStartPre=/usr/bin/bundle install --local --quiet
|
||||||
|
ExecStart=/usr/bin/bundle exec bin/sidekiq-cluster $SIDEKIQ_QUEUES -e $RAILS_ENV
|
||||||
|
Restart=on-abnormal
|
||||||
|
|
||||||
|
## No "Type=notify" support; wait for service to initialise:
|
||||||
|
ExecStartPost=-/bin/sh -c "for i in 4 4 4 4 4 4 4 4; do sleep $i; (ps -h -o command -p $MAINPID | grep -q -P \"sidekiq\s\d\.\d\.\d\") && exit 0; done"
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=gitlab.target
|
25
debian/gitlab.gitlab-workhorse.service
vendored
Normal file
25
debian/gitlab.gitlab-workhorse.service
vendored
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Gitlab Workhorse handles slow HTTP requests for Gitlab.
|
||||||
|
PartOf=gitlab.target
|
||||||
|
Requires=gitlab-puma.service
|
||||||
|
Wants=gitlab-puma.service
|
||||||
|
After=gitlab-puma.service
|
||||||
|
PartOf=gitlab.service
|
||||||
|
ReloadPropagatedFrom=gitlab-puma.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
WorkingDirectory=/usr/share/gitlab
|
||||||
|
EnvironmentFile=/etc/gitlab/gitlab-debian.conf
|
||||||
|
SyslogIdentifier=gitlab-workhorse
|
||||||
|
ExecStart=/usr/bin/gitlab-workhorse \
|
||||||
|
-listenUmask 0 \
|
||||||
|
-listenNetwork unix \
|
||||||
|
-listenAddr ${gitlab_pid_path}/gitlab-workhorse.socket \
|
||||||
|
-authBackend http://127.0.0.1:8080 \
|
||||||
|
-authSocket ${gitlab_pid_path}/gitlab.socket \
|
||||||
|
-documentRoot ${gitlab_app_root}/public
|
||||||
|
Restart=on-abnormal
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=gitlab.target
|
1
debian/gitlab.init
vendored
Symbolic link
1
debian/gitlab.init
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../lib/support/init.d/gitlab
|
77
debian/gitlab.install
vendored
Normal file
77
debian/gitlab.install
vendored
Normal file
|
@ -0,0 +1,77 @@
|
||||||
|
debian/conf/gitlab etc/default
|
||||||
|
debian/conf/puma.rb etc/gitlab
|
||||||
|
debian/conf/database.yml etc/gitlab
|
||||||
|
debian/conf/gitlab.yml.example usr/lib/gitlab/templates
|
||||||
|
debian/conf/resque.yml etc/gitlab
|
||||||
|
debian/conf/cable.yml etc/gitlab
|
||||||
|
debian/conf/gitlab-debian.conf.example usr/lib/gitlab/templates
|
||||||
|
debian/conf/*.target lib/systemd/system
|
||||||
|
debian/conf/smtp_settings.rb etc/gitlab/initializers
|
||||||
|
debian/conf/tmpfiles.d/gitlab.conf /usr/lib/tmpfiles.d/
|
||||||
|
debian/conf/nginx.conf.example usr/lib/gitlab/templates
|
||||||
|
debian/conf/nginx.ssl.conf.example usr/lib/gitlab/templates
|
||||||
|
debian/rake-tasks.sh usr/lib/gitlab/scripts
|
||||||
|
debian/gitlab-rake.sh usr/lib/gitlab/scripts
|
||||||
|
debian/gitlab-rails-console.sh usr/lib/gitlab/scripts
|
||||||
|
debian/gitlab-update-gemfile-lock.sh usr/lib/gitlab/scripts
|
||||||
|
.browserslistrc usr/share/gitlab
|
||||||
|
.editorconfig usr/share/gitlab
|
||||||
|
.lefthook usr/share/gitlab
|
||||||
|
.license_encryption_key.pub usr/share/gitlab
|
||||||
|
.markdownlint.yml usr/share/gitlab
|
||||||
|
.solargraph.yml.example usr/share/gitlab
|
||||||
|
.vale.ini usr/share/gitlab
|
||||||
|
babel.config.js usr/share/gitlab
|
||||||
|
app usr/share/gitlab
|
||||||
|
bin usr/share/gitlab
|
||||||
|
CHANGELOG.md usr/share/gitlab
|
||||||
|
changelogs usr/share/gitlab
|
||||||
|
config/* etc/gitlab
|
||||||
|
config.ru usr/share/gitlab
|
||||||
|
CONTRIBUTING.md usr/share/gitlab
|
||||||
|
crowdin.yml usr/share/gitlab
|
||||||
|
danger usr/share/gitlab
|
||||||
|
data usr/share/gitlab
|
||||||
|
Dangerfile usr/share/gitlab
|
||||||
|
doc usr/share/gitlab
|
||||||
|
docker-compose.yml usr/share/gitlab
|
||||||
|
Dockerfile.assets usr/share/gitlab
|
||||||
|
fixtures usr/share/gitlab
|
||||||
|
Gemfile usr/share/gitlab
|
||||||
|
Guardfile usr/share/gitlab
|
||||||
|
generator_templates usr/share/gitlab
|
||||||
|
glfm_specification usr/share/gitlab
|
||||||
|
GITLAB_ELASTICSEARCH_INDEXER_VERSION usr/share/gitlab
|
||||||
|
GITLAB_KAS_VERSION usr/share/gitlab
|
||||||
|
GITLAB_METRICS_EXPORTER_VERSION usr/share/gitlab
|
||||||
|
GITLAB_PAGES_VERSION usr/share/gitlab
|
||||||
|
GITALY_SERVER_VERSION usr/share/gitlab
|
||||||
|
GITLAB_SHELL_VERSION usr/share/gitlab
|
||||||
|
GITLAB_WORKHORSE_VERSION usr/share/gitlab
|
||||||
|
haml_lint usr/share/gitlab
|
||||||
|
INSTALLATION_TYPE usr/share/gitlab
|
||||||
|
jest.config.*.js usr/share/gitlab
|
||||||
|
jest_resolver.js usr/share/gitlab
|
||||||
|
lib usr/share/gitlab
|
||||||
|
locale usr/share/gitlab
|
||||||
|
MAINTENANCE.md usr/share/gitlab
|
||||||
|
metrics_server usr/share/gitlab
|
||||||
|
package.json usr/share/gitlab
|
||||||
|
patches var/lib/gitlab
|
||||||
|
PHILOSOPHY.md usr/share/gitlab
|
||||||
|
PROCESS.md usr/share/gitlab
|
||||||
|
rubocop usr/share/gitlab
|
||||||
|
Rakefile usr/share/gitlab
|
||||||
|
README.md usr/share/gitlab
|
||||||
|
scripts usr/share/gitlab
|
||||||
|
security.txt usr/share/gitlab
|
||||||
|
sidekiq_cluster usr/share/gitlab
|
||||||
|
storybook usr/share/gitlab
|
||||||
|
tests.yml usr/share/gitlab
|
||||||
|
yarn.lock var/lib/gitlab
|
||||||
|
tooling usr/share/gitlab
|
||||||
|
vendor usr/share/gitlab
|
||||||
|
VERSION usr/share/gitlab
|
||||||
|
shared var/lib/gitlab
|
||||||
|
public var/lib/gitlab
|
||||||
|
db var/lib/gitlab
|
26
debian/gitlab.links
vendored
Normal file
26
debian/gitlab.links
vendored
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
var/lib/gitlab/public usr/share/gitlab/public
|
||||||
|
var/lib/gitlab/shared usr/share/gitlab/shared
|
||||||
|
var/lib/gitlab/db usr/share/gitlab/db
|
||||||
|
var/lib/gitlab/node_modules usr/share/gitlab/node_modules
|
||||||
|
usr/share/gitlab/package.json var/lib/gitlab/package.json
|
||||||
|
var/lib/gitlab/yarn-error.log usr/share/gitlab/yarn-error.log
|
||||||
|
var/lib/gitlab/yarn.lock usr/share/gitlab/yarn.lock
|
||||||
|
var/lib/gitlab/.yarn usr/share/gitlab/.yarn
|
||||||
|
var/lib/gitlab/.yarnrc.yml usr/share/gitlab/.yarnrc.yml
|
||||||
|
var/lib/gitlab/.ssh usr/share/gitlab/.ssh
|
||||||
|
var/lib/gitlab/.bundle usr/share/gitlab/.bundle
|
||||||
|
var/lib/gitlab/secrets.yml etc/gitlab/secrets.yml
|
||||||
|
var/lib/gitlab/locale usr/share/gitlab/app/assets/javascripts/locale
|
||||||
|
usr/share/gitlab/app/assets/javascripts/locale.static/index.js var/lib/gitlab/locale/index.js
|
||||||
|
usr/share/gitlab/scripts var/lib/gitlab/scripts
|
||||||
|
var/log/gitlab usr/share/gitlab/log
|
||||||
|
var/log/gitlab/builds usr/share/gitlab/builds
|
||||||
|
run/gitlab usr/share/gitlab/tmp
|
||||||
|
etc/gitlab usr/share/gitlab/config
|
||||||
|
/var/lib/gitlab/.gitlab_workhorse_secret /usr/share/gitlab/.gitlab_workhorse_secret
|
||||||
|
/var/lib/gitlab/.gitlab_shell_secret /usr/share/gitlab/.gitlab_shell_secret
|
||||||
|
/var/lib/gitlab/.gitlab_kas_secret /usr/share/gitlab/.gitlab_kas_secret
|
||||||
|
/var/lib/gitlab/Gemfile.lock /usr/share/gitlab/Gemfile.lock
|
||||||
|
/usr/lib/gitlab/scripts/gitlab-rake.sh /usr/sbin/gitlab-rake
|
||||||
|
/usr/lib/gitlab/scripts/gitlab-rails-console.sh /usr/sbin/gitlab-rails-console
|
||||||
|
/usr/lib/gitlab/scripts/gitlab-update-gemfile-lock.sh /usr/sbin/gitlab-update-gemfile-lock
|
40
debian/gitlab.lintian-overrides
vendored
Normal file
40
debian/gitlab.lintian-overrides
vendored
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
# Used by chkconfig tool for rpm based systems, it can be safely ignored
|
||||||
|
gitlab: init.d-script-has-unknown-lsb-keyword etc/init.d/gitlab:15 chkconfig
|
||||||
|
|
||||||
|
# just an example, not used directly
|
||||||
|
gitlab: executable-not-elf-or-script usr/share/gitlab/lib/support/init.d/gitlab.default.example
|
||||||
|
|
||||||
|
# just an example, not used directly
|
||||||
|
gitlab: executable-not-elf-or-script usr/share/gitlab/lib/support/deploy/deploy.sh
|
||||||
|
|
||||||
|
# comes from upstream, timestamp will not change on rebuilds
|
||||||
|
gitlab: package-contains-timestamped-gzip usr/share/gitlab/spec/fixtures/ci_build_artifacts_metadata.gz
|
||||||
|
|
||||||
|
# upgrade handled via apt, script not required
|
||||||
|
gitlab: executable-not-elf-or-script usr/share/gitlab/bin/upgrade.rb
|
||||||
|
gitlab: executable-not-elf-or-script usr/share/gitlab/bin/ci/upgrade.rb
|
||||||
|
|
||||||
|
# False-positives: there are no init.d files for those services:
|
||||||
|
init.d-script-not-marked-as-conffile etc/init.d/gitlab-sidekiq
|
||||||
|
init.d-script-not-marked-as-conffile etc/init.d/gitlab-workhorse
|
||||||
|
init.d-script-not-marked-as-conffile etc/init.d/gitlab-unicorn
|
||||||
|
init.d-script-not-marked-as-conffile etc/init.d/gitlab-mailroom
|
||||||
|
|
||||||
|
# Not needed; SysV uses one 'gitlab' init script.
|
||||||
|
init.d-script-not-included-in-package etc/init.d/gitlab-workhorse
|
||||||
|
init.d-script-not-included-in-package etc/init.d/gitlab-sidekiq
|
||||||
|
init.d-script-not-included-in-package etc/init.d/gitlab-mailroom
|
||||||
|
init.d-script-not-included-in-package etc/init.d/gitlab-unicorn
|
||||||
|
|
||||||
|
# libjs-cropper is 1.2.2, embedded cropper.js is 2.3.0 and a different upstream
|
||||||
|
embedded-javascript-library usr/share/gitlab/app/assets/javascripts/lib/cropper.js please use libjs-cropper
|
||||||
|
# This is not the raphael library
|
||||||
|
embedded-javascript-library usr/share/gitlab/app/assets/javascripts/lib/raphael.js please use libjs-raphael
|
||||||
|
embedded-javascript-library usr/share/gitlab/app/assets/javascripts/network/raphael.js please use libjs-raphael
|
||||||
|
# This is not the jquery library
|
||||||
|
embedded-javascript-library usr/share/gitlab/app/assets/javascripts/extensions/jquery.js please use libjs-jquery
|
||||||
|
embedded-javascript-library usr/share/gitlab/vendor/assets/javascripts/extensions/jquery.js please use libjs-jquery
|
||||||
|
embedded-javascript-library usr/share/gitlab/app/assets/javascripts/commons/jquery.js please use libjs-jquery
|
||||||
|
# used as test data
|
||||||
|
package-contains-vcs-control-file usr/share/gitlab/spec/javascripts/fixtures/.gitignore
|
||||||
|
package-contains-eslint-config-file usr/share/gitlab/spec/javascripts/.eslintrc.yml
|
1220
debian/gitlab.maintscript
vendored
Normal file
1220
debian/gitlab.maintscript
vendored
Normal file
File diff suppressed because it is too large
Load diff
396
debian/gitlab.postinst
vendored
Executable file
396
debian/gitlab.postinst
vendored
Executable file
|
@ -0,0 +1,396 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# postinst script for gitlab
|
||||||
|
# copied from postinst script for hplip
|
||||||
|
# $Id: hplip.postinst,v 1.1 2005/10/15 21:39:04 hmh Exp $
|
||||||
|
#
|
||||||
|
# see: dh_installdeb(1)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Setup variables
|
||||||
|
# Now using gitlab-common.defaults to override variables used only in
|
||||||
|
# maintainer scripts. Earlier versions used gitlab-debian.conf for this.
|
||||||
|
# Now gitlab-debian.conf will only have user/admin configurable variables
|
||||||
|
# and variables required by systemd services.
|
||||||
|
gitlab_common_defaults=/usr/lib/gitlab-common/gitlab-common.defaults
|
||||||
|
test -f ${gitlab_common_defaults} && . ${gitlab_common_defaults}
|
||||||
|
|
||||||
|
# Show debconf questions
|
||||||
|
. /usr/share/debconf/confmodule
|
||||||
|
. /usr/share/dbconfig-common/dpkg/postinst
|
||||||
|
|
||||||
|
# summary of how this script can be called:
|
||||||
|
# * <postinst> `configure' <most-recently-configured-version>
|
||||||
|
# * <old-postinst> `abort-upgrade' <new version>
|
||||||
|
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||||
|
# <new-version>
|
||||||
|
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||||
|
# <failed-install-package> <version> `removing'
|
||||||
|
# <conflicting-package> <version>
|
||||||
|
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||||
|
# the debian-policy package
|
||||||
|
#
|
||||||
|
# quoting from the policy:
|
||||||
|
# Any necessary prompting should almost always be confined to the
|
||||||
|
# post-installation script, and should be protected with a conditional
|
||||||
|
# so that unnecessary prompting doesn't happen if a package's
|
||||||
|
# installation fails and the `postinst' is called with `abort-upgrade',
|
||||||
|
# `abort-remove' or `abort-deconfigure'.
|
||||||
|
|
||||||
|
#######################################################################
|
||||||
|
# Read debian specific configuration
|
||||||
|
#######################################################################
|
||||||
|
|
||||||
|
# Always copy the example configuration file in case there are newer entries
|
||||||
|
# added by maintainer
|
||||||
|
cp ${gitlab_debian_conf_example} ${gitlab_debian_conf_private}
|
||||||
|
. ${gitlab_debian_conf_private}
|
||||||
|
|
||||||
|
# If /etc/gitlab/gitlab-debian.conf is already present, use it
|
||||||
|
test -f ${gitlab_debian_conf} && . ${gitlab_debian_conf}
|
||||||
|
export DB RAILS_ENV
|
||||||
|
|
||||||
|
# Read default values (we cannot do this before gitlab-debian.conf is exported
|
||||||
|
# as we want to override variables set by gitlab-debian.conf in earlier gitlab
|
||||||
|
# versions with gitlab-debian.defaults)
|
||||||
|
. ${gitlab_common_defaults}
|
||||||
|
|
||||||
|
# Read gitlab_user from gitlab-common.conf
|
||||||
|
test -f ${gitlab_common_conf} && . ${gitlab_common_conf}
|
||||||
|
|
||||||
|
# Required for embedded gems
|
||||||
|
export GEM_HOME=/var/lib/gitlab/.gem
|
||||||
|
export GEM_PATH=$(gem env gempath)
|
||||||
|
|
||||||
|
# Once bundler gets --prefer-local option (merged upstream) these will be automated
|
||||||
|
# Updating these rubygem packages are complicated
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v 1.8.0 "^graphiql-rails$" >/dev/null; then gem install -v 1.8.0 graphiql-rails; fi"
|
||||||
|
|
||||||
|
# TODO: Update packages for these gems
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v 1.44.0 "^google-cloud-storage$" >/dev/null; then gem install -v 1.44.0 google-cloud-storage; fi"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~> 3.22.2' "^google-protobuf$" >/dev/null; then gem install -v '~> 3.22.2' google-protobuf; fi"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~> 0.1.3' "^net-protocol$" >/dev/null; then gem install -v '~> 0.1.3' net-protocol; fi"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~> 1.3' "^duo_api$" >/dev/null; then gem install -v '~> 1.3' duo_api; fi"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~> 0.3' "^google-cloud-profiler-v2$" >/dev/null; then gem install -v '~> 0.3' google-cloud-profiler-v2; fi"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~> 1.10' "^faraday$" >/dev/null; then gem install -v '~> 1.10' faraday; fi"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~> 0.0.12' "^arr-pm$" >/dev/null; then gem install -v '~> 0.0.12' arr-pm; fi"
|
||||||
|
# we have a newer incompatible version in the archive
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~> 0.6.1' "^omniauth_openid_connect$" >/dev/null; then gem install -v '~> 0.6.1' omniauth_openid_connect; fi"
|
||||||
|
# Packaged version is probably buggy - task lists on issues broken
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v 2.3.2 "^deckar01-task_list$" >/dev/null; then gem install -v 2.3.2 deckar01-task_list; fi"
|
||||||
|
# We have a newer incompatible version in the archive
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v 0.10.0 "^google-apis-core$" >/dev/null; then gem install -v 0.10.0 google-apis-core; fi"
|
||||||
|
# archive has gitaly 16.0
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~> 15.9.0.pre.rc3' "^gitaly$" >/dev/null; then gem install -v '~> 15.9.0.pre.rc3' gitaly; fi"
|
||||||
|
|
||||||
|
# Uninstall rack 3.x
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v '~>3.0' "^rack$" >/dev/null; then gem uninstall -v '~>3.0' rack; fi"
|
||||||
|
|
||||||
|
# Gitlab needs this specific version due to
|
||||||
|
# https://github.com/fog/fog-google/issues/421
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v 2.1.0 "^fog-core$" >/dev/null; then gem install -v 2.1.0 fog-core; fi"
|
||||||
|
|
||||||
|
# new gem
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "if ! gem list -i -v 0.0.17.pre.alpha1 "^devfile$" >/dev/null; then gem install -v 0.0.17.pre.alpha1 devfile; fi"
|
||||||
|
|
||||||
|
#######################################################################
|
||||||
|
# update Gemfile.lock and yarn.lock, always
|
||||||
|
#######################################################################
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "touch ${gitlab_data_dir}/Gemfile.lock && \
|
||||||
|
truncate -s 0 ${gitlab_data_dir}/Gemfile.lock"
|
||||||
|
# Don't modify yarn.lock until all dependencies are packaged
|
||||||
|
#runuser -u ${gitlab_user} -- sh -c "touch ${gitlab_data_dir}/yarn.lock && \
|
||||||
|
#truncate -s 0 ${gitlab_data_dir}/yarn.lock"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "touch ${gitlab_data_dir}/yarn-error.log"
|
||||||
|
cd ${gitlab_app_root}
|
||||||
|
if ! runuser -u ${gitlab_user} -- sh -c 'bundle --local --quiet'; then
|
||||||
|
if [ "$1" = "triggered" ]; then
|
||||||
|
# probably triggered in the middle of an system upgrade; ignore failure
|
||||||
|
# but abort here
|
||||||
|
echo "#########################################################################"
|
||||||
|
echo "# Failed to detect gitlab dependencies; if you are in the middle of an #"
|
||||||
|
echo "# upgrade, this is probably fine, there will be another attempt later. #"
|
||||||
|
echo "# #"
|
||||||
|
echo "# If you are NOT in the middle of an upgrade, there is probably a real #"
|
||||||
|
echo "# issue. Please report a bug. #"
|
||||||
|
echo "#########################################################################"
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
# something is really broken
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
cd - >/dev/null
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
configure)
|
||||||
|
gitlab_builds_log=${gitlab_log_dir}/builds
|
||||||
|
gitlab_repo_path=${gitlab_data_dir}/repositories
|
||||||
|
gitlab_uploads_path=${gitlab_data_dir}/public/uploads
|
||||||
|
|
||||||
|
# Create directories and change ownership
|
||||||
|
echo "Creating runtime directories for gitlab..."
|
||||||
|
# Setup ssh key file
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "mkdir -p ${gitlab_data_dir}/.ssh"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "touch ${gitlab_data_dir}/.ssh/authorized_keys"
|
||||||
|
# Create .bundle for .bundle/config
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "mkdir -p ${gitlab_data_dir}/.bundle"
|
||||||
|
# Create locale for app/assets/javascripts/locale
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "mkdir -p ${gitlab_data_dir}/locale"
|
||||||
|
# Create backup directory for tmp/backups symbolic link
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "mkdir -p ${gitlab_data_dir}/backups"
|
||||||
|
# Create more required directories
|
||||||
|
mkdir -p ${gitlab_pid_path}
|
||||||
|
chown ${gitlab_user}: ${gitlab_data_dir}/public ${gitlab_cache_path} \
|
||||||
|
${gitlab_log_dir} ${gitlab_shell_log} ${gitlab_pid_path} \
|
||||||
|
${gitlab_data_dir}/db ${gitlab_data_dir}/locale ${gitlab_data_dir}/shared \
|
||||||
|
${gitlab_data_dir}/shared/* ${gitlab_data_dir}/shared/artifacts/* \
|
||||||
|
${gitlab_data_dir}/shared/artifacts/tmp/*
|
||||||
|
for i in ${gitlab_repo_path} ${gitlab_uploads_path}\
|
||||||
|
${gitlab_shell_log} ${gitlab_builds_log}; do
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "mkdir -p $i"
|
||||||
|
done
|
||||||
|
|
||||||
|
# nginx/httpd should be able to connect to gitlab-workhorse.socket and serve public
|
||||||
|
chown ${gitlab_user}:${nginx_user} ${gitlab_uploads_path}/../* ${gitlab_pid_path}
|
||||||
|
|
||||||
|
# Customize permissions
|
||||||
|
echo "Updating file permissions..."
|
||||||
|
chmod ug+rwX,o-rwx,u-s,g+s ${gitlab_repo_path}/
|
||||||
|
for i in ${gitlab_data_dir} ${gitlab_shell_root}; do
|
||||||
|
chown ${gitlab_user}: $i
|
||||||
|
done
|
||||||
|
|
||||||
|
# Make package.json writable for yarn 2
|
||||||
|
chown ${gitlab_user}: /var/lib/gitlab/package.json
|
||||||
|
chown ${gitlab_user}: /var/lib/gitlab/yarn.lock
|
||||||
|
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "chmod 700 ${gitlab_uploads_path}"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'git config --global core.autocrlf "input"'
|
||||||
|
|
||||||
|
# Commands below needs to be run from gitlab_app_root
|
||||||
|
cd ${gitlab_app_root}
|
||||||
|
|
||||||
|
# Obtain hostname from debconf db
|
||||||
|
echo "Configuring hostname and email..."
|
||||||
|
db_get gitlab/fqdn
|
||||||
|
GITLAB_HOST=$RET
|
||||||
|
GITLAB_EMAIL_FROM="no-reply@$GITLAB_HOST"
|
||||||
|
GITLAB_EMAIL_DISPLAY_NAME="Gitlab"
|
||||||
|
GITLAB_EMAIL_REPLY_TO="no-reply@$GITLAB_HOST"
|
||||||
|
# Check if ssl option is selected
|
||||||
|
db_get gitlab/ssl
|
||||||
|
GITLAB_HTTPS=$RET
|
||||||
|
gl_proto="http"
|
||||||
|
db_get gitlab/letsencrypt
|
||||||
|
gitlab_letsencrypt=$RET
|
||||||
|
db_get gitlab/letsencrypt_email
|
||||||
|
gitlab_letsencrypt_email=$RET
|
||||||
|
|
||||||
|
cp -a -f ${gitlab_debian_conf_private} ${gitlab_debian_conf_private}.tmp
|
||||||
|
|
||||||
|
# If the admin deleted or commented some variables but then set
|
||||||
|
# them via debconf, (re-)add them to the conffile.
|
||||||
|
test -z "$GITLAB_HOST" || grep -Eq '^ *GITLAB_HOST=' ${gitlab_debian_conf_private} || \
|
||||||
|
echo "GITLAB_HOST=" >> ${gitlab_debian_conf_private}
|
||||||
|
test -z "$GITLAB_EMAIL_FROM" || grep -Eq '^ *GITLAB_EMAIL_FROM=' ${gitlab_debian_conf_private} || \
|
||||||
|
echo "GITLAB_EMAIL_FROM=" >> ${gitlab_debian_conf_private}
|
||||||
|
test -z "$GITLAB_EMAIL_DISPLAY_NAME" || grep -Eq '^ *GITLAB_EMAIL_DISPLAY_NAME=' ${gitlab_debian_conf_private} || \
|
||||||
|
echo "GITLAB_EMAIL_DISPLAY_NAME=" >> ${gitlab_debian_conf_private}
|
||||||
|
test -z "$GITLAB_EMAIL_REPLY_TO" || grep -Eq '^ *GITLAB_EMAIL_REPLY_TO=' ${gitlab_debian_conf_private} || \
|
||||||
|
echo "GITLAB_EMAIL_REPLY_TO=" >> ${gitlab_debian_conf_private}
|
||||||
|
test -z "$GITLAB_HTTPS" || grep -Eq '^ *GITLAB_HTTPS=' ${gitlab_debian_conf_private} || \
|
||||||
|
echo "GITLAB_HTTPS=" >> ${gitlab_debian_conf_private}
|
||||||
|
test -z "$gitlab_letsencrypt" || grep -Eq '^ *gitlab_letsencrypt=' ${gitlab_debian_conf_private} || \
|
||||||
|
echo "gitlab_letsencrypt=" >> ${gitlab_debian_conf_private}
|
||||||
|
test -z "$gitlab_letsencrypt_email" || grep -Eq '^ *gitlab_letsencrypt_email=' ${gitlab_debian_conf_private} || \
|
||||||
|
echo "gitlab_letsencrypt_email=" >> ${gitlab_debian_conf_private}
|
||||||
|
sed -e "s/^ *GITLAB_HOST=.*/GITLAB_HOST=\"$GITLAB_HOST\"/" \
|
||||||
|
-e "s/^ *GITLAB_EMAIL_FROM=.*/GITLAB_EMAIL_FROM=\"$GITLAB_EMAIL_FROM\"/" \
|
||||||
|
-e "s/^ *GITLAB_EMAIL_DISPLAY_NAME=.*/GITLAB_EMAIL_DISPLAY_NAME=\"$GITLAB_EMAIL_DISPLAY_NAME\"/" \
|
||||||
|
-e "s/^ *GITLAB_EMAIL_REPLY_TO=.*/GITLAB_EMAIL_REPLY_TO=\"$GITLAB_EMAIL_REPLY_TO\"/" \
|
||||||
|
-e "s/^ *GITLAB_HTTPS=.*/GITLAB_HTTPS=\"$GITLAB_HTTPS\"/" \
|
||||||
|
-e "s/^ *gitlab_letsencrypt=.*/gitlab_letsencrypt=\"$gitlab_letsencrypt\"/" \
|
||||||
|
-e "s/^ *gitlab_letsencrypt_email=.*/gitlab_letsencrypt_email=\"$gitlab_letsencrypt_email\"/" \
|
||||||
|
< ${gitlab_debian_conf_private} > ${gitlab_debian_conf_private}.tmp
|
||||||
|
mv -f ${gitlab_debian_conf_private}.tmp ${gitlab_debian_conf_private}
|
||||||
|
|
||||||
|
# Copy example configurations
|
||||||
|
cp ${gitlab_yml_example} ${gitlab_yml_private}
|
||||||
|
cp ${gitlab_shell_config_example} ${gitlab_shell_config_private}
|
||||||
|
|
||||||
|
# Set gitlab user first time
|
||||||
|
sed -i "s/GITLAB_USER/${gitlab_user}/" ${gitlab_yml_private}
|
||||||
|
# Update gitlab user (its a hack, proper fix is to have gitlab accept GITLAB_USER variable)
|
||||||
|
sed -i "s/^ *user:.* #gitlab_user/ user: $gitlab_user #gitlab_user/" ${gitlab_yml_private}
|
||||||
|
|
||||||
|
if [ "$GITLAB_HTTPS" = "true" ]; then
|
||||||
|
echo "Configuring nginx with HTTPS..."
|
||||||
|
# Workaround for #813770
|
||||||
|
gl_proto="https"
|
||||||
|
echo "Configuring gitlab with HTTPS..."
|
||||||
|
sed -i "s/#port: 80/port: 443/" ${gitlab_yml_private}
|
||||||
|
sed -i "s/https: false/https: true/" ${gitlab_yml_private}
|
||||||
|
echo "Updating gitlab_url in gitlab-shell configuration..."
|
||||||
|
sed -i \
|
||||||
|
"s/gitlab_url: http*:\/\/.*/gitlab_url: ${gl_proto}:\/\/${GITLAB_HOST}/"\
|
||||||
|
${gitlab_shell_config_private}
|
||||||
|
|
||||||
|
mkdir -p /etc/gitlab/ssl
|
||||||
|
nginx_conf_example=${nginx_ssl_conf_example}
|
||||||
|
|
||||||
|
# Check if letsencrypt option is selected
|
||||||
|
if [ "$gitlab_letsencrypt" = "true" ]; then
|
||||||
|
echo "Configuring letsencrypt..."
|
||||||
|
ln -sf /etc/letsencrypt/live/${GITLAB_HOST}/fullchain.pem \
|
||||||
|
/etc/gitlab/ssl/gitlab.crt
|
||||||
|
ln -sf /etc/letsencrypt/live/${GITLAB_HOST}/privkey.pem \
|
||||||
|
/etc/gitlab/ssl/gitlab.key
|
||||||
|
|
||||||
|
# Check if certificate is already present
|
||||||
|
if [ -e /etc/letsencrypt/live/${GITLAB_HOST}/fullchain.pem ]; then
|
||||||
|
echo "Let's encrypt certificate already present."
|
||||||
|
else
|
||||||
|
# Port 80 and 443 should be available for letsencrypt
|
||||||
|
if command -v nginx > /dev/null; then
|
||||||
|
echo "Stopping nginx for letsencrypt..."
|
||||||
|
invoke-rc.d nginx stop
|
||||||
|
fi
|
||||||
|
db_get gitlab/letsencrypt_email
|
||||||
|
gitlab_letsencrypt_email=$RET
|
||||||
|
LETSENCRYPT_CMD="letsencrypt --standalone --agree-tos -m $gitlab_letsencrypt_email -d ${GITLAB_HOST} certonly"
|
||||||
|
$LETSENCRYPT_CMD || {
|
||||||
|
echo "letsencrypt auto configuration failed..."
|
||||||
|
echo "Stop your webserver and try running letsencrypt manually..."
|
||||||
|
echo "$LETSENCRYPT_CMD"
|
||||||
|
}
|
||||||
|
if command -v nginx > /dev/null; then
|
||||||
|
echo "Starting nginx (letsencrypt configuration completed) ..."
|
||||||
|
invoke-rc.d nginx start
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# Revert https setting
|
||||||
|
sed -i "s/port: 443/#port: 80/" ${gitlab_yml_private}
|
||||||
|
sed -i "s/https: true/https: false/" ${gitlab_yml_private}
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Cleanup in case letsencrypt were disabled later
|
||||||
|
if [ "$gitlab_letsencrypt" = "false" ]; then
|
||||||
|
if [ -L /etc/gitlab/ssl/gitlab.crt ]; then
|
||||||
|
if [ "$(file /etc/gitlab/ssl/gitlab.crt|awk '{ print $NF }')" = "/etc/letsencrypt/live/${GITLAB_HOST}/fullchain.pem" ]; then
|
||||||
|
echo "Removing symbolic links to letsencrypt certificate..."
|
||||||
|
rm -f /etc/gitlab/ssl/gitlab.crt
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if [ -L /etc/gitlab/ssl/gitlab.key ]; then
|
||||||
|
if [ "$(file /etc/gitlab/ssl/gitlab.key|awk '{ print $NF }')" = "/etc/letsencrypt/live/${GITLAB_HOST}/privkey.pem" ]; then
|
||||||
|
echo "Removing symbolic links to letsencrypt certificate private key..."
|
||||||
|
rm -f /etc/gitlab/ssl/gitlab.key
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Override User for systemd services
|
||||||
|
for service in mailroom puma sidekiq workhorse; do
|
||||||
|
path=/etc/systemd/system/gitlab-${service}.service.d
|
||||||
|
mkdir -p $path
|
||||||
|
if [ -e $path/override.conf ]; then
|
||||||
|
echo "$path/override.conf already exist"
|
||||||
|
# Make sure only gitlab user is updated
|
||||||
|
sed -i "s/^ *User=.*/User=$gitlab_user/" $path/override.conf
|
||||||
|
else
|
||||||
|
printf "[Service]\nUser=${gitlab_user}\n" > $path/override.conf
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Manage gitlab-shell's config.yml via ucf
|
||||||
|
mkdir -p /etc/gitlab-shell
|
||||||
|
echo "Registering ${gitlab_shell_config} via ucf"
|
||||||
|
ucf --debconf-ok --three-way ${gitlab_shell_config_private} ${gitlab_shell_config}
|
||||||
|
ucfr gitlab ${gitlab_shell_config}
|
||||||
|
|
||||||
|
# Manage gitlab.yml via ucf
|
||||||
|
echo "Registering ${gitlab_yml} via ucf"
|
||||||
|
ucf --debconf-ok --three-way ${gitlab_yml_private} ${gitlab_yml}
|
||||||
|
ucfr gitlab ${gitlab_yml}
|
||||||
|
|
||||||
|
# Manage gitlab-debian.conf via ucf
|
||||||
|
echo "Registering ${gitlab_debian_conf} via ucf"
|
||||||
|
ucf --debconf-ok --three-way ${gitlab_debian_conf_private} ${gitlab_debian_conf}
|
||||||
|
ucfr gitlab ${gitlab_debian_conf}
|
||||||
|
|
||||||
|
# configure nginx site
|
||||||
|
if test -d /etc/nginx/sites-available/; then
|
||||||
|
if test -f ${nginx_conf_example}; then
|
||||||
|
nginx_site="/etc/nginx/sites-available/${GITLAB_HOST}"
|
||||||
|
sed -e "s/YOUR_SERVER_FQDN/${GITLAB_HOST}/"\
|
||||||
|
${nginx_conf_example} >${nginx_site_private}
|
||||||
|
ucf --debconf-ok --three-way ${nginx_site_private} ${nginx_site}
|
||||||
|
ucfr gitlab ${nginx_site}
|
||||||
|
ln -fs ${nginx_site} /etc/nginx/sites-enabled/
|
||||||
|
else
|
||||||
|
echo "nginx example configuration file not found"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
# Reload nginx
|
||||||
|
if command -v nginx > /dev/null; then
|
||||||
|
echo "Reloading nginx configuration..."
|
||||||
|
invoke-rc.d nginx reload
|
||||||
|
fi
|
||||||
|
|
||||||
|
dbc_go gitlab "$@"
|
||||||
|
db_stop
|
||||||
|
|
||||||
|
# enable the pg_trgm extension
|
||||||
|
runuser -u postgres -- sh -c "psql -d gitlab_production -c \"CREATE EXTENSION IF NOT EXISTS pg_trgm;\""
|
||||||
|
|
||||||
|
# enable the btree_gist extension
|
||||||
|
runuser -u postgres -- sh -c "psql -d gitlab_production -c \"CREATE EXTENSION IF NOT EXISTS btree_gist;\""
|
||||||
|
# Allow gitlab user to create schema
|
||||||
|
runuser -u postgres -- sh -c "psql -c \"GRANT CREATE ON database gitlab_production TO ${gitlab_user};\""
|
||||||
|
|
||||||
|
# Remove Gemfile.lock if present
|
||||||
|
rm -f ${gitlab_data_dir}/Gemfile.lock
|
||||||
|
|
||||||
|
# Create Gemfile.lock and .secret in /var/lib/gitlab
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "touch ${gitlab_data_dir}/Gemfile.lock"
|
||||||
|
|
||||||
|
echo "Verifying we have all required libraries..."
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'bundle install --without development test --local'
|
||||||
|
|
||||||
|
echo "Running final rake tasks and tweaks..."
|
||||||
|
. /usr/lib/gitlab/scripts/rake-tasks.sh
|
||||||
|
;;
|
||||||
|
|
||||||
|
triggered)
|
||||||
|
# Already handled
|
||||||
|
;;
|
||||||
|
|
||||||
|
abort-upgrade|abort-remove|abort-deconfigure)
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "postinst called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
configure)
|
||||||
|
if command -v gitaly > /dev/null; then
|
||||||
|
echo "Restarting gitaly..."
|
||||||
|
invoke-rc.d gitaly restart
|
||||||
|
fi
|
||||||
|
echo "Restarting gitlab-sidekiq..."
|
||||||
|
systemctl restart gitlab-sidekiq
|
||||||
|
echo "Restarting gitlab..."
|
||||||
|
invoke-rc.d gitlab restart
|
||||||
|
echo "Running rake checks..."
|
||||||
|
gitlab-rake gitlab:check
|
||||||
|
;;
|
||||||
|
esac
|
223
debian/gitlab.postrm
vendored
Normal file
223
debian/gitlab.postrm
vendored
Normal file
|
@ -0,0 +1,223 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# postrm.skeleton
|
||||||
|
# Skeleton maintainer script showing all the possible cases.
|
||||||
|
# Written by Charles Briscoe-Smith, March-June 1998. Public Domain.
|
||||||
|
|
||||||
|
# Abort if any command returns an error value
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Set variables
|
||||||
|
gitlab_common_defaults=/var/lib/gitlab-common/gitlab-common.defaults
|
||||||
|
|
||||||
|
# This script is called twice during the removal of the package; once
|
||||||
|
# after the removal of the package's files from the system, and as
|
||||||
|
# the final step in the removal of this package, after the package's
|
||||||
|
# conffiles have been removed.
|
||||||
|
|
||||||
|
# Ensure the menu system is updated
|
||||||
|
|
||||||
|
# Read debian specific configuration
|
||||||
|
if [ -f ${gitlab_common_defaults} ]
|
||||||
|
then
|
||||||
|
. ${gitlab_common_defaults}
|
||||||
|
else
|
||||||
|
echo "${gitlab_common_defaults} not found. Not removing anything."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ${gitlab_debian_conf} ]
|
||||||
|
then
|
||||||
|
. ${gitlab_debian_conf}
|
||||||
|
else
|
||||||
|
echo "${gitlab_debian_conf} not found. Not removing anything."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ${gitlab_common_conf} ]
|
||||||
|
then
|
||||||
|
. ${gitlab_common_conf}
|
||||||
|
else
|
||||||
|
echo "${gitlab_common_conf} not found. Not removing anything."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
safely_remove() {
|
||||||
|
CANDIDATE_DIR=$1
|
||||||
|
if [ -n "${CANDIDATE_DIR}" ];then
|
||||||
|
if [ -e ${CANDIDATE_DIR} ]; then
|
||||||
|
echo "Removing: $i"
|
||||||
|
rm -rf ${CANDIDATE_DIR}
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
remove)
|
||||||
|
# This package is being removed, but its configuration has not yet
|
||||||
|
# been purged.
|
||||||
|
:
|
||||||
|
|
||||||
|
# Remove diversion
|
||||||
|
# ldconfig is NOT needed during removal of a library, only during
|
||||||
|
# installation
|
||||||
|
|
||||||
|
;;
|
||||||
|
purge)
|
||||||
|
# This package has previously been removed and is now having
|
||||||
|
# its configuration purged from the system.
|
||||||
|
:
|
||||||
|
# purge debconf questions
|
||||||
|
if [ -e /usr/share/debconf/confmodule ]; then
|
||||||
|
# Source debconf library.
|
||||||
|
. /usr/share/debconf/confmodule
|
||||||
|
|
||||||
|
# Do you want to remove all data?
|
||||||
|
db_input high gitlab/purge_data || true
|
||||||
|
db_go
|
||||||
|
|
||||||
|
# Check if we should remove data?
|
||||||
|
db_get gitlab/purge_data
|
||||||
|
if [ "${RET}" = "true" ]; then
|
||||||
|
if [ -n "${gitlab_data_dir}" ] && [ -d ${gitlab_data_dir} ]; then
|
||||||
|
for i in shared public db repositories secrets.yml Gemfile.lock; do
|
||||||
|
if [ -e ${gitlab_data_dir}/$i ]; then
|
||||||
|
echo "Removing: ${gitlab_data_dir}/$i"
|
||||||
|
rm -rf ${gitlab_data_dir}/$i; fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
for i in ${gitlab_log_dir} ${gitlab_cache_path} ${gitlab_pid_path}; do
|
||||||
|
safely_remove $i
|
||||||
|
done
|
||||||
|
|
||||||
|
# Remove locale directory
|
||||||
|
echo "Removing: ${gitlab_app_root}/app/assets/javascripts/locale"
|
||||||
|
safely_remove ${gitlab_app_root}/app/assets/javascripts/locale
|
||||||
|
|
||||||
|
if [ ! -z "${gitlab_user}" ]; then
|
||||||
|
# Do only if gitlab_user is set
|
||||||
|
if command -v dropdb >/dev/null; then
|
||||||
|
echo "Removing Database: gitlab_production"
|
||||||
|
if runuser -u ${gitlab_user} -- sh -c 'psql gitlab_production -c ""' ; then su postgres -c "dropdb gitlab_production"; fi
|
||||||
|
else
|
||||||
|
echo "dropdb command not found. Hence not removing database."
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "gitlab_user not set. Hence not removing user."
|
||||||
|
fi
|
||||||
|
safely_remove ${gitlab_ssl_path}
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remove my changes to the db.
|
||||||
|
db_purge
|
||||||
|
fi
|
||||||
|
|
||||||
|
nginx_site="/etc/nginx/sites-available/${GITLAB_HOST}"
|
||||||
|
dbconfig_config="/etc/dbconfig-common/gitlab.conf"
|
||||||
|
|
||||||
|
if [ -f ${nginx_site} ]; then echo "Found nginx site configuration at ${nginx_site}..."; fi
|
||||||
|
|
||||||
|
|
||||||
|
# we mimic dpkg as closely as possible, so we remove configuration
|
||||||
|
# files with dpkg backup extensions too:
|
||||||
|
### Some of the following is from Tore Anderson:
|
||||||
|
for ext in '~' '%' .bak .ucf-new .ucf-old .ucf-dist; do
|
||||||
|
rm -f ${nginx_site}$ext
|
||||||
|
rm -f ${gitlab_debian_conf}$ext
|
||||||
|
rm -f ${gitlab_yml}$ext
|
||||||
|
rm -f ${gitlab_tmpfiles}$ext
|
||||||
|
rm -f ${gitlab_shell_config}$ext
|
||||||
|
rm -f ${dbconfig_config}$ext
|
||||||
|
done
|
||||||
|
|
||||||
|
for i in ${nginx_site} ${gitlab_debian_conf} ${gitlab_yml} \
|
||||||
|
${gitlab_tmpfiles} ${gitlab_shell_config} ${dbconfig_config}; do
|
||||||
|
# remove the configuration file itself
|
||||||
|
if [ -f $i ] ; then rm -f $i; fi
|
||||||
|
# and finally clear it out from the ucf database
|
||||||
|
if which ucf >/dev/null; then
|
||||||
|
if [ -n "$i" ]; then ucf --purge $i; fi
|
||||||
|
fi
|
||||||
|
if which ucfr >/dev/null; then
|
||||||
|
if [ -n "$i" ]; then ucfr --purge gitlab $i; fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# remove generated assets
|
||||||
|
if [ -n "${gitlab_data_dir}" ]; then safely_remove ${gitlab_data_dir}/public/assets; fi
|
||||||
|
|
||||||
|
# Remove private copies of configuration files
|
||||||
|
rm -f ${nginx_site_private}
|
||||||
|
rm -f ${gitlab_debian_conf_private}
|
||||||
|
rm -f ${gitlab_yml_private}
|
||||||
|
rm -f ${gitlab_tmpfiles_private}
|
||||||
|
rm -f ${gitlab_shell_config_private}
|
||||||
|
|
||||||
|
# Remove systemd service overrides
|
||||||
|
for service in mailroom unicorn sidekiq workhorse; do
|
||||||
|
path=/etc/systemd/system/gitlab-${service}.service.d
|
||||||
|
rm -rf $path
|
||||||
|
done
|
||||||
|
|
||||||
|
# cleanup complete
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
;;
|
||||||
|
disappear)
|
||||||
|
if test "$2" != overwriter; then
|
||||||
|
echo "$0: undocumented call to \`postrm $*'" 1>&2
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
# This package has been completely overwritten by package $3
|
||||||
|
# (version $4). All our files are already gone from the system.
|
||||||
|
# This is a special case: neither "prerm remove" nor "postrm remove"
|
||||||
|
# have been called, because dpkg didn't know that this package would
|
||||||
|
# disappear until this stage.
|
||||||
|
:
|
||||||
|
|
||||||
|
;;
|
||||||
|
upgrade)
|
||||||
|
# About to upgrade FROM THIS VERSION to version $2 of this package.
|
||||||
|
# "prerm upgrade" has been called for this version, and "preinst
|
||||||
|
# upgrade" has been called for the new version. Last chance to
|
||||||
|
# clean up.
|
||||||
|
:
|
||||||
|
|
||||||
|
;;
|
||||||
|
failed-upgrade)
|
||||||
|
# About to upgrade from version $2 of this package TO THIS VERSION.
|
||||||
|
# "prerm upgrade" has been called for the old version, and "preinst
|
||||||
|
# upgrade" has been called for this version. This is only used if
|
||||||
|
# the previous version's "postrm upgrade" couldn't handle it and
|
||||||
|
# returned non-zero. (Fix old postrm bugs here.)
|
||||||
|
:
|
||||||
|
|
||||||
|
;;
|
||||||
|
abort-install)
|
||||||
|
# Back out of an attempt to install this package. Undo the effects of
|
||||||
|
# "preinst install...". There are two sub-cases.
|
||||||
|
:
|
||||||
|
|
||||||
|
if test "${2+set}" = set; then
|
||||||
|
# When the install was attempted, version $2's configuration
|
||||||
|
# files were still on the system. Undo the effects of "preinst
|
||||||
|
# install $2".
|
||||||
|
:
|
||||||
|
|
||||||
|
else
|
||||||
|
# We were being installed from scratch. Undo the effects of
|
||||||
|
# "preinst install".
|
||||||
|
:
|
||||||
|
|
||||||
|
fi ;;
|
||||||
|
abort-upgrade)
|
||||||
|
# Back out of an attempt to upgrade this package from version $2
|
||||||
|
# TO THIS VERSION. Undo the effects of "preinst upgrade $2".
|
||||||
|
:
|
||||||
|
|
||||||
|
;;
|
||||||
|
*) echo "$0: didn't understand being called with \`$1'" 1>&2
|
||||||
|
exit 0;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
exit 0
|
16
debian/gitlab.preinst
vendored
Normal file
16
debian/gitlab.preinst
vendored
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
pg_version=$(pg_lsclusters |grep 5432 |awk '{print $1}')
|
||||||
|
|
||||||
|
if [ "${pg_version}" -lt 12 ]; then
|
||||||
|
echo "========================================================================"
|
||||||
|
echo "Upgrade postgresql to at least version 12 before upgrading gitlab."
|
||||||
|
echo "You can use pg_upgradecluster command to upgrade the postgresql version."
|
||||||
|
echo "Aborting gitlab installation..."
|
||||||
|
echo "========================================================================"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
#DEBHELPER#
|
13
debian/gitlab.service
vendored
Normal file
13
debian/gitlab.service
vendored
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
[Unit]
|
||||||
|
Description=GitLab Services
|
||||||
|
BindsTo=gitlab-puma.service gitlab-sidekiq.service gitlab-mailroom.service gitlab-workhorse.service
|
||||||
|
After=gitlab-puma.service gitlab-sidekiq.service gitlab-mailroom.service gitlab-workhorse.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=idle
|
||||||
|
RemainAfterExit=yes
|
||||||
|
ExecStart=-/bin/true
|
||||||
|
ExecReload=-/bin/true
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=gitlab.target
|
66
debian/gitlab.templates
vendored
Normal file
66
debian/gitlab.templates
vendored
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
Template: gitlab/fqdn
|
||||||
|
Type: string
|
||||||
|
Default: localhost
|
||||||
|
_Description: Fully qualified domain name for this instance of Gitlab:
|
||||||
|
Please choose the domain name which should be used to access this
|
||||||
|
instance of Gitlab.
|
||||||
|
.
|
||||||
|
This should be the fully qualified name as seen from the Internet, with
|
||||||
|
the domain name that will be used to access the Gitlab instance, without any
|
||||||
|
protocol specifiers like https://.
|
||||||
|
.
|
||||||
|
If a reverse proxy is used, give the hostname that the proxy server
|
||||||
|
responds to.
|
||||||
|
.
|
||||||
|
Example: git.example.com
|
||||||
|
|
||||||
|
Template: gitlab/ssl
|
||||||
|
Type: boolean
|
||||||
|
Default: false
|
||||||
|
_Description: Enable https?
|
||||||
|
Enabling https means that an SSL/TLS certificate is required to access this
|
||||||
|
Gitlab instance (as Nginx will be configured to respond only to https
|
||||||
|
requests). A self-signed certificate is enough for local testing (and can be
|
||||||
|
generated using, for instance, the package easy-rsa), but it is not
|
||||||
|
recommended for a production instance.
|
||||||
|
.
|
||||||
|
Some certificate authorities like Let's Encrypt (letsencrypt.org), CAcert
|
||||||
|
(cacert.org) offer free SSL/TLS certificates.
|
||||||
|
Note: CAcert issued certificates are not trusted by all browsers, it requires
|
||||||
|
installing CAcert's root certificate in such cases.
|
||||||
|
.
|
||||||
|
Nginx must be reloaded after the certificate and key files are made available
|
||||||
|
at /etc/gitlab/ssl. letsencrypt package may be used to automate interaction
|
||||||
|
with Let's Encrypt to obtain a certificate.
|
||||||
|
|
||||||
|
Template: gitlab/letsencrypt
|
||||||
|
Type: boolean
|
||||||
|
Default: false
|
||||||
|
_Description: Use Let's Encrypt?
|
||||||
|
Symbolic links to certificate and key created using letsencrypt package
|
||||||
|
(/etc/letencrypt/live) will be added to /etc/gitlab/ssl if this option is
|
||||||
|
selected.
|
||||||
|
.
|
||||||
|
Otherwise, certificate and key files have to be placed manually to
|
||||||
|
/etc/gitlab/ssl directory as 'gitlab.crt' and 'gitlab.key'.
|
||||||
|
.
|
||||||
|
Nginx will be stopped, if this option is selected, to allow letsencrypt to use
|
||||||
|
ports 80 and 443 during domain ownership validation and certificate retrieval
|
||||||
|
step.
|
||||||
|
.
|
||||||
|
Note: letsencrypt does not have a usable nginx plugin currently, so
|
||||||
|
certificates must be renewed manually after 3 months, when current
|
||||||
|
letsencrypt certificate expire. If you choose yes here, you will also be
|
||||||
|
agreeing to letsencrypt terms of service.
|
||||||
|
|
||||||
|
Template: gitlab/letsencrypt_email
|
||||||
|
Type: string
|
||||||
|
_Description: Email address for letsencrypt updates:
|
||||||
|
Please provide a valid email address for letsencrypt updates.
|
||||||
|
|
||||||
|
Template: gitlab/purge_data
|
||||||
|
Type: boolean
|
||||||
|
Default: true
|
||||||
|
_Description: Remove all data?
|
||||||
|
This will permanently remove all data of this Gitlab instance such as database,
|
||||||
|
repositories, uploaded files, SSH public keys etc.
|
2
debian/gitlab.triggers
vendored
Normal file
2
debian/gitlab.triggers
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
interest-noawait /usr/lib/ruby/vendor_ruby
|
||||||
|
interest-noawait /usr/share/rubygems-integration
|
38
debian/ignored-file-list
vendored
Normal file
38
debian/ignored-file-list
vendored
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
builds
|
||||||
|
.codeclimate.yml
|
||||||
|
db
|
||||||
|
debian
|
||||||
|
.dockerignore
|
||||||
|
.eslintignore
|
||||||
|
.eslintrc.yml
|
||||||
|
.foreman
|
||||||
|
Gemfile.lock
|
||||||
|
.gitattributes
|
||||||
|
.github
|
||||||
|
.gitignore
|
||||||
|
.gitlab
|
||||||
|
.gitlab-ci.yml
|
||||||
|
.gitpod.yml
|
||||||
|
.haml-lint.yml
|
||||||
|
.haml-lint_todo.yml
|
||||||
|
LICENSE
|
||||||
|
log
|
||||||
|
.mailmap
|
||||||
|
.mdlrc
|
||||||
|
.mdlrc.style
|
||||||
|
.nvmrc
|
||||||
|
.prettierignore
|
||||||
|
.prettierrc
|
||||||
|
.projections.json.example
|
||||||
|
public
|
||||||
|
qa
|
||||||
|
.rubocop_revert_ignores.txt
|
||||||
|
.rubocop_todo.yml
|
||||||
|
.rubocop.yml
|
||||||
|
.ruby-version
|
||||||
|
snowplow-javascript-tracker
|
||||||
|
.test_license_encryption_key.pub
|
||||||
|
.theia
|
||||||
|
tmp
|
||||||
|
workhorse-vendor
|
||||||
|
.yamllint
|
1005
debian/missing-sources/latinise.js
vendored
Normal file
1005
debian/missing-sources/latinise.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
1
debian/not-installed
vendored
Normal file
1
debian/not-installed
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
usr/share/gocode
|
497
debian/patches/Gemfile/0010-relax-stable-libs.patch
vendored
Normal file
497
debian/patches/Gemfile/0010-relax-stable-libs.patch
vendored
Normal file
|
@ -0,0 +1,497 @@
|
||||||
|
We should be able to update minor versions of stable libs without breaking
|
||||||
|
gitlab Gemfile
|
||||||
|
|
||||||
|
--- a/Gemfile
|
||||||
|
+++ b/Gemfile
|
||||||
|
@@ -13,63 +13,63 @@
|
||||||
|
# NOTE: When incrementing the major or minor version here, also increment activerecord_version
|
||||||
|
# in vendor/gems/attr_encrypted/attr_encrypted.gemspec until we resolve
|
||||||
|
# https://gitlab.com/gitlab-org/gitlab/-/issues/375713
|
||||||
|
-gem 'rails', '~> 6.1.7.2'
|
||||||
|
+gem 'rails', '~> 6.1.7', '>= 6.1.7.2'
|
||||||
|
|
||||||
|
-gem 'bootsnap', '~> 1.16.0', require: false
|
||||||
|
+gem 'bootsnap', '~> 1.16', require: false
|
||||||
|
|
||||||
|
gem 'openssl', '~> 3.0'
|
||||||
|
-gem 'ipaddr', '~> 1.2.5'
|
||||||
|
+gem 'ipaddr', '~> 1.2', '>= 1.2.5'
|
||||||
|
|
||||||
|
# Responders respond_to and respond_with
|
||||||
|
gem 'responders', '~> 3.0'
|
||||||
|
|
||||||
|
-gem 'sprockets', '~> 3.7.0'
|
||||||
|
+gem 'sprockets', '~> 3.7'
|
||||||
|
|
||||||
|
-gem 'view_component', '~> 2.82.0'
|
||||||
|
+gem 'view_component', '~> 2.82'
|
||||||
|
|
||||||
|
# Supported DBs
|
||||||
|
-gem 'pg', '~> 1.5.3'
|
||||||
|
+gem 'pg', '~> 1.5', '>= 1.5.3'
|
||||||
|
|
||||||
|
gem 'neighbor', '~> 0.2.3'
|
||||||
|
|
||||||
|
gem 'rugged', '~> 1.5'
|
||||||
|
-gem 'grape-path-helpers', '~> 1.7.1'
|
||||||
|
+gem 'grape-path-helpers', '~> 1.7', '>= 1.7.1'
|
||||||
|
|
||||||
|
gem 'faraday', '~> 1.0'
|
||||||
|
-gem 'marginalia', '~> 1.11.1'
|
||||||
|
+gem 'marginalia', '~> 1.11', '>= 1.11.1'
|
||||||
|
|
||||||
|
# Authorization
|
||||||
|
-gem 'declarative_policy', '~> 1.1.0'
|
||||||
|
+gem 'declarative_policy', '~> 1.1'
|
||||||
|
|
||||||
|
# Authentication libraries
|
||||||
|
-gem 'devise', '~> 4.8.1'
|
||||||
|
+gem 'devise', '~> 4.8', '>= 4.8.1'
|
||||||
|
gem 'devise-pbkdf2-encryptable', '~> 0.0.0', path: 'vendor/gems/devise-pbkdf2-encryptable'
|
||||||
|
gem 'bcrypt', '~> 3.1', '>= 3.1.14'
|
||||||
|
gem 'doorkeeper', '~> 5.6', '>= 5.6.6'
|
||||||
|
gem 'doorkeeper-openid_connect', '~> 1.8', '>= 1.8.6'
|
||||||
|
-gem 'rexml', '~> 3.2.5'
|
||||||
|
-gem 'ruby-saml', '~> 1.13.0'
|
||||||
|
-gem 'omniauth', '~> 2.1.0'
|
||||||
|
+gem 'rexml', '~> 3.2', '>= 3.2.5'
|
||||||
|
+gem 'ruby-saml', '~> 1.13'
|
||||||
|
+gem 'omniauth', '~> 2.1'
|
||||||
|
gem 'omniauth-auth0', '~> 3.1'
|
||||||
|
gem 'omniauth-azure-activedirectory-v2', '~> 2.0'
|
||||||
|
gem 'omniauth-azure-oauth2', '~> 0.0.9', path: 'vendor/gems/omniauth-azure-oauth2' # See gem README.md
|
||||||
|
gem 'omniauth-dingtalk-oauth2', '~> 1.0'
|
||||||
|
-gem 'omniauth-alicloud', '~> 2.0.1'
|
||||||
|
-gem 'omniauth-facebook', '~> 4.0.0'
|
||||||
|
-gem 'omniauth-github', '2.0.1'
|
||||||
|
+gem 'omniauth-alicloud', '~> 2.0', '>= 2.0.1'
|
||||||
|
+gem 'omniauth-facebook', '~> 4.0'
|
||||||
|
+gem 'omniauth-github', '~> 2.0', '>= 2.0.1'
|
||||||
|
gem 'omniauth-gitlab', '~> 4.0.0', path: 'vendor/gems/omniauth-gitlab' # See vendor/gems/omniauth-gitlab/README.md
|
||||||
|
gem 'omniauth-google-oauth2', '~> 1.1'
|
||||||
|
gem 'omniauth-oauth2-generic', '~> 0.2.2'
|
||||||
|
-gem 'omniauth-saml', '~> 2.1.0'
|
||||||
|
+gem 'omniauth-saml', '~> 2.1'
|
||||||
|
gem 'omniauth-twitter', '~> 1.4'
|
||||||
|
gem 'omniauth_crowd', '~> 2.4.0', path: 'vendor/gems/omniauth_crowd' # See vendor/gems/omniauth_crowd/README.md
|
||||||
|
gem 'omniauth_openid_connect', '~> 0.6.1'
|
||||||
|
# Locked until Ruby 3.0 upgrade since upgrading will pull in an updated net-smtp gem.
|
||||||
|
# See https://docs.gitlab.com/ee/development/emails.html#rationale.
|
||||||
|
-gem 'openid_connect', '= 1.3.0'
|
||||||
|
+gem 'openid_connect', '~> 1.3'
|
||||||
|
gem 'omniauth-salesforce', '~> 1.0.5', path: 'vendor/gems/omniauth-salesforce' # See gem README.md
|
||||||
|
gem 'omniauth-atlassian-oauth2', '~> 0.2.0'
|
||||||
|
-gem 'rack-oauth2', '~> 1.21.3'
|
||||||
|
+gem 'rack-oauth2', '~> 1.21', '>= 1.21.3'
|
||||||
|
gem 'jwt', '~> 2.5'
|
||||||
|
|
||||||
|
# Kerberos authentication. EE-only
|
||||||
|
@@ -79,59 +79,59 @@
|
||||||
|
# Spam and anti-bot protection
|
||||||
|
gem 'recaptcha', '~> 5.12', require: 'recaptcha/rails'
|
||||||
|
gem 'akismet', '~> 3.0'
|
||||||
|
-gem 'invisible_captcha', '~> 2.0.0'
|
||||||
|
+gem 'invisible_captcha', '~> 2.0'
|
||||||
|
|
||||||
|
# Two-factor authentication
|
||||||
|
-gem 'devise-two-factor', '~> 4.0.2'
|
||||||
|
+gem 'devise-two-factor', '~> 4.0', '>= 4.0.2'
|
||||||
|
gem 'rqrcode-rails3', '~> 0.1.7'
|
||||||
|
gem 'attr_encrypted', '~> 3.2.4', path: 'vendor/gems/attr_encrypted'
|
||||||
|
|
||||||
|
# GitLab Pages
|
||||||
|
-gem 'validates_hostname', '~> 1.0.11'
|
||||||
|
-gem 'rubyzip', '~> 2.3.2', require: 'zip'
|
||||||
|
+gem 'validates_hostname', '~> 1.0', '>= 1.0.11'
|
||||||
|
+gem 'rubyzip', '~> 2.3', '>= 2.3.2', require: 'zip'
|
||||||
|
# GitLab Pages letsencrypt support
|
||||||
|
gem 'acme-client', '~> 2.0'
|
||||||
|
|
||||||
|
# Browser detection
|
||||||
|
-gem 'browser', '~> 5.3.1'
|
||||||
|
+gem 'browser', '~> 5.3', '>= 5.3.1'
|
||||||
|
|
||||||
|
# OS detection for usage ping
|
||||||
|
gem 'ohai', '~> 17.9'
|
||||||
|
|
||||||
|
# GPG
|
||||||
|
-gem 'gpgme', '~> 2.0.22'
|
||||||
|
+gem 'gpgme', '~> 2.0', '>= 2.0.22'
|
||||||
|
|
||||||
|
# LDAP Auth
|
||||||
|
# GitLab fork with several improvements to original library. For full list of changes
|
||||||
|
# see https://github.com/intridea/omniauth-ldap/compare/master...gitlabhq:master
|
||||||
|
-gem 'gitlab_omniauth-ldap', '~> 2.2.0', require: 'omniauth-ldap'
|
||||||
|
+gem 'gitlab_omniauth-ldap', '~> 2.2', require: 'omniauth-ldap'
|
||||||
|
gem 'net-ldap', '~> 0.17.1'
|
||||||
|
|
||||||
|
# API
|
||||||
|
-gem 'grape', '~> 1.5.2'
|
||||||
|
+gem 'grape', '~> 1.5','>= 1.5.2'
|
||||||
|
gem 'grape-entity', '~> 0.10.0'
|
||||||
|
-gem 'rack-cors', '~> 1.1.1', require: 'rack/cors'
|
||||||
|
+gem 'rack-cors', '~> 1.1', '>= 1.1.1', require: 'rack/cors'
|
||||||
|
gem 'grape-swagger', '~>1.5.0', group: [:development, :test]
|
||||||
|
gem 'grape-swagger-entity', '~> 0.5.1', group: [:development, :test]
|
||||||
|
|
||||||
|
# GraphQL API
|
||||||
|
-gem 'graphql', '~> 1.13.12'
|
||||||
|
+gem 'graphql', '~> 1.13', '>= 1.13.12'
|
||||||
|
gem 'graphiql-rails', '~> 1.8'
|
||||||
|
-gem 'apollo_upload_server', '~> 2.1.0'
|
||||||
|
+gem 'apollo_upload_server', '~> 2.1'
|
||||||
|
gem 'graphql-docs', '~> 2.1.0', group: [:development, :test]
|
||||||
|
gem 'graphlient', '~> 0.5.0' # Used by BulkImport feature (group::import)
|
||||||
|
|
||||||
|
-gem 'hashie', '~> 5.0.0'
|
||||||
|
+gem 'hashie', '~> 5.0'
|
||||||
|
|
||||||
|
# Pagination
|
||||||
|
-gem 'kaminari', '~> 1.2.2'
|
||||||
|
+gem 'kaminari', '~> 1.2', '>= 1.2.2'
|
||||||
|
|
||||||
|
# HAML
|
||||||
|
-gem 'hamlit', '~> 2.15.0'
|
||||||
|
+gem 'hamlit', '~> 2.15'
|
||||||
|
|
||||||
|
# Files attachments
|
||||||
|
gem 'carrierwave', '~> 1.3'
|
||||||
|
-gem 'mini_magick', '~> 4.10.1'
|
||||||
|
+gem 'mini_magick', '~> 4.10','>= 4.10.1'
|
||||||
|
|
||||||
|
# for backups
|
||||||
|
gem 'fog-aws', '~> 3.18'
|
||||||
|
@@ -147,10 +147,10 @@
|
||||||
|
# We may want to update this dependency if this is ever addressed upstream, e.g. via
|
||||||
|
# https://github.com/aliyun/aliyun-oss-ruby-sdk/pull/93
|
||||||
|
gem 'fog-aliyun', '~> 0.4'
|
||||||
|
-gem 'gitlab-fog-azure-rm', '~> 1.7.0', require: 'fog/azurerm'
|
||||||
|
+gem 'gitlab-fog-azure-rm', '~> 1.7', require: 'fog/azurerm'
|
||||||
|
|
||||||
|
# for Google storage
|
||||||
|
-gem 'google-cloud-storage', '~> 1.44.0'
|
||||||
|
+gem 'google-cloud-storage', '~> 1.44'
|
||||||
|
gem 'google-apis-core', '~> 0.10.0'
|
||||||
|
gem 'google-apis-compute_v1', '~> 0.57.0'
|
||||||
|
gem 'google-apis-container_v1', '~> 0.43.0'
|
||||||
|
@@ -166,36 +166,36 @@
|
||||||
|
gem 'unf', '~> 0.1.4'
|
||||||
|
|
||||||
|
# Seed data
|
||||||
|
-gem 'seed-fu', '~> 2.3.7'
|
||||||
|
+gem 'seed-fu', '~> 2.3','>= 2.3.7'
|
||||||
|
|
||||||
|
# Search
|
||||||
|
gem 'elasticsearch-model', '~> 7.2'
|
||||||
|
gem 'elasticsearch-rails', '~> 7.2', require: 'elasticsearch/rails/instrumentation'
|
||||||
|
-gem 'elasticsearch-api', '7.13.3'
|
||||||
|
-gem 'aws-sdk-core', '~> 3.172.0'
|
||||||
|
+gem 'elasticsearch-api', '~> 7.13', '>= 7.13.3'
|
||||||
|
+gem 'aws-sdk-core', '~> 3.172'
|
||||||
|
gem 'aws-sdk-cloudformation', '~> 1'
|
||||||
|
-gem 'aws-sdk-s3', '~> 1.122.0'
|
||||||
|
+gem 'aws-sdk-s3', '~> 1.122'
|
||||||
|
gem 'faraday_middleware-aws-sigv4', '~>0.3.0'
|
||||||
|
-gem 'typhoeus', '~> 1.4.0' # Used with Elasticsearch to support http keep-alive connections
|
||||||
|
+gem 'typhoeus', '~> 1.4' # Used with Elasticsearch to support http keep-alive connections
|
||||||
|
|
||||||
|
# Markdown and HTML processing
|
||||||
|
-gem 'html-pipeline', '~> 2.14.3'
|
||||||
|
-gem 'deckar01-task_list', '2.3.2'
|
||||||
|
-gem 'gitlab-markup', '~> 1.9.0', require: 'github/markup'
|
||||||
|
+gem 'html-pipeline', '~> 2.14','>= 2.14.3'
|
||||||
|
+gem 'deckar01-task_list', '~> 2.3', '>= 2.3.2'
|
||||||
|
+gem 'gitlab-markup', '~> 1.9', require: 'github/markup'
|
||||||
|
gem 'commonmarker', '~> 0.23.6'
|
||||||
|
-gem 'kramdown', '~> 2.3.1'
|
||||||
|
-gem 'RedCloth', '~> 4.3.2'
|
||||||
|
-gem 'rdoc', '~> 6.3.2'
|
||||||
|
+gem 'kramdown', '~> 2.3', '>= 2.3.1'
|
||||||
|
+gem 'RedCloth', '~> 4.3', '>= 4.3.2'
|
||||||
|
+gem 'rdoc', '~> 6.3', '>= 6.3.2'
|
||||||
|
gem 'org-ruby', '~> 0.9.12'
|
||||||
|
gem 'creole', '~> 0.5.0'
|
||||||
|
-gem 'wikicloth', '0.8.1'
|
||||||
|
-gem 'asciidoctor', '~> 2.0.18'
|
||||||
|
+gem 'wikicloth', '~> 0.8.1'
|
||||||
|
+gem 'asciidoctor', '~> 2.0', '>= 2.0.18'
|
||||||
|
gem 'asciidoctor-include-ext', '~> 0.4.0', require: false
|
||||||
|
gem 'asciidoctor-plantuml', '~> 0.0.16'
|
||||||
|
gem 'asciidoctor-kroki', '~> 0.8.0', require: false
|
||||||
|
-gem 'rouge', '~> 4.1.0'
|
||||||
|
+gem 'rouge', '~> 4.1'
|
||||||
|
gem 'truncato', '~> 0.7.12'
|
||||||
|
-gem 'nokogiri', '~> 1.14.3'
|
||||||
|
+gem 'nokogiri', '~> 1.14', '>= 1.14.3'
|
||||||
|
|
||||||
|
# Calendar rendering
|
||||||
|
gem 'icalendar'
|
||||||
|
@@ -205,12 +205,12 @@
|
||||||
|
gem 'diff_match_patch', '~> 0.1.0'
|
||||||
|
|
||||||
|
# Application server
|
||||||
|
-gem 'rack', '~> 2.2.7'
|
||||||
|
+gem 'rack', '~> 2.2', '>= 2.2.7'
|
||||||
|
# https://github.com/zombocom/rack-timeout/blob/master/README.md#rails-apps-manually
|
||||||
|
gem 'rack-timeout', '~> 0.6.3', require: 'rack/timeout/base'
|
||||||
|
|
||||||
|
group :puma do
|
||||||
|
- gem 'puma', '~> 5.6.5', require: false
|
||||||
|
+ gem 'puma', '~> 5.6', '>= 5.6.5', require: false
|
||||||
|
gem 'puma_worker_killer', '~> 0.3.1', require: false
|
||||||
|
gem 'sd_notify', '~> 0.1.0', require: false
|
||||||
|
end
|
||||||
|
@@ -222,13 +222,13 @@
|
||||||
|
gem 'acts-as-taggable-on', '~> 9.0'
|
||||||
|
|
||||||
|
# Background jobs
|
||||||
|
-gem 'sidekiq', '~> 6.5.7'
|
||||||
|
-gem 'sidekiq-cron', '~> 1.8.0'
|
||||||
|
-gem 'redis-namespace', '~> 1.9.0'
|
||||||
|
+gem 'sidekiq', '~> 6.5', '>= 6.5.7'
|
||||||
|
+gem 'sidekiq-cron', '~> 1.8'
|
||||||
|
+gem 'redis-namespace', '~> 1.9'
|
||||||
|
gem 'gitlab-sidekiq-fetcher', path: 'vendor/gems/sidekiq-reliable-fetch', require: 'sidekiq-reliable-fetch'
|
||||||
|
|
||||||
|
# Cron Parser
|
||||||
|
-gem 'fugit', '~> 1.8.1'
|
||||||
|
+gem 'fugit', '~> 1.8', '>= 1.8.1'
|
||||||
|
|
||||||
|
# HTTP requests
|
||||||
|
gem 'httparty', '~> 0.20.0'
|
||||||
|
@@ -240,11 +240,11 @@
|
||||||
|
gem 'ruby-progressbar', '~> 1.10'
|
||||||
|
|
||||||
|
# Linear-time regex library for untrusted regular expressions
|
||||||
|
-gem 're2', '~> 1.6.0'
|
||||||
|
+gem 're2', '~> 1.6'
|
||||||
|
|
||||||
|
# Misc
|
||||||
|
|
||||||
|
-gem 'semver_dialects', '~> 1.2.1'
|
||||||
|
+gem 'semver_dialects', '~> 1.2', '>= 1.2.1'
|
||||||
|
gem 'version_sorter', '~> 2.3'
|
||||||
|
|
||||||
|
# Export Ruby Regex to Javascript
|
||||||
|
@@ -254,21 +254,21 @@
|
||||||
|
gem 'device_detector'
|
||||||
|
|
||||||
|
# Redis
|
||||||
|
-gem 'redis', '~> 4.8.0'
|
||||||
|
+gem 'redis', '~> 4.8'
|
||||||
|
gem 'connection_pool', '~> 2.0'
|
||||||
|
|
||||||
|
# Redis session store
|
||||||
|
-gem 'redis-actionpack', '~> 5.3.0'
|
||||||
|
+gem 'redis-actionpack', '~> 5.3'
|
||||||
|
|
||||||
|
# Discord integration
|
||||||
|
gem 'discordrb-webhooks', '~> 3.4', require: false
|
||||||
|
|
||||||
|
# Jira integration
|
||||||
|
-gem 'jira-ruby', '~> 2.1.4'
|
||||||
|
+gem 'jira-ruby', '~> 2.1', '>= 2.1.4'
|
||||||
|
gem 'atlassian-jwt', '~> 0.2.0'
|
||||||
|
|
||||||
|
# Slack integration
|
||||||
|
-gem 'slack-messenger', '~> 2.3.4'
|
||||||
|
+gem 'slack-messenger', '~> 2.3', '>= 2.3.4'
|
||||||
|
|
||||||
|
# Hangouts Chat integration
|
||||||
|
gem 'hangouts-chat', '~> 0.0.5', require: 'hangouts_chat'
|
||||||
|
@@ -280,18 +280,18 @@
|
||||||
|
gem 'ruby-fogbugz', '~> 0.3.0'
|
||||||
|
|
||||||
|
# Kubernetes integration
|
||||||
|
-gem 'kubeclient', '~> 4.11.0'
|
||||||
|
+gem 'kubeclient', '~> 4.11'
|
||||||
|
|
||||||
|
# AI
|
||||||
|
gem 'ruby-openai', '~> 3.7'
|
||||||
|
-gem 'circuitbox', '2.0.0'
|
||||||
|
+gem 'circuitbox', '2.0'
|
||||||
|
|
||||||
|
# Sanitize user input
|
||||||
|
gem 'sanitize', '~> 6.0'
|
||||||
|
-gem 'babosa', '~> 1.0.4'
|
||||||
|
+gem 'babosa', '~> 1.0', '>= 1.0.4'
|
||||||
|
|
||||||
|
# Sanitizes SVG input
|
||||||
|
-gem 'loofah', '~> 2.21.0'
|
||||||
|
+gem 'loofah', '~> 2.21'
|
||||||
|
|
||||||
|
# Working with license
|
||||||
|
# Detects the open source license the repository includes
|
||||||
|
@@ -313,32 +313,32 @@
|
||||||
|
|
||||||
|
gem 'rack-proxy', '~> 0.7.6'
|
||||||
|
|
||||||
|
-gem 'sassc-rails', '~> 2.1.0'
|
||||||
|
-gem 'autoprefixer-rails', '10.2.5.1'
|
||||||
|
-gem 'terser', '1.0.2'
|
||||||
|
+gem 'sassc-rails', '~> 2.1'
|
||||||
|
+gem 'autoprefixer-rails', '~> 10.2', '>= 10.2.5.1'
|
||||||
|
+gem 'terser', '~> 1.0', '>= 1.0.2'
|
||||||
|
|
||||||
|
gem 'addressable', '~> 2.8'
|
||||||
|
gem 'tanuki_emoji', '~> 0.6'
|
||||||
|
-gem 'gon', '~> 6.4.0'
|
||||||
|
-gem 'request_store', '~> 1.5.1'
|
||||||
|
+gem 'gon', '~> 6.4'
|
||||||
|
+gem 'request_store', '~> 1.5', '>= 1.5.1'
|
||||||
|
gem 'base32', '~> 0.3.0'
|
||||||
|
|
||||||
|
-gem 'gitlab-license', '~> 2.2.1'
|
||||||
|
+gem 'gitlab-license', '~> 2.2', '>= 2.2.1'
|
||||||
|
|
||||||
|
# Protect against bruteforcing
|
||||||
|
-gem 'rack-attack', '~> 6.6.1'
|
||||||
|
+gem 'rack-attack', '~> 6.6', '>= 6.6.1'
|
||||||
|
|
||||||
|
# Sentry integration
|
||||||
|
gem 'sentry-raven', '~> 3.1'
|
||||||
|
-gem 'sentry-ruby', '~> 5.8.0'
|
||||||
|
-gem 'sentry-rails', '~> 5.8.0'
|
||||||
|
-gem 'sentry-sidekiq', '~> 5.8.0'
|
||||||
|
+gem 'sentry-ruby', '~> 5.8'
|
||||||
|
+gem 'sentry-rails', '~> 5.8'
|
||||||
|
+gem 'sentry-sidekiq', '~> 5.8'
|
||||||
|
|
||||||
|
# PostgreSQL query parsing
|
||||||
|
#
|
||||||
|
gem 'pg_query', '~> 2.2', '>= 2.2.1'
|
||||||
|
|
||||||
|
-gem 'premailer-rails', '~> 1.10.3'
|
||||||
|
+gem 'premailer-rails', '~> 1.10', '>= 1.10.3'
|
||||||
|
|
||||||
|
gem 'gitlab-labkit', '~> 0.32.0'
|
||||||
|
gem 'thrift', '>= 0.16.0'
|
||||||
|
@@ -346,11 +346,11 @@
|
||||||
|
# I18n
|
||||||
|
gem 'ruby_parser', '~> 3.20', require: false
|
||||||
|
gem 'rails-i18n', '~> 7.0'
|
||||||
|
-gem 'gettext_i18n_rails', '~> 1.8.0'
|
||||||
|
+gem 'gettext_i18n_rails', '~> 1.8'
|
||||||
|
gem 'gettext_i18n_rails_js', '~> 1.3'
|
||||||
|
gem 'gettext', '~> 3.3', require: false, group: :development
|
||||||
|
|
||||||
|
-gem 'batch-loader', '~> 2.0.1'
|
||||||
|
+gem 'batch-loader', '~> 2.0', '>= 2.0.1'
|
||||||
|
|
||||||
|
# Perf bar
|
||||||
|
gem 'peek', '~> 1.1'
|
||||||
|
@@ -362,10 +362,10 @@
|
||||||
|
gem 'snowplow-tracker', '~> 0.8.0'
|
||||||
|
|
||||||
|
# Metrics
|
||||||
|
-gem 'webrick', '~> 1.8.1', require: false
|
||||||
|
+gem 'webrick', '~> 1.8', '>= 1.8.1', require: false
|
||||||
|
gem 'prometheus-client-mmap', '~> 0.23', require: 'prometheus/client'
|
||||||
|
|
||||||
|
-gem 'warning', '~> 1.3.0'
|
||||||
|
+gem 'warning', '~> 1.3'
|
||||||
|
|
||||||
|
group :development do
|
||||||
|
gem 'lefthook', '~> 1.3.13', require: false
|
||||||
|
@@ -493,8 +493,8 @@
|
||||||
|
gem 'health_check', '~> 3.0'
|
||||||
|
|
||||||
|
# System information
|
||||||
|
-gem 'vmstat', '~> 2.3.0'
|
||||||
|
-gem 'sys-filesystem', '~> 1.4.3'
|
||||||
|
+gem 'vmstat', '~> 2.3'
|
||||||
|
+gem 'sys-filesystem', '~> 1.4', '>= 1.4.3'
|
||||||
|
|
||||||
|
# NTP client
|
||||||
|
gem 'net-ntp'
|
||||||
|
@@ -503,25 +503,25 @@
|
||||||
|
gem 'ssh_data', '~> 1.3'
|
||||||
|
|
||||||
|
# Spamcheck GRPC protocol definitions
|
||||||
|
-gem 'spamcheck', '~> 1.3.0'
|
||||||
|
+gem 'spamcheck', '~> 1.3'
|
||||||
|
|
||||||
|
# Gitaly GRPC protocol definitions
|
||||||
|
-gem 'gitaly', '~> 15.9.0-rc3'
|
||||||
|
+gem 'gitaly', '~> 15.9'
|
||||||
|
|
||||||
|
# KAS GRPC protocol definitions
|
||||||
|
gem 'kas-grpc', '~> 0.1.0'
|
||||||
|
|
||||||
|
-gem 'grpc', '~> 1.42.0'
|
||||||
|
+gem 'grpc', '~> 1.42'
|
||||||
|
|
||||||
|
gem 'google-protobuf', '~> 3.22', '>= 3.22.3'
|
||||||
|
|
||||||
|
-gem 'toml-rb', '~> 2.2.0'
|
||||||
|
+gem 'toml-rb', '~> 2.2'
|
||||||
|
|
||||||
|
# Feature toggles
|
||||||
|
gem 'flipper', '~> 0.25.0'
|
||||||
|
gem 'flipper-active_record', '~> 0.25.0'
|
||||||
|
gem 'flipper-active_support_cache_store', '~> 0.25.0'
|
||||||
|
-gem 'unleash', '~> 3.2.2'
|
||||||
|
+gem 'unleash', '~> 3.2', '>= 3.2.2'
|
||||||
|
gem 'gitlab-experiment', '~> 0.7.1'
|
||||||
|
|
||||||
|
# Structured logging
|
||||||
|
@@ -532,9 +532,9 @@
|
||||||
|
gem 'gitlab-net-dns', '~> 0.9.2'
|
||||||
|
|
||||||
|
# Countries list
|
||||||
|
-gem 'countries', '~> 4.0.0'
|
||||||
|
+gem 'countries', '~> 4.0'
|
||||||
|
|
||||||
|
-gem 'retriable', '~> 3.1.2'
|
||||||
|
+gem 'retriable', '~> 3.1', '>= 3.1.2'
|
||||||
|
|
||||||
|
# LRU cache
|
||||||
|
gem 'lru_redux'
|
||||||
|
@@ -546,24 +546,24 @@
|
||||||
|
# `config/initializers/mail_starttls_patch.rb` has also been patched to
|
||||||
|
# fix STARTTLS handling until https://github.com/mikel/mail/pull/1536 is
|
||||||
|
# released.
|
||||||
|
-gem 'mail', '= 2.8.1'
|
||||||
|
+gem 'mail', '~> 2.8.1'
|
||||||
|
gem 'mail-smtp_pool', '~> 0.1.0', path: 'vendor/gems/mail-smtp_pool', require: false
|
||||||
|
|
||||||
|
gem 'microsoft_graph_mailer', '~> 0.1.0', path: 'vendor/gems/microsoft_graph_mailer'
|
||||||
|
|
||||||
|
# File encryption
|
||||||
|
-gem 'lockbox', '~> 1.1.1'
|
||||||
|
+gem 'lockbox', '~> 1.1', '>= 1.1.1'
|
||||||
|
|
||||||
|
# Email validation
|
||||||
|
gem 'valid_email', '~> 0.1'
|
||||||
|
|
||||||
|
# JSON
|
||||||
|
-gem 'json', '~> 2.6.3'
|
||||||
|
+gem 'json', '~> 2.6', '>= 2.6.3'
|
||||||
|
gem 'json_schemer', '~> 0.2.18'
|
||||||
|
-gem 'oj', '~> 3.13.21'
|
||||||
|
+gem 'oj', '~> 3.13', '>= 3.13.21'
|
||||||
|
gem 'oj-introspect', '~> 0.7'
|
||||||
|
-gem 'multi_json', '~> 1.14.1'
|
||||||
|
-gem 'yajl-ruby', '~> 1.4.3', require: 'yajl'
|
||||||
|
+gem 'multi_json', '~> 1.14', '>= 1.14.1'
|
||||||
|
+gem 'yajl-ruby', '~> 1.4','>= 1.4.3', require: 'yajl'
|
||||||
|
|
||||||
|
gem 'webauthn', '~> 3.0'
|
||||||
|
|
||||||
|
@@ -574,14 +574,14 @@
|
||||||
|
|
||||||
|
gem 'ipynbdiff', path: 'vendor/gems/ipynbdiff'
|
||||||
|
|
||||||
|
-gem 'ed25519', '~> 1.3.0'
|
||||||
|
+gem 'ed25519', '~> 1.3'
|
||||||
|
|
||||||
|
# Error Tracking OpenAPI client
|
||||||
|
# See https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/development/rake_tasks.md#update-openapi-client-for-error-tracking-feature
|
||||||
|
gem 'error_tracking_open_api', path: 'vendor/gems/error_tracking_open_api'
|
||||||
|
|
||||||
|
# Vulnerability advisories
|
||||||
|
-gem 'cvss-suite', '~> 3.0.1', require: 'cvss_suite'
|
||||||
|
+gem 'cvss-suite', '~> 3.0','>= 3.0.1', require: 'cvss_suite'
|
||||||
|
|
||||||
|
# Work with RPM packages
|
||||||
|
gem 'arr-pm', '~> 0.0.12'
|
114
debian/patches/Gemfile/0020-remove-development-test.patch
vendored
Normal file
114
debian/patches/Gemfile/0020-remove-development-test.patch
vendored
Normal file
|
@ -0,0 +1,114 @@
|
||||||
|
Bundler will fail when it can't find these locally
|
||||||
|
|
||||||
|
--- a/Gemfile
|
||||||
|
+++ b/Gemfile
|
||||||
|
@@ -111,14 +111,12 @@
|
||||||
|
gem 'grape', '~> 1.5','>= 1.5.2'
|
||||||
|
gem 'grape-entity', '~> 0.10.0'
|
||||||
|
gem 'rack-cors', '~> 1.1', '>= 1.1.1', require: 'rack/cors'
|
||||||
|
-gem 'grape-swagger', '~>1.5.0', group: [:development, :test]
|
||||||
|
-gem 'grape-swagger-entity', '~> 0.5.1', group: [:development, :test]
|
||||||
|
+
|
||||||
|
|
||||||
|
# GraphQL API
|
||||||
|
gem 'graphql', '~> 1.13', '>= 1.13.12'
|
||||||
|
gem 'graphiql-rails', '~> 1.8'
|
||||||
|
gem 'apollo_upload_server', '~> 2.1'
|
||||||
|
-gem 'graphql-docs', '~> 2.1.0', group: [:development, :test]
|
||||||
|
gem 'graphlient', '~> 0.5.0' # Used by BulkImport feature (group::import)
|
||||||
|
|
||||||
|
gem 'hashie', '~> 5.0'
|
||||||
|
@@ -348,7 +346,6 @@
|
||||||
|
gem 'rails-i18n', '~> 7.0'
|
||||||
|
gem 'gettext_i18n_rails', '~> 1.8'
|
||||||
|
gem 'gettext_i18n_rails_js', '~> 1.3'
|
||||||
|
-gem 'gettext', '~> 3.3', require: false, group: :development
|
||||||
|
|
||||||
|
gem 'batch-loader', '~> 2.0', '>= 2.0.1'
|
||||||
|
|
||||||
|
@@ -367,85 +364,6 @@
|
||||||
|
|
||||||
|
gem 'warning', '~> 1.3'
|
||||||
|
|
||||||
|
-group :development do
|
||||||
|
- gem 'lefthook', '~> 1.3.13', require: false
|
||||||
|
- gem 'rubocop'
|
||||||
|
- gem 'solargraph', '~> 0.47.2', require: false
|
||||||
|
-
|
||||||
|
- gem 'letter_opener_web', '~> 2.0.0'
|
||||||
|
- gem 'lookbook', '~> 2.0', '>= 2.0.1'
|
||||||
|
-
|
||||||
|
- # Better errors handler
|
||||||
|
- gem 'better_errors', '~> 2.10.0'
|
||||||
|
-
|
||||||
|
- gem 'sprite-factory', '~> 1.7'
|
||||||
|
-
|
||||||
|
- gem "listen", "~> 3.7"
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
-group :development, :test do
|
||||||
|
- gem 'deprecation_toolkit', '~> 1.5.1', require: false
|
||||||
|
- gem 'bullet', '~> 7.0.2'
|
||||||
|
- gem 'pry-byebug'
|
||||||
|
- gem 'pry-rails', '~> 0.3.9'
|
||||||
|
- gem 'pry-shell', '~> 0.6.1'
|
||||||
|
-
|
||||||
|
- gem 'awesome_print', require: false
|
||||||
|
-
|
||||||
|
- gem 'database_cleaner', '~> 1.7.0'
|
||||||
|
- gem 'factory_bot_rails', '~> 6.2.0'
|
||||||
|
- gem 'rspec-rails', '~> 6.0.1'
|
||||||
|
-
|
||||||
|
- # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
|
||||||
|
- gem 'minitest', '~> 5.11.0'
|
||||||
|
-
|
||||||
|
- # Generate Fake data
|
||||||
|
- gem 'ffaker', '~> 2.10'
|
||||||
|
-
|
||||||
|
- gem 'spring', '~> 4.1.0'
|
||||||
|
- gem 'spring-commands-rspec', '~> 1.0.4'
|
||||||
|
-
|
||||||
|
- gem 'gitlab-styles', '~> 10.0.0', require: false
|
||||||
|
-
|
||||||
|
- gem 'haml_lint', '~> 0.40.0', require: false
|
||||||
|
- gem 'bundler-audit', '~> 0.7.0.1', require: false
|
||||||
|
-
|
||||||
|
- # Benchmarking & profiling
|
||||||
|
- gem 'benchmark-ips', '~> 2.11.0', require: false
|
||||||
|
- gem 'benchmark-memory', '~> 0.1', require: false
|
||||||
|
-
|
||||||
|
- gem 'knapsack', '~> 1.21.1'
|
||||||
|
- gem 'crystalball', '~> 0.7.0', require: false
|
||||||
|
-
|
||||||
|
- gem 'simple_po_parser', '~> 1.1.6', require: false
|
||||||
|
-
|
||||||
|
- gem 'png_quantizator', '~> 0.2.1', require: false
|
||||||
|
-
|
||||||
|
- gem 'parallel', '~> 1.19', require: false
|
||||||
|
-
|
||||||
|
- gem 'test_file_finder', '~> 0.1.3'
|
||||||
|
-
|
||||||
|
- gem 'sigdump', '~> 0.2.4', require: 'sigdump/setup'
|
||||||
|
-
|
||||||
|
- gem 'pact', '~> 1.63'
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
-group :development, :test, :danger do
|
||||||
|
- gem 'gitlab-dangerfiles', '~> 3.10.0', require: false
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
-group :development, :test, :coverage do
|
||||||
|
- gem 'simplecov', '~> 0.21', require: false
|
||||||
|
- gem 'simplecov-lcov', '~> 0.8.0', require: false
|
||||||
|
- gem 'simplecov-cobertura', '~> 1.3.1', require: false
|
||||||
|
- gem 'undercover', '~> 0.4.4', require: false
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
-# Gems required in omnibus-gitlab pipeline
|
||||||
|
-group :development, :test, :omnibus do
|
||||||
|
- gem 'license_finder', '~> 7.0', require: false
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
group :test do
|
||||||
|
gem 'fuubar', '~> 2.2.0'
|
||||||
|
gem 'rspec-retry', '~> 0.6.2'
|
13
debian/patches/Gemfile/0030-make-test-dependencies-conditional.patch
vendored
Normal file
13
debian/patches/Gemfile/0030-make-test-dependencies-conditional.patch
vendored
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
Make test dependencies conditional so we can enable them when running autopkgtest
|
||||||
|
|
||||||
|
--- a/Gemfile
|
||||||
|
+++ b/Gemfile
|
||||||
|
@@ -364,7 +364,7 @@
|
||||||
|
|
||||||
|
gem 'warning', '~> 1.3'
|
||||||
|
|
||||||
|
-group :test do
|
||||||
|
+if ENV["INCLUDE_TEST_DEPENDS"] == "true"
|
||||||
|
gem 'fuubar', '~> 2.2.0'
|
||||||
|
gem 'rspec-retry', '~> 0.6.2'
|
||||||
|
gem 'rspec_profiling', '~> 0.0.6'
|
13
debian/patches/Gemfile/0040-relax-httparty.patch
vendored
Normal file
13
debian/patches/Gemfile/0040-relax-httparty.patch
vendored
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
Allow newer versions of httparty to satisfy dependency
|
||||||
|
|
||||||
|
--- a/Gemfile
|
||||||
|
+++ b/Gemfile
|
||||||
|
@@ -229,7 +229,7 @@
|
||||||
|
gem 'fugit', '~> 1.8', '>= 1.8.1'
|
||||||
|
|
||||||
|
# HTTP requests
|
||||||
|
-gem 'httparty', '~> 0.20.0'
|
||||||
|
+gem 'httparty', '~> 0.20'
|
||||||
|
|
||||||
|
# Colored output to console
|
||||||
|
gem 'rainbow', '~> 3.0'
|
22
debian/patches/Gemfile/0090-remove-ee-only-gems.patch
vendored
Normal file
22
debian/patches/Gemfile/0090-remove-ee-only-gems.patch
vendored
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
This gem is used only in gitlab Enterprise Edition
|
||||||
|
|
||||||
|
--- a/Gemfile
|
||||||
|
+++ b/Gemfile
|
||||||
|
@@ -73,7 +73,7 @@
|
||||||
|
gem 'jwt', '~> 2.5'
|
||||||
|
|
||||||
|
# Kerberos authentication. EE-only
|
||||||
|
-gem 'gssapi', '~> 1.3.1', group: :kerberos
|
||||||
|
+
|
||||||
|
gem 'timfel-krb5-auth', '~> 0.8', group: :kerberos
|
||||||
|
|
||||||
|
# Spam and anti-bot protection
|
||||||
|
@@ -321,8 +321,6 @@
|
||||||
|
gem 'request_store', '~> 1.5', '>= 1.5.1'
|
||||||
|
gem 'base32', '~> 0.3.0'
|
||||||
|
|
||||||
|
-gem 'gitlab-license', '~> 2.2', '>= 2.2.1'
|
||||||
|
-
|
||||||
|
# Protect against bruteforcing
|
||||||
|
gem 'rack-attack', '~> 6.6', '>= 6.6.1'
|
||||||
|
|
14
debian/patches/Gemfile/0180-add-parser-gem.patch
vendored
Normal file
14
debian/patches/Gemfile/0180-add-parser-gem.patch
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
Forwarded: https://gitlab.com/gitlab-org/gitlab/-/issues/354323
|
||||||
|
|
||||||
|
--- a/Gemfile
|
||||||
|
+++ b/Gemfile
|
||||||
|
@@ -32,6 +32,9 @@
|
||||||
|
|
||||||
|
gem 'neighbor', '~> 0.2.3'
|
||||||
|
|
||||||
|
+# Background migrations/fix vulnerabilities
|
||||||
|
+gem 'parser', '~> 3.0'
|
||||||
|
+
|
||||||
|
gem 'rugged', '~> 1.5'
|
||||||
|
gem 'grape-path-helpers', '~> 1.7', '>= 1.7.1'
|
||||||
|
|
17
debian/patches/Gemfile/0220-relax-oj-in-ipynbdiff.patch
vendored
Normal file
17
debian/patches/Gemfile/0220-relax-oj-in-ipynbdiff.patch
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
Description: Patch to allow oj >= 3.13
|
||||||
|
Author: Mohammed Bilal <mdbilal@disroot.org>
|
||||||
|
Forwarded: not-needed
|
||||||
|
Last-Update: 2023-02-08
|
||||||
|
---
|
||||||
|
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||||
|
--- a/vendor/gems/ipynbdiff/ipynbdiff.gemspec
|
||||||
|
+++ b/vendor/gems/ipynbdiff/ipynbdiff.gemspec
|
||||||
|
@@ -23,7 +23,7 @@
|
||||||
|
s.require_paths = ['lib']
|
||||||
|
|
||||||
|
s.add_runtime_dependency 'diffy', '~> 3.4'
|
||||||
|
- s.add_runtime_dependency 'oj', '~> 3.13.16'
|
||||||
|
+ s.add_runtime_dependency 'oj', '>= 3.13.16'
|
||||||
|
|
||||||
|
s.add_development_dependency 'bundler', '~> 2.2'
|
||||||
|
s.add_development_dependency 'pry', '~> 0.14'
|
15
debian/patches/Gemfile/0230-relax-gitaly-for-rc.patch
vendored
Normal file
15
debian/patches/Gemfile/0230-relax-gitaly-for-rc.patch
vendored
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
rubygems.org only has pre releases
|
||||||
|
|
||||||
|
Forwarded: not-needed
|
||||||
|
|
||||||
|
--- a/Gemfile
|
||||||
|
+++ b/Gemfile
|
||||||
|
@@ -425,7 +425,7 @@
|
||||||
|
gem 'spamcheck', '~> 1.3'
|
||||||
|
|
||||||
|
# Gitaly GRPC protocol definitions
|
||||||
|
-gem 'gitaly', '~> 15.9'
|
||||||
|
+gem 'gitaly', '~> 15.9.0-rc3'
|
||||||
|
|
||||||
|
# KAS GRPC protocol definitions
|
||||||
|
gem 'kas-grpc', '~> 0.1.0'
|
13
debian/patches/nodejs/0010-set-webpack-root.patch
vendored
Normal file
13
debian/patches/nodejs/0010-set-webpack-root.patch
vendored
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
Debian specific patch to help webpack find sources
|
||||||
|
|
||||||
|
--- a/config/webpack.config.js
|
||||||
|
+++ b/config/webpack.config.js
|
||||||
|
@@ -44,7 +44,7 @@
|
||||||
|
|
||||||
|
const GraphqlKnownOperationsPlugin = require('./plugins/graphql_known_operations_plugin');
|
||||||
|
|
||||||
|
-const ROOT_PATH = path.resolve(__dirname, '..');
|
||||||
|
+const ROOT_PATH = '/usr/share/gitlab';
|
||||||
|
const SUPPORTED_BROWSERS = fs.readFileSync(path.join(ROOT_PATH, '.browserslistrc'), 'utf-8');
|
||||||
|
const SUPPORTED_BROWSERS_HASH = crypto
|
||||||
|
.createHash('sha256')
|
36
debian/patches/nodejs/0030-use-yarnpkg.patch
vendored
Normal file
36
debian/patches/nodejs/0030-use-yarnpkg.patch
vendored
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
Yarn executable in debian is yarnpkg
|
||||||
|
|
||||||
|
--- a/lib/tasks/yarn.rake
|
||||||
|
+++ b/lib/tasks/yarn.rake
|
||||||
|
@@ -3,7 +3,7 @@
|
||||||
|
namespace :yarn do
|
||||||
|
desc 'Ensure Yarn is installed'
|
||||||
|
task :available do
|
||||||
|
- unless system('yarn --version', out: File::NULL)
|
||||||
|
+ unless system('yarnpkg --version', out: File::NULL)
|
||||||
|
warn(
|
||||||
|
'Error: Yarn executable was not detected in the system.'.color(:red),
|
||||||
|
'Download Yarn at https://yarnpkg.com/en/docs/install'.color(:green)
|
||||||
|
@@ -14,10 +14,10 @@
|
||||||
|
|
||||||
|
desc 'Ensure Node dependencies are installed'
|
||||||
|
task check: ['yarn:available'] do
|
||||||
|
- unless system('yarn check --ignore-engines', out: File::NULL)
|
||||||
|
+ unless system('yarnpkg check --ignore-engines', out: File::NULL)
|
||||||
|
warn(
|
||||||
|
- 'Error: You have unmet dependencies. (`yarn check` command failed)'.color(:red),
|
||||||
|
- 'Run `yarn install` to install missing modules.'.color(:green)
|
||||||
|
+ 'Error: You have unmet dependencies. (`yarnpkg check` command failed)'.color(:red),
|
||||||
|
+ 'Run `yarnpkg install` to install missing modules.'.color(:green)
|
||||||
|
)
|
||||||
|
abort
|
||||||
|
end
|
||||||
|
@@ -25,7 +25,7 @@
|
||||||
|
|
||||||
|
desc 'Install Node dependencies with Yarn'
|
||||||
|
task install: ['yarn:available'] do
|
||||||
|
- unless system('yarn install --pure-lockfile --ignore-engines --prefer-offline')
|
||||||
|
+ unless system('yarnpkg install')
|
||||||
|
abort 'Error: Unable to install node modules.'.color(:red)
|
||||||
|
end
|
||||||
|
end
|
21
debian/patches/series
vendored
Normal file
21
debian/patches/series
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
Gemfile/0010-relax-stable-libs.patch
|
||||||
|
Gemfile/0020-remove-development-test.patch
|
||||||
|
Gemfile/0030-make-test-dependencies-conditional.patch
|
||||||
|
Gemfile/0040-relax-httparty.patch
|
||||||
|
Gemfile/0090-remove-ee-only-gems.patch
|
||||||
|
Gemfile/0180-add-parser-gem.patch
|
||||||
|
Gemfile/0220-relax-oj-in-ipynbdiff.patch
|
||||||
|
Gemfile/0230-relax-gitaly-for-rc.patch
|
||||||
|
nodejs/0010-set-webpack-root.patch
|
||||||
|
nodejs/0030-use-yarnpkg.patch
|
||||||
|
tweaks/0010-source-init-functions.patch
|
||||||
|
tweaks/0020-fix-mail-room-path.patch
|
||||||
|
tweaks/0030-fix-gitlab-yml-path.patch
|
||||||
|
tweaks/0040-debian-usage-ping.patch
|
||||||
|
tweaks/0050-add-salsa-link-to-help.patch
|
||||||
|
tweaks/0060-fix-relative-paths.patch
|
||||||
|
tweaks/0070-remove-capybara-screenshot-rspec.patch
|
||||||
|
tweaks/0080-search-binaries-in-path.patch
|
||||||
|
tweaks/0090-cross-platform-text.patch
|
||||||
|
tweaks/0100-rename-gitlab-shell-check.patch
|
||||||
|
tweaks/0110-remove-dangerfiles.patch
|
24
debian/patches/tweaks/0010-source-init-functions.patch
vendored
Normal file
24
debian/patches/tweaks/0010-source-init-functions.patch
vendored
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
Description: fix lintian warning and init script error
|
||||||
|
Bug: https://gitlab.com/gitlab-org/gitlab-ce/issues/12954
|
||||||
|
|
||||||
|
--- a/lib/support/init.d/gitlab
|
||||||
|
+++ b/lib/support/init.d/gitlab
|
||||||
|
@@ -15,6 +15,9 @@
|
||||||
|
# chkconfig: - 85 14
|
||||||
|
### END INIT INFO
|
||||||
|
|
||||||
|
+### source init functions
|
||||||
|
+. /lib/init/vars.sh
|
||||||
|
+. /lib/lsb/init-functions
|
||||||
|
|
||||||
|
###
|
||||||
|
# DO NOT EDIT THIS FILE!
|
||||||
|
@@ -37,7 +40,7 @@
|
||||||
|
web_server_pid_path="$pid_path/puma.pid"
|
||||||
|
mail_room_enabled=false
|
||||||
|
mail_room_pid_path="$pid_path/mail_room.pid"
|
||||||
|
-gitlab_workhorse_dir=$(cd $app_root/../gitlab-workhorse 2> /dev/null && pwd)
|
||||||
|
+gitlab_workhorse_dir=$app_root/../gitlab-workhorse
|
||||||
|
gitlab_workhorse_pid_path="$pid_path/gitlab-workhorse.pid"
|
||||||
|
gitlab_workhorse_options="-listenUmask 0 -listenNetwork unix -listenAddr $socket_path/gitlab-workhorse.socket -authBackend http://127.0.0.1:8080 -authSocket $rails_socket -documentRoot $app_root/public"
|
||||||
|
gitlab_workhorse_log="$app_root/log/gitlab-workhorse.log"
|
12
debian/patches/tweaks/0020-fix-mail-room-path.patch
vendored
Normal file
12
debian/patches/tweaks/0020-fix-mail-room-path.patch
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
require_relative does not work with debian package layout
|
||||||
|
|
||||||
|
--- a/config/mail_room.yml
|
||||||
|
+++ b/config/mail_room.yml
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
:mailboxes:
|
||||||
|
<%
|
||||||
|
- require_relative "../lib/gitlab/mail_room" unless defined?(Gitlab::MailRoom)
|
||||||
|
+ require "/usr/share/gitlab/lib/gitlab/mail_room" unless defined?(Gitlab::MailRoom)
|
||||||
|
Gitlab::MailRoom.enabled_configs.each do |key, config|
|
||||||
|
%>
|
||||||
|
-
|
12
debian/patches/tweaks/0030-fix-gitlab-yml-path.patch
vendored
Normal file
12
debian/patches/tweaks/0030-fix-gitlab-yml-path.patch
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
Fix for debian package layout
|
||||||
|
|
||||||
|
--- a/config/settings.rb
|
||||||
|
+++ b/config/settings.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
-require_relative '../lib/gitlab_settings'
|
||||||
|
+require_relative '/usr/share/gitlab/lib/gitlab_settings'
|
||||||
|
|
||||||
|
file = ENV.fetch('GITLAB_CONFIG') { Rails.root.join('config/gitlab.yml') }
|
||||||
|
section = ENV.fetch('GITLAB_ENV') { Rails.env }
|
10
debian/patches/tweaks/0040-debian-usage-ping.patch
vendored
Normal file
10
debian/patches/tweaks/0040-debian-usage-ping.patch
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
Description: Set installation type to debian-native for usage ping differentiation
|
||||||
|
Author: Balasankar C <balasankarc@debian.org>
|
||||||
|
Last-Update: 2019-01-04
|
||||||
|
---
|
||||||
|
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||||
|
--- a/INSTALLATION_TYPE
|
||||||
|
+++ b/INSTALLATION_TYPE
|
||||||
|
@@ -1 +1 @@
|
||||||
|
-source
|
||||||
|
+debian-native
|
19
debian/patches/tweaks/0050-add-salsa-link-to-help.patch
vendored
Normal file
19
debian/patches/tweaks/0050-add-salsa-link-to-help.patch
vendored
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
Description: Use link to gitlab project on Salsa in help page
|
||||||
|
Author: Balasankar C <balasankarc@debian.org>
|
||||||
|
Last-Update: 2018-12-16
|
||||||
|
---
|
||||||
|
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||||
|
--- a/app/helpers/version_check_helper.rb
|
||||||
|
+++ b/app/helpers/version_check_helper.rb
|
||||||
|
@@ -24,7 +24,10 @@
|
||||||
|
def link_to_version
|
||||||
|
link = link_to(Gitlab::Source.ref, Gitlab::Source.release_url)
|
||||||
|
|
||||||
|
- if Gitlab.pre_release?
|
||||||
|
+ if ENV['GITLAB_DEBIAN_VERSION'] && ENV['SALSA_TAG_URL']
|
||||||
|
+ debian_tag = ENV['GITLAB_DEBIAN_VERSION'].gsub('~', '_')
|
||||||
|
+ link_to ENV['GITLAB_DEBIAN_VERSION'], ENV['SALSA_TAG_URL'] + debian_tag
|
||||||
|
+ elsif Gitlab.pre_release?
|
||||||
|
[Gitlab::VERSION, content_tag(:small, link)].join(' ').html_safe
|
||||||
|
else
|
||||||
|
link
|
38
debian/patches/tweaks/0060-fix-relative-paths.patch
vendored
Normal file
38
debian/patches/tweaks/0060-fix-relative-paths.patch
vendored
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
Debian specific patch to adapt to debian policy mandated paths
|
||||||
|
|
||||||
|
--- a/config/initializers/1_settings.rb
|
||||||
|
+++ b/config/initializers/1_settings.rb
|
||||||
|
@@ -1,8 +1,8 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
-require_relative '../settings'
|
||||||
|
-require_relative '../object_store_settings'
|
||||||
|
-require_relative '../smime_signature_settings'
|
||||||
|
+require '/usr/share/gitlab/config/settings'
|
||||||
|
+require '/usr/share/gitlab/config/object_store_settings'
|
||||||
|
+require '/usr/share/gitlab/config/smime_signature_settings'
|
||||||
|
|
||||||
|
# Default settings
|
||||||
|
Settings['shared'] ||= {}
|
||||||
|
--- a/config/environment.rb
|
||||||
|
+++ b/config/environment.rb
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
# Load the Rails application.
|
||||||
|
-require_relative 'application'
|
||||||
|
+require '/usr/share/gitlab/config/application'
|
||||||
|
|
||||||
|
# Initialize the Rails application.
|
||||||
|
Rails.application.initialize!
|
||||||
|
--- a/config/initializers_before_autoloader/001_fast_gettext.rb
|
||||||
|
+++ b/config/initializers_before_autoloader/001_fast_gettext.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
-require_relative '../../lib/gitlab/i18n'
|
||||||
|
-require_relative '../../lib/gitlab/i18n/pluralization'
|
||||||
|
+require '/usr/share/gitlab/lib/gitlab/i18n'
|
||||||
|
+require '/usr/share/gitlab/lib/gitlab/i18n/pluralization'
|
||||||
|
|
||||||
|
Gitlab::I18n.setup(domain: 'gitlab', default_locale: :en)
|
29
debian/patches/tweaks/0070-remove-capybara-screenshot-rspec.patch
vendored
Normal file
29
debian/patches/tweaks/0070-remove-capybara-screenshot-rspec.patch
vendored
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
--- a/spec/support/capybara.rb
|
||||||
|
+++ b/spec/support/capybara.rb
|
||||||
|
@@ -3,7 +3,6 @@
|
||||||
|
# rubocop:disable Style/GlobalVars
|
||||||
|
require 'capybara/rails'
|
||||||
|
require 'capybara/rspec'
|
||||||
|
-require 'capybara-screenshot/rspec'
|
||||||
|
require 'selenium-webdriver'
|
||||||
|
|
||||||
|
# Give CI some extra time
|
||||||
|
@@ -129,18 +128,6 @@
|
||||||
|
Capybara.default_normalize_ws = true
|
||||||
|
Capybara.enable_aria_label = true
|
||||||
|
|
||||||
|
-Capybara::Screenshot.append_timestamp = false
|
||||||
|
-
|
||||||
|
-Capybara::Screenshot.register_filename_prefix_formatter(:rspec) do |example|
|
||||||
|
- example.full_description.downcase.parameterize(separator: "_")[0..SCREENSHOT_FILENAME_LENGTH]
|
||||||
|
-end
|
||||||
|
-# Keep only the screenshots generated from the last failing test suite
|
||||||
|
-Capybara::Screenshot.prune_strategy = :keep_last_run
|
||||||
|
-# From https://github.com/mattheworiordan/capybara-screenshot/issues/84#issuecomment-41219326
|
||||||
|
-Capybara::Screenshot.register_driver(:chrome) do |driver, path|
|
||||||
|
- driver.browser.save_screenshot(path)
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
RSpec.configure do |config|
|
||||||
|
config.include CapybaraHelpers, type: :feature
|
||||||
|
|
27
debian/patches/tweaks/0080-search-binaries-in-path.patch
vendored
Normal file
27
debian/patches/tweaks/0080-search-binaries-in-path.patch
vendored
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
Description: Search for gitlab-workhorse binaries also in the environment in PATH variable
|
||||||
|
Author: Nilesh Patra <npatra974@gmail.com>
|
||||||
|
Last-Update: 2021-01-26
|
||||||
|
--- a/workhorse/internal/testhelper/testhelper.go
|
||||||
|
+++ b/workhorse/internal/testhelper/testhelper.go
|
||||||
|
@@ -12,6 +12,7 @@
|
||||||
|
"runtime"
|
||||||
|
"testing"
|
||||||
|
"time"
|
||||||
|
+ "os/exec"
|
||||||
|
|
||||||
|
"github.com/golang-jwt/jwt/v5"
|
||||||
|
"github.com/stretchr/testify/require"
|
||||||
|
@@ -96,8 +97,11 @@
|
||||||
|
rootDir := RootDir()
|
||||||
|
|
||||||
|
for _, exe := range workhorseExecutables {
|
||||||
|
- if _, err := os.Stat(path.Join(rootDir, exe)); os.IsNotExist(err) {
|
||||||
|
- return fmt.Errorf("cannot find executable %s. Please run 'make prepare-tests'", exe)
|
||||||
|
+ _, err := exec.LookPath(exe)
|
||||||
|
+ if err != nil {
|
||||||
|
+ if _, rootdirerr := os.Stat(path.Join(rootDir, exe)); os.IsNotExist(rootdirerr) {
|
||||||
|
+ return fmt.Errorf("cannot find executable %s. Please run 'make prepare-tests'", exe)
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
8
debian/patches/tweaks/0090-cross-platform-text.patch
vendored
Normal file
8
debian/patches/tweaks/0090-cross-platform-text.patch
vendored
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
--- a/.gitattributes
|
||||||
|
+++ b/.gitattributes
|
||||||
|
@@ -1,3 +1,5 @@
|
||||||
|
+# Auto detect text files and perform LF normalization
|
||||||
|
+* text=auto
|
||||||
|
VERSION merge=ours
|
||||||
|
Dangerfile gitlab-language=ruby
|
||||||
|
*.rb diff=ruby
|
18
debian/patches/tweaks/0100-rename-gitlab-shell-check.patch
vendored
Normal file
18
debian/patches/tweaks/0100-rename-gitlab-shell-check.patch
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
Description: Look for gitlab-shell-check binary during installation process
|
||||||
|
Author: Mohammed Bilal <mdbilal@disroot.org>
|
||||||
|
Bug-Debian: http://bugs.debian.org/985840
|
||||||
|
Forwarded: not-needed
|
||||||
|
Last-Update: 2023-02-07
|
||||||
|
---
|
||||||
|
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||||
|
--- a/lib/system_check/gitlab_shell_check.rb
|
||||||
|
+++ b/lib/system_check/gitlab_shell_check.rb
|
||||||
|
@@ -26,7 +26,7 @@
|
||||||
|
|
||||||
|
def check_gitlab_shell_self_test
|
||||||
|
gitlab_shell_repo_base = gitlab_shell_path
|
||||||
|
- check_cmd = File.expand_path('bin/check', gitlab_shell_repo_base)
|
||||||
|
+ check_cmd = File.expand_path('bin/gitlab-shell-check', gitlab_shell_repo_base)
|
||||||
|
$stdout.puts "Running #{check_cmd}"
|
||||||
|
|
||||||
|
if system(check_cmd, chdir: gitlab_shell_repo_base)
|
15
debian/patches/tweaks/0110-remove-dangerfiles.patch
vendored
Normal file
15
debian/patches/tweaks/0110-remove-dangerfiles.patch
vendored
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
We don't need this in production
|
||||||
|
|
||||||
|
Forwarded: not-needed
|
||||||
|
|
||||||
|
--- a/Rakefile
|
||||||
|
+++ b/Rakefile
|
||||||
|
@@ -17,5 +17,6 @@
|
||||||
|
|
||||||
|
Knapsack.load_tasks if defined?(Knapsack)
|
||||||
|
|
||||||
|
-require 'gitlab-dangerfiles'
|
||||||
|
-Gitlab::Dangerfiles.load_tasks
|
||||||
|
+# This is development only
|
||||||
|
+#require 'gitlab-dangerfiles'
|
||||||
|
+#Gitlab::Dangerfiles.load_tasks
|
1
debian/po/POTFILES.in
vendored
Normal file
1
debian/po/POTFILES.in
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[type: gettext/rfc822deb] gitlab.templates
|
61
debian/rake-tasks.sh
vendored
Executable file
61
debian/rake-tasks.sh
vendored
Executable file
|
@ -0,0 +1,61 @@
|
||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Read debian specific configuration
|
||||||
|
. /etc/gitlab/gitlab-debian.conf
|
||||||
|
export DB RAILS_ENV
|
||||||
|
|
||||||
|
export GEM_HOME=/var/lib/gitlab/.gem
|
||||||
|
export GEM_PATH=$(gem env gempath)
|
||||||
|
|
||||||
|
cd /usr/share/gitlab
|
||||||
|
|
||||||
|
# Remove all lines from Gemfile.lock
|
||||||
|
runuser -u ${gitlab_user} -- sh -c "touch ${gitlab_data_dir}/Gemfile.lock && \
|
||||||
|
truncate -s 0 ${gitlab_data_dir}/Gemfile.lock"
|
||||||
|
# Regenerate Gemfile.lock
|
||||||
|
runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle install --local'
|
||||||
|
|
||||||
|
# Check if the db is already present
|
||||||
|
db_relations="$(LANG=C runuser -u postgres -- sh -c "psql gitlab_production -c \"\d\"" 2>&1)"
|
||||||
|
if [ "$db_relations" = "No relations found." ] || \
|
||||||
|
[ "$db_relations" = "Did not find any relations." ]; then
|
||||||
|
echo "Initializing database..."
|
||||||
|
test -f ${gitlab_home}/db/structure.sql || \
|
||||||
|
runuser -u ${gitlab_user} -- sh -c \
|
||||||
|
"cp ${gitlab_data_dir}/db/structure.sql.template ${gitlab_data_dir}/db/structure.sql"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c \
|
||||||
|
"touch ${gitlab_data_dir}/.gitlab_shell_secret"
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'touch /var/lib/gitlab/secrets.yml'
|
||||||
|
runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle exec rake db:structure:load'
|
||||||
|
else
|
||||||
|
echo "gitlab_production database is not empty, skipping gitlab setup"
|
||||||
|
fi
|
||||||
|
|
||||||
|
runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle exec rake db:migrate'
|
||||||
|
|
||||||
|
# Restrict permissions for secret files
|
||||||
|
chmod 0700 ${gitlab_data_dir}/.gitlab_shell_secret
|
||||||
|
|
||||||
|
echo "Installing node modules..."
|
||||||
|
cd /var/lib/gitlab
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'install -d /var/lib/gitlab/.cache'
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'yarnpkg set version berry'
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'if ! grep nodeLinker .yarnrc.yml >/dev/null; then echo "nodeLinker: \"node-modules\"" >>.yarnrc.yml; fi'
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'NODE_ENV=production yarnpkg install'
|
||||||
|
# Remove write permissions of .yarn-metadata.json files
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'test -d "/var/lib/gitlab/.cache/yarn/v6" && find /var/lib/gitlab/.cache/yarn/v6/ -name .yarn-metadata.json -perm -a=w -exec chmod 644 {} \;'
|
||||||
|
|
||||||
|
cd /usr/share/gitlab
|
||||||
|
|
||||||
|
echo "Precompiling locales..."
|
||||||
|
runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle exec rake gettext:po_to_json'
|
||||||
|
|
||||||
|
echo "Precompiling assets..."
|
||||||
|
runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle exec rake tmp:cache:clear assets:precompile'
|
||||||
|
|
||||||
|
echo "Webpacking..."
|
||||||
|
# Workaround for webpack crashing with nodejs 10 - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=956211
|
||||||
|
# Build assets in production mode - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=956508
|
||||||
|
runuser -u ${gitlab_user} -- sh -c 'NODE_ENV="production" NODE_PATH="node_modules" NODE_OPTIONS="--max-old-space-size=4096" webpack --config config/webpack.config.js'
|
6
debian/ruby-gitlab-ce.git.docs
vendored
Normal file
6
debian/ruby-gitlab-ce.git.docs
vendored
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# FIXME: doc/ dir found in source. Consider installing the docs.
|
||||||
|
# Examples:
|
||||||
|
# doc/manual.html
|
||||||
|
# doc/site/*
|
||||||
|
# FIXME: READMEs found
|
||||||
|
# README.md
|
90
debian/rules
vendored
Executable file
90
debian/rules
vendored
Executable file
|
@ -0,0 +1,90 @@
|
||||||
|
#!/usr/bin/make -f
|
||||||
|
|
||||||
|
include /usr/share/dpkg/pkg-info.mk
|
||||||
|
BUILDDIR := _build/src/gitlab.com/gitlab-org/gitlab
|
||||||
|
VENDORDIR := ${BUILDDIR}/vendor
|
||||||
|
SYSTEMGOCODE := /usr/share/gocode/src
|
||||||
|
|
||||||
|
%:
|
||||||
|
dh $@ --buildsystem=ruby --with=ruby --package=gitlab
|
||||||
|
dh $@ --buildsystem=golang --with=golang --builddirectory=_build \
|
||||||
|
--package=gitlab-workhorse --sourcedirectory=workhorse
|
||||||
|
|
||||||
|
override_dh_auto_configure-indep:
|
||||||
|
dh_auto_configure -O--package=gitlab -O--buildsystem=ruby -O--with=ruby
|
||||||
|
|
||||||
|
override_dh_auto_configure-arch:
|
||||||
|
dh_auto_configure -O--package=gitlab-workhorse -O--buildsystem=golang \
|
||||||
|
-O--with=golang -O--builddirectory=_build -O--sourcedirectory=workhorse
|
||||||
|
# we don't need gitlab's (ruby) vendor directory
|
||||||
|
rm -rf ${VENDORDIR}
|
||||||
|
# workhorse-vendor is meant for workhorse, but should be renamed
|
||||||
|
mv ${BUILDDIR}/workhorse-vendor ${VENDORDIR}
|
||||||
|
# merge vendor from gitaly with vendor in build directory using simbolic links
|
||||||
|
cp -arsn ${SYSTEMGOCODE}/gitlab.com/gitlab-org/gitaly/v16/vendor/* \
|
||||||
|
${VENDORDIR}/
|
||||||
|
# import paths in vendor needs version as directory (go.mod is ignored)
|
||||||
|
mkdir -p ${VENDORDIR}/github.com/cespare/xxhash/v2
|
||||||
|
mkdir -p ${VENDORDIR}/github.com/oklog/ulid/v2
|
||||||
|
cp -arsn ${SYSTEMGOCODE}/github.com/cespare/xxhash/* ${VENDORDIR}/github.com/cespare/xxhash/v2
|
||||||
|
cp -arsn ${SYSTEMGOCODE}/github.com/oklog/ulid/* ${VENDORDIR}/github.com/oklog/ulid/v2
|
||||||
|
# only go files gets copied, but we need files like gitlab-logo.png
|
||||||
|
cp -rf workhorse ${BUILDDIR}
|
||||||
|
# Remove non-existent symlink
|
||||||
|
find ${BUILDDIR} -name test.git -delete
|
||||||
|
|
||||||
|
override_dh_auto_build-indep:
|
||||||
|
dh_auto_build -O--package=gitlab -O--buildsystem=ruby -O--with=ruby
|
||||||
|
|
||||||
|
override_dh_auto_build-arch:
|
||||||
|
dh_auto_build -O--package=gitlab-workhorse -O--buildsystem=golang \
|
||||||
|
-O--with=golang -O--builddirectory=_build -O--sourcedirectory=workhorse
|
||||||
|
# Rename binary to gitlab-workhorse (upstream is passing -o in Makefile)
|
||||||
|
if [ -f _build/bin/workhorse ]; then \
|
||||||
|
mv _build/bin/workhorse _build/bin/gitlab-workhorse; fi
|
||||||
|
|
||||||
|
override_dh_auto_test-indep:
|
||||||
|
dh_auto_test -O--package=gitlab -O--buildsystem=ruby -O--with=ruby
|
||||||
|
|
||||||
|
override_dh_auto_test-arch:
|
||||||
|
PATH="$(CURDIR)/_build/bin:$$PATH" dh_auto_test -O--package=gitlab-workhorse \
|
||||||
|
-O--buildsystem=golang -O--with=golang -O--builddirectory=_build \
|
||||||
|
-O--sourcedirectory=workhorse
|
||||||
|
|
||||||
|
override_dh_auto_install-indep:
|
||||||
|
# skip gem2deb copying files to /usr/lib/ruby
|
||||||
|
|
||||||
|
override_dh_auto_install-arch:
|
||||||
|
dh_auto_install -O--package=gitlab-workhorse -O--buildsystem=golang \
|
||||||
|
-O--with=golang -O--builddirectory=_build -O--sourcedirectory=workhorse
|
||||||
|
|
||||||
|
override_dh_install-indep:
|
||||||
|
sh debian/upstream-file-count-check.sh
|
||||||
|
sh debian/upstream-config-file-check.sh
|
||||||
|
dh_install -XLICENSE -O--package=gitlab -O--buildsystem=ruby -O--with=ruby
|
||||||
|
dh_installexamples -O--package=gitlab -O--buildsystem=ruby -O--with=ruby
|
||||||
|
# Make sure we are installing all required files in debian/install
|
||||||
|
rm -rf debian/gitlab/usr/share/gitlab/tmp/*
|
||||||
|
find debian/gitlab/usr/share/gitlab/ -name .eslintrc.yml -delete
|
||||||
|
mv debian/gitlab/usr/share/gitlab/app/assets/javascripts/locale \
|
||||||
|
debian/gitlab/usr/share/gitlab/app/assets/javascripts/locale.static
|
||||||
|
if [ -f debian/gitlab/var/lib/gitlab/db/structure.sql ]; then \
|
||||||
|
mv debian/gitlab/var/lib/gitlab/db/structure.sql debian/gitlab/var/lib/gitlab/db/structure.sql.template; fi
|
||||||
|
sed -i 's/__NEW_VERSION__/${DEB_VERSION}/g' debian/gitlab/usr/lib/gitlab/templates/gitlab-debian.conf.example
|
||||||
|
|
||||||
|
override_dh_install-arch:
|
||||||
|
dh_install -XLICENSE -O--package=gitlab-workhorse -O--buildsystem=golang \
|
||||||
|
-O--with=golang -O--builddirectory=_build -O--sourcedirectory=workhorse
|
||||||
|
|
||||||
|
override_dh_installsystemd-indep:
|
||||||
|
dh_installsystemd --no-start -p gitlab --name=gitlab-sidekiq -O--package=gitlab
|
||||||
|
dh_installsystemd --no-start -p gitlab --name=gitlab-puma -O--package=gitlab
|
||||||
|
dh_installsystemd --no-start -p gitlab --name=gitlab-mailroom -O--package=gitlab
|
||||||
|
dh_installsystemd --no-start -p gitlab --name=gitlab-workhorse -O--package=gitlab
|
||||||
|
dh_installsystemd -O--package=gitlab -O--buildsystem=ruby -O--with=ruby
|
||||||
|
|
||||||
|
override_dh_golang-indep:
|
||||||
|
# don't fail in arch:all build, is there a better way ?
|
||||||
|
|
||||||
|
override_dh_dwz:
|
||||||
|
# Do nothing
|
7
debian/salsa-ci.yml
vendored
Normal file
7
debian/salsa-ci.yml
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
include:
|
||||||
|
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
|
||||||
|
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
|
||||||
|
|
||||||
|
variables:
|
||||||
|
RELEASE: 'experimental'
|
1
debian/source/format
vendored
Normal file
1
debian/source/format
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
3.0 (quilt)
|
2
debian/source/include-binaries
vendored
Normal file
2
debian/source/include-binaries
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
debian/gems-compat/activesupport-5.1.7/lib/active_support/values/unicode_tables.dat
|
||||||
|
debian/gems-compat/thrift-0.11.0.0/thrift.gemspec
|
52
debian/source/lintian-overrides
vendored
Normal file
52
debian/source/lintian-overrides
vendored
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
# source is provided as snowplow-javascript-tracker component
|
||||||
|
gitlab source: source-is-missing vendor/assets/javascripts/snowplow/sp.js line length is 32154 characters (>512)
|
||||||
|
|
||||||
|
# json evil license is listed as an example
|
||||||
|
gitlab source: license-problem-json-evil doc/development/licensing.md
|
||||||
|
|
||||||
|
# Waiting for upstream change for debconf integration
|
||||||
|
# https://gitlab.com/gitlab-org/gitlab-ce/issues/3717
|
||||||
|
gitlab source: missing-templates-pot
|
||||||
|
|
||||||
|
# False positive
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/editor/editor_lite.js
|
||||||
|
gitlab source: source-is-missing spec/javascripts/vue_mr_widget/mock_data.js line length is 518 characters (>512)
|
||||||
|
gitlab source: source-is-missing spec/frontend/vue_mr_widget/mock_data.js line length is 518 characters (>512)
|
||||||
|
gitlab source: source-is-missing vendor/assets/javascripts/fuzzaldrin-plus.js line length is 480 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/labels_select.js line length is 407 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/shortcuts_blob.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/shortcuts_dashboard_navigation.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/shortcuts_find_file.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/shortcuts_issuable.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/shortcuts_navigation.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/shortcuts_network.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing spec/javascripts/fixtures/emoji_menu.js line length is 32752 characters (>512)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/blob/blob_gitignore_selector.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/blob/blob_license_selector.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/pages/projects/graphs/show/stat_graph_contributors_graph.js line length is 291 characters (>256)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/issuable_index.js line length is 603 characters (>512)
|
||||||
|
gitlab source: source-is-missing spec/javascripts/vue_mr_widget/mock_data.js line length is 546 characters (>512)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/pages/projects/graphs/show/stat_graph_contributors_graph.js line length is 289 characters (>256)
|
||||||
|
gitlab source: source-is-missing spec/javascripts/diffs/mock_data/diff_discussions.js line length is 594 characters (>512)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/labels_select.js line length is 271 characters (>256)
|
||||||
|
gitlab source: source-is-missing spec/javascripts/diffs/mock_data/diff_discussions.js line length is 566 characters (>512)
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/visual_review_toolbar/components/wrapper_icons.js line length is 519 characters (>512)
|
||||||
|
gitlab source: source-is-missing spec/frontend/diffs/mock_data/diff_discussions.js line length is 566 characters (>512)
|
||||||
|
gitlab source: source-is-missing spec/frontend/monitoring/mock_data.js line length is 774 characters (>512)
|
||||||
|
# unicode data
|
||||||
|
gitlab source: source-is-missing app/assets/javascripts/lib/utils/regexp.js line length is 4905 characters (>512)
|
||||||
|
# test data
|
||||||
|
gitlab source: source-is-missing spec/fixtures/not_a_png.png
|
||||||
|
gitlab source: source-is-missing spec/javascripts/lib/utils/mock_data.js line length is 2173 characters (>512)
|
||||||
|
gitlab source: source-is-missing spec/frontend/lib/utils/mock_data.js line length is 2173 characters (>512)
|
||||||
|
# encoding data
|
||||||
|
gitlab source: source-is-missing vendor/assets/javascripts/xterm/encoding-indexes.js line length is 32697 characters (>512)
|
||||||
|
# Source is provided by jquery-at.js
|
||||||
|
gitlab source: source-is-missing vendor/assets/javascripts/jquery.atwho.js line length is 285 characters (>256)
|
||||||
|
# Source is provided by jquery-caret.js
|
||||||
|
gitlab source: source-is-missing vendor/assets/javascripts/jquery.caret.js line length is 538 characters (>512)
|
||||||
|
# Source is provided by pdf.js
|
||||||
|
gitlab source: source-is-missing vendor/assets/javascripts/pdf.js line length is 695 characters (>512)
|
||||||
|
gitlab source: source-is-missing vendor/assets/javascripts/pdf.worker.js line length is 695 characters (>512)
|
||||||
|
# Source provided by node-xterm
|
||||||
|
gitlab source: source-is-missing vendor/assets/javascripts/xterm/xterm.js line length is 848 characters (>512)
|
44
debian/tests/control
vendored
Normal file
44
debian/tests/control
vendored
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
Tests: spec
|
||||||
|
Depends: @,
|
||||||
|
sudo,
|
||||||
|
gem2deb-test-runner,
|
||||||
|
# For building native gems
|
||||||
|
ruby-rspec,
|
||||||
|
ruby-dev,
|
||||||
|
gcc,
|
||||||
|
libc6-dev,
|
||||||
|
ruby-sqlite3,
|
||||||
|
# For building gitlab-shell
|
||||||
|
golang-any,
|
||||||
|
# Dependencies in test group
|
||||||
|
ruby-fuubar (>= 2.2~),
|
||||||
|
ruby-rspec-retry (>= 0.6.1~),
|
||||||
|
ruby-rspec-profiling,
|
||||||
|
ruby-rspec-parameterized,
|
||||||
|
ruby-capybara,
|
||||||
|
ruby-selenium-webdriver (>= 3.142~),
|
||||||
|
ruby-shoulda-matchers (>= 4.0.1~),
|
||||||
|
ruby-email-spec (>= 2.2~),
|
||||||
|
ruby-json-schema (>= 2.8~),
|
||||||
|
ruby-webmock (>= 3.5.1~),
|
||||||
|
ruby-rails-controller-testing,
|
||||||
|
ruby-test-prof (>= 0.12~),
|
||||||
|
ruby-rspec-junit-formatter,
|
||||||
|
ruby-bullet,
|
||||||
|
ruby-pry-byebug (>= 3.5.1~),
|
||||||
|
ruby-pry-rails,
|
||||||
|
ruby-awesome-print,
|
||||||
|
ruby-database-cleaner (>= 1.7~),
|
||||||
|
ruby-factory-bot-rails (>= 5.1~),
|
||||||
|
ruby-rspec-rails (>= 4.0~beta3~),
|
||||||
|
ruby-ffaker (>= 2.10~),
|
||||||
|
ruby-spring (>= 2.0~),
|
||||||
|
ruby-spring-commands-rspec,
|
||||||
|
ruby-simplecov,
|
||||||
|
ruby-knapsack,
|
||||||
|
ruby-simple-po-parser,
|
||||||
|
ruby-timecop (>= 0.9.1~),
|
||||||
|
ruby-png-quantizator,
|
||||||
|
ruby-parallel (>= 1.19~),
|
||||||
|
ruby-rblineprof
|
||||||
|
Restrictions: needs-root, needs-internet
|
46
debian/tests/spec
vendored
Executable file
46
debian/tests/spec
vendored
Executable file
|
@ -0,0 +1,46 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
export SOURCE_TREE=${PWD}
|
||||||
|
|
||||||
|
if [ -z "$ADTTMP" ]; then
|
||||||
|
ADTTMP=$(mktemp -d)
|
||||||
|
cleanup() {
|
||||||
|
rm -rf "$ADTTMP"
|
||||||
|
}
|
||||||
|
trap cleanup INT TERM EXIT
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $ADTTMP
|
||||||
|
|
||||||
|
exec 2>&1
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
cd /usr/share/gitlab
|
||||||
|
su gitlab -c 'truncate -s 0 Gemfile.lock'
|
||||||
|
|
||||||
|
. /etc/gitlab/gitlab-debian.conf
|
||||||
|
export RAILS_ENV=test
|
||||||
|
export DB=postgres
|
||||||
|
export INCLUDE_TEST_DEPENDS="true"
|
||||||
|
|
||||||
|
su gitlab -c "bundle install --local"
|
||||||
|
su gitlab -c "mkdir -p tmp/tests/gitlab-shell"
|
||||||
|
export dbname=gitlab_test
|
||||||
|
export gitlab_user=gitlab
|
||||||
|
su postgres -c "createdb $dbname"
|
||||||
|
# enable the pg_trgm extension
|
||||||
|
su postgres -c "psql -d $dbname -c \"CREATE EXTENSION IF NOT EXISTS pg_trgm;\"" || {
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
# enable the btree_gist extension
|
||||||
|
su postgres -c "psql -d $dbname -c \"CREATE EXTENSION IF NOT EXISTS btree_gist;\"" || {
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
# Allow gitlab user required permissions
|
||||||
|
su postgres -c "psql -c \"GRANT ALL on schema public TO ${gitlab_user};\""
|
||||||
|
su postgres -c "psql -c \"GRANT ALL on database ${dbname} TO ${gitlab_user};\""
|
||||||
|
# gitlab user need to create files here
|
||||||
|
chown -R ${gitlab_user}: /usr/share/gitlab/db
|
||||||
|
su gitlab -c "bundle exec rake db:migrate"
|
||||||
|
su gitlab -c "bundle exec rake -f ${SOURCE_TREE}/debian/tests/spec.rake"
|
||||||
|
#config 2/2 failed, controllers many failed
|
42
debian/tests/spec.rake
vendored
Normal file
42
debian/tests/spec.rake
vendored
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
require 'gem2deb/rake/spectask'
|
||||||
|
|
||||||
|
Gem2Deb::Rake::RSpecTask.new do |spec|
|
||||||
|
# directories without any spec.rb files: support, features, fixtures
|
||||||
|
# TODO: enable javascript tests
|
||||||
|
spec.pattern = FileList[
|
||||||
|
'spec/config/mail_room_spec.rb'
|
||||||
|
#'spec/config/**/*_spec.rb',
|
||||||
|
#'spec/controllers/*_spec.rb',
|
||||||
|
#'spec/factories_spec.rb',
|
||||||
|
#'spec/finders/**/*_spec.rb',
|
||||||
|
#'spec/helpers/*_spec.rb',
|
||||||
|
#'spec/initializers/*_spec.rb',
|
||||||
|
#'spec/lib/**/*_spec.rb',
|
||||||
|
#'spec/routing/**/*_spec.rb',
|
||||||
|
#'spec/services/**/*_spec.rb',
|
||||||
|
#'spec/tasks/**/*_spec.rb',
|
||||||
|
#'spec/uploaders/*_spec.rb',
|
||||||
|
#'spec/views/**/*_spec.rb',
|
||||||
|
#'spec/workers/**/*_spec.rb',
|
||||||
|
] - FileList[
|
||||||
|
#'spec/services/git_push_service_spec.rb',
|
||||||
|
#'spec/services/create_deployment_service_spec.rb',
|
||||||
|
#'spec/services/ci/image_for_build_service_spec.rb',
|
||||||
|
#'spec/services/ci/process_pipeline_service_spec.rb',
|
||||||
|
#'spec/services/ci/send_pipeline_notification_service_spec.rb',
|
||||||
|
#'spec/services/merge_requests/merge_when_build_succeeds_service_spec.rb',
|
||||||
|
#'spec/services/system_note_service_spec.rb',
|
||||||
|
#'spec/controllers/registrations_controller_spec.rb',
|
||||||
|
#'spec/lib/gitlab/metrics/sampler_spec.rb',
|
||||||
|
#'spec/lib/banzai/filter/sanitization_filter_spec.rb',
|
||||||
|
#'spec/lib/gitlab/badge/build/status_spec.rb',
|
||||||
|
#'spec/lib/gitlab/database/migration_helpers_spec.rb',
|
||||||
|
#'spec/lib/gitlab/git/hook_spec.rb',
|
||||||
|
#'spec/lib/gitlab/saml/user_spec.rb',
|
||||||
|
#'spec/lib/gitlab/sherlock/line_profiler_spec.rb',
|
||||||
|
#'spec/lib/gitlab/upgrader_spec.rb',
|
||||||
|
#'spec/lib/gitlab/url_sanitizer_spec.rb',
|
||||||
|
#'spec/lib/gitlab/workhorse_spec.rb'
|
||||||
|
]
|
||||||
|
# https://gitlab.com/gitlab-org/gitlab-ce/issues/25174
|
||||||
|
end
|
1
debian/tests/todo/config
vendored
Normal file
1
debian/tests/todo/config
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
possible devise version issue https://gitlab.com/gitlab-org/gitlab-ce/issues/22291
|
1
debian/tests/todo/controllers
vendored
Normal file
1
debian/tests/todo/controllers
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
https://gitlab.com/gitlab-org/gitlab-ce/issues/22867
|
233
debian/tests/todo/helpers
vendored
Normal file
233
debian/tests/todo/helpers
vendored
Normal file
|
@ -0,0 +1,233 @@
|
||||||
|
$ DB=postgres sudo -u gitlab -E -H bundle exec rspec spec/helpers/
|
||||||
|
Error deleting useless .secret file: Permission denied @ unlink_internal - /usr/share/gitlab/.secret
|
||||||
|
DEPRECATION WARNING: Sprockets method `register_engine` is deprecated.
|
||||||
|
Please register a mime type using `register_mime_type` then
|
||||||
|
use `register_compressor` or `register_transformer`.
|
||||||
|
https://github.com/rails/sprockets/blob/master/guides/extending_sprockets.md#supporting-all-versions-of-sprockets-in-processors
|
||||||
|
(called from block (2 levels) in <class:Railtie> at /usr/lib/ruby/vendor_ruby/sass/rails/railtie.rb:57)
|
||||||
|
DEPRECATION WARNING: Sprockets method `register_engine` is deprecated.
|
||||||
|
Please register a mime type using `register_mime_type` then
|
||||||
|
use `register_compressor` or `register_transformer`.
|
||||||
|
https://github.com/rails/sprockets/blob/master/guides/extending_sprockets.md#supporting-all-versions-of-sprockets-in-processors
|
||||||
|
(called from block (2 levels) in <class:Railtie> at /usr/lib/ruby/vendor_ruby/sass/rails/railtie.rb:58)
|
||||||
|
......FF....................................................................................................F...............................................................................................................F.FF.FF.FF.......................FF.......................................................
|
||||||
|
|
||||||
|
Failures:
|
||||||
|
|
||||||
|
1) ApplicationHelper project_icon returns an url for the avatar
|
||||||
|
Failure/Error:
|
||||||
|
expect(helper.project_icon("#{project.namespace.to_param}/#{project.to_param}").to_s).
|
||||||
|
to eq "<img src=\"#{avatar_url}\" alt=\"Banana sample\" />"
|
||||||
|
|
||||||
|
expected: "<img src=\"http://localhost/uploads/project/avatar/1/banana_sample.gif\" alt=\"Banana sample\" />"
|
||||||
|
got: "<img src=\"http://nishumbha/uploads/project/avatar/1/banana_sample.gif\" alt=\"Banana sample\" />"
|
||||||
|
|
||||||
|
(compared using ==)
|
||||||
|
# ./spec/helpers/application_helper_spec.rb:61:in `block (3 levels) in <top (required)>'
|
||||||
|
|
||||||
|
2) ApplicationHelper project_icon gives uploaded icon when present
|
||||||
|
Failure/Error:
|
||||||
|
expect(helper.project_icon("#{project.namespace.to_param}/#{project.to_param}").to_s).to match(
|
||||||
|
image_tag(avatar_url))
|
||||||
|
|
||||||
|
expected "<img src=\"http://nishumbha/namespace2/gitlabhq/avatar\" alt=\"Avatar\" />" to match "<img src=\"http://localhost/namespace2/gitlabhq/avatar\" alt=\"Avatar\" />"
|
||||||
|
# ./spec/helpers/application_helper_spec.rb:71:in `block (3 levels) in <top (required)>'
|
||||||
|
|
||||||
|
3) GitlabMarkdownHelper#link_to_gfm replaces commit message with emoji to link
|
||||||
|
Failure/Error:
|
||||||
|
expect(actual).
|
||||||
|
to eq %Q(<img class="emoji" title=":book:" alt=":book:" src="http://localhost/assets/1F4D6.png" height="20" width="20" align="absmiddle"><a href="/foo">Book</a>)
|
||||||
|
|
||||||
|
expected: "<img class=\"emoji\" title=\":book:\" alt=\":book:\" src=\"http://localhost/assets/1F4D6.png\" height=\"20\" width=\"20\" align=\"absmiddle\"><a href=\"/foo\">Book</a>"
|
||||||
|
got: "<img class=\"emoji\" title=\":book:\" alt=\":book:\" src=\"http://nishumbha/assets/1F4D6-9d912a9d1bb10dc7f2645b345ed09e90461e83df0de275acb806f1f75cef1fcf.png\" height=\"20\" width=\"20\" align=\"absmiddle\"><a href=\"/foo\">Book</a>"
|
||||||
|
|
||||||
|
(compared using ==)
|
||||||
|
# ./spec/helpers/gitlab_markdown_helper_spec.rb:115:in `block (3 levels) in <top (required)>'
|
||||||
|
|
||||||
|
4) PageLayoutHelper page_image defaults to the GitLab logo
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:45:in `block (3 levels) in <top (required)>'
|
||||||
|
|
||||||
|
5) PageLayoutHelper page_image with @project assigned falls back to the default when avatar_url is nil
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:61:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
6) PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:67:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
7) PageLayoutHelper page_image with @user assigned falls back to the default when avatar_url is nil
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:61:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
8) PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:67:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
9) PageLayoutHelper page_image with @group assigned falls back to the default when avatar_url is nil
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:61:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
10) PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:67:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
11) ProjectsHelper#license_short_name when project.repository has a license_key returns the nickname of the license if present
|
||||||
|
Failure/Error: license.nickname || license.name
|
||||||
|
|
||||||
|
Licensee::InvalidLicense:
|
||||||
|
'agpl-3.0' is not a valid license key
|
||||||
|
# ./app/helpers/projects_helper.rb:116:in `license_short_name'
|
||||||
|
# ./spec/helpers/projects_helper_spec.rb:106:in `block (4 levels) in <top (required)>'
|
||||||
|
|
||||||
|
12) ProjectsHelper#license_short_name when project.repository has a license_key returns the name of the license if nickname is not present
|
||||||
|
Failure/Error: license.nickname || license.name
|
||||||
|
|
||||||
|
Licensee::InvalidLicense:
|
||||||
|
'mit' is not a valid license key
|
||||||
|
# ./app/helpers/projects_helper.rb:116:in `license_short_name'
|
||||||
|
# ./spec/helpers/projects_helper_spec.rb:112:in `block (4 levels) in <top (required)>'
|
||||||
|
|
||||||
|
Finished in 1 minute 41.2 seconds (files took 9.4 seconds to load)
|
||||||
|
310 examples, 12 failures
|
||||||
|
|
||||||
|
Failed examples:
|
||||||
|
|
||||||
|
rspec ./spec/helpers/application_helper_spec.rb:57 # ApplicationHelper project_icon returns an url for the avatar
|
||||||
|
rspec ./spec/helpers/application_helper_spec.rb:65 # ApplicationHelper project_icon gives uploaded icon when present
|
||||||
|
rspec ./spec/helpers/gitlab_markdown_helper_spec.rb:113 # GitlabMarkdownHelper#link_to_gfm replaces commit message with emoji to link
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb:44 # PageLayoutHelper page_image defaults to the GitLab logo
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:2:2] # PageLayoutHelper page_image with @project assigned falls back to the default when avatar_url is nil
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:3:1] # PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:4:2] # PageLayoutHelper page_image with @user assigned falls back to the default when avatar_url is nil
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:5:1] # PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:6:2] # PageLayoutHelper page_image with @group assigned falls back to the default when avatar_url is nil
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:7:1] # PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
rspec ./spec/helpers/projects_helper_spec.rb:103 # ProjectsHelper#license_short_name when project.repository has a license_key returns the nickname of the license if present
|
||||||
|
rspec ./spec/helpers/projects_helper_spec.rb:109 # ProjectsHelper#license_short_name when project.repository has a license_key returns the name of the license if nickname is not present
|
||||||
|
|
||||||
|
pravi@nishumbha:/usr/share/gitlab$
|
||||||
|
$ DB=postgres sudo -u gitlab -E -H bundle exec rspec spec/helpers/
|
||||||
|
Error deleting useless .secret file: Permission denied @ unlink_internal - /usr/share/gitlab/.secret
|
||||||
|
DEPRECATION WARNING: Sprockets method `register_engine` is deprecated.
|
||||||
|
Please register a mime type using `register_mime_type` then
|
||||||
|
use `register_compressor` or `register_transformer`.
|
||||||
|
https://github.com/rails/sprockets/blob/master/guides/extending_sprockets.md#supporting-all-versions-of-sprockets-in-processors
|
||||||
|
(called from block (2 levels) in <class:Railtie> at /usr/lib/ruby/vendor_ruby/sass/rails/railtie.rb:57)
|
||||||
|
DEPRECATION WARNING: Sprockets method `register_engine` is deprecated.
|
||||||
|
Please register a mime type using `register_mime_type` then
|
||||||
|
use `register_compressor` or `register_transformer`.
|
||||||
|
https://github.com/rails/sprockets/blob/master/guides/extending_sprockets.md#supporting-all-versions-of-sprockets-in-processors
|
||||||
|
(called from block (2 levels) in <class:Railtie> at /usr/lib/ruby/vendor_ruby/sass/rails/railtie.rb:58)
|
||||||
|
......FF....................................................................................................F...............................................................................................................F.FF.FF.FF.......................FF.......................................................
|
||||||
|
|
||||||
|
Failures:
|
||||||
|
|
||||||
|
1) ApplicationHelper project_icon returns an url for the avatar
|
||||||
|
Failure/Error:
|
||||||
|
expect(helper.project_icon("#{project.namespace.to_param}/#{project.to_param}").to_s).
|
||||||
|
to eq "<img src=\"#{avatar_url}\" alt=\"Banana sample\" />"
|
||||||
|
|
||||||
|
expected: "<img src=\"http://localhost/uploads/project/avatar/1/banana_sample.gif\" alt=\"Banana sample\" />"
|
||||||
|
got: "<img src=\"http://nishumbha/uploads/project/avatar/1/banana_sample.gif\" alt=\"Banana sample\" />"
|
||||||
|
|
||||||
|
(compared using ==)
|
||||||
|
# ./spec/helpers/application_helper_spec.rb:61:in `block (3 levels) in <top (required)>'
|
||||||
|
|
||||||
|
2) ApplicationHelper project_icon gives uploaded icon when present
|
||||||
|
Failure/Error:
|
||||||
|
expect(helper.project_icon("#{project.namespace.to_param}/#{project.to_param}").to_s).to match(
|
||||||
|
image_tag(avatar_url))
|
||||||
|
|
||||||
|
expected "<img src=\"http://nishumbha/namespace2/gitlabhq/avatar\" alt=\"Avatar\" />" to match "<img src=\"http://localhost/namespace2/gitlabhq/avatar\" alt=\"Avatar\" />"
|
||||||
|
# ./spec/helpers/application_helper_spec.rb:71:in `block (3 levels) in <top (required)>'
|
||||||
|
|
||||||
|
3) GitlabMarkdownHelper#link_to_gfm replaces commit message with emoji to link
|
||||||
|
Failure/Error:
|
||||||
|
expect(actual).
|
||||||
|
to eq %Q(<img class="emoji" title=":book:" alt=":book:" src="http://localhost/assets/1F4D6.png" height="20" width="20" align="absmiddle"><a href="/foo">Book</a>)
|
||||||
|
|
||||||
|
expected: "<img class=\"emoji\" title=\":book:\" alt=\":book:\" src=\"http://localhost/assets/1F4D6.png\" height=\"20\" width=\"20\" align=\"absmiddle\"><a href=\"/foo\">Book</a>"
|
||||||
|
got: "<img class=\"emoji\" title=\":book:\" alt=\":book:\" src=\"http://nishumbha/assets/1F4D6-9d912a9d1bb10dc7f2645b345ed09e90461e83df0de275acb806f1f75cef1fcf.png\" height=\"20\" width=\"20\" align=\"absmiddle\"><a href=\"/foo\">Book</a>"
|
||||||
|
|
||||||
|
(compared using ==)
|
||||||
|
# ./spec/helpers/gitlab_markdown_helper_spec.rb:115:in `block (3 levels) in <top (required)>'
|
||||||
|
|
||||||
|
4) PageLayoutHelper page_image defaults to the GitLab logo
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:45:in `block (3 levels) in <top (required)>'
|
||||||
|
|
||||||
|
5) PageLayoutHelper page_image with @project assigned falls back to the default when avatar_url is nil
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:61:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
6) PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:67:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
7) PageLayoutHelper page_image with @user assigned falls back to the default when avatar_url is nil
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:61:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
8) PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:67:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
9) PageLayoutHelper page_image with @group assigned falls back to the default when avatar_url is nil
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:61:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
10) PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
Failure/Error: expect(helper.page_image).to end_with 'assets/gitlab_logo.png'
|
||||||
|
expected "http://test.host/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" to end with "assets/gitlab_logo.png"
|
||||||
|
# ./spec/helpers/page_layout_helper_spec.rb:67:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
11) ProjectsHelper#license_short_name when project.repository has a license_key returns the nickname of the license if present
|
||||||
|
Failure/Error: license.nickname || license.name
|
||||||
|
|
||||||
|
Licensee::InvalidLicense:
|
||||||
|
'agpl-3.0' is not a valid license key
|
||||||
|
# ./app/helpers/projects_helper.rb:116:in `license_short_name'
|
||||||
|
# ./spec/helpers/projects_helper_spec.rb:106:in `block (4 levels) in <top (required)>'
|
||||||
|
|
||||||
|
12) ProjectsHelper#license_short_name when project.repository has a license_key returns the name of the license if nickname is not present
|
||||||
|
Failure/Error: license.nickname || license.name
|
||||||
|
|
||||||
|
Licensee::InvalidLicense:
|
||||||
|
'mit' is not a valid license key
|
||||||
|
# ./app/helpers/projects_helper.rb:116:in `license_short_name'
|
||||||
|
# ./spec/helpers/projects_helper_spec.rb:112:in `block (4 levels) in <top (required)>'
|
||||||
|
|
||||||
|
Finished in 1 minute 41.2 seconds (files took 9.4 seconds to load)
|
||||||
|
310 examples, 12 failures
|
||||||
|
|
||||||
|
Failed examples:
|
||||||
|
|
||||||
|
rspec ./spec/helpers/application_helper_spec.rb:57 # ApplicationHelper project_icon returns an url for the avatar
|
||||||
|
rspec ./spec/helpers/application_helper_spec.rb:65 # ApplicationHelper project_icon gives uploaded icon when present
|
||||||
|
rspec ./spec/helpers/gitlab_markdown_helper_spec.rb:113 # GitlabMarkdownHelper#link_to_gfm replaces commit message with emoji to link
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb:44 # PageLayoutHelper page_image defaults to the GitLab logo
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:2:2] # PageLayoutHelper page_image with @project assigned falls back to the default when avatar_url is nil
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:3:1] # PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:4:2] # PageLayoutHelper page_image with @user assigned falls back to the default when avatar_url is nil
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:5:1] # PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:6:2] # PageLayoutHelper page_image with @group assigned falls back to the default when avatar_url is nil
|
||||||
|
rspec ./spec/helpers/page_layout_helper_spec.rb[1:2:7:1] # PageLayoutHelper page_image with no assignments falls back to the default
|
||||||
|
rspec ./spec/helpers/projects_helper_spec.rb:103 # ProjectsHelper#license_short_name when project.repository has a license_key returns the nickname of the license if present
|
||||||
|
rspec ./spec/helpers/projects_helper_spec.rb:109 # ProjectsHelper#license_short_name when project.repository has a license_key returns the name of the license if nickname is not present
|
||||||
|
|
||||||
|
pravi@nishumbha:/usr/share/gitlab$
|
||||||
|
|
67
debian/tests/todo/initializers
vendored
Normal file
67
debian/tests/todo/initializers
vendored
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
$ DB=postgres sudo -u gitlab -E -H bundle exec rspec spec/initializers/
|
||||||
|
6_validations_spec.rb settings_spec.rb
|
||||||
|
secret_token_spec.rb trusted_proxies_spec.rb
|
||||||
|
pravi@nishumbha:/usr/share/gitlab$ DB=postgres sudo -u gitlab -E -H bundle exec rspec spec/initializers/
|
||||||
|
[sudo] password for pravi:
|
||||||
|
Error deleting useless .secret file: Permission denied @ unlink_internal - /usr/share/gitlab/.secret
|
||||||
|
DEPRECATION WARNING: Sprockets method `register_engine` is deprecated.
|
||||||
|
Please register a mime type using `register_mime_type` then
|
||||||
|
use `register_compressor` or `register_transformer`.
|
||||||
|
https://github.com/rails/sprockets/blob/master/guides/extending_sprockets.md#supporting-all-versions-of-sprockets-in-processors
|
||||||
|
(called from block (2 levels) in <class:Railtie> at /usr/lib/ruby/vendor_ruby/sass/rails/railtie.rb:57)
|
||||||
|
DEPRECATION WARNING: Sprockets method `register_engine` is deprecated.
|
||||||
|
Please register a mime type using `register_mime_type` then
|
||||||
|
use `register_compressor` or `register_transformer`.
|
||||||
|
https://github.com/rails/sprockets/blob/master/guides/extending_sprockets.md#supporting-all-versions-of-sprockets-in-processors
|
||||||
|
(called from block (2 levels) in <class:Railtie> at /usr/lib/ruby/vendor_ruby/sass/rails/railtie.rb:58)
|
||||||
|
Error deleting useless .secret file: Permission denied @ unlink_internal - /usr/share/gitlab/.secret
|
||||||
|
..............F....FF.........
|
||||||
|
|
||||||
|
Failures:
|
||||||
|
|
||||||
|
1) create_tokens setting secret_key_base and otp_key_base when the other secrets all exist when secret_key_base and otp_key_base do not exist uses the file secret
|
||||||
|
Failure/Error: expect(new_secrets['db_key_base']).to eq('db_key_base')
|
||||||
|
|
||||||
|
expected: "db_key_base"
|
||||||
|
got: nil
|
||||||
|
|
||||||
|
(compared using ==)
|
||||||
|
# ./spec/initializers/secret_token_spec.rb:136:in `block (6 levels) in <top (required)>'
|
||||||
|
# ./config/initializers/secret_token.rb:84:in `write_secrets_yml'
|
||||||
|
# ./config/initializers/secret_token.rb:31:in `create_tokens'
|
||||||
|
# ./spec/initializers/secret_token_spec.rb:139:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
2) create_tokens setting secret_key_base and otp_key_base when db_key_base is blank but exists in secrets.yml warns about the blank value existing in secrets.yml and exits
|
||||||
|
Failure/Error:
|
||||||
|
expect(self).to receive(:warn) do |warning|
|
||||||
|
expect(warning).to include('db_key_base')
|
||||||
|
expect(warning).to include('<%= an_erb_expression %>')
|
||||||
|
end
|
||||||
|
|
||||||
|
(#<RSpec::ExampleGroups::CreateTokens::SettingSecretKeyBaseAndOtpKeyBase::WhenDbKeyBaseIsBlankButExistsInSecretsYml:0x0000000ebe43b8>).warn(*(any args))
|
||||||
|
expected: 1 time with any arguments
|
||||||
|
received: 0 times with any arguments
|
||||||
|
# ./spec/initializers/secret_token_spec.rb:184:in `block (4 levels) in <top (required)>'
|
||||||
|
|
||||||
|
3) create_tokens setting secret_key_base and otp_key_base when db_key_base is blank but exists in secrets.yml does not update secrets.yml
|
||||||
|
Failure/Error: expect { create_tokens }.to raise_error(SystemExit)
|
||||||
|
|
||||||
|
expected SystemExit, got #<RSpec::Mocks::MockExpectationError: (File (class)).write("config/secrets.yml", "---\ntest:\n otp_key_base: otp_key_base\n secret_key_base: secret_key_base\n db_key_base: \"<%= an_erb_expression %>\"\nproduction:\n db_key_base: c0ee30ba71733e9d3524f8ab03e0018524bc7a67cb5fce8847b3071758c333de28cd847b2fc7f9a476ddbf92ce52c2d38015e1e91a1ae272fc08c4198035d2e4\n", {:mode=>"w", :perm=>384})
|
||||||
|
expected: 0 times with any arguments
|
||||||
|
received: 1 time with arguments: ("config/secrets.yml", "---\ntest:\n otp_key_base: otp_key_base\n secret_key_base: secret_key_base\n db_key_base: \"<%= an_erb_expression %>\"\nproduction:\n db_key_base: c0ee30ba71733e9d3524f8ab03e0018524bc7a67cb5fce8847b3071758c333de28cd847b2fc7f9a476ddbf92ce52c2d38015e1e91a1ae272fc08c4198035d2e4\n", {:mode=>"w", :perm=>384})> with backtrace:
|
||||||
|
# ./config/initializers/secret_token.rb:84:in `write_secrets_yml'
|
||||||
|
# ./config/initializers/secret_token.rb:31:in `create_tokens'
|
||||||
|
# ./spec/initializers/secret_token_spec.rb:196:in `block (5 levels) in <top (required)>'
|
||||||
|
# ./spec/initializers/secret_token_spec.rb:196:in `block (4 levels) in <top (required)>'
|
||||||
|
# ./spec/initializers/secret_token_spec.rb:196:in `block (4 levels) in <top (required)>'
|
||||||
|
|
||||||
|
Finished in 23.38 seconds (files took 8.94 seconds to load)
|
||||||
|
30 examples, 3 failures
|
||||||
|
|
||||||
|
Failed examples:
|
||||||
|
|
||||||
|
rspec ./spec/initializers/secret_token_spec.rb:130 # create_tokens setting secret_key_base and otp_key_base when the other secrets all exist when secret_key_base and otp_key_base do not exist uses the file secret
|
||||||
|
rspec ./spec/initializers/secret_token_spec.rb:183 # create_tokens setting secret_key_base and otp_key_base when db_key_base is blank but exists in secrets.yml warns about the blank value existing in secrets.yml and exits
|
||||||
|
rspec ./spec/initializers/secret_token_spec.rb:192 # create_tokens setting secret_key_base and otp_key_base when db_key_base is blank but exists in secrets.yml does not update secrets.yml
|
||||||
|
|
||||||
|
|
1
debian/tests/todo/lib/ci
vendored
Normal file
1
debian/tests/todo/lib/ci
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
spec/lib/banzai/ https://gitlab.com/gitlab-org/gitlab-ce/issues/22289
|
36
debian/tests/todo/lib/container_registry
vendored
Normal file
36
debian/tests/todo/lib/container_registry
vendored
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
$ sudo -u gitlab -E -H bundle exec rspec spec/lib/container_registry/
|
||||||
|
Error deleting useless .secret file: Permission denied @ unlink_internal - /usr/share/gitlab/.secret
|
||||||
|
DEPRECATION WARNING: Sprockets method `register_engine` is deprecated.
|
||||||
|
Please register a mime type using `register_mime_type` then
|
||||||
|
use `register_compressor` or `register_transformer`.
|
||||||
|
https://github.com/rails/sprockets/blob/master/guides/extending_sprockets.md#supporting-all-versions-of-sprockets-in-processors
|
||||||
|
(called from block (2 levels) in <class:Railtie> at /usr/lib/ruby/vendor_ruby/sass/rails/railtie.rb:57)
|
||||||
|
DEPRECATION WARNING: Sprockets method `register_engine` is deprecated.
|
||||||
|
Please register a mime type using `register_mime_type` then
|
||||||
|
use `register_compressor` or `register_transformer`.
|
||||||
|
https://github.com/rails/sprockets/blob/master/guides/extending_sprockets.md#supporting-all-versions-of-sprockets-in-processors
|
||||||
|
(called from block (2 levels) in <class:Railtie> at /usr/lib/ruby/vendor_ruby/sass/rails/railtie.rb:58)
|
||||||
|
...........F...............................
|
||||||
|
|
||||||
|
Failures:
|
||||||
|
|
||||||
|
1) ContainerRegistry::Blob#data when externally stored for invalid file should raise ArgumentError with "invalid address"
|
||||||
|
Failure/Error: it { expect{ subject }.to raise_error(ArgumentError, 'invalid address') }
|
||||||
|
|
||||||
|
expected ArgumentError with "invalid address", got #<NoMethodError: undefined method `request_uri' for #<URI::Generic file:/etc/passwd>> with backtrace:
|
||||||
|
# ./lib/container_registry/client.rb:79:in `redirect_response'
|
||||||
|
# ./lib/container_registry/client.rb:69:in `response_body'
|
||||||
|
# ./lib/container_registry/client.rb:37:in `blob'
|
||||||
|
# ./lib/container_registry/blob.rb:45:in `data'
|
||||||
|
# ./spec/lib/container_registry/blob_spec.rb:66:in `block (3 levels) in <top (required)>'
|
||||||
|
# ./spec/lib/container_registry/blob_spec.rb:107:in `block (6 levels) in <top (required)>'
|
||||||
|
# ./spec/lib/container_registry/blob_spec.rb:107:in `block (5 levels) in <top (required)>'
|
||||||
|
# ./spec/lib/container_registry/blob_spec.rb:107:in `block (5 levels) in <top (required)>'
|
||||||
|
|
||||||
|
Finished in 20.94 seconds (files took 8.65 seconds to load)
|
||||||
|
43 examples, 1 failure
|
||||||
|
|
||||||
|
Failed examples:
|
||||||
|
|
||||||
|
rspec ./spec/lib/container_registry/blob_spec.rb:107 # ContainerRegistry::Blob#data when externally stored for invalid file should raise ArgumentError with "invalid address"
|
||||||
|
|
1
debian/tests/todo/models
vendored
Normal file
1
debian/tests/todo/models
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
https://gitlab.com/gitlab-org/gitlab-ce/issues/22290
|
36
debian/unpack-components.sh
vendored
Executable file
36
debian/unpack-components.sh
vendored
Executable file
|
@ -0,0 +1,36 @@
|
||||||
|
#!/bin/bash
|
||||||
|
: <<=cut
|
||||||
|
|
||||||
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
|
Unpack MUT components.
|
||||||
|
|
||||||
|
=head1 SYNOPSIS
|
||||||
|
|
||||||
|
./debian/unpack-components.sh
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -u
|
||||||
|
|
||||||
|
DEB_SOURCE="$( dpkg-parsechangelog -SSource )"
|
||||||
|
DEB_VERSION_UPSTREAM="$( dpkg-parsechangelog -SVersion | sed -e 's/-[^-]*$//' )"
|
||||||
|
|
||||||
|
if ls ../${DEB_SOURCE}_${DEB_VERSION_UPSTREAM}.orig-*.tar.* 2>>/dev/null; then
|
||||||
|
for T in ../${DEB_SOURCE}_${DEB_VERSION_UPSTREAM}.orig-*.tar.*; do
|
||||||
|
C="${T##*.orig-}"
|
||||||
|
C="${C%%.tar*}"
|
||||||
|
mkdir -p "${C}"
|
||||||
|
tar xf ${T} -C "${C}" --strip-components=1
|
||||||
|
if [ "$(ls -m ${C})" == "${C}" ]; then
|
||||||
|
## --strip-components=1 did not work.
|
||||||
|
mv "${C}" "${C}.tmp"
|
||||||
|
mv "${C}.tmp/${C}" .
|
||||||
|
rmdir "${C}.tmp"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
else
|
||||||
|
printf "W: no components to extract.\n"
|
||||||
|
exit 0
|
||||||
|
fi
|
13
debian/upstream-config-file-check.sh
vendored
Normal file
13
debian/upstream-config-file-check.sh
vendored
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
set -e
|
||||||
|
export LC_ALL=C.UTF-8
|
||||||
|
find config | sort > debian/upstream-config-file-list.new
|
||||||
|
if ! diff -u debian/upstream-config-file-list debian/upstream-config-file-list.new
|
||||||
|
then
|
||||||
|
echo "---------------------\n"
|
||||||
|
echo "Obsolete config files are:"
|
||||||
|
echo "---------------------"
|
||||||
|
comm -13 debian/upstream-config-file-list.new debian/upstream-config-file-list
|
||||||
|
echo "---------------------\n"
|
||||||
|
echo "These should be added to debian/maintscript"
|
||||||
|
echo "---------------------"
|
||||||
|
fi
|
2810
debian/upstream-config-file-list
vendored
Normal file
2810
debian/upstream-config-file-list
vendored
Normal file
File diff suppressed because it is too large
Load diff
16
debian/upstream-file-count-check.sh
vendored
Normal file
16
debian/upstream-file-count-check.sh
vendored
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
LC_ALL=C.UTF-8 ls -1a |grep -vx .git |grep -vx .pc |grep -vx _build |grep -vx \*.rej > debian/upstream-file-list.new
|
||||||
|
if ! diff -u debian/upstream-file-list debian/upstream-file-list.new
|
||||||
|
then
|
||||||
|
echo "Upstream added or removed files"
|
||||||
|
echo "Update 'debian/gitlab.install' and/or 'debian/ignored-file-list'"
|
||||||
|
echo "\nNewly added files are:"
|
||||||
|
echo "---------------------"
|
||||||
|
comm -23 debian/upstream-file-list.new debian/upstream-file-list
|
||||||
|
echo "---------------------\n"
|
||||||
|
echo "Removed files are:"
|
||||||
|
echo "---------------------"
|
||||||
|
comm -13 debian/upstream-file-list.new debian/upstream-file-list
|
||||||
|
echo "---------------------"
|
||||||
|
echo "\nAfter updating the ignore and install files, rename 'debian/upstream-file-list.new' as 'debian/upstream-file-list'. If not using dpkg-buildpackage, generate 'debian/upstream-file-list.new' manually and then rename.\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
111
debian/upstream-file-list
vendored
Normal file
111
debian/upstream-file-list
vendored
Normal file
|
@ -0,0 +1,111 @@
|
||||||
|
.
|
||||||
|
..
|
||||||
|
.browserslistrc
|
||||||
|
.codeclimate.yml
|
||||||
|
.dockerignore
|
||||||
|
.editorconfig
|
||||||
|
.eslintignore
|
||||||
|
.eslintrc.yml
|
||||||
|
.foreman
|
||||||
|
.git-blame-ignore-revs
|
||||||
|
.gitattributes
|
||||||
|
.github
|
||||||
|
.gitignore
|
||||||
|
.gitlab
|
||||||
|
.gitlab-ci.yml
|
||||||
|
.gitleaksignore
|
||||||
|
.gitpod.yml
|
||||||
|
.haml-lint.yml
|
||||||
|
.haml-lint_todo.yml
|
||||||
|
.lefthook
|
||||||
|
.license_encryption_key.pub
|
||||||
|
.mailmap
|
||||||
|
.markdownlint.yml
|
||||||
|
.nvmrc
|
||||||
|
.prettierignore
|
||||||
|
.prettierrc
|
||||||
|
.projections.json.example
|
||||||
|
.rubocop.yml
|
||||||
|
.rubocop_revert_ignores.txt
|
||||||
|
.rubocop_todo
|
||||||
|
.rubocop_todo.yml
|
||||||
|
.ruby-version
|
||||||
|
.solargraph.yml.example
|
||||||
|
.stylelintrc
|
||||||
|
.test_license_encryption_key.pub
|
||||||
|
.theia
|
||||||
|
.vale.ini
|
||||||
|
.yamllint
|
||||||
|
CHANGELOG.md
|
||||||
|
CONTRIBUTING.md
|
||||||
|
Dangerfile
|
||||||
|
Dockerfile.assets
|
||||||
|
GITALY_SERVER_VERSION
|
||||||
|
GITLAB_ELASTICSEARCH_INDEXER_VERSION
|
||||||
|
GITLAB_KAS_VERSION
|
||||||
|
GITLAB_METRICS_EXPORTER_VERSION
|
||||||
|
GITLAB_PAGES_VERSION
|
||||||
|
GITLAB_SHELL_VERSION
|
||||||
|
GITLAB_WORKHORSE_VERSION
|
||||||
|
Gemfile
|
||||||
|
Gemfile.checksum
|
||||||
|
Gemfile.lock
|
||||||
|
Guardfile
|
||||||
|
INSTALLATION_TYPE
|
||||||
|
LICENSE
|
||||||
|
MAINTENANCE.md
|
||||||
|
PHILOSOPHY.md
|
||||||
|
PROCESS.md
|
||||||
|
Pipfile
|
||||||
|
Pipfile.lock
|
||||||
|
README.md
|
||||||
|
Rakefile
|
||||||
|
VERSION
|
||||||
|
app
|
||||||
|
babel.config.js
|
||||||
|
bin
|
||||||
|
builds
|
||||||
|
changelogs
|
||||||
|
config
|
||||||
|
config.ru
|
||||||
|
crowdin.yml
|
||||||
|
danger
|
||||||
|
data
|
||||||
|
db
|
||||||
|
debian
|
||||||
|
doc
|
||||||
|
docker-compose.yml
|
||||||
|
file_hooks
|
||||||
|
fixtures
|
||||||
|
generator_templates
|
||||||
|
glfm_specification
|
||||||
|
haml_lint
|
||||||
|
jest.config.base.js
|
||||||
|
jest.config.contract.js
|
||||||
|
jest.config.integration.js
|
||||||
|
jest.config.js
|
||||||
|
jest_resolver.js
|
||||||
|
lefthook.yml
|
||||||
|
lib
|
||||||
|
locale
|
||||||
|
log
|
||||||
|
metrics_server
|
||||||
|
package.json
|
||||||
|
patches
|
||||||
|
public
|
||||||
|
qa
|
||||||
|
rubocop
|
||||||
|
scripts
|
||||||
|
security.txt
|
||||||
|
shared
|
||||||
|
sidekiq_cluster
|
||||||
|
snowplow-javascript-tracker
|
||||||
|
spec
|
||||||
|
storybook
|
||||||
|
tests.yml
|
||||||
|
tmp
|
||||||
|
tooling
|
||||||
|
vendor
|
||||||
|
workhorse
|
||||||
|
workhorse-vendor
|
||||||
|
yarn.lock
|
12
debian/watch
vendored
Normal file
12
debian/watch
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
version=4
|
||||||
|
|
||||||
|
# uscan: repacksuffix is not compatible with the multiple upstream tarballs; use oversionmangle.
|
||||||
|
|
||||||
|
opts="uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha|b|a)\d*)$/$1~$2/,\
|
||||||
|
repack,compression=xz,oversionmangle=s{\Z}{+ds1},\
|
||||||
|
dversionmangle=s/(\d)[\+]?(debian|dfsg|ds|deb|gh)\d*(\~)*(rc)*(\d)*$/$1$3$4$5/ \
|
||||||
|
" https://gitlab.com/gitlab-org/gitlab-foss/-/tags?sort=updated_desc .*/gitlab-foss-v(\d[\d.]*)\.tar\.gz
|
||||||
|
|
||||||
|
opts="pgpmode=none,component=snowplow-javascript-tracker,\
|
||||||
|
" https://github.com/snowplow/snowplow-javascript-tracker/tags?after=2.11.0-rc3 \
|
||||||
|
.*/archive/.*/v?(2\.10\.0)@ARCHIVE_EXT@$ ignore
|
Loading…
Add table
Reference in a new issue