Compare commits
628 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f68fcb907a | ||
|
|
a8a3f59c74 | ||
|
|
f91f590403 | ||
|
|
cd18fefa4a | ||
|
|
7a1448c3c9 | ||
|
|
2349764deb | ||
|
|
772777582a | ||
|
|
f48d0ab958 | ||
|
|
9f2ca7c19d | ||
|
|
84eacd27cf | ||
|
|
3b7c616418 | ||
|
|
d51461b1ef | ||
|
|
fb643bfbdf | ||
|
|
7c9fcfd196 | ||
|
|
fa4e8c6ae6 | ||
|
|
91f5199c29 | ||
|
|
b315c7d9c0 | ||
|
|
b648f54e0e | ||
|
|
dbb9e29d1c | ||
|
|
9afb922d3e | ||
|
|
dbc67cb6a9 | ||
|
|
a7fb9cd742 | ||
|
|
65f1ee7b52 | ||
|
|
6684494379 | ||
|
|
255af1d6d8 | ||
|
|
889ad4247a | ||
|
|
2947a454fb | ||
|
|
fdc5eac10e | ||
|
|
0f6781a492 | ||
|
|
77bdb66aac | ||
|
|
a2cd087623 | ||
|
|
00d250e424 | ||
|
|
83436b63f8 | ||
|
|
73246eff10 | ||
|
|
da8aac101d | ||
|
|
0e356340c8 | ||
|
|
bf7aa9c599 | ||
|
|
649d709292 | ||
|
|
1d5b7e4f6f | ||
|
|
9a1af038ea | ||
|
|
5a56b92114 | ||
|
|
4b64172c34 | ||
|
|
3d8e1846f6 | ||
|
|
c67306364f | ||
|
|
a4ab1192e8 | ||
|
|
3001e7e5a7 | ||
|
|
be6249d9b8 | ||
|
|
ebdec8b21f | ||
|
|
90b1c95300 | ||
|
|
938cd8fad3 | ||
|
|
80c3f4549f | ||
|
|
72d2da1f2e | ||
|
|
4729ac43ab | ||
|
|
2424bd15b9 | ||
|
|
f642df792f | ||
|
|
5fa7391822 | ||
|
|
bb21505ff6 | ||
|
|
aafa7993f3 | ||
|
|
6e1189cead | ||
|
|
acd3cecea5 | ||
|
|
7dca30a0e5 | ||
|
|
d7e2cf7ada | ||
|
|
e36253f5df | ||
|
|
f5caf0756c | ||
|
|
0531f331ab | ||
|
|
efe94c9d25 | ||
|
|
676f7581f6 | ||
|
|
c1a6290eda | ||
|
|
0faeb8a103 | ||
|
|
fef982e0b6 | ||
|
|
e88b0231b5 | ||
|
|
df94cf8318 | ||
|
|
dbe04281d1 | ||
|
|
03ad30b779 | ||
|
|
1550173241 | ||
|
|
34edc95cd6 | ||
|
|
9c3f44712c | ||
|
|
7bd9ca3fdd | ||
|
|
bcfef1ae07 | ||
|
|
c4ce1ab0a9 | ||
|
|
de6a1c021b | ||
|
|
c55ef639a1 | ||
|
|
45a602b144 | ||
|
|
c8dfc89b07 | ||
|
|
6a11ba4a05 | ||
|
|
451cd050f8 | ||
|
|
a232e315d9 | ||
|
|
b87b1aae8c | ||
|
|
3e6da8ed4e | ||
|
|
304b82d451 | ||
|
|
4618187298 | ||
|
|
891add3ab5 | ||
|
|
67eeeeb81b | ||
|
|
272457a2aa | ||
|
|
6785b02ec5 | ||
|
|
e4bd82f6e2 | ||
|
|
5dbf1035cf | ||
|
|
a57c4789d8 | ||
|
|
f9fb492e5d | ||
|
|
f9af6fe1ef | ||
|
|
96208c0797 | ||
|
|
4a0d3e6e79 | ||
|
|
316586442b | ||
|
|
f45708f8b7 | ||
|
|
145c5a32c0 | ||
|
|
7d3fa73deb | ||
|
|
a18e7d46e7 | ||
|
|
0ff42b6f99 | ||
|
|
51a76e1b04 | ||
|
|
7274c1d33d | ||
|
|
f05f59fb7d | ||
|
|
a6727d7244 | ||
|
|
c29ffc9b2a | ||
|
|
23da71b572 | ||
|
|
86bf13a93f | ||
|
|
8cdb9abd1c | ||
|
|
26c30c3152 | ||
|
|
0f2fab4980 | ||
|
|
448707e85d | ||
|
|
e1ef371da2 | ||
|
|
a3836c5eb6 | ||
|
|
f2c1a7e848 | ||
|
|
6a5778f9d9 | ||
|
|
935fbb7cf2 | ||
|
|
34bebbba1b | ||
|
|
d08186e4dd | ||
|
|
fb1f37cd6e | ||
|
|
a1d0da61af | ||
|
|
ba74e9d3c8 | ||
|
|
c4bf126e05 | ||
|
|
fc723c2d17 | ||
|
|
0e3ca47042 | ||
|
|
2288805024 | ||
|
|
890c151dc3 | ||
|
|
dee6c2445e | ||
|
|
1bb0c7db78 | ||
|
|
1a6ac6ccbc | ||
|
|
506833a7e0 | ||
|
|
0ca2478e7c | ||
|
|
bdc2b90430 | ||
|
|
f2f21fb5b2 | ||
|
|
79c4bab333 | ||
|
|
906c3a1d3c | ||
|
|
c8b6c00192 | ||
|
|
ed87190451 | ||
|
|
cf93ee198e | ||
|
|
4432eaed35 | ||
|
|
1a168ab7ec | ||
|
|
c2173ecb72 | ||
|
|
c678872b60 | ||
|
|
2437c388d7 | ||
|
|
6d8d9adb33 | ||
|
|
303654c839 | ||
|
|
c3e6faf52e | ||
|
|
6a0e00ed53 | ||
|
|
292e3507db | ||
|
|
a750f4ce49 | ||
|
|
5a0e5e823d | ||
|
|
768dd2b4a3 | ||
|
|
9ca78c3edc | ||
|
|
a243467ef4 | ||
|
|
65d7fbca67 | ||
|
|
eaa884fd47 | ||
|
|
89b931bb53 | ||
|
|
3aaf5ba8d2 | ||
|
|
876a2fee89 | ||
|
|
d22ed403a7 | ||
|
|
19e7da4db7 | ||
|
|
336aaebfdc | ||
|
|
fd9c06210f | ||
|
|
372b28c900 | ||
|
|
6f9d84ad48 | ||
|
|
e9d0c96fc6 | ||
|
|
ccfd748890 | ||
|
|
6e041986fc | ||
|
|
70d60dc3e2 | ||
|
|
cfdb5368c8 | ||
|
|
7244279d41 | ||
|
|
5aa9687b3d | ||
|
|
1ba53d2138 | ||
|
|
a615211913 | ||
|
|
8c9d9bc378 | ||
|
|
add2dc1a16 | ||
|
|
05ce4ca3f4 | ||
|
|
7e25ff758c | ||
|
|
4e1457c56c | ||
|
|
b83d523120 | ||
|
|
59571dc22f | ||
|
|
1a464da6b6 | ||
|
|
585eff8bfe | ||
|
|
3d524a8b8e | ||
|
|
d7feb03fe0 | ||
|
|
6205398554 | ||
|
|
4fdd85cdfc | ||
|
|
a85db8992b | ||
|
|
8f8b7472e7 | ||
|
|
ad52c66ee3 | ||
|
|
a0709fb934 | ||
|
|
5dd97d77da | ||
|
|
8e87861afc | ||
|
|
602cac062a | ||
|
|
4264b155ab | ||
|
|
718f7d88f1 | ||
|
|
f21c146e6d | ||
|
|
abf8b85a2e | ||
|
|
ace2da2281 | ||
|
|
42452c0844 | ||
|
|
f1b83b30c3 | ||
|
|
55349e957b | ||
|
|
a009d13255 | ||
|
|
302b2c71de | ||
|
|
1d3d420817 | ||
|
|
48764c4b73 | ||
|
|
f75628c11d | ||
|
|
ef6609af5e | ||
|
|
aba7498135 | ||
|
|
6a54b31d32 | ||
|
|
1205c1e780 | ||
|
|
fbff883dc5 | ||
|
|
89e0aa2058 | ||
|
|
a9346a61a4 | ||
|
|
74289b4d80 | ||
|
|
323c37e033 | ||
|
|
0623b5d157 | ||
|
|
8d83c64d9b | ||
|
|
ea0906225e | ||
|
|
c60ffbd897 | ||
|
|
dbe3a19230 | ||
|
|
aa98e84613 | ||
|
|
3907a38ad7 | ||
|
|
34313b7551 | ||
|
|
67e9be9a3c | ||
|
|
79977d0da0 | ||
|
|
ae87346cd1 | ||
|
|
5562bf87ac | ||
|
|
fe15b1b31b | ||
|
|
db58a8d8f3 | ||
|
|
6b6f117cfa | ||
|
|
1f8f96d60e | ||
|
|
f905c4c805 | ||
|
|
da5025f63e | ||
|
|
d8e617c147 | ||
|
|
8e63a667a3 | ||
|
|
14fb8590f0 | ||
|
|
313645bf9a | ||
|
|
29252cafe4 | ||
|
|
6af55147b8 | ||
|
|
f57720a41b | ||
|
|
f421f9d3f7 | ||
|
|
4f408986a3 | ||
|
|
192b302982 | ||
|
|
6772e5f8e3 | ||
|
|
5b3d67739a | ||
|
|
61e67344a8 | ||
|
|
3740d7d0f7 | ||
|
|
656abb1240 | ||
|
|
880a7fe854 | ||
|
|
655334a87a | ||
|
|
f5d85cec11 | ||
|
|
1bf8255ff6 | ||
|
|
cb047b081d | ||
|
|
8f5af7b23a | ||
|
|
8c0dab4583 | ||
|
|
4c5cff1690 | ||
|
|
0d5c2bd438 | ||
|
|
3d64bea944 | ||
|
|
6a88ab9bb1 | ||
|
|
7c58e0fec3 | ||
|
|
e8a4152361 | ||
|
|
30bcbedb80 | ||
|
|
95662f863b | ||
|
|
265fe883ee | ||
|
|
9d5b460af8 | ||
|
|
eb0d28c1e2 | ||
|
|
13928426cb | ||
|
|
432ff9a00c | ||
|
|
51af0bf7dd | ||
|
|
df160e3120 | ||
|
|
d057e98551 | ||
|
|
6bbd9dfca4 | ||
|
|
c0e1931e83 | ||
|
|
59d887b362 | ||
|
|
7fb847939f | ||
|
|
8847496eb2 | ||
|
|
a2fefe3e0d | ||
|
|
5978d17ff0 | ||
|
|
d5334c3c06 | ||
|
|
7ad9be13de | ||
|
|
00df76af8f | ||
|
|
dd7390a38b | ||
|
|
fa7b4561b4 | ||
|
|
d552d69fca | ||
|
|
c9d1eec588 | ||
|
|
6c20c06b4f | ||
|
|
7bc57c82fb | ||
|
|
5c9651a598 | ||
|
|
5a865a76ab | ||
|
|
2df1c7d8b4 | ||
|
|
94a506ca40 | ||
|
|
58beb33d4f | ||
|
|
235ca6cdbb | ||
|
|
fbdf9fef0f | ||
|
|
0c0edd618f | ||
|
|
de21cd787f | ||
|
|
db42af861e | ||
|
|
4ddcd64367 | ||
|
|
80dac2f234 | ||
|
|
6ffa0359b0 | ||
|
|
f42b7b8199 | ||
|
|
4b562eed7e | ||
|
|
5cc61efe19 | ||
|
|
74520dd882 | ||
|
|
857a8ace8a | ||
|
|
8f93da0293 | ||
|
|
9818d4c0e9 | ||
|
|
207a7b7255 | ||
|
|
f3e59ac1cd | ||
|
|
221be1eb06 | ||
|
|
2488460230 | ||
|
|
8a332790cd | ||
|
|
45a06ef13f | ||
|
|
127e02a004 | ||
|
|
7fff297724 | ||
|
|
b3be34ed13 | ||
|
|
c7a8f655cd | ||
|
|
a1f0c76ca7 | ||
|
|
b5c6d94696 | ||
|
|
db246ebed1 | ||
|
|
4eaf1f81c1 | ||
|
|
c1c59ab096 | ||
|
|
0d41fdf527 | ||
|
|
6052f0d737 | ||
|
|
5ba64c1f71 | ||
|
|
889cddf1b3 | ||
|
|
06326bcc84 | ||
|
|
5d13bc96ee | ||
|
|
a3418ea8d8 | ||
|
|
64bd57c571 | ||
|
|
5604928d1b | ||
|
|
488672f765 | ||
|
|
1d23239ec3 | ||
|
|
bc29ac19a0 | ||
|
|
e4c4c960f1 | ||
|
|
a8bd9977ba | ||
|
|
d0cd152fb8 | ||
|
|
8cfc9b264c | ||
|
|
e96caad9e3 | ||
|
|
b6bbff680f | ||
|
|
3dd6d3c8d9 | ||
|
|
8ccf2db4fa | ||
|
|
24f72e9ca4 | ||
|
|
8fba15fc1b | ||
|
|
10cd25169e | ||
|
|
5d677168bc | ||
|
|
809fe36227 | ||
|
|
8ad770055b | ||
|
|
fd328befc6 | ||
|
|
fbe5780c4e | ||
|
|
8aedccf83c | ||
|
|
aca89485df | ||
|
|
3b556cb154 | ||
|
|
6ed06afb70 | ||
|
|
bbf442c94c | ||
|
|
87a777bf5d | ||
|
|
1ef5e5e70a | ||
|
|
0995b5984b | ||
|
|
768ad7a2e7 | ||
|
|
983efba3dd | ||
|
|
b8a9bf8a13 | ||
|
|
aadb42cc9c | ||
|
|
89decd0d67 | ||
|
|
e81786f258 | ||
|
|
b1f0cfc91b | ||
|
|
1ed197bb77 | ||
|
|
c3918dd1ce | ||
|
|
bc1f0bb53b | ||
|
|
54ec97d003 | ||
|
|
48ac071fe0 | ||
|
|
d2fa5ad7ea | ||
|
|
08dc6a027f | ||
|
|
4c9f3adc5f | ||
|
|
f6f6962ad4 | ||
|
|
afe238a8b9 | ||
|
|
99ee394158 | ||
|
|
be74b12e5b | ||
|
|
9dc8e13145 | ||
|
|
81673d5778 | ||
|
|
ee151ff3d6 | ||
|
|
02b8acffc4 | ||
|
|
080c987e58 | ||
|
|
5302041474 | ||
|
|
35f30a2452 | ||
|
|
a1d94425d0 | ||
|
|
c406312ec3 | ||
|
|
638e43825c | ||
|
|
7946438b90 | ||
|
|
0d09debdd0 | ||
|
|
00e98088c3 | ||
|
|
480254848f | ||
|
|
9fdab652fa | ||
|
|
8c9df535dd | ||
|
|
85653331c7 | ||
|
|
7e9a2cb952 | ||
|
|
6feda9458b | ||
|
|
3d10330fa3 | ||
|
|
52c6ff124a | ||
|
|
499c17b2f4 | ||
|
|
028043df55 | ||
|
|
cafd01a8f0 | ||
|
|
c8e6c51cb5 | ||
|
|
315cd47a4c | ||
|
|
bf50e539e7 | ||
|
|
97c36bf46e | ||
|
|
8c3a5f67bd | ||
|
|
d99bd4e9eb | ||
|
|
912982d6f0 | ||
|
|
3eab2b01b8 | ||
|
|
0386e8f8f6 | ||
|
|
63451d725a | ||
|
|
d354b188f7 | ||
|
|
c949341dcf | ||
|
|
ed884660e0 | ||
|
|
4d95c2ad1e | ||
|
|
d7b7cbff34 | ||
|
|
7626934484 | ||
|
|
98317d1e74 | ||
|
|
8f70d69605 | ||
|
|
e8af1225cd | ||
|
|
508dd6abfe | ||
|
|
d643395999 | ||
|
|
8734c24604 | ||
|
|
8ad1637066 | ||
|
|
2997c33006 | ||
|
|
945ad0f422 | ||
|
|
24f85e110c | ||
|
|
b1105d89ea | ||
|
|
34bf4bde8e | ||
|
|
19dedc2d1d | ||
|
|
26f92e815d | ||
|
|
32f6e4e750 | ||
|
|
65f8287e5a | ||
|
|
37d523f4fb | ||
|
|
78fa8bf11e | ||
|
|
a0a76a1e5e | ||
|
|
e74f47016d | ||
|
|
d654cb418b | ||
|
|
8020b0fc6d | ||
|
|
5c06d56aef | ||
|
|
4e6a2940e4 | ||
|
|
87ac4f57a2 | ||
|
|
a362d1b248 | ||
|
|
03a46f6024 | ||
|
|
a0ddc0459e | ||
|
|
312550e2f1 | ||
|
|
7479329761 | ||
|
|
493ab71d08 | ||
|
|
83b323341e | ||
|
|
937facd3be | ||
|
|
e6663754d6 | ||
|
|
fad0a5630e | ||
|
|
c553470b40 | ||
|
|
d740e32c29 | ||
|
|
33e125f977 | ||
|
|
2ab3de72f2 | ||
|
|
1d18fa1704 | ||
|
|
16202377fc | ||
|
|
7d78864f83 | ||
|
|
d12c1d2100 | ||
|
|
4887b8e1db | ||
|
|
720e7b38ec | ||
|
|
e86dc3a0a0 | ||
|
|
ade7b62c19 | ||
|
|
019f1a7320 | ||
|
|
d687f9e562 | ||
|
|
7e782af3c2 | ||
|
|
848c538299 | ||
|
|
b913678b8a | ||
|
|
6020f60383 | ||
|
|
073fada067 | ||
|
|
ff5e87fc27 | ||
|
|
78f67b5feb | ||
|
|
d0c2bfb2f5 | ||
|
|
63b280caeb | ||
|
|
aac07e66fd | ||
|
|
b4e43503bf | ||
|
|
54afd51b3a | ||
|
|
174f5ecd05 | ||
|
|
b536ae8b77 | ||
|
|
eb4b1a7afb | ||
|
|
02cdce62d9 | ||
|
|
3966ecab49 | ||
|
|
7dadc47c1b | ||
|
|
4f892a94ef | ||
|
|
5208bfc382 | ||
|
|
018e9ecc9c | ||
|
|
f57d92ec80 | ||
|
|
3e6fc1eca6 | ||
|
|
172da7e976 | ||
|
|
f9ef4cc92c | ||
|
|
b44f442f48 | ||
|
|
9a4153767f | ||
|
|
24bc08147b | ||
|
|
8f00ed3d74 | ||
|
|
a129b72394 | ||
|
|
84e6de3bf7 | ||
|
|
830fe68596 | ||
|
|
319c9261ea | ||
|
|
5e03e46680 | ||
|
|
e2294a6724 | ||
|
|
bd12a788e3 | ||
|
|
f8e33c583d | ||
|
|
9e818f7af3 | ||
|
|
dcbf725b9c | ||
|
|
b5d56655d7 | ||
|
|
b54e46ea05 | ||
|
|
949a0a703a | ||
|
|
e74aca7d00 | ||
|
|
2346cd064d | ||
|
|
9c8ba13643 | ||
|
|
85c219b710 | ||
|
|
9b0a9c1f74 | ||
|
|
7b1df8e079 | ||
|
|
e18178c1f9 | ||
|
|
7a4a3911f5 | ||
|
|
1b15e4578a | ||
|
|
f4ed696a46 | ||
|
|
1a59c34c1b | ||
|
|
1565a63bbc | ||
|
|
383ae98f1b | ||
|
|
3daf2bde40 | ||
|
|
88f9c73fd6 | ||
|
|
6dfe39f1b5 | ||
|
|
4642dacf8a | ||
|
|
268d8b5598 | ||
|
|
bb6c75974b | ||
|
|
afa4e74ddc | ||
|
|
706cfa6f90 | ||
|
|
b960dd7c4c | ||
|
|
67555c4fc0 | ||
|
|
fd22f8d537 | ||
|
|
50294038fe | ||
|
|
49eb1d1fbf | ||
|
|
e293157f49 | ||
|
|
0214fa56b1 | ||
|
|
69a3ca264d | ||
|
|
8f798aec36 | ||
|
|
dc2bd94fca | ||
|
|
808cac50a5 | ||
|
|
090f04b9ee | ||
|
|
2b54b3f575 | ||
|
|
a87b81dbdb | ||
|
|
e1c8742e99 | ||
|
|
99ba80f8da | ||
|
|
20345453a1 | ||
|
|
baedb6b79a | ||
|
|
811ab2c7a6 | ||
|
|
62a786dc94 | ||
|
|
53376e0f7f | ||
|
|
7b17d75488 | ||
|
|
ab9d07e517 | ||
|
|
9055354a5e | ||
|
|
47d0798248 | ||
|
|
b246afed00 | ||
|
|
e76616e44d | ||
|
|
4e4b365e0a | ||
|
|
6643c43bd6 | ||
|
|
ccf5338fb9 | ||
|
|
de18e13d33 | ||
|
|
0907419f5c | ||
|
|
249dbba996 | ||
|
|
cb653588ab | ||
|
|
b28d0d72b3 | ||
|
|
7e160bf3b7 | ||
|
|
2df7dd62bb | ||
|
|
8f9d6e8ab6 | ||
|
|
0b93eabfbb | ||
|
|
358da3d8ee | ||
|
|
2744851088 | ||
|
|
c3b9667eea | ||
|
|
bd028cc7ad | ||
|
|
c03f0c98d1 | ||
|
|
3b426d01bb | ||
|
|
ba6e505d18 | ||
|
|
ada75b1ce9 | ||
|
|
7fd70a9f6b | ||
|
|
85a1523143 | ||
|
|
cb51e5ac54 | ||
|
|
ca605c6942 | ||
|
|
400e1774a7 | ||
|
|
16fb2a71f9 | ||
|
|
bab8bd3f5a | ||
|
|
d93bdc3da7 | ||
|
|
1f478d0587 | ||
|
|
b2b159adc4 | ||
|
|
7529e811ee | ||
|
|
1211f9a85e | ||
|
|
d8b2da2c2e | ||
|
|
60e8db53ed | ||
|
|
cd68ff6c6d | ||
|
|
a8e81d22be | ||
|
|
88d51f8136 | ||
|
|
fedcc80947 | ||
|
|
fb7d6976dd | ||
|
|
740fd0e911 | ||
|
|
f0f40dffed | ||
|
|
5eb37c1bba | ||
|
|
ae168253d6 | ||
|
|
49d28e4206 | ||
|
|
9b6f4d6e14 | ||
|
|
8a5286b648 | ||
|
|
6113b65401 | ||
|
|
7d6e61dd70 | ||
|
|
ce6aba8c6f | ||
|
|
80b9aba49a | ||
|
|
28f4b2b6d6 | ||
|
|
133aa83b2e | ||
|
|
e009486509 | ||
|
|
5660706d6c | ||
|
|
4a1d98fb71 | ||
|
|
68bc5990bf | ||
|
|
20a46206f2 | ||
|
|
d1847b4c81 | ||
|
|
933ee30973 | ||
|
|
d8b1fa0a09 | ||
|
|
87bb6d5e6e | ||
|
|
0895c91987 | ||
|
|
adddcd6841 | ||
|
|
33a3a39871 |
9
.github/styles/Google/AMPM.yml
vendored
@ -1,9 +0,0 @@
|
||||
extends: existence
|
||||
message: "Use 'AM' or 'PM' (preceded by a space)."
|
||||
link: 'https://developers.google.com/style/word-list'
|
||||
level: error
|
||||
nonword: true
|
||||
tokens:
|
||||
- '\d{1,2}[AP]M'
|
||||
- '\d{1,2} ?[ap]m'
|
||||
- '\d{1,2} ?[aApP]\.[mM]\.'
|
||||
64
.github/styles/Google/Acronyms.yml
vendored
@ -1,64 +0,0 @@
|
||||
extends: conditional
|
||||
message: "Spell out '%s', if it's unfamiliar to the audience."
|
||||
link: 'https://developers.google.com/style/abbreviations'
|
||||
level: suggestion
|
||||
ignorecase: false
|
||||
# Ensures that the existence of 'first' implies the existence of 'second'.
|
||||
first: '\b([A-Z]{3,5})\b'
|
||||
second: '(?:\b[A-Z][a-z]+ )+\(([A-Z]{3,5})\)'
|
||||
# ... with the exception of these:
|
||||
exceptions:
|
||||
- API
|
||||
- ASP
|
||||
- CLI
|
||||
- CPU
|
||||
- CSS
|
||||
- CSV
|
||||
- DEBUG
|
||||
- DOM
|
||||
- DPI
|
||||
- FAQ
|
||||
- GCC
|
||||
- GDB
|
||||
- GET
|
||||
- GPU
|
||||
- GTK
|
||||
- GUI
|
||||
- HTML
|
||||
- HTTP
|
||||
- HTTPS
|
||||
- IDE
|
||||
- JAR
|
||||
- JSON
|
||||
- JSX
|
||||
- LESS
|
||||
- LLDB
|
||||
- NET
|
||||
- NOTE
|
||||
- NVDA
|
||||
- OSS
|
||||
- PATH
|
||||
- PDF
|
||||
- PHP
|
||||
- POST
|
||||
- RAM
|
||||
- REPL
|
||||
- RSA
|
||||
- SCM
|
||||
- SCSS
|
||||
- SDK
|
||||
- SQL
|
||||
- SSH
|
||||
- SSL
|
||||
- SVG
|
||||
- TBD
|
||||
- TCP
|
||||
- TODO
|
||||
- URI
|
||||
- URL
|
||||
- USB
|
||||
- UTF
|
||||
- XML
|
||||
- XSS
|
||||
- YAML
|
||||
- ZIP
|
||||
7
.github/styles/Google/Colons.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "'%s' should be in lowercase."
|
||||
link: 'https://developers.google.com/style/colons'
|
||||
nonword: true
|
||||
level: warning
|
||||
tokens:
|
||||
- ':\s[A-Z]'
|
||||
28
.github/styles/Google/Contractions.yml
vendored
@ -1,28 +0,0 @@
|
||||
extends: substitution
|
||||
message: "Feel free to use '%s' instead of '%s'."
|
||||
link: 'https://developers.google.com/style/contractions'
|
||||
level: suggestion
|
||||
ignorecase: true
|
||||
swap:
|
||||
are not: aren't
|
||||
cannot: can't
|
||||
could not: couldn't
|
||||
did not: didn't
|
||||
do not: don't
|
||||
does not: doesn't
|
||||
has not: hasn't
|
||||
have not: haven't
|
||||
how is: how's
|
||||
is not: isn't
|
||||
it is: it's
|
||||
should not: shouldn't
|
||||
that is: that's
|
||||
they are: they're
|
||||
was not: wasn't
|
||||
we are: we're
|
||||
we have: we've
|
||||
were not: weren't
|
||||
what is: what's
|
||||
when is: when's
|
||||
where is: where's
|
||||
will not: won't
|
||||
9
.github/styles/Google/DateFormat.yml
vendored
@ -1,9 +0,0 @@
|
||||
extends: existence
|
||||
message: "Use 'July 31, 2016' format, not '%s'."
|
||||
link: 'https://developers.google.com/style/dates-times'
|
||||
ignorecase: true
|
||||
level: error
|
||||
nonword: true
|
||||
tokens:
|
||||
- '\d{1,2}(?:\.|/)\d{1,2}(?:\.|/)\d{4}'
|
||||
- '\d{1,2} (?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)|May|Jun(?:e)|Jul(?:y)|Aug(?:ust)|Sep(?:tember)?|Oct(?:ober)|Nov(?:ember)?|Dec(?:ember)?) \d{4}'
|
||||
7
.github/styles/Google/Ellipses.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "In general, don't use an ellipsis."
|
||||
link: 'https://developers.google.com/style/ellipses'
|
||||
nonword: true
|
||||
level: warning
|
||||
tokens:
|
||||
- '\.\.\.'
|
||||
8
.github/styles/Google/EmDash.yml
vendored
@ -1,8 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't put a space before or after an em dash."
|
||||
link: 'https://developers.google.com/style/dashes'
|
||||
nonword: true
|
||||
level: error
|
||||
tokens:
|
||||
- '\s—'
|
||||
- '—\s'
|
||||
7
.github/styles/Google/EnDash.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Use an em dash ('—') instead of '–'."
|
||||
link: 'https://developers.google.com/style/dashes'
|
||||
nonword: true
|
||||
level: error
|
||||
tokens:
|
||||
- '–'
|
||||
7
.github/styles/Google/Exclamation.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't use exclamation points in text."
|
||||
link: 'https://developers.google.com/style/exclamation-points'
|
||||
nonword: true
|
||||
level: error
|
||||
tokens:
|
||||
- '!'
|
||||
11
.github/styles/Google/FirstPerson.yml
vendored
@ -1,11 +0,0 @@
|
||||
extends: existence
|
||||
message: "Avoid first-person pronouns such as '%s'."
|
||||
link: 'https://developers.google.com/style/pronouns#personal-pronouns'
|
||||
ignorecase: true
|
||||
level: warning
|
||||
nonword: true
|
||||
tokens:
|
||||
- (?:^|\s)I\s
|
||||
- \bme\b
|
||||
- \bus\b
|
||||
- \bours\b
|
||||
9
.github/styles/Google/Gender.yml
vendored
@ -1,9 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't use '%s' as a gender-neutral pronoun."
|
||||
link: 'https://developers.google.com/style/pronouns#gender-neutral-pronouns'
|
||||
level: error
|
||||
ignorecase: true
|
||||
tokens:
|
||||
- he/she
|
||||
- s/he
|
||||
- \(s\)he
|
||||
45
.github/styles/Google/GenderBias.yml
vendored
@ -1,45 +0,0 @@
|
||||
extends: substitution
|
||||
message: "Consider using '%s' instead of '%s'."
|
||||
link: 'https://developers.google.com/style/inclusive-documentation'
|
||||
ignorecase: true
|
||||
level: error
|
||||
swap:
|
||||
(?:alumna|alumnus): graduate
|
||||
(?:alumnae|alumni): graduates
|
||||
air(?:m[ae]n|wom[ae]n): pilot(s)
|
||||
anchor(?:m[ae]n|wom[ae]n): anchor(s)
|
||||
authoress: author
|
||||
camera(?:m[ae]n|wom[ae]n): camera operator(s)
|
||||
chair(?:m[ae]n|wom[ae]n): chair(s)
|
||||
congress(?:m[ae]n|wom[ae]n): member(s) of congress
|
||||
door(?:m[ae]|wom[ae]n): concierge(s)
|
||||
draft(?:m[ae]n|wom[ae]n): drafter(s)
|
||||
fire(?:m[ae]n|wom[ae]n): firefighter(s)
|
||||
fisher(?:m[ae]n|wom[ae]n): fisher(s)
|
||||
fresh(?:m[ae]n|wom[ae]n): first-year student(s)
|
||||
garbage(?:m[ae]n|wom[ae]n): waste collector(s)
|
||||
lady lawyer: lawyer
|
||||
ladylike: courteous
|
||||
landlord: building manager
|
||||
mail(?:m[ae]n|wom[ae]n): mail carriers
|
||||
man and wife: husband and wife
|
||||
man enough: strong enough
|
||||
mankind: human kind
|
||||
manmade: manufactured
|
||||
manpower: personnel
|
||||
men and girls: men and women
|
||||
middle(?:m[ae]n|wom[ae]n): intermediary
|
||||
news(?:m[ae]n|wom[ae]n): journalist(s)
|
||||
ombuds(?:man|woman): ombuds
|
||||
oneupmanship: upstaging
|
||||
poetess: poet
|
||||
police(?:m[ae]n|wom[ae]n): police officer(s)
|
||||
repair(?:m[ae]n|wom[ae]n): technician(s)
|
||||
sales(?:m[ae]n|wom[ae]n): salesperson or sales people
|
||||
service(?:m[ae]n|wom[ae]n): soldier(s)
|
||||
steward(?:ess)?: flight attendant
|
||||
tribes(?:m[ae]n|wom[ae]n): tribe member(s)
|
||||
waitress: waiter
|
||||
woman doctor: doctor
|
||||
woman scientist[s]?: scientist(s)
|
||||
work(?:m[ae]n|wom[ae]n): worker(s)
|
||||
8
.github/styles/Google/HeadingPunctuation.yml
vendored
@ -1,8 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't put a period at the end of a heading."
|
||||
link: 'https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings'
|
||||
nonword: true
|
||||
level: warning
|
||||
scope: heading
|
||||
tokens:
|
||||
- '[a-z0-9][.](?:\s|$)'
|
||||
26
.github/styles/Google/Headings.yml
vendored
@ -1,26 +0,0 @@
|
||||
extends: capitalization
|
||||
message: "'%s' should use sentence-style capitalization."
|
||||
link: 'https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings'
|
||||
level: warning
|
||||
scope: heading
|
||||
match: $sentence
|
||||
exceptions:
|
||||
- Azure
|
||||
- CLI
|
||||
- Code
|
||||
- Cosmos
|
||||
- Docker
|
||||
- Emmet
|
||||
- I
|
||||
- Kubernetes
|
||||
- Linux
|
||||
- macOS
|
||||
- Marketplace
|
||||
- MongoDB
|
||||
- REPL
|
||||
- Studio
|
||||
- TypeScript
|
||||
- URLs
|
||||
- Visual
|
||||
- VS
|
||||
- Windows
|
||||
8
.github/styles/Google/Hyphens.yml
vendored
@ -1,8 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't place a space on either side of a hyphen (unless it's suspended)."
|
||||
link: 'https://developers.google.com/style/hyphens'
|
||||
level: warning
|
||||
nonword: true
|
||||
tokens:
|
||||
- '\s-'
|
||||
- '-\s'
|
||||
9
.github/styles/Google/Latin.yml
vendored
@ -1,9 +0,0 @@
|
||||
extends: substitution
|
||||
message: "Use '%s' instead of '%s'."
|
||||
link: 'https://developers.google.com/style/abbreviations'
|
||||
ignorecase: true
|
||||
level: error
|
||||
nonword: true
|
||||
swap:
|
||||
'\b(?:eg|e\.g\.)[\s,]': for example
|
||||
'\b(?:ie|i\.e\.)[\s,]': that is
|
||||
8
.github/styles/Google/LyHyphens.yml
vendored
@ -1,8 +0,0 @@
|
||||
extends: existence
|
||||
message: "'%s' doesn't need a hyphen."
|
||||
link: 'https://developers.google.com/style/hyphens'
|
||||
level: error
|
||||
ignorecase: false
|
||||
nonword: true
|
||||
tokens:
|
||||
- '\s[^\s-]+ly-'
|
||||
7
.github/styles/Google/OptionalPlurals.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't use plurals in parentheses such as in '%s'."
|
||||
link: 'https://developers.google.com/style/plurals-parentheses'
|
||||
level: error
|
||||
nonword: true
|
||||
tokens:
|
||||
- '\b\w+\(s\)'
|
||||
7
.github/styles/Google/Ordinal.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Spell out all ordinal numbers ('%s') in text."
|
||||
link: 'https://developers.google.com/style/numbers'
|
||||
level: error
|
||||
nonword: true
|
||||
tokens:
|
||||
- \d+(?:st|th|rd)
|
||||
7
.github/styles/Google/OxfordComma.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Use the Oxford comma in '%s'."
|
||||
link: 'https://developers.google.com/style/commas'
|
||||
scope: sentence
|
||||
level: warning
|
||||
tokens:
|
||||
- '(?:[^,]+,){1,}\s\w+\sand'
|
||||
7
.github/styles/Google/Parens.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Use parentheses judiciously."
|
||||
link: 'https://developers.google.com/style/parentheses'
|
||||
nonword: true
|
||||
level: suggestion
|
||||
tokens:
|
||||
- '\(.+\)'
|
||||
184
.github/styles/Google/Passive.yml
vendored
@ -1,184 +0,0 @@
|
||||
extends: existence
|
||||
link: 'https://developers.google.com/style/voice'
|
||||
message: "In general, use active voice instead of passive voice ('%s')."
|
||||
ignorecase: true
|
||||
level: suggestion
|
||||
raw:
|
||||
- \b(am|are|were|being|is|been|was|be)\b\s*
|
||||
tokens:
|
||||
- '[\w]+ed'
|
||||
- awoken
|
||||
- beat
|
||||
- become
|
||||
- been
|
||||
- begun
|
||||
- bent
|
||||
- beset
|
||||
- bet
|
||||
- bid
|
||||
- bidden
|
||||
- bitten
|
||||
- bled
|
||||
- blown
|
||||
- born
|
||||
- bought
|
||||
- bound
|
||||
- bred
|
||||
- broadcast
|
||||
- broken
|
||||
- brought
|
||||
- built
|
||||
- burnt
|
||||
- burst
|
||||
- cast
|
||||
- caught
|
||||
- chosen
|
||||
- clung
|
||||
- come
|
||||
- cost
|
||||
- crept
|
||||
- cut
|
||||
- dealt
|
||||
- dived
|
||||
- done
|
||||
- drawn
|
||||
- dreamt
|
||||
- driven
|
||||
- drunk
|
||||
- dug
|
||||
- eaten
|
||||
- fallen
|
||||
- fed
|
||||
- felt
|
||||
- fit
|
||||
- fled
|
||||
- flown
|
||||
- flung
|
||||
- forbidden
|
||||
- foregone
|
||||
- forgiven
|
||||
- forgotten
|
||||
- forsaken
|
||||
- fought
|
||||
- found
|
||||
- frozen
|
||||
- given
|
||||
- gone
|
||||
- gotten
|
||||
- ground
|
||||
- grown
|
||||
- heard
|
||||
- held
|
||||
- hidden
|
||||
- hit
|
||||
- hung
|
||||
- hurt
|
||||
- kept
|
||||
- knelt
|
||||
- knit
|
||||
- known
|
||||
- laid
|
||||
- lain
|
||||
- leapt
|
||||
- learnt
|
||||
- led
|
||||
- left
|
||||
- lent
|
||||
- let
|
||||
- lighted
|
||||
- lost
|
||||
- made
|
||||
- meant
|
||||
- met
|
||||
- misspelt
|
||||
- mistaken
|
||||
- mown
|
||||
- overcome
|
||||
- overdone
|
||||
- overtaken
|
||||
- overthrown
|
||||
- paid
|
||||
- pled
|
||||
- proven
|
||||
- put
|
||||
- quit
|
||||
- read
|
||||
- rid
|
||||
- ridden
|
||||
- risen
|
||||
- run
|
||||
- rung
|
||||
- said
|
||||
- sat
|
||||
- sawn
|
||||
- seen
|
||||
- sent
|
||||
- set
|
||||
- sewn
|
||||
- shaken
|
||||
- shaven
|
||||
- shed
|
||||
- shod
|
||||
- shone
|
||||
- shorn
|
||||
- shot
|
||||
- shown
|
||||
- shrunk
|
||||
- shut
|
||||
- slain
|
||||
- slept
|
||||
- slid
|
||||
- slit
|
||||
- slung
|
||||
- smitten
|
||||
- sold
|
||||
- sought
|
||||
- sown
|
||||
- sped
|
||||
- spent
|
||||
- spilt
|
||||
- spit
|
||||
- split
|
||||
- spoken
|
||||
- spread
|
||||
- sprung
|
||||
- spun
|
||||
- stolen
|
||||
- stood
|
||||
- stridden
|
||||
- striven
|
||||
- struck
|
||||
- strung
|
||||
- stuck
|
||||
- stung
|
||||
- stunk
|
||||
- sung
|
||||
- sunk
|
||||
- swept
|
||||
- swollen
|
||||
- sworn
|
||||
- swum
|
||||
- swung
|
||||
- taken
|
||||
- taught
|
||||
- thought
|
||||
- thrived
|
||||
- thrown
|
||||
- thrust
|
||||
- told
|
||||
- torn
|
||||
- trodden
|
||||
- understood
|
||||
- upheld
|
||||
- upset
|
||||
- wed
|
||||
- wept
|
||||
- withheld
|
||||
- withstood
|
||||
- woken
|
||||
- won
|
||||
- worn
|
||||
- wound
|
||||
- woven
|
||||
- written
|
||||
- wrung
|
||||
7
.github/styles/Google/Periods.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't use periods with acronyms or initialisms such as '%s'."
|
||||
link: 'https://developers.google.com/style/abbreviations'
|
||||
level: error
|
||||
nonword: true
|
||||
tokens:
|
||||
- '\b(?:[A-Z]\.){3,}'
|
||||
7
.github/styles/Google/Quotes.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Commas and periods go inside quotation marks."
|
||||
link: 'https://developers.google.com/style/quotation-marks'
|
||||
level: error
|
||||
nonword: true
|
||||
tokens:
|
||||
- '"[^"]+"[.,?]'
|
||||
7
.github/styles/Google/Ranges.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't add words such as 'from' or 'between' to describe a range of numbers."
|
||||
link: 'https://developers.google.com/style/hyphens'
|
||||
nonword: true
|
||||
level: warning
|
||||
tokens:
|
||||
- '(?:from|between)\s\d+\s?-\s?\d+'
|
||||
8
.github/styles/Google/Semicolons.yml
vendored
@ -1,8 +0,0 @@
|
||||
extends: existence
|
||||
message: "Use semicolons judiciously."
|
||||
link: 'https://developers.google.com/style/semicolons'
|
||||
nonword: true
|
||||
scope: sentence
|
||||
level: suggestion
|
||||
tokens:
|
||||
- ';'
|
||||
11
.github/styles/Google/Slang.yml
vendored
@ -1,11 +0,0 @@
|
||||
extends: existence
|
||||
message: "Don't use internet slang abbreviations such as '%s'."
|
||||
link: 'https://developers.google.com/style/abbreviations'
|
||||
ignorecase: true
|
||||
level: error
|
||||
tokens:
|
||||
- 'tl;dr'
|
||||
- ymmv
|
||||
- rtfm
|
||||
- imo
|
||||
- fwiw
|
||||
8
.github/styles/Google/Spacing.yml
vendored
@ -1,8 +0,0 @@
|
||||
extends: existence
|
||||
message: "'%s' should have one space."
|
||||
link: 'https://developers.google.com/style/sentence-spacing'
|
||||
level: error
|
||||
nonword: true
|
||||
tokens:
|
||||
- '[.?!] {2,}[A-Z]'
|
||||
- '[.?!][A-Z]'
|
||||
8
.github/styles/Google/Spelling.yml
vendored
@ -1,8 +0,0 @@
|
||||
extends: existence
|
||||
message: "In general, use American spelling instead of '%s'."
|
||||
link: 'https://developers.google.com/style/spelling'
|
||||
ignorecase: true
|
||||
level: warning
|
||||
tokens:
|
||||
- '(?:\w+)nised?'
|
||||
- '(?:\w+)logue'
|
||||
7
.github/styles/Google/Units.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Put a nonbreaking space between the number and the unit in '%s'."
|
||||
link: 'https://developers.google.com/style/units-of-measure'
|
||||
nonword: true
|
||||
level: error
|
||||
tokens:
|
||||
- \d+(?:GB|TB|MB)
|
||||
7
.github/styles/Google/Will.yml
vendored
@ -1,7 +0,0 @@
|
||||
extends: existence
|
||||
message: "Avoid using '%s'."
|
||||
link: 'https://developers.google.com/style/tense'
|
||||
ignorecase: true
|
||||
level: warning
|
||||
tokens:
|
||||
- will
|
||||
79
.github/styles/Google/WordList.yml
vendored
@ -1,79 +0,0 @@
|
||||
extends: substitution
|
||||
message: "Use %s instead of '%s'."
|
||||
link: 'https://developers.google.com/style/word-list'
|
||||
level: warning
|
||||
ignorecase: false
|
||||
swap:
|
||||
'(?:API Console|dev|developer) key': "'API key'"
|
||||
'(?:cell ?phone|smart ?phone)': "'phone' or 'mobile phone'"
|
||||
'(?:dev|developer|APIs) console': "'API console'"
|
||||
'(?:e-mail|Email|E-mail)': "'email'"
|
||||
'(?:file ?path|path ?name)': "'path'"
|
||||
'(?:kill|terminate)': "'stop', 'exit', 'cancel', or 'end'"
|
||||
'(?:OAuth ?2|Oauth)': "'OAuth 2.0'"
|
||||
'(?:ok|Okay)': "'OK' or 'okay'"
|
||||
'(?:WiFi|wifi)': "'Wi-Fi'"
|
||||
'[\.]+apk': "'APK'"
|
||||
'3\-D': "'3D'"
|
||||
'Google (?:I\-O|IO)': "'Google I/O'"
|
||||
'tap (?:&|and) hold': "'touch & hold'"
|
||||
'un(?:check|select)': "'clear'"
|
||||
abort: "'stop', 'exit', 'cancel' or 'end'"
|
||||
above: "'preceding'"
|
||||
account name: "'username'"
|
||||
action bar: "'app bar'"
|
||||
admin: "'administrator'"
|
||||
Ajax: "'AJAX'"
|
||||
Android device: "'Android-powered device'"
|
||||
android: "'Android'"
|
||||
API explorer: "'APIs Explorer'"
|
||||
application: "'app'"
|
||||
approx\.: "'approximately'"
|
||||
authN: "'authentication'"
|
||||
authZ: "'authorization'"
|
||||
autoupdate: "'automatically update'"
|
||||
cellular data: "'mobile data'"
|
||||
cellular network: "'mobile network'"
|
||||
chapter: "'documents', 'pages', 'sections'"
|
||||
check box: "'checkbox'"
|
||||
check: "'select'"
|
||||
CLI: "'command-line tool'"
|
||||
click on: "'click' or 'click in'"
|
||||
Cloud: "'Google Cloud Platform' or 'GCP'"
|
||||
Container Engine: "'Kubernetes Engine'"
|
||||
content type: "'media type'"
|
||||
curated roles: "'predefined roles'"
|
||||
data are: "'data is'"
|
||||
Developers Console: "'Google API Console' or 'API Console'"
|
||||
disabled?: "'turn off' or 'off'"
|
||||
ephemeral IP address: "'ephemeral external IP address'"
|
||||
fewer data: "'less data'"
|
||||
file name: "'filename'"
|
||||
firewalls: "'firewall rules'"
|
||||
functionality: "'capability' or 'feature'"
|
||||
Google account: "'Google Account'"
|
||||
Google accounts: "'Google Accounts'"
|
||||
Googling: "'search with Google'"
|
||||
grayed-out: "'unavailable'"
|
||||
HTTPs: "'HTTPS'"
|
||||
in order to: "'to'"
|
||||
ingest: "'import' or 'load'"
|
||||
k8s: "'Kubernetes'"
|
||||
long press: "'touch & hold'"
|
||||
network IP address: "'internal IP address'"
|
||||
omnibox: "'address bar'"
|
||||
open-source: "'open source'"
|
||||
overview screen: "'recents screen'"
|
||||
regex: "'regular expression'"
|
||||
SHA1: "'SHA-1' or 'HAS-SHA1'"
|
||||
sign into: "'sign in to'"
|
||||
sign-?on: "'single sign-on'"
|
||||
static IP address: "'static external IP address'"
|
||||
stylesheet: "'style sheet'"
|
||||
synch: "'sync'"
|
||||
tablename: "'table name'"
|
||||
tablet: "'device'"
|
||||
touch: "'tap'"
|
||||
url: "'URL'"
|
||||
vs\.: "'versus'"
|
||||
World Wide Web: "'web'"
|
||||
16
.github/styles/Google/meta.json
vendored
@ -1,16 +0,0 @@
|
||||
{
|
||||
"author": "Joseph Kato",
|
||||
"description": "A Vale-compatible implementation of the Microsoft Writing Style Guide.",
|
||||
"email": "support@errata.ai",
|
||||
"lang": "en",
|
||||
"url": "https://github.com/errata-ai/Google/releases/latest/download/Google.zip",
|
||||
"feed": "https://github.com/errata-ai/Google/releases.atom",
|
||||
"issues": "https://github.com/errata-ai/Google/issues/new",
|
||||
"license": "MIT",
|
||||
"name": "Google",
|
||||
"sources": [
|
||||
"https://developers.google.com/style/"
|
||||
],
|
||||
"vale_version": ">=1.0.0",
|
||||
"coverage": 0.0
|
||||
}
|
||||
0
.github/styles/Google/vocab.txt
vendored
9
.github/styles/VyOS/Terminology.yml
vendored
@ -1,9 +0,0 @@
|
||||
extends: substitution
|
||||
message: Prefer '%s' over '%s'
|
||||
ignorecase: false
|
||||
level: error
|
||||
swap:
|
||||
vyos: VyOS
|
||||
Vyos: VyOS
|
||||
VYOS: VyOS
|
||||
Gre: GRE
|
||||
1
.gitignore
vendored
@ -5,6 +5,7 @@ _build/
|
||||
venv/
|
||||
ENV/
|
||||
.venv
|
||||
Pipfile.lock
|
||||
|
||||
# put various editor ignores here
|
||||
.vscode/
|
||||
|
||||
@ -4,6 +4,10 @@
|
||||
|
||||
# Required
|
||||
version: 2
|
||||
build:
|
||||
os: ubuntu-22.04
|
||||
tools:
|
||||
python: "3.10"
|
||||
|
||||
# Build documentation in the docs/ directory with Sphinx
|
||||
sphinx:
|
||||
@ -14,12 +18,11 @@ sphinx:
|
||||
# configuration: mkdocs.yml
|
||||
|
||||
# Optionally build your docs in additional formats such as PDF
|
||||
formats:
|
||||
- pdf
|
||||
#formats:
|
||||
# - pdf
|
||||
|
||||
# Optionally set the version of Python and requirements required to build your docs
|
||||
python:
|
||||
version: 3.7
|
||||
install:
|
||||
- requirements: requirements.txt
|
||||
|
||||
|
||||
866
.tx/config
Normal file
@ -0,0 +1,866 @@
|
||||
[main]
|
||||
host = https://www.transifex.com
|
||||
|
||||
[documentation-1-3.docs__build_gettext_coverage]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/coverage.po
|
||||
source_file = docs/_build/gettext/coverage.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_cli]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/cli.po
|
||||
source_file = docs/_build/gettext/cli.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_copyright]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/copyright.po
|
||||
source_file = docs/_build/gettext/copyright.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_quick-start]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/quick-start.po
|
||||
source_file = docs/_build/gettext/quick-start.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_debugging]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/debugging.po
|
||||
source_file = docs/_build/gettext/debugging.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/index.po
|
||||
source_file = docs/_build/gettext/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_documentation]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/documentation.po
|
||||
source_file = docs/_build/gettext/documentation.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_testing]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/testing.po
|
||||
source_file = docs/_build/gettext/testing.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_404]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/404.po
|
||||
source_file = docs/_build/gettext/404.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_operation_information]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/operation/information.po
|
||||
source_file = docs/_build/gettext/operation/information.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_operation_password-recovery]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/operation/password-recovery.po
|
||||
source_file = docs/_build/gettext/operation/password-recovery.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_operation_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/operation/index.po
|
||||
source_file = docs/_build/gettext/operation/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_operation_raid]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/operation/raid.po
|
||||
source_file = docs/_build/gettext/operation/raid.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_operation_boot-options]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/operation/boot-options.po
|
||||
source_file = docs/_build/gettext/operation/boot-options.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/index.po
|
||||
source_file = docs/_build/gettext/configuration/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_zonepolicy_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/zonepolicy/index.po
|
||||
source_file = docs/_build/gettext/configuration/zonepolicy/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_dmvpn]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/dmvpn.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/dmvpn.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_openconnect]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/openconnect.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/openconnect.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_site2site_ipsec]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/site2site_ipsec.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/site2site_ipsec.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_rsa-keys]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/rsa-keys.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/rsa-keys.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_sstp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/sstp.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/sstp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_ipsec]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/ipsec.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/ipsec.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_pptp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/pptp.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/pptp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/index.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vpn_l2tp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vpn/l2tp.po
|
||||
source_file = docs/_build/gettext/configuration/vpn/l2tp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_nat_nptv6]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/nat/nptv6.po
|
||||
source_file = docs/_build/gettext/configuration/nat/nptv6.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_nat_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/nat/index.po
|
||||
source_file = docs/_build/gettext/configuration/nat/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_loadbalancing_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/loadbalancing/index.po
|
||||
source_file = docs/_build/gettext/configuration/loadbalancing/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_firewall_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/firewall/index.po
|
||||
source_file = docs/_build/gettext/configuration/firewall/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_flow-accounting]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/flow-accounting.po
|
||||
source_file = docs/_build/gettext/configuration/system/flow-accounting.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_lcd]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/lcd.po
|
||||
source_file = docs/_build/gettext/configuration/system/lcd.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_host-name]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/host-name.po
|
||||
source_file = docs/_build/gettext/configuration/system/host-name.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_syslog]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/syslog.po
|
||||
source_file = docs/_build/gettext/configuration/system/syslog.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_proxy]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/proxy.po
|
||||
source_file = docs/_build/gettext/configuration/system/proxy.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_time-zone]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/time-zone.po
|
||||
source_file = docs/_build/gettext/configuration/system/time-zone.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_name-server]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/name-server.po
|
||||
source_file = docs/_build/gettext/configuration/system/name-server.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_task-scheduler]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/task-scheduler.po
|
||||
source_file = docs/_build/gettext/configuration/system/task-scheduler.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_ip]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/ip.po
|
||||
source_file = docs/_build/gettext/configuration/system/ip.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_console]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/console.po
|
||||
source_file = docs/_build/gettext/configuration/system/console.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_option]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/option.po
|
||||
source_file = docs/_build/gettext/configuration/system/option.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_conntrack]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/conntrack.po
|
||||
source_file = docs/_build/gettext/configuration/system/conntrack.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/index.po
|
||||
source_file = docs/_build/gettext/configuration/system/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_ipv6]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/ipv6.po
|
||||
source_file = docs/_build/gettext/configuration/system/ipv6.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_eventhandler]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/eventhandler.po
|
||||
source_file = docs/_build/gettext/configuration/system/eventhandler.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_acceleration]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/acceleration.po
|
||||
source_file = docs/_build/gettext/configuration/system/acceleration.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_ntp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/ntp.po
|
||||
source_file = docs/_build/gettext/configuration/system/ntp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_default-route]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/default-route.po
|
||||
source_file = docs/_build/gettext/configuration/system/default-route.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_system_login]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/system/login.po
|
||||
source_file = docs/_build/gettext/configuration/system/login.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_highavailability_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/highavailability/index.po
|
||||
source_file = docs/_build/gettext/configuration/highavailability/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_vrf_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/vrf/index.po
|
||||
source_file = docs/_build/gettext/configuration/vrf/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_trafficpolicy_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/trafficpolicy/index.po
|
||||
source_file = docs/_build/gettext/configuration/trafficpolicy/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_lldp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/lldp.po
|
||||
source_file = docs/_build/gettext/configuration/service/lldp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_salt-minion]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/salt-minion.po
|
||||
source_file = docs/_build/gettext/configuration/service/salt-minion.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_mdns]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/mdns.po
|
||||
source_file = docs/_build/gettext/configuration/service/mdns.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_ipoe-server]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/ipoe-server.po
|
||||
source_file = docs/_build/gettext/configuration/service/ipoe-server.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_conntrack-sync]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/conntrack-sync.po
|
||||
source_file = docs/_build/gettext/configuration/service/conntrack-sync.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_broadcast-relay]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/broadcast-relay.po
|
||||
source_file = docs/_build/gettext/configuration/service/broadcast-relay.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_dhcp-relay]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/dhcp-relay.po
|
||||
source_file = docs/_build/gettext/configuration/service/dhcp-relay.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_tftp-server]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/tftp-server.po
|
||||
source_file = docs/_build/gettext/configuration/service/tftp-server.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_ssh]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/ssh.po
|
||||
source_file = docs/_build/gettext/configuration/service/ssh.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_router-advert]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/router-advert.po
|
||||
source_file = docs/_build/gettext/configuration/service/router-advert.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_pppoe-server]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/pppoe-server.po
|
||||
source_file = docs/_build/gettext/configuration/service/pppoe-server.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_snmp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/snmp.po
|
||||
source_file = docs/_build/gettext/configuration/service/snmp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_webproxy]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/webproxy.po
|
||||
source_file = docs/_build/gettext/configuration/service/webproxy.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_https]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/https.po
|
||||
source_file = docs/_build/gettext/configuration/service/https.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_dhcp-server]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/dhcp-server.po
|
||||
source_file = docs/_build/gettext/configuration/service/dhcp-server.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/index.po
|
||||
source_file = docs/_build/gettext/configuration/service/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_console-server]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/console-server.po
|
||||
source_file = docs/_build/gettext/configuration/service/console-server.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_service_dns]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/service/dns.po
|
||||
source_file = docs/_build/gettext/configuration/service/dns.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_rip]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/rip.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/rip.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_rpki]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/rpki.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/rpki.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_bgp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/bgp.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/bgp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_bfd]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/bfd.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/bfd.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_mpls]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/mpls.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/mpls.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_ospf]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/ospf.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/ospf.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/index.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_igmp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/igmp.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/igmp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_static]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/static.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/static.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_protocols_isis]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/protocols/isis.po
|
||||
source_file = docs/_build/gettext/configuration/protocols/isis.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_policy_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/policy/index.po
|
||||
source_file = docs/_build/gettext/configuration/policy/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_wireguard]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/wireguard.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/wireguard.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_geneve]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/geneve.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/geneve.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_loopback]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/loopback.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/loopback.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_l2tpv3]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/l2tpv3.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/l2tpv3.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_ethernet]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/ethernet.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/ethernet.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_vti]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/vti.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/vti.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_pppoe]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/pppoe.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/pppoe.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_bonding]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/bonding.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/bonding.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_pseudo-ethernet]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/pseudo-ethernet.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/pseudo-ethernet.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_macsec]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/macsec.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/macsec.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_bridge]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/bridge.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/bridge.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_dummy]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/dummy.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/dummy.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_tunnel]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/tunnel.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/tunnel.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_wwan]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/wwan.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/wwan.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/index.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_wireless]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/wireless.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/wireless.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_vxlan]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/vxlan.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/vxlan.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configuration_interfaces_openvpn]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configuration/interfaces/openvpn.po
|
||||
source_file = docs/_build/gettext/configuration/interfaces/openvpn.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_changelog_1]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/changelog/1.po
|
||||
source_file = docs/_build/gettext/changelog/1.3.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_changelog_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/changelog/index.po
|
||||
source_file = docs/_build/gettext/changelog/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_contributing_issues-features]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/contributing/issues-features.po
|
||||
source_file = docs/_build/gettext/contributing/issues-features.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_contributing_build-vyos]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/contributing/build-vyos.po
|
||||
source_file = docs/_build/gettext/contributing/build-vyos.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_contributing_development]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/contributing/development.po
|
||||
source_file = docs/_build/gettext/contributing/development.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_contributing_upstream-packages]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/contributing/upstream-packages.po
|
||||
source_file = docs/_build/gettext/contributing/upstream-packages.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_contributing_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/contributing/index.po
|
||||
source_file = docs/_build/gettext/contributing/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_introducing_about]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/introducing/about.po
|
||||
source_file = docs/_build/gettext/introducing/about.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_introducing_history]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/introducing/history.po
|
||||
source_file = docs/_build/gettext/introducing/history.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_image]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/image.po
|
||||
source_file = docs/_build/gettext/installation/image.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_vyos-on-baremetal]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/vyos-on-baremetal.po
|
||||
source_file = docs/_build/gettext/installation/vyos-on-baremetal.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_migrate-from-vyatta]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/migrate-from-vyatta.po
|
||||
source_file = docs/_build/gettext/installation/migrate-from-vyatta.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/index.po
|
||||
source_file = docs/_build/gettext/installation/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_install]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/install.po
|
||||
source_file = docs/_build/gettext/installation/install.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_update]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/update.po
|
||||
source_file = docs/_build/gettext/installation/update.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_virtual_gns3]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/virtual/gns3.po
|
||||
source_file = docs/_build/gettext/installation/virtual/gns3.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_virtual_eve-ng]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/virtual/eve-ng.po
|
||||
source_file = docs/_build/gettext/installation/virtual/eve-ng.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_virtual_proxmox]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/virtual/proxmox.po
|
||||
source_file = docs/_build/gettext/installation/virtual/proxmox.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_virtual_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/virtual/index.po
|
||||
source_file = docs/_build/gettext/installation/virtual/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_virtual_libvirt]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/virtual/libvirt.po
|
||||
source_file = docs/_build/gettext/installation/virtual/libvirt.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_virtual_vmware]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/virtual/vmware.po
|
||||
source_file = docs/_build/gettext/installation/virtual/vmware.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_cloud_azure]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/cloud/azure.po
|
||||
source_file = docs/_build/gettext/installation/cloud/azure.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_cloud_gcp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/cloud/gcp.po
|
||||
source_file = docs/_build/gettext/installation/cloud/gcp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_cloud_aws]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/cloud/aws.po
|
||||
source_file = docs/_build/gettext/installation/cloud/aws.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_cloud_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/cloud/index.po
|
||||
source_file = docs/_build/gettext/installation/cloud/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_installation_cloud_oracel]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/installation/cloud/oracel.po
|
||||
source_file = docs/_build/gettext/installation/cloud/oracel.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_troubleshooting_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/troubleshooting/index.po
|
||||
source_file = docs/_build/gettext/troubleshooting/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_automation_vyos-napalm]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/automation/vyos-napalm.po
|
||||
source_file = docs/_build/gettext/automation/vyos-napalm.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_automation_command-scripting]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/automation/command-scripting.po
|
||||
source_file = docs/_build/gettext/automation/command-scripting.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_automation_vyos-api]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/automation/vyos-api.po
|
||||
source_file = docs/_build/gettext/automation/vyos-api.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_automation_vyos-netmiko]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/automation/vyos-netmiko.po
|
||||
source_file = docs/_build/gettext/automation/vyos-netmiko.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_automation_cloud-init]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/automation/cloud-init.po
|
||||
source_file = docs/_build/gettext/automation/cloud-init.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_automation_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/automation/index.po
|
||||
source_file = docs/_build/gettext/automation/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_automation_vyos-ansible]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/automation/vyos-ansible.po
|
||||
source_file = docs/_build/gettext/automation/vyos-ansible.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_azure-vpn-dual-bgp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/azure-vpn-dual-bgp.po
|
||||
source_file = docs/_build/gettext/configexamples/azure-vpn-dual-bgp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_azure-vpn-bgp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/azure-vpn-bgp.po
|
||||
source_file = docs/_build/gettext/configexamples/azure-vpn-bgp.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_dual-hub-dmvpn]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/dual-hub-dmvpn.po
|
||||
source_file = docs/_build/gettext/configexamples/dual-hub-dmvpn.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_zone-policy]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/zone-policy.po
|
||||
source_file = docs/_build/gettext/configexamples/zone-policy.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_bgp-ipv6-unnumbered]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/bgp-ipv6-unnumbered.po
|
||||
source_file = docs/_build/gettext/configexamples/bgp-ipv6-unnumbered.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_ha]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/ha.po
|
||||
source_file = docs/_build/gettext/configexamples/ha.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_wan-load-balancing]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/wan-load-balancing.po
|
||||
source_file = docs/_build/gettext/configexamples/wan-load-balancing.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/index.po
|
||||
source_file = docs/_build/gettext/configexamples/index.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_ospf-unnumbered]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/ospf-unnumbered.po
|
||||
source_file = docs/_build/gettext/configexamples/ospf-unnumbered.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_autotest_DHCPRelay_through_GRE_DHCPRelay_through_GRE]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/autotest/DHCPRelay_through_GRE/DHCPRelay_through_GRE.po
|
||||
source_file = docs/_build/gettext/configexamples/autotest/DHCPRelay_through_GRE/DHCPRelay_through_GRE.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_autotest_tunnelbroker_tunnelbroker]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/autotest/tunnelbroker/tunnelbroker.po
|
||||
source_file = docs/_build/gettext/configexamples/autotest/tunnelbroker/tunnelbroker.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[documentation-1-3.docs__build_gettext_configexamples_autotest_Wireguard_Wireguard]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/configexamples/autotest/Wireguard/Wireguard.po
|
||||
source_file = docs/_build/gettext/configexamples/autotest/Wireguard/Wireguard.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
2
Pipfile
@ -9,6 +9,8 @@ docutils = "*"
|
||||
lxml = "*"
|
||||
sphinx-notfound-page = "*"
|
||||
Sphinx = ">=1.4.3"
|
||||
sphinx-panels = "*"
|
||||
transifex-client = "*"
|
||||
|
||||
[dev-packages]
|
||||
|
||||
|
||||
38
README.md
@ -1,25 +1,32 @@
|
||||
Starting with VyOS 1.2 (`crux`) documentation is being migrated from the old wiki
|
||||
to ReadTheDocs. Documentation can be accessed via the following URL:
|
||||
Starting with VyOS 1.2 (`crux`) our documentation is being migrated from the old wiki
|
||||
to ReadTheDocs. Documentation can be accessed via the following URL: https://docs.vyos.io
|
||||
|
||||
* https://docs.vyos.io
|
||||
Our old WiKi can still be accessed from the
|
||||
[Wayback Machine](https://web.archive.org/web/20200225171529/https://wiki.vyos.net/wiki/Main_Page)
|
||||
|
||||
# Build
|
||||
|
||||
[](https://docs.vyos.io/en/latest/?badge=latest)
|
||||
[](https://docs.vyos.io/en/latest/?badge=equuleus)
|
||||
|
||||
## Native
|
||||
# Versions
|
||||
|
||||
To build the manual, run the following commands inside the `docs` folder:
|
||||
Our version follows the very same branching scheme as the VyOS source modules
|
||||
itself. We maintain one documentation branch per VyOS release. The default
|
||||
branch that contains the most recent VyOS documentation is called `master`
|
||||
and matches the latest VyOS release which is 1.4 at the time.
|
||||
|
||||
* `make html` for an HTML manual
|
||||
* `make latexpdf` for a LaTeX rendered PDF
|
||||
All new documentation enhancements go to the `master` branch. If those changes
|
||||
are beneficial for previous VyOS documentation versions they will be
|
||||
cherry-picked to the appropriate branch(es).
|
||||
|
||||
Required Debian Packages:
|
||||
* `latexmk`
|
||||
* `texlive-latex-recommended`
|
||||
* `texlive-fonts-recommended`
|
||||
* `texlive-latex-extra`
|
||||
* `sphinx`
|
||||
Post-1.2.0 branches are named after constellations sorted by area from smallest to
|
||||
largest. There are 88 of them, here's the
|
||||
[complete list](https://en.wikipedia.org/wiki/IAU_designated_constellations_by_area).
|
||||
|
||||
* 1.2.x: `crux` (Southern Cross)
|
||||
* 1.3.x: `equuleus` (Little Horse)
|
||||
* 1.4.x: `sagitta` (Arrow)
|
||||
* ...
|
||||
|
||||
### sphinx
|
||||
Debian requires some extra steps for
|
||||
@ -55,7 +62,6 @@ Then run:
|
||||
sudo pip install sphinx-rtd-theme
|
||||
```
|
||||
|
||||
|
||||
Do the following to build the HTML and start a webserver:
|
||||
* Run `make livehtml` inside the `docs` folder
|
||||
|
||||
@ -94,7 +100,7 @@ $ docker run --rm -it -p 8000:8000 -v "$(pwd)":/vyos -w /vyos/docs -e \
|
||||
|
||||
### Test the docs
|
||||
|
||||
Discuss in this Phabricator task: [T1731](https://phabricator.vyos.net/T1731)
|
||||
Discuss in this Phabricator task: [T1731](https://vyos.dev/T1731)
|
||||
|
||||
To test all files run:
|
||||
|
||||
|
||||
@ -34,6 +34,8 @@ RUN pip3 install sphinx-rtd-theme
|
||||
RUN pip3 install sphinx-autobuild
|
||||
RUN pip3 install sphinx-notfound-page
|
||||
RUN pip3 install lxml
|
||||
RUN pip3 install myst-parser
|
||||
RUN pip3 install sphinx-panels
|
||||
|
||||
|
||||
# Cleanup
|
||||
@ -45,8 +47,6 @@ EXPOSE 8000
|
||||
RUN sed "s/^%sudo.*/%sudo\tALL=(ALL) NOPASSWD:ALL/g" -i /etc/sudoers && \
|
||||
chmod a+s /usr/sbin/useradd /usr/sbin/groupadd /usr/sbin/gosu /usr/sbin/usermod
|
||||
|
||||
# vale
|
||||
RUN curl -sfL https://install.goreleaser.com/github.com/ValeLint/vale.sh | sh -s v1.7.1
|
||||
|
||||
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
|
||||
|
||||
|
||||
@ -7,4 +7,5 @@ Sorry, We could not find a page.
|
||||
Try using the search box or go to the release homepage:
|
||||
|
||||
* `1.2.x (crux) <https://docs.vyos.io/en/crux/>`_
|
||||
* `rolling release (equuleus) <https://docs.vyos.io/en/latest/>`_
|
||||
* `1.3.x (equuleus) <https://docs.vyos.io/en/equuleus/>`_
|
||||
* `rolling release (sagitta) <https://docs.vyos.io/en/latest/>`_
|
||||
|
||||
@ -27,3 +27,7 @@ livehtml:
|
||||
sphinx-autobuild --host $(AUTOHOST) --port $(AUTOPORT) $(AUTOOPTS) \
|
||||
"$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
||||
|
||||
|
||||
defaultvalue: export VYOS_DEFAULT=True
|
||||
defaultvalue:
|
||||
@$(SPHINXBUILD) -M html "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
||||
108
docs/_ext/releasenotes.py
Normal file
@ -0,0 +1,108 @@
|
||||
from datetime import datetime
|
||||
from phabricator import Phabricator
|
||||
import argparse
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("-t", "--token", type=str, help="API token", required=True)
|
||||
parser.add_argument("-b", "--branch", nargs="+", help="List of github branches", required=True)
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
|
||||
phab = Phabricator(host='https://vyos.dev/api/', token=args.token)
|
||||
|
||||
'''
|
||||
# code to find new PHIDs
|
||||
# show project ids
|
||||
projects = phab.project.query(limit=200)
|
||||
for project in projects.response['data']:
|
||||
print(projects.response['data'][project]['phid'], projects.response['data'][project]['name'])
|
||||
'''
|
||||
|
||||
projects = {
|
||||
'equuleus': {
|
||||
'phid': 'PHID-PROJ-zu26ui4vbmvykpjtepij',
|
||||
'name': '1.3 Equuleus',
|
||||
'filename': 'docs/changelog/1.3.rst',
|
||||
'tasks': [],
|
||||
'releasenotes': []
|
||||
},
|
||||
'current': {
|
||||
'phid': 'PHID-PROJ-m4utvy456e2shcprpq3b',
|
||||
'name': '1.4 Sagitta',
|
||||
'filename': 'docs/changelog/1.4.rst',
|
||||
'tasks': [],
|
||||
'releasenotes': []
|
||||
}
|
||||
}
|
||||
|
||||
for b in args.branch:
|
||||
if b not in projects.keys():
|
||||
raise Exception('given branch not defined')
|
||||
|
||||
# get project tasks
|
||||
|
||||
for project in projects:
|
||||
if project not in args.branch:
|
||||
continue
|
||||
|
||||
_after = None
|
||||
|
||||
# get tasks from API
|
||||
while True:
|
||||
#print(f'get {_after}')
|
||||
_tasks = phab.maniphest.search(
|
||||
constraints={
|
||||
'projects': [projects[project]['phid']],
|
||||
#'statuses': ['closed'],
|
||||
},
|
||||
after=_after)
|
||||
|
||||
projects[project]['tasks'].extend(_tasks.response['data'])
|
||||
_after = _tasks.response['cursor']['after']
|
||||
if _after is None:
|
||||
break
|
||||
|
||||
# prepare tasks for release notes
|
||||
for task in projects[project]['tasks']:
|
||||
if task['fields']['status']['value'] in ['resolved']:
|
||||
#_info = phab.maniphest.info(task_id=task['id'])
|
||||
#_info = _info.response
|
||||
releasenote = {}
|
||||
releasenote['type'] = task['fields']['subtype']
|
||||
date = datetime.fromtimestamp(task['fields']['dateClosed'])
|
||||
releasenote['closedate'] = date.strftime('%Y-%m-%d')
|
||||
releasenote['name'] = task['fields']['name']
|
||||
releasenote['id'] = task['id']
|
||||
#print(f"{project}: {task['fields']['status']} {task['id']}")
|
||||
projects[project]['releasenotes'].append(releasenote)
|
||||
|
||||
projects[project]['releasenotes'] = sorted(
|
||||
projects[project]['releasenotes'], key = lambda x: x['closedate'],
|
||||
reverse=True
|
||||
)
|
||||
|
||||
rst_text = "#" * len(projects[project]['name'])
|
||||
rst_text += f"\n{projects[project]['name']}\n"
|
||||
rst_text += "#" * len(projects[project]['name'])
|
||||
rst_text += "\n"
|
||||
|
||||
rst_text += "\n"
|
||||
rst_text += "..\n"
|
||||
rst_text += " Please don't add anything by hand.\n"
|
||||
rst_text += " This file is managed by the script:\n"
|
||||
rst_text += " _ext/releasenotes.py\n"
|
||||
|
||||
date = None
|
||||
for rn in projects[project]['releasenotes']:
|
||||
if date != rn['closedate']:
|
||||
rst_text += "\n\n"
|
||||
rst_text += f"{rn['closedate']}\n"
|
||||
underline = '=' * len(rn['closedate'])
|
||||
rst_text += f"{underline}\n\n"
|
||||
date = rn['closedate']
|
||||
rst_text += f"* :vytask:`T{rn['id']}` ({rn['type']}): {rn['name']}\n"
|
||||
|
||||
f = open(projects[project]['filename'], "w")
|
||||
f.write(rst_text)
|
||||
f.close()
|
||||
@ -1,14 +1,13 @@
|
||||
'''
|
||||
generate json with all commands from xml for vyos documentation coverage
|
||||
|
||||
'''
|
||||
|
||||
|
||||
import sys
|
||||
import os
|
||||
import json
|
||||
import re
|
||||
import logging
|
||||
import datetime
|
||||
|
||||
from io import BytesIO
|
||||
from lxml import etree as ET
|
||||
@ -33,11 +32,32 @@ input_data = [
|
||||
}
|
||||
]
|
||||
|
||||
vyos_commands_dir = "_include/coverage"
|
||||
|
||||
node_data = {
|
||||
'cfgcmd': {},
|
||||
'opcmd': {},
|
||||
}
|
||||
|
||||
|
||||
def get_vyos_commands():
|
||||
return_data = None
|
||||
for (dirpath, dirnames, filenames) in os.walk(vyos_commands_dir):
|
||||
for file in filenames:
|
||||
with open(f"{vyos_commands_dir}/{file}") as f:
|
||||
data = json.load(f)
|
||||
|
||||
if not return_data:
|
||||
return_data = data
|
||||
|
||||
# find latestes export
|
||||
if datetime.datetime.fromisoformat(return_data['date']) < datetime.datetime.fromisoformat(data['date']):
|
||||
return_data = data
|
||||
|
||||
return return_data
|
||||
|
||||
|
||||
|
||||
def get_properties(p):
|
||||
props = {}
|
||||
props['valueless'] = False
|
||||
@ -155,12 +175,18 @@ def get_properties(p):
|
||||
|
||||
def process_node(n, f):
|
||||
|
||||
|
||||
props_elem = n.find("properties")
|
||||
children = n.find("children")
|
||||
command = n.find("command")
|
||||
children_nodes = []
|
||||
owner = n.get("owner")
|
||||
node_type = n.tag
|
||||
defaultvalue = n.find("defaultValue")
|
||||
|
||||
if defaultvalue is not None:
|
||||
defaultvalue = defaultvalue.text
|
||||
|
||||
|
||||
name = n.get("name")
|
||||
props = get_properties(props_elem)
|
||||
@ -198,7 +224,9 @@ def process_node(n, f):
|
||||
'children': children_nodes,
|
||||
'props': props,
|
||||
'command': test_command,
|
||||
'filename': f
|
||||
'filename': f,
|
||||
'defaultvalue': defaultvalue
|
||||
|
||||
}
|
||||
return node
|
||||
|
||||
@ -212,9 +240,11 @@ def create_commands(data, parent_list=[], level=0):
|
||||
'tag_help': [],
|
||||
'level': level,
|
||||
'no_childs': False,
|
||||
'filename': None
|
||||
'filename': None,
|
||||
'defaultvalue': None,
|
||||
}
|
||||
command['filename'] = data['filename']
|
||||
command['defaultvalue'] = data['defaultvalue']
|
||||
command['name'].extend(parent_list)
|
||||
command['name'].append(data['name'])
|
||||
|
||||
@ -298,7 +328,7 @@ def get_working_commands():
|
||||
if not validator.validate(xml):
|
||||
print(validator.error_log)
|
||||
print("Interface definition file {0} does not match the schema!".format(f))
|
||||
sys.exit(1)
|
||||
#sys.exit(1)
|
||||
except Exception as e:
|
||||
print("Failed to load the XML schema {0}".format(entry['schema_file']))
|
||||
print(e)
|
||||
@ -328,6 +358,7 @@ def get_working_commands():
|
||||
'children': [],
|
||||
'command': node_data[kind][entry]['command'],
|
||||
'filename': node_data[kind][entry]['filename'],
|
||||
'defaultvalue': node_data[kind][entry]['defaultvalue']
|
||||
}
|
||||
config_tree_new[kind][node_0]['children'].extend(node_data[kind][entry]['children'])
|
||||
|
||||
@ -337,6 +368,7 @@ def get_working_commands():
|
||||
}
|
||||
for kind in config_tree_new:
|
||||
for e in config_tree_new[kind]:
|
||||
if config_tree_new[kind][e]['name']:
|
||||
result[kind].extend(create_commands(config_tree_new[kind][e]))
|
||||
|
||||
for cmd in result['cfgcmd']:
|
||||
@ -377,6 +409,4 @@ def override_element(l: list):
|
||||
el.getparent().remove(el)
|
||||
|
||||
if __name__ == "__main__":
|
||||
res = get_working_commands()
|
||||
print(json.dumps(res))
|
||||
#print(res['cfgcmd'][0])
|
||||
get_vyos_commands()
|
||||
|
||||
@ -1,20 +1,25 @@
|
||||
import re
|
||||
import json
|
||||
import os
|
||||
from datetime import datetime
|
||||
from unittest import defaultTestLoader
|
||||
from docutils import io, nodes, utils, statemachine
|
||||
from docutils.parsers.rst.roles import set_classes
|
||||
from docutils.parsers.rst import Directive, directives, states
|
||||
|
||||
from sphinx.util.docutils import SphinxDirective
|
||||
|
||||
from testcoverage import get_working_commands
|
||||
from testcoverage import get_working_commands, get_vyos_commands
|
||||
|
||||
from sphinx.util import logging
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
def setup(app):
|
||||
|
||||
app.add_config_value(
|
||||
'vyos_phabricator_url',
|
||||
'https://phabricator.vyos.net/',
|
||||
'https://vyos.dev/',
|
||||
'html'
|
||||
)
|
||||
|
||||
@ -24,6 +29,11 @@ def setup(app):
|
||||
#{"cfgcmd": [], "opcmd": []},
|
||||
'html'
|
||||
)
|
||||
app.add_config_value(
|
||||
'vyos_commands',
|
||||
get_vyos_commands(),
|
||||
'html'
|
||||
)
|
||||
app.add_config_value(
|
||||
'vyos_coverage',
|
||||
{
|
||||
@ -74,6 +84,7 @@ def setup(app):
|
||||
app.add_directive('opcmd', OpCmdDirective)
|
||||
app.add_directive('cmdinclude', CfgInclude)
|
||||
app.connect('doctree-resolved', process_cmd_nodes)
|
||||
app.connect('doctree-read', handle_document_meta_data)
|
||||
|
||||
class CfgcmdList(nodes.General, nodes.Element):
|
||||
pass
|
||||
@ -346,6 +357,21 @@ class OpcmdlistDirective(Directive):
|
||||
return [oplist]
|
||||
|
||||
|
||||
def get_default_value(title_text, config, cfgmode):
|
||||
title_text = strip_cmd(title_text)
|
||||
for cmd in config.vyos_working_commands[cfgmode]:
|
||||
cmd_joined = ' '.join(cmd['name'])
|
||||
cmd_striped = strip_cmd(cmd_joined)
|
||||
if "table-size" in cmd['name']:
|
||||
pass
|
||||
#print(cmd)
|
||||
#print(cmd_striped)
|
||||
#print(title_text)
|
||||
#print()
|
||||
if cmd_striped == title_text:
|
||||
if cmd['defaultvalue']:
|
||||
return cmd['defaultvalue']
|
||||
return None
|
||||
|
||||
class CmdDirective(SphinxDirective):
|
||||
|
||||
@ -358,19 +384,31 @@ class CmdDirective(SphinxDirective):
|
||||
content_list = []
|
||||
title_text = ''
|
||||
content_text = ''
|
||||
defaultvalue = None
|
||||
has_body = False
|
||||
|
||||
cfgmode = self.custom_class + "cmd"
|
||||
|
||||
try:
|
||||
if '' in self.content:
|
||||
index = self.content.index('')
|
||||
title_list = self.content[0:index]
|
||||
content_list = self.content[index + 1:]
|
||||
|
||||
title_text = ' '.join(title_list)
|
||||
content_text = '\n'.join(content_list)
|
||||
content_text = content_text + '\n'.join(content_list)
|
||||
has_body = True
|
||||
else:
|
||||
title_text = ' '.join(self.content)
|
||||
title_list = self.content
|
||||
title_text = ' '.join(title_list)
|
||||
except Exception as e:
|
||||
print("error", e)
|
||||
|
||||
# render defaultvalue
|
||||
if os.getenv('VYOS_DEFAULT') or ':defaultvalue:' in title_text:
|
||||
value = get_default_value(title_list, self.config, cfgmode)
|
||||
title_text = title_text.replace(":defaultvalue:", '')
|
||||
if value:
|
||||
defaultvalue = f"default: {value}\n"
|
||||
|
||||
anchor_id = nodes.make_id(self.custom_class + "cmd-" + title_text)
|
||||
target = nodes.target(ids=[anchor_id])
|
||||
@ -392,6 +430,11 @@ class CmdDirective(SphinxDirective):
|
||||
heading_element['classes'] += [self.custom_class + 'cmd-heading']
|
||||
|
||||
panel_element.append(heading_element)
|
||||
if defaultvalue:
|
||||
defaultvalue_element = nodes.paragraph(text=defaultvalue)
|
||||
defaultvalue_element['classes'] = ["defaultvalue"]
|
||||
panel_element.append(defaultvalue_element)
|
||||
|
||||
|
||||
append_list = {
|
||||
'docname': self.env.docname,
|
||||
@ -432,26 +475,53 @@ class CfgCmdDirective(CmdDirective):
|
||||
|
||||
|
||||
def strip_cmd(cmd, debug=False):
|
||||
|
||||
# find all [...] and also nested [...]
|
||||
# regex and str.find() had problems with nested [...]
|
||||
appearance = 0
|
||||
cmd_new = ""
|
||||
for c in cmd:
|
||||
if c == "[":
|
||||
appearance = appearance + 1
|
||||
if appearance == 0:
|
||||
cmd_new = f"{cmd_new}{c}"
|
||||
if c == "]":
|
||||
appearance = appearance - 1
|
||||
|
||||
# only if all [..] will be delete if appearance > 0 there is a syntax errror
|
||||
if appearance == 0:
|
||||
cmd = cmd_new
|
||||
|
||||
# same for <...>
|
||||
appearance = 0
|
||||
cmd_new = ""
|
||||
for c in cmd:
|
||||
if c == "<":
|
||||
appearance = appearance + 1
|
||||
if appearance == 0:
|
||||
cmd_new = f"{cmd_new}{c}"
|
||||
if c == ">":
|
||||
appearance = appearance - 1
|
||||
|
||||
# only if all <..> will be delete if appearance > 0 there is a syntax errror
|
||||
if appearance == 0:
|
||||
cmd = cmd_new
|
||||
|
||||
if debug:
|
||||
print("")
|
||||
print(cmd)
|
||||
cmd = re.sub('set','',cmd)
|
||||
cmd = re.sub('^set','',cmd)
|
||||
if debug:
|
||||
print(cmd)
|
||||
#while " | " in cmd:
|
||||
cmd = re.sub('\s+\|\s+','',cmd)
|
||||
if debug:
|
||||
print(cmd)
|
||||
cmd = re.sub('<\S*>','',cmd)
|
||||
if debug:
|
||||
print(cmd)
|
||||
cmd = re.sub('\[\S\]','',cmd)
|
||||
cmd = cmd.replace('|','')
|
||||
if debug:
|
||||
print(cmd)
|
||||
cmd = re.sub('\s+','',cmd)
|
||||
cmd = cmd.replace(':defaultvalue:','')
|
||||
if debug:
|
||||
print(cmd)
|
||||
print("")
|
||||
|
||||
return cmd
|
||||
|
||||
def build_row(app, fromdocname, rowdata):
|
||||
@ -467,10 +537,10 @@ def build_row(app, fromdocname, rowdata):
|
||||
entry += nodes.paragraph(text=item)
|
||||
elif isinstance(cell, bool):
|
||||
if cell:
|
||||
entry += nodes.paragraph(text="")
|
||||
entry += nodes.paragraph(text="✔")
|
||||
entry['classes'] = ['coverage-ok']
|
||||
else:
|
||||
entry += nodes.paragraph(text="")
|
||||
entry += nodes.paragraph(text="✕")
|
||||
entry['classes'] = ['coverage-fail']
|
||||
else:
|
||||
entry += nodes.paragraph(text=cell)
|
||||
@ -478,30 +548,28 @@ def build_row(app, fromdocname, rowdata):
|
||||
|
||||
|
||||
|
||||
def process_coverage(app, fromdocname, doccmd, xmlcmd, cli_type):
|
||||
def process_coverage(app, fromdocname, doccmd, xmlcmd, vyoscmd, cli_type):
|
||||
coverage_list = {}
|
||||
int_docs = 0
|
||||
int_xml = 0
|
||||
strip_true_list = []
|
||||
for cmd in doccmd:
|
||||
coverage_item = {
|
||||
'doccmd': None,
|
||||
'xmlcmd': None,
|
||||
'vyoscmd': None,
|
||||
'doccmd_item': None,
|
||||
'xmlcmd_item': None,
|
||||
'vyoscmd_item': None,
|
||||
'indocs': False,
|
||||
'inxml': False,
|
||||
'invyos': False,
|
||||
'xmlfilename': None
|
||||
}
|
||||
coverage_item['doccmd'] = cmd['cmd']
|
||||
coverage_item['doccmd_item'] = cmd
|
||||
coverage_item['indocs'] = True
|
||||
int_docs += 1
|
||||
|
||||
coverage_list[strip_cmd(cmd['cmd'])] = dict(coverage_item)
|
||||
|
||||
|
||||
#print(coverage_list.keys())
|
||||
|
||||
for cmd in xmlcmd:
|
||||
|
||||
strip = strip_cmd(cmd['cmd'])
|
||||
@ -509,34 +577,64 @@ def process_coverage(app, fromdocname, doccmd, xmlcmd, cli_type):
|
||||
coverage_item = {
|
||||
'doccmd': None,
|
||||
'xmlcmd': None,
|
||||
'vyoscmd': None,
|
||||
'doccmd_item': None,
|
||||
'xmlcmd_item': None,
|
||||
'vyoscmd_item': None,
|
||||
'indocs': False,
|
||||
'inxml': False,
|
||||
'invyos': False,
|
||||
'xmlfilename': None
|
||||
}
|
||||
coverage_item['xmlcmd'] = cmd['cmd']
|
||||
coverage_item['xmlcmd_item'] = cmd
|
||||
coverage_item['inxml'] = True
|
||||
coverage_item['xmlfilename'] = cmd['filename']
|
||||
int_xml += 1
|
||||
coverage_list[strip] = dict(coverage_item)
|
||||
else:
|
||||
coverage_list[strip]['xmlcmd'] = cmd['cmd']
|
||||
coverage_list[strip]['xmlcmd_item'] = cmd
|
||||
coverage_list[strip]['inxml'] = True
|
||||
coverage_list[strip]['xmlfilename'] = cmd['filename']
|
||||
int_xml += 1
|
||||
|
||||
|
||||
for item in vyoscmd[cli_type]:
|
||||
cmd = ' '.join(item['cmd'])
|
||||
strip = strip_cmd(cmd)
|
||||
if strip not in coverage_list.keys():
|
||||
coverage_item = {
|
||||
'doccmd': None,
|
||||
'xmlcmd': None,
|
||||
'vyoscmd': None,
|
||||
'doccmd_item': None,
|
||||
'xmlcmd_item': None,
|
||||
'vyoscmd_item': None,
|
||||
'indocs': False,
|
||||
'inxml': False,
|
||||
'invyos': False,
|
||||
'xmlfilename': None
|
||||
}
|
||||
coverage_item['vyoscmd'] = cmd
|
||||
coverage_item['invyos'] = True
|
||||
coverage_list[strip] = dict(coverage_item)
|
||||
else:
|
||||
coverage_list[strip]['vyoscmd'] = cmd
|
||||
coverage_list[strip]['invyos'] = True
|
||||
if coverage_list[strip]['indocs'] and coverage_list[strip]['invyos']:
|
||||
strip_true_list.append(strip)
|
||||
|
||||
|
||||
|
||||
strip_true_list = list(set(strip_true_list))
|
||||
|
||||
|
||||
|
||||
table = nodes.table()
|
||||
tgroup = nodes.tgroup(cols=3)
|
||||
tgroup = nodes.tgroup(cols=4)
|
||||
table += tgroup
|
||||
|
||||
header = (f'{int_docs}/{len(coverage_list)} in Docs', f'{int_xml}/{len(coverage_list)} in XML', 'Command')
|
||||
colwidths = (1, 1, 8)
|
||||
header = (f'Status {len(strip_true_list)}/{len(coverage_list)}', 'Documentation', 'XML', f'in VyOS {vyoscmd["os"]}')
|
||||
colwidths = (5, 33 , 33, 33)
|
||||
table = nodes.table()
|
||||
tgroup = nodes.tgroup(cols=len(header))
|
||||
table += tgroup
|
||||
@ -548,28 +646,42 @@ def process_coverage(app, fromdocname, doccmd, xmlcmd, cli_type):
|
||||
tbody = nodes.tbody()
|
||||
tgroup += tbody
|
||||
for entry in sorted(coverage_list):
|
||||
body_text_list = []
|
||||
doc_cmd_text = []
|
||||
doc_xml_text = []
|
||||
doc_vyos_text = []
|
||||
if coverage_list[entry]['indocs']:
|
||||
body_text_list.append(coverage_list[entry]['doccmd_item'])
|
||||
doc_cmd_text.append(coverage_list[entry]['doccmd_item'])
|
||||
else:
|
||||
body_text_list.append('Not documented yet')
|
||||
doc_cmd_text.append('not yet documented')
|
||||
|
||||
if coverage_list[entry]['inxml']:
|
||||
body_text_list.append("------------------")
|
||||
body_text_list.append(str(coverage_list[entry]['xmlfilename']) + ":")
|
||||
body_text_list.append(coverage_list[entry]['xmlcmd'])
|
||||
doc_xml_text.append(str(coverage_list[entry]['xmlfilename']) + ":")
|
||||
doc_xml_text.append(coverage_list[entry]['xmlcmd'])
|
||||
else:
|
||||
body_text_list.append('Nothing found in XML Definitions')
|
||||
doc_xml_text.append('Nothing found in XML Definitions')
|
||||
|
||||
if coverage_list[entry]['invyos']:
|
||||
doc_vyos_text.append(coverage_list[entry]['vyoscmd'])
|
||||
else:
|
||||
doc_vyos_text.append('Nothing found in VyOS')
|
||||
|
||||
|
||||
if not coverage_list[entry]['indocs'] or not coverage_list[entry]['invyos']:
|
||||
status = False
|
||||
else:
|
||||
status = True
|
||||
|
||||
tbody += build_row(app, fromdocname,
|
||||
(
|
||||
coverage_list[entry]['indocs'],
|
||||
coverage_list[entry]['inxml'],
|
||||
body_text_list
|
||||
status,
|
||||
doc_cmd_text,
|
||||
doc_xml_text,
|
||||
doc_vyos_text
|
||||
|
||||
)
|
||||
)
|
||||
|
||||
table['ids'] = [f'table-{cli_type}']
|
||||
return table
|
||||
|
||||
def process_cmd_node(app, cmd, fromdocname, cli_type):
|
||||
@ -599,6 +711,7 @@ def process_cmd_nodes(app, doctree, fromdocname):
|
||||
fromdocname,
|
||||
env.vyos_cfgcmd,
|
||||
app.config.vyos_working_commands['cfgcmd'],
|
||||
app.config.vyos_commands,
|
||||
'cfgcmd'
|
||||
)
|
||||
)
|
||||
@ -616,6 +729,7 @@ def process_cmd_nodes(app, doctree, fromdocname):
|
||||
fromdocname,
|
||||
env.vyos_opcmd,
|
||||
app.config.vyos_working_commands['opcmd'],
|
||||
app.config.vyos_commands,
|
||||
'opcmd'
|
||||
)
|
||||
)
|
||||
@ -641,3 +755,20 @@ def vytask_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
|
||||
def cmd_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
|
||||
node = nodes.literal(text, text)
|
||||
return [node], []
|
||||
|
||||
|
||||
def handle_document_meta_data(app, document):
|
||||
docname = app.env.docname
|
||||
lastproofread = app.env.metadata[docname].get('lastproofread', False)
|
||||
if lastproofread:
|
||||
try:
|
||||
lastproofread_time = datetime.strptime(lastproofread, '%Y-%m-%d')
|
||||
delta = datetime.now() - lastproofread_time
|
||||
if delta.days > 365:
|
||||
logger.warning(f'{delta.days} days since last proofread {app.env.doc2path(docname)}')
|
||||
|
||||
except Exception as e:
|
||||
logger.warning(f'lastproofread meta data error in {app.env.doc2path(docname)}: {e}')
|
||||
else:
|
||||
pass
|
||||
#logger.warning(f'lastproofread meta data missing in {app.env.doc2path(docname)}')
|
||||
|
||||
@ -2,8 +2,10 @@
|
||||
|
||||
.. _`accel-ppp`: https://accel-ppp.org/
|
||||
.. _`Secure Socket Tunneling Protocol`: https://en.wikipedia.org/wiki/Secure_Socket_Tunneling_Protocol
|
||||
.. _Phabricator: https://phabricator.vyos.net/
|
||||
.. _Phabricator: https://vyos.dev/
|
||||
.. _802.1ad: https://en.wikipedia.org/wiki/IEEE_802.1ad
|
||||
.. _802.1q: https://en.wikipedia.org/wiki/IEEE_802.1Q
|
||||
.. _`VyOS CI`: https://ci.vyos.net
|
||||
.. _vyos-build: https://github.com/vyos/vyos-build
|
||||
|
||||
.. start_vyoslinter
|
||||
88283
docs/_include/coverage/20220531-1.3.1-S1.json
Normal file
88777
docs/_include/coverage/20220907-1.3.2.json
Normal file
90051
docs/_include/coverage/20230724-1.3.3.json
Normal file
@ -17,5 +17,5 @@
|
||||
|
||||
set interfaces {{ var0 }} {{ var1 }} {{ var2 }} {{ var4 }} {{ var5 }} {{ var7 }} address 192.0.2.1/24
|
||||
set interfaces {{ var0 }} {{ var1 }} {{ var2 }} {{ var4 }} {{ var5 }} {{ var7 }} address 2001:db8::1/64
|
||||
set interfaces {{ var0 }} {{ var1 }} {{ var2 }} {{ var4 }} {{ var5 }} {{ var7 }} dhcp
|
||||
set interfaces {{ var0 }} {{ var1 }} {{ var2 }} {{ var4 }} {{ var5 }} {{ var7 }} dhcpv6
|
||||
set interfaces {{ var0 }} {{ var1 }} {{ var2 }} {{ var4 }} {{ var5 }} {{ var7 }} address dhcp
|
||||
set interfaces {{ var0 }} {{ var1 }} {{ var2 }} {{ var4 }} {{ var5 }} {{ var7 }} address dhcpv6
|
||||
|
||||
7
docs/_include/interface-common-without-dhcp1.txt
Normal file
@ -0,0 +1,7 @@
|
||||
.. cmdinclude:: /_include/interface-address.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
|
||||
.. cmdinclude:: /_include/interface-common-without-mac.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
31
docs/_include/interface-common-without-mac.txt
Normal file
@ -0,0 +1,31 @@
|
||||
.. cmdinclude:: /_include/interface-description.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
|
||||
.. cmdinclude:: /_include/interface-disable.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
|
||||
.. cmdinclude:: /_include/interface-disable-flow-control.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
|
||||
.. cmdinclude:: /_include/interface-disable-link-detect.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
|
||||
.. cmdinclude:: /_include/interface-mtu.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
|
||||
.. cmdinclude:: /_include/interface-ip.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
|
||||
.. cmdinclude:: /_include/interface-ipv6.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
|
||||
.. cmdinclude:: /_include/interface-vrf.txt
|
||||
:var0: {{ var0 }}
|
||||
:var1: {{ var1 }}
|
||||
@ -1,7 +1,10 @@
|
||||
SPAN port mirroring can copy the inbound/outbound traffic of the interface to
|
||||
the specified interface, usually the interface can be connected to some special
|
||||
equipment, such as behavior control system, intrusion detection system and
|
||||
traffic collector, and can copy all related traffic from this port
|
||||
traffic collector, and can copy all related traffic from this port.
|
||||
The benefit of mirroring the traffic is that the application is isolated from
|
||||
the source traffic and so application processing does not affect the traffic
|
||||
or the system performance.
|
||||
|
||||
VyOS uses the `mirror` option to configure port mirroring. The configuration
|
||||
is divided into 2 different directions. Destination ports should be configured
|
||||
|
||||
@ -1,27 +0,0 @@
|
||||
.. cfgcmd:: set interfaces {{ var0 }} <interface> xdp
|
||||
|
||||
Enable support for Linux :abbr:`XDP (eXpress Data Path)` on recent 1.3 rolling
|
||||
releases. You must enable it for every interface which should participate in
|
||||
the XDP forwarding.
|
||||
|
||||
XDP is an eBPF based high performance data path merged in the Linux kernel
|
||||
since version 4.8. The idea behind XDP is to add an early hook in the RX path
|
||||
of the kernel, and let a user supplied eBPF program decide the fate of the
|
||||
packet. The hook is placed in the NIC driver just after the interrupt
|
||||
processing, and before any memory allocation needed by the network stack
|
||||
itself, because memory allocation can be an expensive operation.
|
||||
|
||||
.. warning:: This is highly experimental!
|
||||
|
||||
.. note:: Enabling this feature will break any form of NAT or Firewalling on
|
||||
this interface, as XDP is handled way earlier in the driver then iptables/
|
||||
nftables.
|
||||
|
||||
Enabling this feature will only load the XDP router code as described here:
|
||||
https://blog.apnic.net/2020/04/30/how-to-build-an-xdp-based-bgp-peering-router/
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
set interfaces {{ var0 }} {{ var1 }} xdp
|
||||
@ -1 +1 @@
|
||||
Subproject commit 86209c679c6b7ca9d5bac1f67ffd391b9b16c008
|
||||
Subproject commit e6118a08081faccaccea14fe1c30a633250ef901
|
||||
BIN
docs/_static/css/DataTables-1.11.5/images/sort_asc.png
vendored
Normal file
|
After Width: | Height: | Size: 160 B |
BIN
docs/_static/css/DataTables-1.11.5/images/sort_asc_disabled.png
vendored
Normal file
|
After Width: | Height: | Size: 146 B |
BIN
docs/_static/css/DataTables-1.11.5/images/sort_both.png
vendored
Normal file
|
After Width: | Height: | Size: 201 B |
BIN
docs/_static/css/DataTables-1.11.5/images/sort_desc.png
vendored
Normal file
|
After Width: | Height: | Size: 158 B |
BIN
docs/_static/css/DataTables-1.11.5/images/sort_desc_disabled.png
vendored
Normal file
|
After Width: | Height: | Size: 148 B |
37
docs/_static/css/custom.css
vendored
@ -1,3 +1,8 @@
|
||||
div.card-header {
|
||||
font-weight: bold;
|
||||
background: #fdab10;
|
||||
}
|
||||
|
||||
span.opcmd,
|
||||
span.cfgcmd {
|
||||
font-weight: bold;
|
||||
@ -15,13 +20,13 @@ span.cfgcmd:before {
|
||||
margin-right: 0px;
|
||||
}
|
||||
|
||||
td p a.cmdlink span.cfgcmd:before,
|
||||
td p a.cmdlink span.opcmd:before {
|
||||
td a.cmdlink span.cfgcmd:before,
|
||||
td a.cmdlink span.opcmd:before {
|
||||
content: "";
|
||||
}
|
||||
|
||||
td p a.cmdlink,
|
||||
td p a.cmdlink {
|
||||
td a.cmdlink,
|
||||
td a.cmdlink {
|
||||
margin-left: 0px;
|
||||
}
|
||||
|
||||
@ -82,6 +87,12 @@ span.opcmd:before {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.defaultvalue{
|
||||
font-size: 90%;
|
||||
color: gray;
|
||||
margin-bottom: 5px;
|
||||
|
||||
}
|
||||
|
||||
a.cmdlink {
|
||||
font-size: 80%;
|
||||
@ -156,7 +167,7 @@ a.cmdlink span:hover{
|
||||
}
|
||||
|
||||
.wy-nav-top {
|
||||
background-color : #ffffff !important;
|
||||
background-color : #ffffff;
|
||||
}
|
||||
|
||||
.wy-nav-top img {
|
||||
@ -165,13 +176,19 @@ a.cmdlink span:hover{
|
||||
|
||||
.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td.coverage-ok,
|
||||
.rst-content table.docutils td.coverage-ok {
|
||||
background-color: green;
|
||||
color: black;
|
||||
color: green;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
|
||||
.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td.coverage-fail,
|
||||
.rst-content table.docutils td.coverage-fail {
|
||||
background-color: red;
|
||||
color: black;
|
||||
color: red;
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
.wy-nav-top{
|
||||
background-color: #fdab10;
|
||||
}
|
||||
}
|
||||
497
docs/_static/css/datatables.css
vendored
Normal file
@ -0,0 +1,497 @@
|
||||
/*
|
||||
* This combined file was created by the DataTables downloader builder:
|
||||
* https://datatables.net/download
|
||||
*
|
||||
* To rebuild or modify this file with the latest versions of the included
|
||||
* software please visit:
|
||||
* https://datatables.net/download/#dt/dt-1.11.5
|
||||
*
|
||||
* Included libraries:
|
||||
* DataTables 1.11.5
|
||||
*/
|
||||
|
||||
table.dataTable th.dt-left,
|
||||
table.dataTable td.dt-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable th.dt-center,
|
||||
table.dataTable td.dt-center,
|
||||
table.dataTable td.dataTables_empty {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable th.dt-right,
|
||||
table.dataTable td.dt-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable th.dt-justify,
|
||||
table.dataTable td.dt-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable th.dt-nowrap,
|
||||
table.dataTable td.dt-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable thead th.dt-head-left,
|
||||
table.dataTable thead td.dt-head-left,
|
||||
table.dataTable tfoot th.dt-head-left,
|
||||
table.dataTable tfoot td.dt-head-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable thead th.dt-head-center,
|
||||
table.dataTable thead td.dt-head-center,
|
||||
table.dataTable tfoot th.dt-head-center,
|
||||
table.dataTable tfoot td.dt-head-center {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable thead th.dt-head-right,
|
||||
table.dataTable thead td.dt-head-right,
|
||||
table.dataTable tfoot th.dt-head-right,
|
||||
table.dataTable tfoot td.dt-head-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable thead th.dt-head-justify,
|
||||
table.dataTable thead td.dt-head-justify,
|
||||
table.dataTable tfoot th.dt-head-justify,
|
||||
table.dataTable tfoot td.dt-head-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable thead th.dt-head-nowrap,
|
||||
table.dataTable thead td.dt-head-nowrap,
|
||||
table.dataTable tfoot th.dt-head-nowrap,
|
||||
table.dataTable tfoot td.dt-head-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-left,
|
||||
table.dataTable tbody td.dt-body-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-center,
|
||||
table.dataTable tbody td.dt-body-center {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-right,
|
||||
table.dataTable tbody td.dt-body-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-justify,
|
||||
table.dataTable tbody td.dt-body-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-nowrap,
|
||||
table.dataTable tbody td.dt-body-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable td.dt-control {
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
}
|
||||
table.dataTable td.dt-control:before {
|
||||
height: 1em;
|
||||
width: 1em;
|
||||
margin-top: -9px;
|
||||
display: inline-block;
|
||||
color: white;
|
||||
border: 0.15em solid white;
|
||||
border-radius: 1em;
|
||||
box-shadow: 0 0 0.2em #444;
|
||||
box-sizing: content-box;
|
||||
text-align: center;
|
||||
text-indent: 0 !important;
|
||||
font-family: "Courier New", Courier, monospace;
|
||||
line-height: 1em;
|
||||
content: "+";
|
||||
background-color: #31b131;
|
||||
}
|
||||
table.dataTable tr.dt-hasChild td.dt-control:before {
|
||||
content: "-";
|
||||
background-color: #d33333;
|
||||
}
|
||||
|
||||
/*
|
||||
* Table styles
|
||||
*/
|
||||
table.dataTable {
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
clear: both;
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
/*
|
||||
* Header and footer styles
|
||||
*/
|
||||
/*
|
||||
* Body styles
|
||||
*/
|
||||
}
|
||||
table.dataTable thead th,
|
||||
table.dataTable tfoot th {
|
||||
font-weight: bold;
|
||||
}
|
||||
table.dataTable thead th,
|
||||
table.dataTable thead td {
|
||||
padding: 10px 18px;
|
||||
border-bottom: 1px solid #111;
|
||||
}
|
||||
table.dataTable thead th:active,
|
||||
table.dataTable thead td:active {
|
||||
outline: none;
|
||||
}
|
||||
table.dataTable tfoot th,
|
||||
table.dataTable tfoot td {
|
||||
padding: 10px 18px 6px 18px;
|
||||
border-top: 1px solid #111;
|
||||
}
|
||||
table.dataTable thead .sorting,
|
||||
table.dataTable thead .sorting_asc,
|
||||
table.dataTable thead .sorting_desc,
|
||||
table.dataTable thead .sorting_asc_disabled,
|
||||
table.dataTable thead .sorting_desc_disabled {
|
||||
cursor: pointer;
|
||||
*cursor: hand;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center right;
|
||||
}
|
||||
table.dataTable thead .sorting {
|
||||
background-image: url("DataTables-1.11.5/images/sort_both.png");
|
||||
}
|
||||
table.dataTable thead .sorting_asc {
|
||||
background-image: url("DataTables-1.11.5/images/sort_asc.png") !important;
|
||||
}
|
||||
table.dataTable thead .sorting_desc {
|
||||
background-image: url("DataTables-1.11.5/images/sort_desc.png") !important;
|
||||
}
|
||||
table.dataTable thead .sorting_asc_disabled {
|
||||
background-image: url("DataTables-1.11.5/images/sort_asc_disabled.png");
|
||||
}
|
||||
table.dataTable thead .sorting_desc_disabled {
|
||||
background-image: url("DataTables-1.11.5/images/sort_desc_disabled.png");
|
||||
}
|
||||
table.dataTable tbody tr {
|
||||
background-color: #ffffff;
|
||||
}
|
||||
table.dataTable tbody tr.selected {
|
||||
background-color: #B0BED9;
|
||||
}
|
||||
table.dataTable tbody th,
|
||||
table.dataTable tbody td {
|
||||
padding: 8px 10px;
|
||||
}
|
||||
table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td {
|
||||
border-top: 1px solid #ddd;
|
||||
}
|
||||
table.dataTable.row-border tbody tr:first-child th,
|
||||
table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th,
|
||||
table.dataTable.display tbody tr:first-child td {
|
||||
border-top: none;
|
||||
}
|
||||
table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td {
|
||||
border-top: 1px solid #ddd;
|
||||
border-right: 1px solid #ddd;
|
||||
}
|
||||
table.dataTable.cell-border tbody tr th:first-child,
|
||||
table.dataTable.cell-border tbody tr td:first-child {
|
||||
border-left: 1px solid #ddd;
|
||||
}
|
||||
table.dataTable.cell-border tbody tr:first-child th,
|
||||
table.dataTable.cell-border tbody tr:first-child td {
|
||||
border-top: none;
|
||||
}
|
||||
table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd {
|
||||
background-color: #f9f9f9;
|
||||
}
|
||||
table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected {
|
||||
background-color: #acbad4;
|
||||
}
|
||||
table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover {
|
||||
background-color: #f6f6f6;
|
||||
}
|
||||
table.dataTable.hover tbody tr:hover.selected, table.dataTable.display tbody tr:hover.selected {
|
||||
background-color: #aab7d1;
|
||||
}
|
||||
table.dataTable.order-column tbody tr > .sorting_1,
|
||||
table.dataTable.order-column tbody tr > .sorting_2,
|
||||
table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1,
|
||||
table.dataTable.display tbody tr > .sorting_2,
|
||||
table.dataTable.display tbody tr > .sorting_3 {
|
||||
background-color: #fafafa;
|
||||
}
|
||||
table.dataTable.order-column tbody tr.selected > .sorting_1,
|
||||
table.dataTable.order-column tbody tr.selected > .sorting_2,
|
||||
table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1,
|
||||
table.dataTable.display tbody tr.selected > .sorting_2,
|
||||
table.dataTable.display tbody tr.selected > .sorting_3 {
|
||||
background-color: #acbad5;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 {
|
||||
background-color: #f1f1f1;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 {
|
||||
background-color: #f3f3f3;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 {
|
||||
background-color: whitesmoke;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 {
|
||||
background-color: #a6b4cd;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 {
|
||||
background-color: #a8b5cf;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 {
|
||||
background-color: #a9b7d1;
|
||||
}
|
||||
table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 {
|
||||
background-color: #fafafa;
|
||||
}
|
||||
table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 {
|
||||
background-color: #fcfcfc;
|
||||
}
|
||||
table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 {
|
||||
background-color: #fefefe;
|
||||
}
|
||||
table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 {
|
||||
background-color: #acbad5;
|
||||
}
|
||||
table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 {
|
||||
background-color: #aebcd6;
|
||||
}
|
||||
table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 {
|
||||
background-color: #afbdd8;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
|
||||
background-color: #eaeaea;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
|
||||
background-color: #ececec;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
|
||||
background-color: #efefef;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
|
||||
background-color: #a2aec7;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
|
||||
background-color: #a3b0c9;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
|
||||
background-color: #a5b2cb;
|
||||
}
|
||||
table.dataTable.no-footer {
|
||||
border-bottom: 1px solid #111;
|
||||
}
|
||||
table.dataTable.nowrap th, table.dataTable.nowrap td {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable.compact thead th,
|
||||
table.dataTable.compact thead td {
|
||||
padding: 4px 17px;
|
||||
}
|
||||
table.dataTable.compact tfoot th,
|
||||
table.dataTable.compact tfoot td {
|
||||
padding: 4px;
|
||||
}
|
||||
table.dataTable.compact tbody th,
|
||||
table.dataTable.compact tbody td {
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
table.dataTable th,
|
||||
table.dataTable td {
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
/*
|
||||
* Control feature layout
|
||||
*/
|
||||
.dataTables_wrapper {
|
||||
position: relative;
|
||||
clear: both;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_length {
|
||||
float: left;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_length select {
|
||||
border: 1px solid #aaa;
|
||||
border-radius: 3px;
|
||||
padding: 5px;
|
||||
background-color: transparent;
|
||||
padding: 4px;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_filter {
|
||||
float: right;
|
||||
text-align: right;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_filter input {
|
||||
border: 1px solid #aaa;
|
||||
border-radius: 3px;
|
||||
padding: 5px;
|
||||
background-color: transparent;
|
||||
margin-left: 3px;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_info {
|
||||
clear: both;
|
||||
float: left;
|
||||
padding-top: 0.755em;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate {
|
||||
float: right;
|
||||
text-align: right;
|
||||
padding-top: 0.25em;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button {
|
||||
box-sizing: border-box;
|
||||
display: inline-block;
|
||||
min-width: 1.5em;
|
||||
padding: 0.5em 1em;
|
||||
margin-left: 2px;
|
||||
text-align: center;
|
||||
text-decoration: none !important;
|
||||
cursor: pointer;
|
||||
*cursor: hand;
|
||||
color: #333 !important;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 2px;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
|
||||
color: #333 !important;
|
||||
border: 1px solid #979797;
|
||||
background-color: white;
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #dcdcdc));
|
||||
/* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, white 0%, #dcdcdc 100%);
|
||||
/* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, white 0%, #dcdcdc 100%);
|
||||
/* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, white 0%, #dcdcdc 100%);
|
||||
/* IE10+ */
|
||||
background: -o-linear-gradient(top, white 0%, #dcdcdc 100%);
|
||||
/* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, white 0%, #dcdcdc 100%);
|
||||
/* W3C */
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
|
||||
cursor: default;
|
||||
color: #666 !important;
|
||||
border: 1px solid transparent;
|
||||
background: transparent;
|
||||
box-shadow: none;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
|
||||
color: white !important;
|
||||
border: 1px solid #111;
|
||||
background-color: #585858;
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111));
|
||||
/* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, #585858 0%, #111 100%);
|
||||
/* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, #585858 0%, #111 100%);
|
||||
/* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, #585858 0%, #111 100%);
|
||||
/* IE10+ */
|
||||
background: -o-linear-gradient(top, #585858 0%, #111 100%);
|
||||
/* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, #585858 0%, #111 100%);
|
||||
/* W3C */
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button:active {
|
||||
outline: none;
|
||||
background-color: #2b2b2b;
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c));
|
||||
/* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* IE10+ */
|
||||
background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* W3C */
|
||||
box-shadow: inset 0 0 3px #111;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .ellipsis {
|
||||
padding: 0 1em;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_processing {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
width: 100%;
|
||||
height: 40px;
|
||||
margin-left: -50%;
|
||||
margin-top: -25px;
|
||||
padding-top: 20px;
|
||||
text-align: center;
|
||||
font-size: 1.2em;
|
||||
background-color: white;
|
||||
background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0)));
|
||||
background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
}
|
||||
.dataTables_wrapper .dataTables_length,
|
||||
.dataTables_wrapper .dataTables_filter,
|
||||
.dataTables_wrapper .dataTables_info,
|
||||
.dataTables_wrapper .dataTables_processing,
|
||||
.dataTables_wrapper .dataTables_paginate {
|
||||
color: #333;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_scroll {
|
||||
clear: both;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
|
||||
*margin-top: -1px;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {
|
||||
vertical-align: middle;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th > div.dataTables_sizing,
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td > div.dataTables_sizing, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th > div.dataTables_sizing,
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td > div.dataTables_sizing {
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
}
|
||||
.dataTables_wrapper.no-footer .dataTables_scrollBody {
|
||||
border-bottom: 1px solid #111;
|
||||
}
|
||||
.dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,
|
||||
.dataTables_wrapper.no-footer div.dataTables_scrollBody > table {
|
||||
border-bottom: none;
|
||||
}
|
||||
.dataTables_wrapper:after {
|
||||
visibility: hidden;
|
||||
display: block;
|
||||
content: "";
|
||||
clear: both;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 767px) {
|
||||
.dataTables_wrapper .dataTables_info,
|
||||
.dataTables_wrapper .dataTables_paginate {
|
||||
float: none;
|
||||
text-align: center;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate {
|
||||
margin-top: 0.5em;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 640px) {
|
||||
.dataTables_wrapper .dataTables_length,
|
||||
.dataTables_wrapper .dataTables_filter {
|
||||
float: none;
|
||||
text-align: center;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_filter {
|
||||
margin-top: 0.5em;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BIN
docs/_static/images/IPSec_close_action_settings.jpg
vendored
Normal file
|
After Width: | Height: | Size: 61 KiB |
BIN
docs/_static/images/VyOS_Dual-Hub_DMVPN.png
vendored
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
docs/_static/images/openvpn_site2site_diagram.jpg
vendored
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
docs/_static/images/password-recovery-01.png
vendored
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
docs/_static/images/vrf-example-topology-01.png
vendored
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
docs/_static/images/wireguard_qrcode.jpg
vendored
Normal file
|
After Width: | Height: | Size: 131 KiB |
BIN
docs/_static/images/wireguard_site2site_diagram.jpg
vendored
Normal file
|
After Width: | Height: | Size: 20 KiB |
15389
docs/_static/js/datatables.js
vendored
Normal file
4
docs/_static/js/tables.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
$(document).ready(function() {
|
||||
$('#table-cfgcmd').DataTable();
|
||||
$('#table-opcmd').DataTable();
|
||||
} );
|
||||
4
docs/_templates/layout.html
vendored
@ -1,4 +1,8 @@
|
||||
{% extends "!layout.html" %}
|
||||
{%- set current_version = "1.3.x equuleus" %}
|
||||
{% block extrahead %}
|
||||
<link href="{{ pathto("_static/css/custom.css", True) }}" rel="stylesheet" type="text/css">
|
||||
<link href="{{ pathto("_static/css/datatables.css", True) }}" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" charset="utf8" src="{{ pathto("_static/js/datatables.js", True) }}"></script>
|
||||
<script type="text/javascript" charset="utf8" src="{{ pathto("_static/js/tables.js", True) }}"></script>
|
||||
{% endblock %}
|
||||
118
docs/automation/cloud-init.rst
Normal file
@ -0,0 +1,118 @@
|
||||
:lastproofread: 2022-08-24
|
||||
|
||||
.. _cloud-init:
|
||||
|
||||
###############
|
||||
VyOS cloud-init
|
||||
###############
|
||||
|
||||
Cloud and virtualized instances of VyOS are initialized using the
|
||||
industry-standard cloud-init. Via cloud-init, the system performs tasks such as
|
||||
injecting SSH keys and configuring the network. In addition, the user can supply
|
||||
a custom configuration at the time of instance launch.
|
||||
|
||||
**************
|
||||
Config Sources
|
||||
**************
|
||||
|
||||
VyOS support three types of config sources.
|
||||
|
||||
* Metadata - Metadata is sourced by the cloud platform or hypervisor.
|
||||
In some clouds, there is implemented as an HTTP endpoint at
|
||||
http://169.254.169.254.
|
||||
* Network configuration - This config source informs the system about the
|
||||
network settings like IP addresses, routes, DNS. Available only in several
|
||||
cloud and virtualization platforms.
|
||||
* User-data - User-data is specified by the user. This config source offers the
|
||||
ability to insert any CLI configuration commands into the configuration before
|
||||
the first boot.
|
||||
|
||||
*********
|
||||
User-data
|
||||
*********
|
||||
|
||||
Major cloud providers offer a means of providing user-data at the time of
|
||||
instance launch. It can be provided as plain text or as base64-encoded text,
|
||||
depending on cloud provider. Also, it can be compressed using gzip, which makes
|
||||
sense with a long configuration commands list, because of the hard limit to
|
||||
~16384 bytes for the whole user-data.
|
||||
|
||||
The easiest way to configure the system via user-data is the Cloud-config syntax
|
||||
described below.
|
||||
|
||||
********************
|
||||
Cloud-config modules
|
||||
********************
|
||||
|
||||
In VyOS, by default, enabled only two modules:
|
||||
|
||||
* ``write_files`` - this module allows to insert any files into the filesystem
|
||||
before the first boot, for example, pre-generated encryption keys,
|
||||
certificates, or even a whole ``config.boot`` file.
|
||||
* ``vyos_userdata`` - the module accepts a list of CLI configuration commands in
|
||||
a ``vyos_config_commands`` section, which gives an easy way to configure the
|
||||
system during deployment.
|
||||
|
||||
************************
|
||||
cloud-config file format
|
||||
************************
|
||||
|
||||
A cloud-config document is written in YAML. The file must begin
|
||||
with ``#cloud-config`` line. The key used to designate a VyOS configuration
|
||||
is ``vyos_config_commands``. What follows is VyOS configuration using
|
||||
the "set-style" syntax. Both "set" and "delete" commands are supported.
|
||||
|
||||
Commands requirements:
|
||||
|
||||
* one command per line
|
||||
* if command ends in a value, it must be inside single quotes
|
||||
* a single-quote symbol is not allowed inside command or value
|
||||
|
||||
The commands list produced by the ``show configuration commands`` command on a
|
||||
VyOS router should comply with all the requirements, so it is easy to get a
|
||||
proper commands list by copying it from another router.
|
||||
|
||||
The configuration specified in the cloud-config document overwrites default
|
||||
configuration values and values configured via Metadata.
|
||||
|
||||
Here is an example cloud-config.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
#cloud-config
|
||||
vyos_config_commands:
|
||||
- set system host-name 'vyos-prod-ashburn'
|
||||
- set system ntp server 1.pool.ntp.org
|
||||
- set system ntp server 2.pool.ntp.org
|
||||
- delete interfaces ethernet eth1 address 'dhcp'
|
||||
- set interfaces ethernet eth1 address '192.0.2.247/24'
|
||||
- set protocols static route 198.51.100.0/24 next-hop '192.0.2.1'
|
||||
|
||||
*************************
|
||||
System Defaults/Fallbacks
|
||||
*************************
|
||||
|
||||
These are the VyOS defaults and fallbacks.
|
||||
|
||||
* SSH is configured on port 22
|
||||
* ``vyos``/``vyos`` credentials if no others specified by data source
|
||||
* DHCP on first Ethernet interface if no network configuration is provided
|
||||
|
||||
All of these can be overridden using the configuration in user-data.
|
||||
|
||||
***************
|
||||
Troubleshooting
|
||||
***************
|
||||
|
||||
If you encounter problems, verify that the cloud-config document contains
|
||||
valid YAML. Online resources such as https://www.yamllint.com/ provide a
|
||||
simple tool for validating YAML.
|
||||
|
||||
cloud-init logs to /var/log/cloud-init.log. This file can be helpful in
|
||||
determining why the configuration varies from what you expect. You can fetch the
|
||||
most important data filtering output for ``vyos`` keyword:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
sudo grep vyos /var/log/cloud-init.log
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
:lastproofread: 2023-01-16
|
||||
|
||||
.. _command-scripting:
|
||||
|
||||
Command Scripting
|
||||
@ -33,7 +35,7 @@ example, if you want to disable a BGP peer on VRRP transition to backup:
|
||||
Run operational commands
|
||||
------------------------
|
||||
|
||||
Unlike a normal configuration sessions, all operational commands must be
|
||||
Unlike a normal configuration session, all operational commands must be
|
||||
prepended with ``run``, even if you haven't created a session with configure.
|
||||
|
||||
.. code-block:: none
|
||||
@ -43,9 +45,36 @@ prepended with ``run``, even if you haven't created a session with configure.
|
||||
run show interfaces
|
||||
exit
|
||||
|
||||
Other script language
|
||||
Run commands remotely
|
||||
---------------------
|
||||
|
||||
Sometimes you simply wan't to execute a bunch of op-mode commands via SSH on
|
||||
a remote VyOS system.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
ssh 192.0.2.1 'vbash -s' <<EOF
|
||||
source /opt/vyatta/etc/functions/script-template
|
||||
run show interfaces
|
||||
exit
|
||||
EOF
|
||||
|
||||
Will return:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
Welcome to VyOS
|
||||
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
|
||||
Interface IP Address S/L Description
|
||||
--------- ---------- --- -----------
|
||||
eth0 192.0.2.1/24 u/u
|
||||
lo 127.0.0.1/8 u/u
|
||||
::1/128
|
||||
|
||||
|
||||
Other script languages
|
||||
----------------------
|
||||
|
||||
If you want to script the configs in a language other than bash you can have
|
||||
your script output commands and then source them in a bash script.
|
||||
|
||||
@ -104,14 +133,71 @@ group, the script can be safeguarded like this:
|
||||
exec sg vyattacfg -c "/bin/vbash $(readlink -f $0) $@"
|
||||
fi
|
||||
|
||||
Executing pre-hooks/post-hooks Scripts
|
||||
--------------------------------------
|
||||
|
||||
VyOS has the ability to run custom scripts before and after each commit
|
||||
|
||||
The default directories where your custom Scripts should be located are:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
/config/scripts/commit/pre-hooks.d - Directory with scripts that run before
|
||||
each commit.
|
||||
|
||||
/config/scripts/commit/post-hooks.d - Directory with scripts that run after
|
||||
each commit.
|
||||
|
||||
Scripts are run in alphabetical order. Their names must consist entirely of
|
||||
ASCII upper- and lower-case letters,ASCII digits, ASCII underscores, and
|
||||
ASCII minus-hyphens.No other characters are allowed.
|
||||
|
||||
.. note:: Custom scripts are not executed with root privileges
|
||||
(Use sudo inside if this is necessary).
|
||||
|
||||
A simple example is shown below, where the ops command executed in
|
||||
the post-hook script is "show interfaces".
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
vyos@vyos# set interfaces ethernet eth1 address 192.0.2.3/24
|
||||
vyos@vyos# commit
|
||||
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
|
||||
Interface IP Address S/L Description
|
||||
--------- ---------- --- -----------
|
||||
eth0 198.51.100.10/24 u/u
|
||||
eth1 192.0.2.3/24 u/u
|
||||
eth2 - u/u
|
||||
eth3 - u/u
|
||||
lo 203.0.113.5/24 u/u
|
||||
|
||||
Preconfig on boot
|
||||
-----------------
|
||||
|
||||
The ``/config/scripts/vyos-preconfig-bootup.script`` script is called on boot
|
||||
before the VyOS configuration during boot process.
|
||||
|
||||
Any modifications were done to work around unfixed bugs and implement
|
||||
enhancements that are not complete in the VyOS system can be placed here.
|
||||
|
||||
The default file looks like this:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
#!/bin/sh
|
||||
# This script is executed at boot time before VyOS configuration is applied.
|
||||
# Any modifications required to work around unfixed bugs or use
|
||||
# services not available through the VyOS CLI system can be placed here.
|
||||
|
||||
|
||||
Postconfig on boot
|
||||
------------------
|
||||
|
||||
The ``/config/scripts/vyos-postconfig-bootup.script`` script is called on boot
|
||||
after the VyOS configuration is fully applied.
|
||||
|
||||
Any modifications done to work around unfixed bugs and implement enhancements
|
||||
which are not complete in the VyOS system can be placed here.
|
||||
Any modifications were done to work around unfixed bugs and implement
|
||||
enhancements that are not complete in the VyOS system can be placed here.
|
||||
|
||||
The default file looks like this:
|
||||
|
||||
|
||||
@ -3,13 +3,16 @@ VyOS Automation
|
||||
###############
|
||||
|
||||
|
||||
* Ansible
|
||||
* Saltstack
|
||||
* HTTP-API
|
||||
* startup scripts
|
||||
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
vyos-api
|
||||
vyos-ansible
|
||||
vyos-napalm
|
||||
vyos-netmiko
|
||||
command-scripting
|
||||
cloud-init
|
||||
93
docs/automation/vyos-ansible.rst
Normal file
@ -0,0 +1,93 @@
|
||||
:lastproofread: 2023-01-16
|
||||
|
||||
.. _vyos-ansible:
|
||||
|
||||
Ansible
|
||||
=======
|
||||
|
||||
VyOS supports configuration via ansible.
|
||||
Need to install ``ansible`` and ``python3-paramiko`` module
|
||||
|
||||
Structure of files
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
.
|
||||
├── ansible.cfg
|
||||
├── files
|
||||
│ └── id_rsa_docker.pub
|
||||
├── hosts
|
||||
└── main.yml
|
||||
|
||||
|
||||
File contents
|
||||
-------------
|
||||
|
||||
ansible.cfg
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
[defaults]
|
||||
host_key_checking = no
|
||||
retry_files_enabled = False
|
||||
ANSIBLE_INVENTORY_UNPARSED_FAILED = true
|
||||
|
||||
id_rsa_docker.pub. Needs to declare only public key exactly.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
AAAAB3NzaC1yc2EAAAADAQABAAABAQCoDgfhQJuJRFWJijHn7ZinZ3NWp4hWVrt7HFcvn0kgtP/5PeCtMt
|
||||
|
||||
|
||||
hosts
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
[vyos_hosts]
|
||||
r11 ansible_ssh_host=192.0.2.11
|
||||
|
||||
[vyos_hosts:vars]
|
||||
ansible_python_interpreter=/usr/bin/python3
|
||||
ansible_user=vyos
|
||||
ansible_ssh_pass=vyos
|
||||
ansible_network_os=vyos
|
||||
ansible_connection=network_cli
|
||||
|
||||
main.yml
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
---
|
||||
|
||||
- hosts: r11
|
||||
|
||||
connection: network_cli
|
||||
gather_facts: 'no'
|
||||
|
||||
tasks:
|
||||
- name: Configure remote r11
|
||||
vyos_config:
|
||||
lines:
|
||||
- set system host-name r11
|
||||
- set system name-server 203.0.113.254
|
||||
- set service ssh disable-host-validation
|
||||
- set system login user vyos authentication public-keys docker@work type ssh-rsa
|
||||
- set system login user vyos authentication public-keys docker@work key "{{ lookup('file', 'id_rsa_docker.pub') }}"
|
||||
- set system time-zone America/Los_Angeles
|
||||
- set interfaces ethernet eth0 description WAN
|
||||
|
||||
Run ansible
|
||||
-----------
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
$ ansible-playbook -i hosts main.yml
|
||||
|
||||
PLAY [r11] ******************************************************************************************************************************************************************************************************
|
||||
|
||||
TASK [Configure remote r11] *************************************************************************************************************************************************************************************
|
||||
changed: [r11]
|
||||
|
||||
PLAY RECAP *****************************************************************************************************************************************************************************************************
|
||||
r11 : ok=1 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
|
||||
|
||||
336
docs/automation/vyos-api.rst
Normal file
@ -0,0 +1,336 @@
|
||||
:lastproofread: 2023-01-16
|
||||
|
||||
.. _vyosapi:
|
||||
|
||||
########
|
||||
VyOS API
|
||||
########
|
||||
|
||||
For configuration and enabling the API see :ref:`http-api`
|
||||
|
||||
**************
|
||||
Authentication
|
||||
**************
|
||||
|
||||
All endpoints only listen on HTTP POST requests and the API KEY must set as
|
||||
``key`` in the formdata.
|
||||
|
||||
Below see one example for curl and one for python.
|
||||
The rest of the documentation is reduced to curl.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl --location --request POST 'https://vyos/retrieve' \
|
||||
--form data='{"op": "showConfig", "path": []}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
import requests
|
||||
url = "https://vyos/retrieve"
|
||||
payload={'data': '{"op": "showConfig", "path": []}',
|
||||
'key': 'MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
}
|
||||
headers = {}
|
||||
response = requests.request("POST", url, headers=headers, data=payload)
|
||||
print(response.text)
|
||||
|
||||
|
||||
*************
|
||||
API Endpoints
|
||||
*************
|
||||
|
||||
/retrieve
|
||||
=========
|
||||
|
||||
With the ``retrieve`` endpoint you get parts or the whole configuration.
|
||||
|
||||
To get the whole configuration, pass an empty list to the ``path`` field
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl --location --request POST 'https://vyos/retrieve' \
|
||||
--form data='{"op": "showConfig", "path": []}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
|
||||
response (shorted)
|
||||
{
|
||||
"success": true,
|
||||
"data": {
|
||||
"interfaces": {
|
||||
"ethernet": {
|
||||
"eth0": {
|
||||
"address": "dhcp",
|
||||
"duplex": "auto",
|
||||
"hw-id": "50:00:00:01:00:00",
|
||||
"speed": "auto"
|
||||
},
|
||||
"eth1": {
|
||||
"duplex": "auto",
|
||||
"hw-id": "50:00:00:01:00:01",
|
||||
"speed": "auto"
|
||||
...
|
||||
},
|
||||
"error": null
|
||||
}
|
||||
|
||||
|
||||
To only get a part of the configuration, for example ``system syslog``.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/retrieve' \
|
||||
--form data='{"op": "showConfig", "path": ["system", "syslog"]}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": {
|
||||
"global": {
|
||||
"facility": {
|
||||
"all": {
|
||||
"level": "info"
|
||||
},
|
||||
"protocols": {
|
||||
"level": "debug"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": null
|
||||
}
|
||||
|
||||
if you just want the Value of a multi-valued node, use the ``returnValues``
|
||||
operation.
|
||||
|
||||
For example, get the addresses of a ``dum0`` interface.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/retrieve' \
|
||||
--form data='{"op": "returnValues", "path": ["interfaces","dummy","dum0","address"]}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
respone:
|
||||
{
|
||||
"success": true,
|
||||
"data": [
|
||||
"10.10.10.10/24",
|
||||
"10.10.10.11/24",
|
||||
"10.10.10.12/24"
|
||||
],
|
||||
"error": null
|
||||
}
|
||||
|
||||
/reset
|
||||
======
|
||||
|
||||
The ``reset`` endpoint run a ``reset`` command.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl --location --request POST 'https://vyos/reset' \
|
||||
--form data='{"op": "reset", "path": ["ip", "bgp", "192.0.2.11"]}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
respone:
|
||||
{
|
||||
"success": true,
|
||||
"data": "",
|
||||
"error": null
|
||||
}
|
||||
|
||||
/image
|
||||
======
|
||||
|
||||
To add or delete an image, use the ``/image`` endpoint.
|
||||
|
||||
add an image
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/image' \
|
||||
--form data='{"op": "add", "url": "https://downloads.vyos.io/rolling/current/amd64/vyos-rolling-latest.iso"}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
respone (shorted):
|
||||
{
|
||||
"success": true,
|
||||
"data": "Trying to fetch ISO file from https://downloads.vyos.io/rolling-latest.iso\n
|
||||
...
|
||||
Setting up grub configuration...\nDone.\n",
|
||||
"error": null
|
||||
}
|
||||
|
||||
delete an image, for example ``1.3-rolling-202006070117``
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/image' \
|
||||
--form data='{"op": "delete", "name": "1.3-rolling-202006070117"}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": "Deleting the \"1.3-rolling-202006070117\" image...\nDone\n",
|
||||
"error": null
|
||||
}
|
||||
|
||||
|
||||
/show
|
||||
=====
|
||||
|
||||
The ``/show`` endpoint is to show everything in the operational mode.
|
||||
|
||||
For example, show which images are installed.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/show' \
|
||||
--form data='{"op": "show", "path": ["system", "image"]}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": "The system currently has the following image(s) installed:\n\n
|
||||
1: 1.4-rolling-202102280559 (default boot)\n
|
||||
2: 1.4-rolling-202102230218\n
|
||||
3: 1.3-beta-202102210443\n\n",
|
||||
"error": null
|
||||
}
|
||||
|
||||
|
||||
/generate
|
||||
=========
|
||||
|
||||
The ``generate`` endpoint run a ``generate`` command.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/generate' \
|
||||
--form data='{"op": "generate", "path": ["wireguard", "default-keypair"]}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": "",
|
||||
"error": null
|
||||
}
|
||||
|
||||
|
||||
/configure
|
||||
==========
|
||||
|
||||
You can pass a ``set``, ``delete`` or ``comment`` command to the
|
||||
``/configure`` endpoint.
|
||||
|
||||
``set`` a single command
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/configure' \
|
||||
--form data='{"op": "set", "path": ["interfaces", "dummy", "dum1", "address", "10.11.0.1/32"]}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": null,
|
||||
"error": null
|
||||
}
|
||||
|
||||
|
||||
``delete`` a single command
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/configure' \
|
||||
--form data='{"op": "delete", "path": ["interfaces", "dummy", "dum1", "address", "10.11.0.1/32"]}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": null,
|
||||
"error": null
|
||||
}
|
||||
|
||||
The API pushes every request to a session and commit it.
|
||||
But some of VyOS components like DHCP and PPPoE Servers, IPSec, VXLAN, and
|
||||
other tunnels require full configuration for commit.
|
||||
The endpoint will process multiple commands when you pass them as a list to
|
||||
the ``data`` field.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/configure' \
|
||||
--form data='[{"op": "set","path":["interfaces","vxlan","vxlan1","remote","203.0.113.99"]}, {"op": "set","path":["interfaces","vxlan","vxlan1","vni","1"]}]' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": null,
|
||||
"error": null
|
||||
}
|
||||
|
||||
|
||||
/config-file
|
||||
============
|
||||
|
||||
The endpoint ``/config-file`` is to save or load a configuration.
|
||||
|
||||
Save a running configuration to the startup configuration.
|
||||
When you don't specify the file when saving, it saves to
|
||||
``/config/config.boot``.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/config-file' \
|
||||
--form data='{"op": "save"}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": "Saving configuration to '/config/config.boot'...\nDone\n",
|
||||
"error": null
|
||||
}
|
||||
|
||||
|
||||
Save a running configuration to a file.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/config-file' \
|
||||
--form data='{"op": "save", "file": "/config/test.config"}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": "Saving configuration to '/config/test.config'...\nDone\n",
|
||||
"error": null
|
||||
}
|
||||
|
||||
|
||||
To Load a configuration file.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
curl -k --location --request POST 'https://vyos/config-file' \
|
||||
--form data='{"op": "load", "file": "/config/test.config"}' \
|
||||
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
|
||||
|
||||
response:
|
||||
{
|
||||
"success": true,
|
||||
"data": null,
|
||||
"error": null
|
||||
}
|
||||
144
docs/automation/vyos-napalm.rst
Normal file
@ -0,0 +1,144 @@
|
||||
:lastproofread: 2023-01-16
|
||||
|
||||
.. _vyos-napalm:
|
||||
|
||||
Napalm
|
||||
======
|
||||
|
||||
VyOS supports some napalm_ functions for configuration and op-mode.
|
||||
It requires more tests.
|
||||
|
||||
Install ``napalm-vyos`` module
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
apt install python3-pip
|
||||
pip3 install napalm
|
||||
pip3 install napalm-vyos
|
||||
|
||||
|
||||
Op-mode
|
||||
-------
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import json
|
||||
from napalm import get_network_driver
|
||||
|
||||
driver = get_network_driver('vyos')
|
||||
|
||||
vyos_router = driver(
|
||||
hostname="192.0.2.1",
|
||||
username="vyos",
|
||||
password="vyospass",
|
||||
optional_args={"port": 22},
|
||||
)
|
||||
|
||||
vyos_router.open()
|
||||
output = vyos_router.get_facts()
|
||||
print(json.dumps(output, indent=4))
|
||||
|
||||
output = vyos_router.get_arp_table()
|
||||
print(json.dumps(output, indent=4))
|
||||
|
||||
vyos_router.close()
|
||||
|
||||
Output op-mode
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
$ ./vyos-napalm.py
|
||||
{
|
||||
"uptime": 7185,
|
||||
"vendor": "VyOS",
|
||||
"os_version": "1.3.0-rc5",
|
||||
"serial_number": "",
|
||||
"model": "Standard PC (Q35 + ICH9, 2009)",
|
||||
"hostname": "r4-1.3",
|
||||
"fqdn": "vyos.local",
|
||||
"interface_list": [
|
||||
"eth0",
|
||||
"eth1",
|
||||
"eth2",
|
||||
"lo",
|
||||
"vtun10"
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"interface": "eth1",
|
||||
"mac": "52:54:00:b2:38:2c",
|
||||
"ip": "192.0.2.2",
|
||||
"age": 0.0
|
||||
},
|
||||
{
|
||||
"interface": "eth0",
|
||||
"mac": "52:54:00:a2:b9:5b",
|
||||
"ip": "203.0.113.11",
|
||||
"age": 0.0
|
||||
}
|
||||
]
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
We need 2 files, commands.conf and script itself.
|
||||
|
||||
Content of commands.conf
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
set service ssh disable-host-validation
|
||||
set service ssh port '2222'
|
||||
set system name-server '192.0.2.8'
|
||||
set system name-server '203.0.113.8'
|
||||
set interfaces ethernet eth1 description 'FOO'
|
||||
|
||||
Script vyos-napalm.py
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from napalm import get_network_driver
|
||||
|
||||
driver = get_network_driver('vyos')
|
||||
|
||||
vyos_router = driver(
|
||||
hostname="192.0.2.1",
|
||||
username="vyos",
|
||||
password="vyospass",
|
||||
optional_args={"port": 22},
|
||||
)
|
||||
|
||||
vyos_router.open()
|
||||
vyos_router.load_merge_candidate(filename='commands.conf')
|
||||
diffs = vyos_router.compare_config()
|
||||
|
||||
if bool(diffs) == True:
|
||||
print(diffs)
|
||||
vyos_router.commit_config()
|
||||
else:
|
||||
print('No configuration changes to commit')
|
||||
vyos_router.discard_config()
|
||||
|
||||
vyos_router.close()
|
||||
|
||||
Output
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
$./vyos-napalm.py
|
||||
[edit interfaces ethernet eth1]
|
||||
+description FOO
|
||||
[edit service ssh]
|
||||
+disable-host-validation
|
||||
+port 2222
|
||||
[edit system]
|
||||
+name-server 192.0.2.8
|
||||
+name-server 203.0.113.8
|
||||
[edit]
|
||||
|
||||
.. _napalm: https://napalm.readthedocs.io/en/latest/base.html
|
||||
72
docs/automation/vyos-netmiko.rst
Normal file
@ -0,0 +1,72 @@
|
||||
:lastproofread: 2023-01-16
|
||||
|
||||
.. _vyos-netmiko:
|
||||
|
||||
Netmiko
|
||||
=======
|
||||
|
||||
VyOS supports configuration via netmiko_.
|
||||
It requires to install ``python3-netmiko`` module.
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from netmiko import ConnectHandler
|
||||
|
||||
vyos_router = {
|
||||
"device_type": "vyos",
|
||||
"host": "192.0.2.1",
|
||||
"username": "vyos",
|
||||
"password": "vyospass",
|
||||
"port": 22,
|
||||
}
|
||||
|
||||
net_connect = ConnectHandler(**vyos_router)
|
||||
|
||||
config_commands = [
|
||||
'set interfaces ethernet eth0 description WAN',
|
||||
'set interfaces ethernet eth1 description LAN',
|
||||
]
|
||||
|
||||
# set congiguration
|
||||
output = net_connect.send_config_set(config_commands, exit_config_mode=False)
|
||||
print(output)
|
||||
|
||||
# commit configuration
|
||||
output = net_connect.commit()
|
||||
print(output)
|
||||
|
||||
# op-mode commands
|
||||
output = net_connect.send_command("run show interfaces")
|
||||
print(output)
|
||||
|
||||
Output
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
$ ./vyos-netmiko.py
|
||||
configure
|
||||
set interfaces ethernet eth0 description WAN
|
||||
[edit]
|
||||
vyos@r4-1.3# set interfaces ethernet eth1 description LAN
|
||||
[edit]
|
||||
vyos@r4-1.3#
|
||||
commit
|
||||
[edit]
|
||||
vyos@r4-1.3#
|
||||
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
|
||||
Interface IP Address S/L Description
|
||||
--------- ---------- --- -----------
|
||||
eth0 203.0.113.1/24 u/u WAN
|
||||
eth1 192.0.2.1/30 u/u LAN
|
||||
eth2 - u/u
|
||||
lo 127.0.0.1/8 u/u
|
||||
::1/128
|
||||
vtun10 10.10.0.1/24 u/u
|
||||
[edit]
|
||||
|
||||
.. _netmiko: https://github.com/ktbyers/netmiko
|
||||
5632
docs/changelog/1.3.rst
Normal file
@ -10,6 +10,7 @@ Changelog
|
||||
:maxdepth: 1
|
||||
:includehidden:
|
||||
|
||||
1.3
|
||||
1.2.6
|
||||
1.2.5
|
||||
1.2.4
|
||||
|
||||
110
docs/cli.rst
@ -110,7 +110,6 @@ files.
|
||||
Terminology
|
||||
###########
|
||||
|
||||
live
|
||||
A VyOS system has three major types of configurations:
|
||||
|
||||
* **Active** or **running configuration** is the system configuration
|
||||
@ -229,6 +228,111 @@ special way on how to :ref:`run_opmode_from_config_mode`.
|
||||
|
||||
.. _`forum`: https://forum.vyos.io
|
||||
|
||||
.. opcmd:: show configuration json
|
||||
|
||||
View the current active configuration in JSON format.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
{"interfaces": {"ethernet": {"eth0": {"address": ["192.0.2.11/24", "192.0.2.35/24"], "hw-id": "52:54:00:48:a0:c6"}, "eth1": {"address": ["203.0.113.1/24"], "hw-id": "52:54:00:fc:50:0b"}}, "loopback": {"lo": {}}}, "protocols": {"static": {"route": {"0.0.0.0/0": {"next-hop": {"192.0.2.254": {}}}}}}, "service": {"ssh": {"disable-host-validation": {}}}, "system": {"config-management": {"commit-revisions": "100"}, "console": {"device": {"ttyS0": {"speed": "115200"}}}, "host-name": "r11-vyos", "login": {"user": {"vyos": {"authentication": {"encrypted-password": "$6$Vt68...F0", "plaintext-password": "", "public-keys": {"vyos@vyos": {"key": "AAAAxxx=", "type": "ssh-rsa"}}}}}}, "name-server": ["203.0.113.254"], "ntp": {"server": {"time1.vyos.net": {}, "time2.vyos.net": {}, "time3.vyos.net": {}}}, "syslog": {"global": {"facility": {"all": {"level": "info"}, "protocols": {"level": "debug"}}}}, "time-zone": "America/New_York"}}
|
||||
|
||||
.. opcmd:: show configuration json pretty
|
||||
|
||||
View the current active configuration in readable JSON format.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
{
|
||||
"interfaces": {
|
||||
"ethernet": {
|
||||
"eth0": {
|
||||
"address": [
|
||||
"192.0.2.11/24",
|
||||
"192.0.2.35/24"
|
||||
],
|
||||
"hw-id": "52:54:00:48:a0:c6"
|
||||
},
|
||||
"eth1": {
|
||||
"address": [
|
||||
"203.0.113.1/24"
|
||||
],
|
||||
"hw-id": "52:54:00:fc:50:0b"
|
||||
}
|
||||
},
|
||||
"loopback": {
|
||||
"lo": {}
|
||||
}
|
||||
},
|
||||
"protocols": {
|
||||
"static": {
|
||||
"route": {
|
||||
"0.0.0.0/0": {
|
||||
"next-hop": {
|
||||
"192.0.2.254": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"ssh": {
|
||||
"disable-host-validation": {}
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"config-management": {
|
||||
"commit-revisions": "100"
|
||||
},
|
||||
"console": {
|
||||
"device": {
|
||||
"ttyS0": {
|
||||
"speed": "115200"
|
||||
}
|
||||
}
|
||||
},
|
||||
"host-name": "r11-vyos",
|
||||
"login": {
|
||||
"user": {
|
||||
"vyos": {
|
||||
"authentication": {
|
||||
"encrypted-password": "$6$Vt68...F0",
|
||||
"plaintext-password": "",
|
||||
"public-keys": {
|
||||
"vyos@vyos": {
|
||||
"key": "AAAAxxx=",
|
||||
"type": "ssh-rsa"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"name-server": [
|
||||
"203.0.113.254"
|
||||
],
|
||||
"ntp": {
|
||||
"server": {
|
||||
"time1.vyos.net": {},
|
||||
"time2.vyos.net": {},
|
||||
"time3.vyos.net": {}
|
||||
}
|
||||
},
|
||||
"syslog": {
|
||||
"global": {
|
||||
"facility": {
|
||||
"all": {
|
||||
"level": "info"
|
||||
},
|
||||
"protocols": {
|
||||
"level": "debug"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"time-zone": "America/New_York"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
The config mode
|
||||
---------------
|
||||
@ -404,7 +508,7 @@ different levels in the hierarchy.
|
||||
Use this command to preserve configuration changes upon reboot. By
|
||||
default it is stored at */config/config.boot*. In the case you want
|
||||
to store the configuration file somewhere else, you can add a local
|
||||
path, an SCP address, an FTP address or a TFTP address.
|
||||
path, a SCP address, a FTP address or a TFTP address.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
@ -455,7 +559,7 @@ different levels in the hierarchy.
|
||||
a firewall, and you are not sure there are no mistakes that will lock
|
||||
you out of your system. You can use confirmed commit. If you issue
|
||||
the ``commit-confirm`` command, your changes will be commited, and if
|
||||
you don't issue issue the ``confirm`` command in 10 minutes, your
|
||||
you don't issue the ``confirm`` command in 10 minutes, your
|
||||
system will reboot into previous config revision.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
@ -45,6 +45,8 @@ extensions = ['sphinx.ext.intersphinx',
|
||||
'sphinx.ext.ifconfig',
|
||||
'sphinx.ext.graphviz',
|
||||
'notfound.extension',
|
||||
'myst_parser',
|
||||
'sphinx_panels',
|
||||
'vyos'
|
||||
]
|
||||
|
||||
@ -67,6 +69,12 @@ master_doc = 'index'
|
||||
# Usually you set "language" from the command line for these cases.
|
||||
language = None
|
||||
|
||||
# https://docs.readthedocs.io/en/stable/guides/manage-translations-sphinx.html#create-translatable-files
|
||||
locale_dirs = ['_locale/']
|
||||
gettext_compact = False
|
||||
gettext_uuid = True
|
||||
|
||||
|
||||
# List of patterns, relative to source directory, that match files and
|
||||
# directories to ignore when looking for source files.
|
||||
# This pattern also affects html_static_path and html_extra_path .
|
||||
|
||||
@ -0,0 +1,956 @@
|
||||
2023-06-07 10:25:38,810 p=81964 u=rob n=ansible | PLAY [Automatic VyOS Lab test] ********************************************************************************************************************************
|
||||
2023-06-07 10:25:38,855 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: fail if node_template_iso is empty] *************************************************************************
|
||||
2023-06-07 10:25:38,870 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:38,877 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:38,883 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:38,885 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:38,889 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:38,892 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: fail if node_template_version is empty] *********************************************************************
|
||||
2023-06-07 10:25:38,912 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:38,919 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:38,919 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:38,921 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:38,925 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:38,928 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: install requirements] ***************************************************************************************
|
||||
2023-06-07 10:25:38,946 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:38,953 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:38,956 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:38,960 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:44,038 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:44,044 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie] *****************************************************************************
|
||||
2023-06-07 10:25:44,067 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:44,074 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:44,077 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:44,082 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:44,766 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:44,769 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: get template facts] *****************************************************************************************
|
||||
2023-06-07 10:25:44,786 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:44,793 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:44,795 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:44,800 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,278 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:45,282 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: Register path status] ***************************************************************************************
|
||||
2023-06-07 10:25:45,304 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,312 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,314 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,319 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,512 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:45,516 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: create path] ************************************************************************************************
|
||||
2023-06-07 10:25:45,530 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,537 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,544 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,547 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,552 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,555 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: Upload iso to eve-ng] ***************************************************************************************
|
||||
2023-06-07 10:25:45,568 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,575 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,582 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,584 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,589 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,592 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: create virtioa.qcow2 file] **********************************************************************************
|
||||
2023-06-07 10:25:45,613 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,620 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,620 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,622 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,626 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,629 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie] *****************************************************************************
|
||||
2023-06-07 10:25:45,648 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,656 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,658 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,658 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,662 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,665 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: create lab for node install] ********************************************************************************
|
||||
2023-06-07 10:25:45,680 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,686 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,694 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,696 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,700 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,703 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: open lab] ***************************************************************************************************
|
||||
2023-06-07 10:25:45,724 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,729 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,729 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,732 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,736 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,738 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : set_fact] **************************************************************************************************************************
|
||||
2023-06-07 10:25:45,751 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,758 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,764 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,767 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,771 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,774 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: add node to lab] ********************************************************************************************
|
||||
2023-06-07 10:25:45,787 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,794 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,801 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,803 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,807 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,811 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: start node] *************************************************************************************************
|
||||
2023-06-07 10:25:45,830 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,837 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,839 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,839 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,843 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,846 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : debug] *****************************************************************************************************************************
|
||||
2023-06-07 10:25:45,860 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,867 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,875 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,877 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,881 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,884 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: get node infos] *********************************************************************************************
|
||||
2023-06-07 10:25:45,897 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,904 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,911 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,913 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,918 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,920 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : set_fact] **************************************************************************************************************************
|
||||
2023-06-07 10:25:45,932 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,939 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,947 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,949 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,953 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,956 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: copy file] **************************************************************************************************
|
||||
2023-06-07 10:25:45,969 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:45,978 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:45,983 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:45,985 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:45,990 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:45,992 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: run expect script] ******************************************************************************************
|
||||
2023-06-07 10:25:46,012 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:46,018 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:46,019 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:46,021 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:46,025 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:46,027 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie (due timeout)] ***************************************************************
|
||||
2023-06-07 10:25:46,040 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:46,048 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:46,055 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:46,057 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:46,061 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:46,064 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: stop node] **************************************************************************************************
|
||||
2023-06-07 10:25:46,084 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:46,091 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:46,091 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:46,093 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:46,097 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:46,100 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: Pause to wait node is shutdown] *****************************************************************************
|
||||
2023-06-07 10:25:46,112 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:46,115 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: delete iso] *************************************************************************************************
|
||||
2023-06-07 10:25:46,136 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:46,143 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:46,143 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:46,145 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:46,150 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:46,153 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: commit virtioa.qcow2] ***************************************************************************************
|
||||
2023-06-07 10:25:46,173 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:46,180 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:46,181 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:46,182 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:46,186 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:46,190 p=81964 u=rob n=ansible | TASK [eve-ng-create-node : DHCPRelay_through_GRE: delete lab for node install] ********************************************************************************
|
||||
2023-06-07 10:25:46,209 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:46,215 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:46,218 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:46,218 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:46,222 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:46,231 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : Get env file content] *****************************************************************************************************************
|
||||
2023-06-07 10:25:46,589 p=81964 u=rob n=ansible | ok: [dhcp-server -> localhost]
|
||||
2023-06-07 10:25:46,589 p=81964 u=rob n=ansible | ok: [vyos-oobm -> localhost]
|
||||
2023-06-07 10:25:46,589 p=81964 u=rob n=ansible | ok: [dhcp-relay -> localhost]
|
||||
2023-06-07 10:25:46,589 p=81964 u=rob n=ansible | ok: [transport -> localhost]
|
||||
2023-06-07 10:25:46,589 p=81964 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:25:46,592 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Load facts] ****************************************************************************************************
|
||||
2023-06-07 10:25:46,616 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:47,762 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:25:47,763 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:25:47,764 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:25:47,768 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:25:47,768 p=81964 u=rob n=ansible | ok: [dhcp-relay]
|
||||
2023-06-07 10:25:47,769 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:25:47,770 p=81964 u=rob n=ansible | ok: [dhcp-server]
|
||||
2023-06-07 10:25:47,770 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:25:47,773 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:25:47,773 p=81964 u=rob n=ansible | ok: [vyos-oobm]
|
||||
2023-06-07 10:25:47,773 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:25:47,776 p=81964 u=rob n=ansible | ok: [transport]
|
||||
2023-06-07 10:25:47,779 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : debug] ********************************************************************************************************************************
|
||||
2023-06-07 10:25:47,797 p=81964 u=rob n=ansible | ok: [eveng] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:25:48,925 p=81964 u=rob n=ansible | ok: [dhcp-relay] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:25:48,925 p=81964 u=rob n=ansible | ok: [vyos-oobm] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:25:48,925 p=81964 u=rob n=ansible | ok: [transport] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:25:48,925 p=81964 u=rob n=ansible | ok: [dhcp-server] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:25:48,928 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: fail if node_template_version is empty] ************************************************************************
|
||||
2023-06-07 10:25:48,941 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:48,948 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:48,954 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:48,957 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:48,961 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:48,964 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie] ********************************************************************************
|
||||
2023-06-07 10:25:48,982 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:48,990 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:48,993 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:48,997 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:49,562 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:49,570 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: get running lab list] ******************************************************************************************
|
||||
2023-06-07 10:25:49,596 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:49,604 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:49,607 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:49,612 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:50,020 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:50,029 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: kill running lab] **********************************************************************************************
|
||||
2023-06-07 10:25:50,053 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:50,055 p=81964 u=rob n=ansible | [WARNING]: conditional statements should not include jinja2 templating delimiters such as {{ }} or {% %}. Found: item.labname == "{{ eve_ng_folder_name }}/{{
|
||||
lab }}"
|
||||
|
||||
2023-06-07 10:25:50,058 p=81964 u=rob n=ansible | skipping: [eveng] => (item={'podid': '0', 'username': 'admin', 'online': '1', 'uuid': '0fc5edef-8cf2-4400-9a1c-0c4c41a1a881', 'size': 0.1996, 'sat': '0', 'sat_name': 'master', 'labid': 1001, 'labname': '/ecmp wireguard\n', 'cpu': 0, 'mem': 0})
|
||||
2023-06-07 10:25:50,060 p=81964 u=rob n=ansible | skipping: [eveng] => (item={'podid': '0', 'username': 'admin', 'online': '1', 'uuid': '9785926c-63ec-42c0-a1ca-a386b9013151', 'size': 0.4115, 'sat': '0', 'sat_name': 'master', 'labid': 1002, 'labname': '/layer2 via IPSec\n', 'cpu': 0, 'mem': 0})
|
||||
2023-06-07 10:25:50,061 p=81964 u=rob n=ansible | skipping: [eveng] => (item={'podid': '0', 'username': 'admin', 'online': '1', 'uuid': 'aa98095e-3b64-45aa-b883-e2b7fdfac08c', 'size': 0.7722, 'sat': '0', 'sat_name': 'master', 'labid': 1003, 'labname': '/ospf\n', 'cpu': 0, 'mem': 0})
|
||||
2023-06-07 10:25:50,068 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:50,069 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:50,069 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:50,077 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:50,080 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: delete existing lab] *******************************************************************************************
|
||||
2023-06-07 10:25:50,099 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:50,106 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:50,108 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:50,114 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:50,495 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:50,504 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Ensure labtest is present] *************************************************************************************
|
||||
2023-06-07 10:25:50,529 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:50,538 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:50,540 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:50,545 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:50,747 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:50,753 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Create DHCPRelay_through_GRE Lab] ******************************************************************************
|
||||
2023-06-07 10:25:50,776 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:50,781 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:50,783 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:50,789 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:51,233 p=81964 u=rob n=ansible | changed: [eveng]
|
||||
2023-06-07 10:25:51,237 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie] ********************************************************************************
|
||||
2023-06-07 10:25:51,256 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:51,263 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:51,266 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:51,271 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:51,836 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:51,840 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: start vyos-oobm] ***********************************************************************************************
|
||||
2023-06-07 10:25:51,866 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:25:51,866 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:51,869 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:51,874 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:52,835 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:25:52,839 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Wait for vyos-oobm] ********************************************************************************************
|
||||
2023-06-07 10:25:52,860 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:25:52,867 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:25:52,869 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:25:52,875 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:25:53,941 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:26:23,973 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:26:23,985 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | Traceback (most recent call last):
|
||||
2023-06-07 10:26:23,986 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:26:23,986 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:26:23,987 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:26:23,987 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:26:23,987 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:26:23,988 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | raise socket.timeout()
|
||||
2023-06-07 10:26:23,988 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | socket.timeout
|
||||
2023-06-07 10:26:23,989 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:26:23,989 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:26:23,989 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:26:23,990 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | Traceback (most recent call last):
|
||||
2023-06-07 10:26:23,990 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:26:23,990 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | self._check_banner()
|
||||
2023-06-07 10:26:23,991 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:26:23,991 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | raise SSHException(
|
||||
2023-06-07 10:26:23,991 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:26:23,992 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:26:55,021 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:26:55,024 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | Traceback (most recent call last):
|
||||
2023-06-07 10:26:55,026 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:26:55,027 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:26:55,028 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:26:55,029 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:26:55,029 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:26:55,030 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | raise socket.timeout()
|
||||
2023-06-07 10:26:55,031 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | socket.timeout
|
||||
2023-06-07 10:26:55,032 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:26:55,032 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:26:55,033 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:26:55,034 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | Traceback (most recent call last):
|
||||
2023-06-07 10:26:55,035 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:26:55,035 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | self._check_banner()
|
||||
2023-06-07 10:26:55,036 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:26:55,037 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | raise SSHException(
|
||||
2023-06-07 10:26:55,037 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:26:55,038 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:26:56,582 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:26:56,822 p=82377 u=rob n=p=82377 u=rob | paramiko [vyos-oobm] | Authentication (publickey) successful!
|
||||
2023-06-07 10:26:57,907 p=81964 u=rob n=ansible | ok: [vyos-oobm]
|
||||
2023-06-07 10:26:57,911 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie] ********************************************************************************
|
||||
2023-06-07 10:26:57,937 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:26:57,938 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:26:57,939 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:26:57,945 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:26:58,716 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:26:58,725 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: get lab status] ************************************************************************************************
|
||||
2023-06-07 10:26:58,757 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:26:58,763 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:26:58,765 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:26:58,771 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:26:59,220 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:26:59,225 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: start all nodes] ***********************************************************************************************
|
||||
2023-06-07 10:26:59,253 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:26:59,256 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:26:59,256 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:26:59,262 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:27:00,222 p=81964 u=rob n=ansible | ok: [eveng] => (item=2)
|
||||
2023-06-07 10:27:01,412 p=81964 u=rob n=ansible | ok: [eveng] => (item=3)
|
||||
2023-06-07 10:27:02,704 p=81964 u=rob n=ansible | ok: [eveng] => (item=4)
|
||||
2023-06-07 10:27:03,316 p=81964 u=rob n=ansible | ok: [eveng] => (item=1)
|
||||
2023-06-07 10:27:04,245 p=81964 u=rob n=ansible | ok: [eveng] => (item=5)
|
||||
2023-06-07 10:27:04,254 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Wait for vyos nodes] *******************************************************************************************
|
||||
2023-06-07 10:27:04,274 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:27:04,282 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:27:05,417 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:27:05,417 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:27:05,417 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:27:35,449 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:27:35,450 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:27:35,452 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | Traceback (most recent call last):
|
||||
2023-06-07 10:27:35,452 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:27:35,452 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:27:35,453 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:27:35,453 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:27:35,453 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:27:35,453 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | raise socket.timeout()
|
||||
2023-06-07 10:27:35,453 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | Traceback (most recent call last):
|
||||
2023-06-07 10:27:35,453 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | socket.timeout
|
||||
2023-06-07 10:27:35,453 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:27:35,453 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:27:35,454 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:27:35,454 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:27:35,454 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:27:35,454 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:27:35,454 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:27:35,454 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | Traceback (most recent call last):
|
||||
2023-06-07 10:27:35,454 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:27:35,454 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:27:35,455 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | raise socket.timeout()
|
||||
2023-06-07 10:27:35,455 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | self._check_banner()
|
||||
2023-06-07 10:27:35,455 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | socket.timeout
|
||||
2023-06-07 10:27:35,455 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:27:35,455 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:27:35,455 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | raise SSHException(
|
||||
2023-06-07 10:27:35,455 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:27:35,455 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:27:35,456 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:27:35,456 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:27:35,456 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | Traceback (most recent call last):
|
||||
2023-06-07 10:27:35,456 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:27:35,456 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | self._check_banner()
|
||||
2023-06-07 10:27:35,456 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:27:35,456 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | raise SSHException(
|
||||
2023-06-07 10:27:35,456 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:27:35,457 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:27:35,457 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:27:35,459 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | Traceback (most recent call last):
|
||||
2023-06-07 10:27:35,459 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:27:35,460 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:27:35,460 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:27:35,460 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:27:35,460 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:27:35,460 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | raise socket.timeout()
|
||||
2023-06-07 10:27:35,460 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | socket.timeout
|
||||
2023-06-07 10:27:35,461 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:27:35,461 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:27:35,461 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:27:35,461 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | Traceback (most recent call last):
|
||||
2023-06-07 10:27:35,461 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:27:35,461 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | self._check_banner()
|
||||
2023-06-07 10:27:35,462 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:27:35,462 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | raise SSHException(
|
||||
2023-06-07 10:27:35,462 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:27:35,462 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:27:53,312 p=82251 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:27:53,416 p=82251 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:28:06,497 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:28:06,498 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | Traceback (most recent call last):
|
||||
2023-06-07 10:28:06,498 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:28:06,499 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:28:06,499 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:28:06,499 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:28:06,499 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:28:06,499 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | raise socket.timeout()
|
||||
2023-06-07 10:28:06,500 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | socket.timeout
|
||||
2023-06-07 10:28:06,500 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:28:06,500 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:28:06,500 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:28:06,500 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | Traceback (most recent call last):
|
||||
2023-06-07 10:28:06,500 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:28:06,501 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | self._check_banner()
|
||||
2023-06-07 10:28:06,501 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:28:06,501 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | raise SSHException(
|
||||
2023-06-07 10:28:06,501 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:28:06,501 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:28:06,504 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:28:06,504 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | Traceback (most recent call last):
|
||||
2023-06-07 10:28:06,505 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:28:06,505 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:28:06,505 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:28:06,505 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:28:06,505 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:28:06,505 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | raise socket.timeout()
|
||||
2023-06-07 10:28:06,506 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | socket.timeout
|
||||
2023-06-07 10:28:06,506 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:28:06,506 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:28:06,506 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:28:06,506 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | Traceback (most recent call last):
|
||||
2023-06-07 10:28:06,506 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:28:06,506 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:28:06,507 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | self._check_banner()
|
||||
2023-06-07 10:28:06,507 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:28:06,507 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | Traceback (most recent call last):
|
||||
2023-06-07 10:28:06,507 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | raise SSHException(
|
||||
2023-06-07 10:28:06,507 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:28:06,507 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:28:06,507 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:28:06,508 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:28:06,508 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:28:06,508 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:28:06,508 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:28:06,508 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | raise socket.timeout()
|
||||
2023-06-07 10:28:06,508 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | socket.timeout
|
||||
2023-06-07 10:28:06,508 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:28:06,509 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:28:06,509 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:28:06,509 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | Traceback (most recent call last):
|
||||
2023-06-07 10:28:06,509 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:28:06,509 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | self._check_banner()
|
||||
2023-06-07 10:28:06,509 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:28:06,510 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | raise SSHException(
|
||||
2023-06-07 10:28:06,510 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:28:06,510 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:28:08,278 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:28:08,284 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:28:08,284 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:28:08,513 p=82498 u=rob n=p=82498 u=rob | paramiko [dhcp-server] | Authentication (publickey) successful!
|
||||
2023-06-07 10:28:08,518 p=82497 u=rob n=p=82497 u=rob | paramiko [dhcp-relay] | Authentication (publickey) successful!
|
||||
2023-06-07 10:28:08,519 p=82499 u=rob n=p=82499 u=rob | paramiko [transport] | Authentication (publickey) successful!
|
||||
2023-06-07 10:28:09,582 p=81964 u=rob n=ansible | ok: [dhcp-server]
|
||||
2023-06-07 10:28:09,671 p=81964 u=rob n=ansible | ok: [transport]
|
||||
2023-06-07 10:28:09,672 p=81964 u=rob n=ansible | ok: [dhcp-relay]
|
||||
2023-06-07 10:28:09,674 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : setup nodes] **************************************************************************************************************************
|
||||
2023-06-07 10:28:09,689 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:28:09,696 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:28:10,836 p=82250 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:28:10,836 p=82245 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:28:10,837 p=82254 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:28:11,552 p=82254 u=rob n=p=82254 u=rob | paramiko [transport] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:28:11,557 p=82250 u=rob n=p=82250 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:28:11,562 p=82245 u=rob n=p=82245 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:28:11,808 p=82254 u=rob n=p=82254 u=rob | paramiko [transport] | Authentication (publickey) successful!
|
||||
2023-06-07 10:28:11,808 p=82250 u=rob n=p=82250 u=rob | paramiko [dhcp-relay] | Authentication (publickey) successful!
|
||||
2023-06-07 10:28:11,808 p=82245 u=rob n=p=82245 u=rob | paramiko [dhcp-server] | Authentication (publickey) successful!
|
||||
2023-06-07 10:28:16,620 p=81964 u=rob n=ansible | [WARNING]: To ensure idempotency and correct diff the input configuration lines should be similar to how they appear if present in the running configuration
|
||||
on device including the indentation
|
||||
|
||||
2023-06-07 10:28:16,620 p=81964 u=rob n=ansible | changed: [transport]
|
||||
2023-06-07 10:28:19,583 p=81964 u=rob n=ansible | changed: [dhcp-relay]
|
||||
2023-06-07 10:28:20,045 p=81964 u=rob n=ansible | changed: [dhcp-server]
|
||||
2023-06-07 10:28:20,058 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie] ********************************************************************************
|
||||
2023-06-07 10:28:20,092 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:28:20,101 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:28:20,104 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:28:20,111 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:28:21,084 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:28:21,094 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: stop nodes id] *************************************************************************************************
|
||||
2023-06-07 10:28:21,131 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:28:21,136 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:28:21,140 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:28:21,146 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:28:22,007 p=81964 u=rob n=ansible | ok: [eveng] => (item=5)
|
||||
2023-06-07 10:28:22,018 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait after stop] ***********************************************************************************************
|
||||
2023-06-07 10:28:22,031 p=81964 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:28:22,031 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:28:27,052 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:28:27,059 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: start nodes id] ************************************************************************************************
|
||||
2023-06-07 10:28:27,087 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:28:27,092 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:28:27,099 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:28:27,102 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:28:28,236 p=81964 u=rob n=ansible | ok: [eveng] => (item=5)
|
||||
2023-06-07 10:28:28,247 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait after start] **********************************************************************************************
|
||||
2023-06-07 10:28:28,263 p=81964 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:28:28,263 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:28:33,288 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:28:33,300 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait, b/c the ping often failed without a short break] *********************************************************
|
||||
2023-06-07 10:28:33,324 p=81964 u=rob n=ansible | Pausing for 30 seconds
|
||||
2023-06-07 10:28:33,324 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:29:03,340 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:29:03,354 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: do ping test] **************************************************************************************************
|
||||
2023-06-07 10:29:03,387 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:29:03,396 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:29:03,412 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:29:08,845 p=81964 u=rob n=ansible | ok: [dhcp-relay] => (item=172.16.0.1)
|
||||
2023-06-07 10:29:08,848 p=81964 u=rob n=ansible | ok: [dhcp-server] => (item=172.16.0.2)
|
||||
2023-06-07 10:29:14,111 p=81964 u=rob n=ansible | ok: [dhcp-server] => (item=192.168.0.30)
|
||||
2023-06-07 10:29:14,118 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: execute test commands] *****************************************************************************************
|
||||
2023-06-07 10:29:14,153 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:29:14,156 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:29:14,156 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:29:14,158 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:29:14,168 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:29:14,172 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: register stdout commands] **************************************************************************************
|
||||
2023-06-07 10:29:14,197 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:29:14,199 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:29:14,204 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:29:14,214 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:29:15,664 p=81964 u=rob n=ansible | ok: [dhcp-server] => (item={'name': 'show_dhcp_server_leases', 'command': 'show dhcp server leases'})
|
||||
2023-06-07 10:29:19,960 p=81964 u=rob n=ansible | ok: [dhcp-server] => (item={'name': 'ping_client', 'command': 'ping 192.168.0.30 count 4'})
|
||||
2023-06-07 10:29:19,977 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Set variables] *************************************************************************************************
|
||||
2023-06-07 10:29:20,009 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:29:20,012 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:29:20,012 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:29:20,023 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:29:21,122 p=81964 u=rob n=ansible | ok: [dhcp-server]
|
||||
2023-06-07 10:29:21,127 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Reboot vyos] ***************************************************************************************************
|
||||
2023-06-07 10:29:21,142 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:29:21,149 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:29:22,583 p=81964 u=rob n=ansible | ok: [dhcp-relay]
|
||||
2023-06-07 10:29:22,584 p=81964 u=rob n=ansible | ok: [dhcp-server]
|
||||
2023-06-07 10:29:22,584 p=81964 u=rob n=ansible | ok: [transport]
|
||||
2023-06-07 10:29:22,588 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait while shutdown] *******************************************************************************************
|
||||
2023-06-07 10:29:22,602 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:29:22,607 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Wait for vyos nodes] *******************************************************************************************
|
||||
2023-06-07 10:29:22,625 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:29:22,634 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:29:23,758 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:29:23,758 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:29:23,760 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:29:24,489 p=82697 u=rob n=p=82697 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:29:24,489 p=82698 u=rob n=p=82698 u=rob | paramiko [transport] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:29:24,494 p=82696 u=rob n=p=82696 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:29:24,723 p=82697 u=rob n=p=82697 u=rob | paramiko [dhcp-server] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:29:24,744 p=82696 u=rob n=p=82696 u=rob | paramiko [dhcp-relay] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:29:24,754 p=82698 u=rob n=p=82698 u=rob | paramiko [transport] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:31:23,114 p=82250 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:31:23,118 p=82245 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:31:23,119 p=82254 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:31:23,218 p=82250 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:31:23,221 p=82245 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:31:23,222 p=82254 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:31:26,994 p=82697 u=rob n=p=82697 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:31:27,009 p=82696 u=rob n=p=82696 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:31:27,079 p=82698 u=rob n=p=82698 u=rob | paramiko [transport] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:31:27,230 p=82697 u=rob n=p=82697 u=rob | paramiko [dhcp-server] | Authentication (publickey) successful!
|
||||
2023-06-07 10:31:27,245 p=82696 u=rob n=p=82696 u=rob | paramiko [dhcp-relay] | Authentication (publickey) successful!
|
||||
2023-06-07 10:31:27,319 p=82698 u=rob n=p=82698 u=rob | paramiko [transport] | Authentication (publickey) successful!
|
||||
2023-06-07 10:31:28,690 p=81964 u=rob n=ansible | ok: [dhcp-server]
|
||||
2023-06-07 10:31:28,737 p=81964 u=rob n=ansible | ok: [dhcp-relay]
|
||||
2023-06-07 10:31:28,786 p=81964 u=rob n=ansible | ok: [transport]
|
||||
2023-06-07 10:31:28,789 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie] ********************************************************************************
|
||||
2023-06-07 10:31:28,811 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:31:28,817 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:31:28,819 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:31:28,825 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:31:29,727 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:31:29,731 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: stop nodes id] *************************************************************************************************
|
||||
2023-06-07 10:31:29,759 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:31:29,763 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:31:29,768 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:31:29,772 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:31:30,617 p=81964 u=rob n=ansible | ok: [eveng] => (item=5)
|
||||
2023-06-07 10:31:30,624 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait after stop] ***********************************************************************************************
|
||||
2023-06-07 10:31:30,638 p=81964 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:31:30,638 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:31:35,645 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:31:35,648 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: start nodes id] ************************************************************************************************
|
||||
2023-06-07 10:31:35,676 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:31:35,680 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:31:35,686 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:31:35,692 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:31:36,398 p=81964 u=rob n=ansible | ok: [eveng] => (item=5)
|
||||
2023-06-07 10:31:36,403 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait after start] **********************************************************************************************
|
||||
2023-06-07 10:31:36,416 p=81964 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:31:36,416 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:31:41,427 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:31:41,436 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait, b/c the ping often failed without a short break] *********************************************************
|
||||
2023-06-07 10:31:41,459 p=81964 u=rob n=ansible | Pausing for 30 seconds
|
||||
2023-06-07 10:31:41,459 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:32:11,468 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:32:11,473 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: do ping test] **************************************************************************************************
|
||||
2023-06-07 10:32:11,493 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:32:11,500 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:11,515 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:32:12,637 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:32:12,639 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:32:12,639 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:32:12,639 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:32:12,647 p=82905 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:32:12,647 p=82906 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:32:13,233 p=82906 u=rob n=p=82906 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:13,239 p=82905 u=rob n=p=82905 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:13,448 p=82906 u=rob n=p=82906 u=rob | paramiko [dhcp-relay] | Authentication (publickey) successful!
|
||||
2023-06-07 10:32:13,449 p=82905 u=rob n=p=82905 u=rob | paramiko [dhcp-server] | Authentication (publickey) successful!
|
||||
2023-06-07 10:32:19,182 p=81964 u=rob n=ansible | ok: [dhcp-server] => (item=172.16.0.2)
|
||||
2023-06-07 10:32:19,218 p=81964 u=rob n=ansible | ok: [dhcp-relay] => (item=172.16.0.1)
|
||||
2023-06-07 10:32:24,425 p=81964 u=rob n=ansible | ok: [dhcp-server] => (item=192.168.0.30)
|
||||
2023-06-07 10:32:24,431 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: execute test commands] *****************************************************************************************
|
||||
2023-06-07 10:32:24,463 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:32:24,465 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:24,465 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:32:24,470 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:32:24,476 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:32:24,479 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: register stdout commands] **************************************************************************************
|
||||
2023-06-07 10:32:24,505 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:32:24,506 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:24,509 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:32:24,515 p=81964 u=rob n=ansible | skipping: [dhcp-server] => (item={'name': 'show_dhcp_server_leases', 'command': 'show dhcp server leases'})
|
||||
2023-06-07 10:32:24,520 p=81964 u=rob n=ansible | skipping: [dhcp-server] => (item={'name': 'ping_client', 'command': 'ping 192.168.0.30 count 4'})
|
||||
2023-06-07 10:32:24,521 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:32:24,522 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:32:24,525 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Set variables] *************************************************************************************************
|
||||
2023-06-07 10:32:24,551 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:32:24,553 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:24,553 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:32:24,557 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:32:24,566 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:32:24,570 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: ake sure tmp dir exist] ****************************************************************************************
|
||||
2023-06-07 10:32:24,593 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:24,602 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:32:24,604 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:32:24,610 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:32:24,839 p=81964 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:32:24,843 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: register status of tmp/vyos-1.4-rolling-202306070317-amd64.iso] ************************************************
|
||||
2023-06-07 10:32:24,862 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:24,869 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:32:24,872 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:32:24,877 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:32:24,989 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:32:24,994 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: ownload upgrade_iso] *******************************************************************************************
|
||||
2023-06-07 10:32:25,020 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:25,027 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:32:25,029 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:32:25,035 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:32:25,546 p=81964 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:32:25,551 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Copy iso to host] **********************************************************************************************
|
||||
2023-06-07 10:32:25,572 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:32:25,578 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:26,714 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:32:26,714 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:32:27,365 p=82994 u=rob n=paramiko.transport | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:27,381 p=82905 u=rob n=p=82905 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:27,385 p=82906 u=rob n=p=82906 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:27,586 p=82994 u=rob n=paramiko.transport | Authentication (publickey) successful!
|
||||
2023-06-07 10:32:27,597 p=82906 u=rob n=p=82906 u=rob | paramiko [dhcp-relay] | Authentication (publickey) successful!
|
||||
2023-06-07 10:32:27,599 p=82905 u=rob n=p=82905 u=rob | paramiko [dhcp-server] | Authentication (publickey) successful!
|
||||
2023-06-07 10:32:28,420 p=82905 u=rob n=p=82905 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:28,546 p=82906 u=rob n=p=82906 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:28,548 p=82994 u=rob n=paramiko.transport | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:28,633 p=82905 u=rob n=p=82905 u=rob | paramiko [dhcp-server] | Authentication (publickey) successful!
|
||||
2023-06-07 10:32:28,749 p=82906 u=rob n=p=82906 u=rob | paramiko [dhcp-relay] | Authentication (publickey) successful!
|
||||
2023-06-07 10:32:28,753 p=82994 u=rob n=paramiko.transport | Authentication (publickey) successful!
|
||||
2023-06-07 10:32:56,110 p=81964 u=rob n=ansible | changed: [dhcp-server]
|
||||
2023-06-07 10:32:56,855 p=81964 u=rob n=ansible | changed: [dhcp-relay]
|
||||
2023-06-07 10:32:56,855 p=81964 u=rob n=ansible | changed: [transport]
|
||||
2023-06-07 10:32:56,859 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: upgrade vyos] **************************************************************************************************
|
||||
2023-06-07 10:32:56,873 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:32:56,880 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:32:58,006 p=82994 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:32:58,665 p=82994 u=rob n=p=82994 u=rob | paramiko [transport] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:32:58,906 p=82994 u=rob n=p=82994 u=rob | paramiko [transport] | Authentication (publickey) successful!
|
||||
2023-06-07 10:33:09,126 p=81964 u=rob n=ansible | ok: [dhcp-server]
|
||||
2023-06-07 10:33:09,344 p=81964 u=rob n=ansible | ok: [dhcp-relay]
|
||||
2023-06-07 10:33:11,698 p=81964 u=rob n=ansible | ok: [transport]
|
||||
2023-06-07 10:33:11,703 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Reboot vyos] ***************************************************************************************************
|
||||
2023-06-07 10:33:11,724 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:33:11,730 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:33:13,403 p=81964 u=rob n=ansible | ok: [dhcp-server]
|
||||
2023-06-07 10:33:13,403 p=81964 u=rob n=ansible | ok: [dhcp-relay]
|
||||
2023-06-07 10:33:13,403 p=81964 u=rob n=ansible | ok: [transport]
|
||||
2023-06-07 10:33:13,407 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait while shutdown] *******************************************************************************************
|
||||
2023-06-07 10:33:13,420 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:33:13,424 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Wait for vyos nodes] *******************************************************************************************
|
||||
2023-06-07 10:33:13,441 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:33:13,448 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:33:14,564 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:33:14,565 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:33:14,567 p=81964 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:33:15,383 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:33:15,386 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:33:15,407 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:33:15,654 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:33:15,656 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:33:15,658 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:35:13,936 p=82906 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:35:13,939 p=82905 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:35:13,940 p=82994 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:35:14,040 p=82906 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:35:14,044 p=82905 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:35:14,044 p=82994 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:35:46,683 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:35:46,686 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | Traceback (most recent call last):
|
||||
2023-06-07 10:35:46,687 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:35:46,687 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:35:46,687 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:35:46,688 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:35:46,688 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:35:46,688 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | raise socket.timeout()
|
||||
2023-06-07 10:35:46,688 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | socket.timeout
|
||||
2023-06-07 10:35:46,688 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:35:46,689 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:35:46,689 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:35:46,689 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | Traceback (most recent call last):
|
||||
2023-06-07 10:35:46,690 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:35:46,690 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | self._check_banner()
|
||||
2023-06-07 10:35:46,690 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:35:46,690 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | raise SSHException(
|
||||
2023-06-07 10:35:46,690 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:35:46,691 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] |
|
||||
2023-06-07 10:35:46,692 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:35:46,696 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | Traceback (most recent call last):
|
||||
2023-06-07 10:35:46,696 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:35:46,696 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:35:46,697 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:35:46,697 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:35:46,697 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:35:46,697 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | raise socket.timeout()
|
||||
2023-06-07 10:35:46,697 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | socket.timeout
|
||||
2023-06-07 10:35:46,698 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:35:46,698 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:35:46,698 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:35:46,698 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | Traceback (most recent call last):
|
||||
2023-06-07 10:35:46,698 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:35:46,699 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | self._check_banner()
|
||||
2023-06-07 10:35:46,699 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:35:46,699 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | raise SSHException(
|
||||
2023-06-07 10:35:46,699 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:35:46,700 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] |
|
||||
2023-06-07 10:35:46,705 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:35:46,708 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | Traceback (most recent call last):
|
||||
2023-06-07 10:35:46,708 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:35:46,708 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:35:46,708 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:35:46,708 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:35:46,709 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:35:46,709 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | raise socket.timeout()
|
||||
2023-06-07 10:35:46,709 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | socket.timeout
|
||||
2023-06-07 10:35:46,709 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:35:46,709 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:35:46,709 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:35:46,710 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | Traceback (most recent call last):
|
||||
2023-06-07 10:35:46,710 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:35:46,710 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | self._check_banner()
|
||||
2023-06-07 10:35:46,710 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:35:46,710 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | raise SSHException(
|
||||
2023-06-07 10:35:46,711 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:35:46,711 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] |
|
||||
2023-06-07 10:35:48,426 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:35:48,441 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:35:48,458 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:35:48,670 p=83033 u=rob n=p=83033 u=rob | paramiko [dhcp-relay] | Authentication (publickey) successful!
|
||||
2023-06-07 10:35:48,676 p=83034 u=rob n=p=83034 u=rob | paramiko [dhcp-server] | Authentication (publickey) successful!
|
||||
2023-06-07 10:35:48,676 p=83035 u=rob n=p=83035 u=rob | paramiko [transport] | Authentication (publickey) successful!
|
||||
2023-06-07 10:35:50,274 p=81964 u=rob n=ansible | ok: [dhcp-relay]
|
||||
2023-06-07 10:35:50,285 p=81964 u=rob n=ansible | ok: [dhcp-server]
|
||||
2023-06-07 10:35:50,329 p=81964 u=rob n=ansible | ok: [transport]
|
||||
2023-06-07 10:35:50,332 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: clear tmp dir] *************************************************************************************************
|
||||
2023-06-07 10:35:50,343 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:35:50,346 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Login to EVE-NG and get Cookie] ********************************************************************************
|
||||
2023-06-07 10:35:50,365 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:35:50,372 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:35:50,375 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:35:50,381 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:35:51,297 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:35:51,301 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: stop nodes id] *************************************************************************************************
|
||||
2023-06-07 10:35:51,328 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:35:51,331 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:35:51,338 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:35:51,340 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:35:52,181 p=81964 u=rob n=ansible | ok: [eveng] => (item=5)
|
||||
2023-06-07 10:35:52,188 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait after stop] ***********************************************************************************************
|
||||
2023-06-07 10:35:52,202 p=81964 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:35:52,202 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:35:57,214 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:35:57,223 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: start nodes id] ************************************************************************************************
|
||||
2023-06-07 10:35:57,259 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:35:57,262 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:35:57,268 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:35:57,273 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:35:57,949 p=81964 u=rob n=ansible | ok: [eveng] => (item=5)
|
||||
2023-06-07 10:35:57,960 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait after start] **********************************************************************************************
|
||||
2023-06-07 10:35:57,979 p=81964 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:35:57,980 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:36:02,989 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:36:02,997 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: wait, b/c the ping often failed without a short break] *********************************************************
|
||||
2023-06-07 10:36:03,021 p=81964 u=rob n=ansible | Pausing for 30 seconds
|
||||
2023-06-07 10:36:03,021 p=81964 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:36:33,032 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:36:33,042 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: do ping test] **************************************************************************************************
|
||||
2023-06-07 10:36:33,078 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:36:33,079 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:33,093 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:34,212 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:36:34,212 p=81964 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:36:34,212 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:36:34,212 p=81964 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:36:34,226 p=83204 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:36:34,227 p=83203 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:36:34,794 p=83203 u=rob n=p=83203 u=rob | paramiko [dhcp-server] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:36:34,801 p=83204 u=rob n=p=83204 u=rob | paramiko [dhcp-relay] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:36:35,032 p=83204 u=rob n=p=83204 u=rob | paramiko [dhcp-relay] | Authentication (publickey) successful!
|
||||
2023-06-07 10:36:35,033 p=83203 u=rob n=p=83203 u=rob | paramiko [dhcp-server] | Authentication (publickey) successful!
|
||||
2023-06-07 10:36:41,043 p=81964 u=rob n=ansible | ok: [dhcp-relay] => (item=172.16.0.1)
|
||||
2023-06-07 10:36:41,112 p=81964 u=rob n=ansible | ok: [dhcp-server] => (item=172.16.0.2)
|
||||
2023-06-07 10:36:46,459 p=81964 u=rob n=ansible | ok: [dhcp-server] => (item=192.168.0.30)
|
||||
2023-06-07 10:36:46,466 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: execute test commands] *****************************************************************************************
|
||||
2023-06-07 10:36:46,496 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:36:46,499 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:46,499 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:46,501 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:46,510 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:46,514 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: register stdout commands] **************************************************************************************
|
||||
2023-06-07 10:36:46,539 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:36:46,541 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:46,544 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:46,551 p=81964 u=rob n=ansible | skipping: [dhcp-server] => (item={'name': 'show_dhcp_server_leases', 'command': 'show dhcp server leases'})
|
||||
2023-06-07 10:36:46,557 p=81964 u=rob n=ansible | skipping: [dhcp-server] => (item={'name': 'ping_client', 'command': 'ping 192.168.0.30 count 4'})
|
||||
2023-06-07 10:36:46,558 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:46,558 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:46,562 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Set variables] *************************************************************************************************
|
||||
2023-06-07 10:36:46,588 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:36:46,590 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:46,590 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:46,594 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:46,603 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:46,607 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: make sure output dir exist] ************************************************************************************
|
||||
2023-06-07 10:36:46,630 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:46,639 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:46,641 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:46,646 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:46,866 p=81964 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:36:46,870 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: make sure output include dir exist] ****************************************************************************
|
||||
2023-06-07 10:36:46,894 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:46,903 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:46,905 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:46,910 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:47,131 p=81964 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:36:47,134 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Get timestamp from the system] *********************************************************************************
|
||||
2023-06-07 10:36:47,154 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:47,161 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:47,164 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:47,169 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:47,361 p=81964 u=rob n=ansible | changed: [eveng]
|
||||
2023-06-07 10:36:47,366 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: Set variables] *************************************************************************************************
|
||||
2023-06-07 10:36:47,386 p=81964 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:36:47,394 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:47,397 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:47,397 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:47,402 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:47,407 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: generate lab rst file] *****************************************************************************************
|
||||
2023-06-07 10:36:47,432 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:47,438 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:47,440 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:47,446 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:47,912 p=81964 u=rob n=ansible | changed: [eveng -> localhost]
|
||||
2023-06-07 10:36:47,917 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: find all *.conf files in Lab] **********************************************************************************
|
||||
2023-06-07 10:36:47,941 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:47,950 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:47,953 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:47,958 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:48,255 p=81964 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:36:48,262 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: copy all *.conf files] *****************************************************************************************
|
||||
2023-06-07 10:36:48,292 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:48,301 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:48,302 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:48,308 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:48,794 p=81964 u=rob n=ansible | ok: [eveng -> localhost] => (item={'path': 'labs/DHCPRelay_through_GRE/dhcp-server.conf', 'mode': '0644', 'isdir': False, 'ischr': False, 'isblk': False, 'isreg': True, 'isfifo': False, 'islnk': False, 'issock': False, 'uid': 501, 'gid': 20, 'size': 883, 'inode': 362560, 'dev': 16777229, 'nlink': 1, 'atime': 1675370047.048312, 'mtime': 1648155110.0, 'ctime': 1675368464.810746, 'gr_name': 'staff', 'pw_name': 'rob', 'wusr': True, 'rusr': True, 'xusr': False, 'wgrp': False, 'rgrp': True, 'xgrp': False, 'woth': False, 'roth': True, 'xoth': False, 'isuid': False, 'isgid': False})
|
||||
2023-06-07 10:36:49,262 p=81964 u=rob n=ansible | ok: [eveng -> localhost] => (item={'path': 'labs/DHCPRelay_through_GRE/dhcp-relay.conf', 'mode': '0644', 'isdir': False, 'ischr': False, 'isblk': False, 'isreg': True, 'isfifo': False, 'islnk': False, 'issock': False, 'uid': 501, 'gid': 20, 'size': 562, 'inode': 362561, 'dev': 16777229, 'nlink': 1, 'atime': 1675370047.013727, 'mtime': 1648155110.0, 'ctime': 1675368464.810769, 'gr_name': 'staff', 'pw_name': 'rob', 'wusr': True, 'rusr': True, 'xusr': False, 'wgrp': False, 'rgrp': True, 'xgrp': False, 'woth': False, 'roth': True, 'xoth': False, 'isuid': False, 'isgid': False})
|
||||
2023-06-07 10:36:49,730 p=81964 u=rob n=ansible | ok: [eveng -> localhost] => (item={'path': 'labs/DHCPRelay_through_GRE/transport.conf', 'mode': '0644', 'isdir': False, 'ischr': False, 'isblk': False, 'isreg': True, 'isfifo': False, 'islnk': False, 'issock': False, 'uid': 501, 'gid': 20, 'size': 107, 'inode': 362564, 'dev': 16777229, 'nlink': 1, 'atime': 1675370047.9696386, 'mtime': 1648155110.0, 'ctime': 1675368464.8108501, 'gr_name': 'staff', 'pw_name': 'rob', 'wusr': True, 'rusr': True, 'xusr': False, 'wgrp': False, 'rgrp': True, 'xgrp': False, 'woth': False, 'roth': True, 'xoth': False, 'isuid': False, 'isgid': False})
|
||||
2023-06-07 10:36:49,736 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: find all *.config files in Lab] ********************************************************************************
|
||||
2023-06-07 10:36:49,759 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:49,768 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:49,770 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:49,777 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:49,989 p=81964 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:36:49,993 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: copy all *.config files] ***************************************************************************************
|
||||
2023-06-07 10:36:50,010 p=81964 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:36:50,019 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:50,027 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:50,029 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:50,034 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:50,039 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: find all *.png files in Lab] ***********************************************************************************
|
||||
2023-06-07 10:36:50,061 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:50,070 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:50,073 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:50,078 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:50,291 p=81964 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:36:50,298 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: copy all *.png files] ******************************************************************************************
|
||||
2023-06-07 10:36:50,322 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:50,332 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:50,334 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:50,340 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
2023-06-07 10:36:50,775 p=81964 u=rob n=ansible | ok: [eveng -> localhost] => (item={'path': 'labs/DHCPRelay_through_GRE/topology.png', 'mode': '0644', 'isdir': False, 'ischr': False, 'isblk': False, 'isreg': True, 'isfifo': False, 'islnk': False, 'issock': False, 'uid': 501, 'gid': 20, 'size': 57080, 'inode': 362559, 'dev': 16777229, 'nlink': 1, 'atime': 1676403697.1323667, 'mtime': 1648155110.0, 'ctime': 1675368464.8107133, 'gr_name': 'staff', 'pw_name': 'rob', 'wusr': True, 'rusr': True, 'xusr': False, 'wgrp': False, 'rgrp': True, 'xgrp': False, 'woth': False, 'roth': True, 'xoth': False, 'isuid': False, 'isgid': False})
|
||||
2023-06-07 10:36:50,781 p=81964 u=rob n=ansible | TASK [eve-ng-lab-test : DHCPRelay_through_GRE: copy ansible log files] ****************************************************************************************
|
||||
2023-06-07 10:36:50,803 p=81964 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:36:50,812 p=81964 u=rob n=ansible | skipping: [dhcp-relay]
|
||||
2023-06-07 10:36:50,814 p=81964 u=rob n=ansible | skipping: [dhcp-server]
|
||||
2023-06-07 10:36:50,820 p=81964 u=rob n=ansible | skipping: [transport]
|
||||
@ -0,0 +1,99 @@
|
||||
############################
|
||||
DHCP Relay trough GRE-Bridge
|
||||
############################
|
||||
|
||||
|
||||
| Testdate: 2023-06-07
|
||||
| Version: 1.3.3
|
||||
| Upgrade Version: 1.4-rolling-202306070317
|
||||
|
||||
|
||||
This simple structure shows how to configure a DHCP Relay over a GRE Bridge
|
||||
interface.
|
||||
|
||||
********
|
||||
Topology
|
||||
********
|
||||
|
||||
The topology has 3 VyOS routers and one client. Between the DHCP Server and
|
||||
the DHCP Relay is a GRE tunnel. The `transport` VyOS represent a large
|
||||
Network.
|
||||
|
||||
.. image:: _include/topology.png
|
||||
:alt: Ansible Example topology image
|
||||
|
||||
*************
|
||||
Configuration
|
||||
*************
|
||||
|
||||
First, we configure the transport network and the Tunnel interface.
|
||||
|
||||
|
||||
Transport:
|
||||
|
||||
.. literalinclude:: _include/transport.conf
|
||||
:language: none
|
||||
|
||||
|
||||
DHCP-Server
|
||||
|
||||
.. literalinclude:: _include/dhcp-server.conf
|
||||
:language: none
|
||||
:lines: 1-8
|
||||
|
||||
|
||||
DHCP-Relay
|
||||
|
||||
.. literalinclude:: _include/dhcp-relay.conf
|
||||
:language: none
|
||||
:lines: 1-8
|
||||
|
||||
|
||||
After this, we need the DHCP-Server and Relay configuration.
|
||||
To get a testable result, we just have one IP in the DHCP range.
|
||||
Expand it as you need it.
|
||||
|
||||
DHCP-Server
|
||||
|
||||
.. literalinclude:: _include/dhcp-server.conf
|
||||
:language: none
|
||||
:lines: 9-13
|
||||
|
||||
|
||||
DHCP-Relay
|
||||
|
||||
.. literalinclude:: _include/dhcp-relay.conf
|
||||
:language: none
|
||||
:lines: 9-10
|
||||
|
||||
|
||||
***************
|
||||
Test the result
|
||||
***************
|
||||
|
||||
Ping the Client from the DHCP Server.
|
||||
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
vyos@dhcp-server:~$ ping 192.168.0.30 count 4
|
||||
PING 192.168.0.30 (192.168.0.30) 56(84) bytes of data.
|
||||
64 bytes from 192.168.0.30: icmp_seq=1 ttl=63 time=0.843 ms
|
||||
64 bytes from 192.168.0.30: icmp_seq=2 ttl=63 time=1.06 ms
|
||||
64 bytes from 192.168.0.30: icmp_seq=3 ttl=63 time=0.988 ms
|
||||
64 bytes from 192.168.0.30: icmp_seq=4 ttl=63 time=3.28 ms
|
||||
|
||||
--- 192.168.0.30 ping statistics ---
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 24ms
|
||||
rtt min/avg/max/mdev = 0.843/1.541/3.277/1.006 ms
|
||||
|
||||
|
||||
And show all DHCP Leases
|
||||
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
vyos@dhcp-server:~$ show dhcp server leases
|
||||
IP address Hardware address State Lease start Lease expiration Remaining Pool Hostname
|
||||
------------ ------------------ ------- ------------------- ------------------- ----------- ---------- ----------
|
||||
192.168.0.30 00:50:79:66:68:05 active 2023/06/07 08:28:31 2023/06/08 08:28:31 23:59:16 DHCPTun100 VPCS
|
||||
@ -0,0 +1,11 @@
|
||||
set interfaces ethernet eth1 address '10.0.10.10/24'
|
||||
set interfaces ethernet eth2 address '192.168.0.254/24'
|
||||
set interfaces tunnel tun100 address '172.16.0.2/30'
|
||||
set interfaces tunnel tun100 encapsulation 'gretap'
|
||||
set interfaces tunnel tun100 remote '10.0.20.10'
|
||||
set interfaces tunnel tun100 source-address '10.0.10.10'
|
||||
set protocols static route 0.0.0.0/0 next-hop 172.16.0.1
|
||||
set protocols static route 10.0.20.0/24 next-hop 10.0.10.254
|
||||
set service dhcp-relay interface 'eth2'
|
||||
set service dhcp-relay interface 'tun100'
|
||||
set service dhcp-relay server '172.16.0.1'
|
||||
@ -0,0 +1,13 @@
|
||||
set interfaces ethernet eth1 address '10.0.20.10/24'
|
||||
set interfaces tunnel tun100 address '172.16.0.1/30'
|
||||
set interfaces tunnel tun100 encapsulation 'gretap'
|
||||
set interfaces tunnel tun100 remote '10.0.10.10'
|
||||
set interfaces tunnel tun100 source-address '10.0.20.10'
|
||||
set protocols static route 0.0.0.0/0 next-hop 172.16.0.2
|
||||
set protocols static route 10.0.10.0/24 next-hop 10.0.20.254
|
||||
set protocols static route 192.168.0.0/24 next-hop 127.16.0.2
|
||||
set service dhcp-server listen-address '172.16.0.1'
|
||||
set service dhcp-server shared-network-name DHCPTun100 authoritative
|
||||
set service dhcp-server shared-network-name DHCPTun100 subnet 192.168.0.0/24 default-router '192.168.0.254'
|
||||
set service dhcp-server shared-network-name DHCPTun100 subnet 192.168.0.0/24 range 0 start '192.168.0.30'
|
||||
set service dhcp-server shared-network-name DHCPTun100 subnet 192.168.0.0/24 range 0 stop '192.168.0.30'
|
||||
|
After Width: | Height: | Size: 56 KiB |
@ -0,0 +1,2 @@
|
||||
set interfaces ethernet eth1 address '10.0.10.254/24'
|
||||
set interfaces ethernet eth2 address '10.0.20.254/24'
|
||||
787
docs/configexamples/autotest/Wireguard/Wireguard.log
Normal file
@ -0,0 +1,787 @@
|
||||
2023-06-07 10:09:54,785 p=80164 u=rob n=ansible | PLAY [Automatic VyOS Lab test] ********************************************************************************************************************************
|
||||
2023-06-07 10:09:54,829 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: fail if node_template_iso is empty] *************************************************************************************
|
||||
2023-06-07 10:09:54,843 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:54,850 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:54,852 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:54,857 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:54,860 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: fail if node_template_version is empty] *********************************************************************************
|
||||
2023-06-07 10:09:54,880 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:54,880 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:54,882 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:54,887 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:54,890 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: install requirements] ***************************************************************************************************
|
||||
2023-06-07 10:09:54,908 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:54,910 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:54,915 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:56,756 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:09:56,763 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: Login to EVE-NG and get Cookie] *****************************************************************************************
|
||||
2023-06-07 10:09:56,791 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:56,795 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:56,800 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:57,451 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:09:57,456 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: get template facts] *****************************************************************************************************
|
||||
2023-06-07 10:09:57,474 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:57,476 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:57,481 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:57,880 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:09:57,884 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: Register path status] ***************************************************************************************************
|
||||
2023-06-07 10:09:57,903 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:57,906 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:57,912 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,109 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:09:58,112 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: create path] ************************************************************************************************************
|
||||
2023-06-07 10:09:58,128 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,136 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,138 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,144 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,147 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: Upload iso to eve-ng] ***************************************************************************************************
|
||||
2023-06-07 10:09:58,160 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,167 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,169 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,174 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,178 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: create virtioa.qcow2 file] **********************************************************************************************
|
||||
2023-06-07 10:09:58,193 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,200 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,202 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,207 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,210 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: Login to EVE-NG and get Cookie] *****************************************************************************************
|
||||
2023-06-07 10:09:58,223 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,231 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,233 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,238 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,241 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: create lab for node install] ********************************************************************************************
|
||||
2023-06-07 10:09:58,255 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,261 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,264 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,268 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,271 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: open lab] ***************************************************************************************************************
|
||||
2023-06-07 10:09:58,291 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,291 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,293 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,298 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,300 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : set_fact] **************************************************************************************************************************
|
||||
2023-06-07 10:09:58,313 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,320 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,322 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,327 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,329 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: add node to lab] ********************************************************************************************************
|
||||
2023-06-07 10:09:58,349 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,349 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,351 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,355 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,358 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: start node] *************************************************************************************************************
|
||||
2023-06-07 10:09:58,375 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,381 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,382 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,386 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,389 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : debug] *****************************************************************************************************************************
|
||||
2023-06-07 10:09:58,406 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,411 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,413 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,418 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,421 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: get node infos] *********************************************************************************************************
|
||||
2023-06-07 10:09:58,440 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,440 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,442 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,446 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,448 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : set_fact] **************************************************************************************************************************
|
||||
2023-06-07 10:09:58,465 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,469 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,471 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,475 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,479 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: copy file] **************************************************************************************************************
|
||||
2023-06-07 10:09:58,495 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,500 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,503 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,507 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,511 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: run expect script] ******************************************************************************************************
|
||||
2023-06-07 10:09:58,526 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,533 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,535 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,540 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,543 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: Login to EVE-NG and get Cookie (due timeout)] ***************************************************************************
|
||||
2023-06-07 10:09:58,557 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,563 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,566 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,571 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,574 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: stop node] **************************************************************************************************************
|
||||
2023-06-07 10:09:58,596 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,596 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,596 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,603 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,606 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: Pause to wait node is shutdown] *****************************************************************************************
|
||||
2023-06-07 10:09:58,617 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,620 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: delete iso] *************************************************************************************************************
|
||||
2023-06-07 10:09:58,634 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,641 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,643 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,648 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,651 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: commit virtioa.qcow2] ***************************************************************************************************
|
||||
2023-06-07 10:09:58,665 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,674 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,674 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,679 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,682 p=80164 u=rob n=ansible | TASK [eve-ng-create-node : Wireguard: delete lab for node install] ********************************************************************************************
|
||||
2023-06-07 10:09:58,704 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:09:58,705 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:09:58,705 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:09:58,709 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:09:58,717 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Get env file content] *****************************************************************************************************************
|
||||
2023-06-07 10:09:59,078 p=80164 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:09:59,079 p=80164 u=rob n=ansible | ok: [vyos-oobm -> localhost]
|
||||
2023-06-07 10:09:59,079 p=80164 u=rob n=ansible | ok: [branch -> localhost]
|
||||
2023-06-07 10:09:59,079 p=80164 u=rob n=ansible | ok: [central -> localhost]
|
||||
2023-06-07 10:09:59,082 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Load facts] ****************************************************************************************************************
|
||||
2023-06-07 10:09:59,102 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:10:00,256 p=80164 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:10:00,257 p=80164 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:10:00,258 p=80164 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:10:00,258 p=80164 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:10:00,258 p=80164 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:10:00,258 p=80164 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:10:00,265 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:10:00,266 p=80164 u=rob n=ansible | ok: [vyos-oobm]
|
||||
2023-06-07 10:10:00,266 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:10:00,270 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : debug] ********************************************************************************************************************************
|
||||
2023-06-07 10:10:00,288 p=80164 u=rob n=ansible | ok: [eveng] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:10:01,410 p=80164 u=rob n=ansible | ok: [branch] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:10:01,411 p=80164 u=rob n=ansible | ok: [central] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:10:01,411 p=80164 u=rob n=ansible | ok: [vyos-oobm] => {
|
||||
"msg": "vyos-1.3.3-amd64"
|
||||
}
|
||||
2023-06-07 10:10:01,416 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: fail if node_template_version is empty] ************************************************************************************
|
||||
2023-06-07 10:10:01,435 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:10:01,444 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:01,446 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:01,451 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:01,455 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Login to EVE-NG and get Cookie] ********************************************************************************************
|
||||
2023-06-07 10:10:01,475 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:01,478 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:01,483 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:02,420 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:10:02,426 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: get running lab list] ******************************************************************************************************
|
||||
2023-06-07 10:10:02,453 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:02,453 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:02,461 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:02,863 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:10:02,869 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: kill running lab] **********************************************************************************************************
|
||||
2023-06-07 10:10:02,888 p=80164 u=rob n=ansible | [WARNING]: conditional statements should not include jinja2 templating delimiters such as {{ }} or {% %}. Found: item.labname == "{{ eve_ng_folder_name }}/{{
|
||||
lab }}"
|
||||
|
||||
2023-06-07 10:10:02,895 p=80164 u=rob n=ansible | skipping: [eveng] => (item={'podid': '0', 'username': 'admin', 'online': '1', 'uuid': '0fc5edef-8cf2-4400-9a1c-0c4c41a1a881', 'size': 0.1996, 'sat': '0', 'sat_name': 'master', 'labid': 1001, 'labname': '/ecmp wireguard\n', 'cpu': 0, 'mem': 0})
|
||||
2023-06-07 10:10:02,898 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:02,898 p=80164 u=rob n=ansible | skipping: [eveng] => (item={'podid': '0', 'username': 'admin', 'online': '1', 'uuid': '9785926c-63ec-42c0-a1ca-a386b9013151', 'size': 0.4115, 'sat': '0', 'sat_name': 'master', 'labid': 1002, 'labname': '/layer2 via IPSec\n', 'cpu': 0, 'mem': 0})
|
||||
2023-06-07 10:10:02,898 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:02,900 p=80164 u=rob n=ansible | skipping: [eveng] => (item={'podid': '0', 'username': 'admin', 'online': '1', 'uuid': 'aa98095e-3b64-45aa-b883-e2b7fdfac08c', 'size': 0.7722, 'sat': '0', 'sat_name': 'master', 'labid': 1003, 'labname': '/ospf\n', 'cpu': 0, 'mem': 0})
|
||||
2023-06-07 10:10:02,903 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:10:02,903 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:02,907 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: delete existing lab] *******************************************************************************************************
|
||||
2023-06-07 10:10:02,926 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:02,929 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:02,935 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:03,329 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:10:03,332 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Ensure labtest is present] *************************************************************************************************
|
||||
2023-06-07 10:10:03,353 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:03,355 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:03,361 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:03,573 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:10:03,577 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Create Wireguard Lab] ******************************************************************************************************
|
||||
2023-06-07 10:10:03,597 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:03,600 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:03,605 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:04,068 p=80164 u=rob n=ansible | changed: [eveng]
|
||||
2023-06-07 10:10:04,072 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Login to EVE-NG and get Cookie] ********************************************************************************************
|
||||
2023-06-07 10:10:04,094 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:04,094 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:04,100 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:04,699 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:10:04,704 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: start vyos-oobm] ***********************************************************************************************************
|
||||
2023-06-07 10:10:04,727 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:10:04,729 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:04,734 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:05,728 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:10:05,732 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Wait for vyos-oobm] ********************************************************************************************************
|
||||
2023-06-07 10:10:05,751 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:10:05,754 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:10:05,759 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:10:06,829 p=80164 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:10:36,939 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:10:36,947 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | Traceback (most recent call last):
|
||||
2023-06-07 10:10:36,947 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:10:36,948 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:10:36,949 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:10:36,949 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:10:36,950 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:10:36,951 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | raise socket.timeout()
|
||||
2023-06-07 10:10:36,951 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | socket.timeout
|
||||
2023-06-07 10:10:36,952 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:10:36,952 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:10:36,953 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:10:36,953 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | Traceback (most recent call last):
|
||||
2023-06-07 10:10:36,954 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:10:36,954 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | self._check_banner()
|
||||
2023-06-07 10:10:36,955 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:10:36,955 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | raise SSHException(
|
||||
2023-06-07 10:10:36,956 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:10:36,956 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:11:08,047 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:11:08,051 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | Traceback (most recent call last):
|
||||
2023-06-07 10:11:08,052 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:11:08,053 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:11:08,054 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:11:08,055 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:11:08,056 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:11:08,057 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | raise socket.timeout()
|
||||
2023-06-07 10:11:08,059 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | socket.timeout
|
||||
2023-06-07 10:11:08,059 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:11:08,060 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:11:08,061 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:11:08,062 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | Traceback (most recent call last):
|
||||
2023-06-07 10:11:08,062 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:11:08,063 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | self._check_banner()
|
||||
2023-06-07 10:11:08,063 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:11:08,064 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | raise SSHException(
|
||||
2023-06-07 10:11:08,065 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:11:08,065 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] |
|
||||
2023-06-07 10:11:09,596 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:11:09,830 p=80519 u=rob n=p=80519 u=rob | paramiko [vyos-oobm] | Authentication (publickey) successful!
|
||||
2023-06-07 10:11:10,978 p=80164 u=rob n=ansible | ok: [vyos-oobm]
|
||||
2023-06-07 10:11:10,982 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Login to EVE-NG and get Cookie] ********************************************************************************************
|
||||
2023-06-07 10:11:11,000 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:11:11,002 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:11:11,007 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:11:11,964 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:11:11,973 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: get lab status] ************************************************************************************************************
|
||||
2023-06-07 10:11:12,005 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:11:12,007 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:11:12,014 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:11:12,450 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:11:12,459 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: start all nodes] ***********************************************************************************************************
|
||||
2023-06-07 10:11:12,491 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:11:12,492 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:11:12,497 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:11:12,954 p=80164 u=rob n=ansible | ok: [eveng] => (item=1)
|
||||
2023-06-07 10:11:14,513 p=80164 u=rob n=ansible | ok: [eveng] => (item=4)
|
||||
2023-06-07 10:11:15,830 p=80164 u=rob n=ansible | ok: [eveng] => (item=6)
|
||||
2023-06-07 10:11:16,777 p=80164 u=rob n=ansible | ok: [eveng] => (item=2)
|
||||
2023-06-07 10:11:17,668 p=80164 u=rob n=ansible | ok: [eveng] => (item=3)
|
||||
2023-06-07 10:11:17,681 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Wait for vyos nodes] *******************************************************************************************************
|
||||
2023-06-07 10:11:17,712 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:11:17,713 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:11:18,839 p=80164 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:11:18,839 p=80164 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:11:48,869 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:11:48,872 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | Traceback (most recent call last):
|
||||
2023-06-07 10:11:48,872 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:11:48,872 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:11:48,872 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:11:48,873 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:11:48,873 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:11:48,873 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:11:48,873 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | raise socket.timeout()
|
||||
2023-06-07 10:11:48,873 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | socket.timeout
|
||||
2023-06-07 10:11:48,874 p=80658 u=rob n=p=80658 u=rob | paramiko [central] |
|
||||
2023-06-07 10:11:48,874 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:11:48,874 p=80658 u=rob n=p=80658 u=rob | paramiko [central] |
|
||||
2023-06-07 10:11:48,874 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | Traceback (most recent call last):
|
||||
2023-06-07 10:11:48,874 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:11:48,874 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | self._check_banner()
|
||||
2023-06-07 10:11:48,875 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:11:48,875 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | raise SSHException(
|
||||
2023-06-07 10:11:48,875 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:11:48,875 p=80658 u=rob n=p=80658 u=rob | paramiko [central] |
|
||||
2023-06-07 10:11:48,875 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | Traceback (most recent call last):
|
||||
2023-06-07 10:11:48,875 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:11:48,876 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:11:48,876 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:11:48,876 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:11:48,876 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:11:48,876 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | raise socket.timeout()
|
||||
2023-06-07 10:11:48,876 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | socket.timeout
|
||||
2023-06-07 10:11:48,877 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:11:48,877 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:11:48,877 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:11:48,877 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | Traceback (most recent call last):
|
||||
2023-06-07 10:11:48,878 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:11:48,878 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | self._check_banner()
|
||||
2023-06-07 10:11:48,878 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:11:48,878 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | raise SSHException(
|
||||
2023-06-07 10:11:48,878 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:11:48,878 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:12:06,206 p=80406 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:12:06,309 p=80406 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:12:19,919 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:12:19,920 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | Traceback (most recent call last):
|
||||
2023-06-07 10:12:19,920 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:12:19,920 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:12:19,920 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:12:19,920 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:12:19,920 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:12:19,920 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | Traceback (most recent call last):
|
||||
2023-06-07 10:12:19,921 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:12:19,921 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:12:19,921 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | raise socket.timeout()
|
||||
2023-06-07 10:12:19,921 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:12:19,921 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | socket.timeout
|
||||
2023-06-07 10:12:19,921 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:12:19,921 p=80658 u=rob n=p=80658 u=rob | paramiko [central] |
|
||||
2023-06-07 10:12:19,921 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:12:19,921 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:12:19,921 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:12:19,922 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | raise socket.timeout()
|
||||
2023-06-07 10:12:19,922 p=80658 u=rob n=p=80658 u=rob | paramiko [central] |
|
||||
2023-06-07 10:12:19,922 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | socket.timeout
|
||||
2023-06-07 10:12:19,922 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | Traceback (most recent call last):
|
||||
2023-06-07 10:12:19,922 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:12:19,922 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:12:19,922 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:12:19,922 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | self._check_banner()
|
||||
2023-06-07 10:12:19,922 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:12:19,922 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:12:19,923 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | Traceback (most recent call last):
|
||||
2023-06-07 10:12:19,923 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | raise SSHException(
|
||||
2023-06-07 10:12:19,923 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:12:19,923 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:12:19,923 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | self._check_banner()
|
||||
2023-06-07 10:12:19,923 p=80658 u=rob n=p=80658 u=rob | paramiko [central] |
|
||||
2023-06-07 10:12:19,923 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:12:19,923 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | raise SSHException(
|
||||
2023-06-07 10:12:19,923 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:12:19,924 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:12:21,504 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:12:21,520 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:12:21,743 p=80658 u=rob n=p=80658 u=rob | paramiko [central] | Authentication (publickey) successful!
|
||||
2023-06-07 10:12:21,743 p=80659 u=rob n=p=80659 u=rob | paramiko [branch] | Authentication (publickey) successful!
|
||||
2023-06-07 10:12:22,853 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:12:22,855 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:12:22,857 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : show wireguard keypairs pubkey default] ***********************************************************************************************
|
||||
2023-06-07 10:12:22,878 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:12:22,878 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:12:23,993 p=80405 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:12:23,993 p=80407 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:12:24,508 p=80405 u=rob n=p=80405 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:12:24,509 p=80407 u=rob n=p=80407 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:12:24,757 p=80407 u=rob n=p=80407 u=rob | paramiko [central] | Authentication (publickey) successful!
|
||||
2023-06-07 10:12:24,759 p=80405 u=rob n=p=80405 u=rob | paramiko [branch] | Authentication (publickey) successful!
|
||||
2023-06-07 10:12:26,453 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:12:26,482 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:12:26,489 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : fail] *********************************************************************************************************************************
|
||||
2023-06-07 10:12:26,516 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:12:26,525 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:12:27,651 p=80164 u=rob n=ansible | fatal: [central]: FAILED! => {"changed": false, "msg": "Failed as requested from task"}
|
||||
2023-06-07 10:12:27,651 p=80164 u=rob n=ansible | fatal: [branch]: FAILED! => {"changed": false, "msg": "Failed as requested from task"}
|
||||
2023-06-07 10:12:27,662 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : generate wireguard default-keypair] ***************************************************************************************************
|
||||
2023-06-07 10:12:29,117 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:12:29,120 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:12:29,126 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : show wireguard keypairs pubkey default] ***********************************************************************************************
|
||||
2023-06-07 10:12:29,143 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:12:29,151 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:12:30,606 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:12:30,609 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:12:30,613 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : setup nodes] **************************************************************************************************************************
|
||||
2023-06-07 10:12:30,630 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:12:30,639 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:12:37,750 p=80164 u=rob n=ansible | [WARNING]: To ensure idempotency and correct diff the input configuration lines should be similar to how they appear if present in the running configuration
|
||||
on device including the indentation
|
||||
|
||||
2023-06-07 10:12:37,750 p=80164 u=rob n=ansible | changed: [branch]
|
||||
2023-06-07 10:12:37,868 p=80164 u=rob n=ansible | changed: [central]
|
||||
2023-06-07 10:12:37,882 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Login to EVE-NG and get Cookie] ********************************************************************************************
|
||||
2023-06-07 10:12:37,911 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:12:37,911 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:12:37,916 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:12:38,890 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:12:38,894 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: stop nodes id] *************************************************************************************************************
|
||||
2023-06-07 10:12:38,917 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:12:38,919 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:12:38,923 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:12:38,932 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:12:38,936 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait after stop] ***********************************************************************************************************
|
||||
2023-06-07 10:12:38,950 p=80164 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:12:38,950 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:12:43,964 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:12:43,977 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: start nodes id] ************************************************************************************************************
|
||||
2023-06-07 10:12:44,011 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:12:44,016 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:12:44,023 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:12:44,029 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:12:44,033 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait after start] **********************************************************************************************************
|
||||
2023-06-07 10:12:44,047 p=80164 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:12:44,047 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:12:49,059 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:12:49,070 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait, b/c the ping often failed without a short break] *********************************************************************
|
||||
2023-06-07 10:12:49,083 p=80164 u=rob n=ansible | Pausing for 30 seconds
|
||||
2023-06-07 10:12:49,083 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:13:19,097 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:13:19,113 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: do ping test] **************************************************************************************************************
|
||||
2023-06-07 10:13:19,138 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:13:19,141 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:13:24,531 p=80164 u=rob n=ansible | ok: [branch] => (item=10.0.1.100)
|
||||
2023-06-07 10:13:24,583 p=80164 u=rob n=ansible | ok: [central] => (item=10.0.2.100)
|
||||
2023-06-07 10:13:24,595 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: execute test commands] *****************************************************************************************************
|
||||
2023-06-07 10:13:24,620 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:13:24,623 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:13:25,908 p=80164 u=rob n=ansible | ok: [central] => (item={'desc': 'Test if IP is set to interface', 'command': "ip -4 addr show dev eth2 | grep inet | tr -s ' ' | cut -d' ' -f3 | head -n 1", 'wait_for': ['result[0] contains "10.0.1.254/24"']})
|
||||
2023-06-07 10:13:26,079 p=80164 u=rob n=ansible | ok: [branch] => (item={'desc': 'show interfaces wireguard', 'command': 'show interfaces wireguard', 'wait_for': ['result[0] contains "S - State, L - Link, u - Up, D - Down, A - Admin Down"', 'result[0] contains "Interface IP Address S/L Description"', 'result[0] contains "--------- ---------- --- -----------"', 'result[0] contains "wg01 192.168.0.2/24 u/u VPN-to-central"']})
|
||||
2023-06-07 10:13:27,330 p=80164 u=rob n=ansible | ok: [central] => (item={'desc': 'show interfaces wireguard', 'command': 'show interfaces wireguard', 'wait_for': ['result[0] contains "S - State, L - Link, u - Up, D - Down, A - Admin Down"', 'result[0] contains "Interface IP Address S/L Description"', 'result[0] contains "--------- ---------- --- -----------"', 'result[0] contains "wg01 192.168.0.1/24 u/u VPN-to-Branch"']})
|
||||
2023-06-07 10:13:27,342 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: register stdout commands] **************************************************************************************************
|
||||
2023-06-07 10:13:27,378 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:13:27,384 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:13:28,867 p=80164 u=rob n=ansible | ok: [branch] => (item={'name': 'show_interfaces_wireguard', 'command': 'show interfaces wireguard'})
|
||||
2023-06-07 10:13:28,873 p=80164 u=rob n=ansible | ok: [central] => (item={'name': 'show_interfaces_wireguard', 'command': 'show interfaces wireguard'})
|
||||
2023-06-07 10:13:33,188 p=80164 u=rob n=ansible | ok: [central] => (item={'name': 'ping_branch_pc', 'command': 'ping 10.0.2.100 count 4'})
|
||||
2023-06-07 10:13:33,201 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Set variables] *************************************************************************************************************
|
||||
2023-06-07 10:13:33,237 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:13:33,242 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:13:34,358 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:13:34,359 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:13:34,367 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Reboot vyos] ***************************************************************************************************************
|
||||
2023-06-07 10:13:34,388 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:13:34,397 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:13:35,725 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:13:35,726 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:13:35,731 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait while shutdown] *******************************************************************************************************
|
||||
2023-06-07 10:13:35,745 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:13:35,749 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Wait for vyos nodes] *******************************************************************************************************
|
||||
2023-06-07 10:13:35,765 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:13:35,772 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:13:36,881 p=80164 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:13:36,882 p=80164 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:13:37,373 p=80827 u=rob n=p=80827 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:13:37,377 p=80828 u=rob n=p=80828 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:13:37,597 p=80827 u=rob n=p=80827 u=rob | paramiko [central] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:13:37,614 p=80828 u=rob n=p=80828 u=rob | paramiko [branch] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:15:36,253 p=80407 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:15:36,254 p=80405 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:15:36,357 p=80407 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:15:36,358 p=80405 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:15:39,212 p=80828 u=rob n=p=80828 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:15:39,217 p=80827 u=rob n=p=80827 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:15:39,432 p=80827 u=rob n=p=80827 u=rob | paramiko [central] | Authentication (publickey) successful!
|
||||
2023-06-07 10:15:39,435 p=80828 u=rob n=p=80828 u=rob | paramiko [branch] | Authentication (publickey) successful!
|
||||
2023-06-07 10:15:40,657 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:15:40,676 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:15:40,680 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Login to EVE-NG and get Cookie] ********************************************************************************************
|
||||
2023-06-07 10:15:40,701 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:15:40,703 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:15:40,708 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:15:41,575 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:15:41,579 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: stop nodes id] *************************************************************************************************************
|
||||
2023-06-07 10:15:41,602 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:15:41,607 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:15:41,613 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:15:41,618 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:15:41,621 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait after stop] ***********************************************************************************************************
|
||||
2023-06-07 10:15:41,635 p=80164 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:15:41,635 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:15:46,650 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:15:46,656 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: start nodes id] ************************************************************************************************************
|
||||
2023-06-07 10:15:46,685 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:15:46,690 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:15:46,695 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:15:46,702 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:15:46,706 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait after start] **********************************************************************************************************
|
||||
2023-06-07 10:15:46,720 p=80164 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:15:46,720 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:15:51,730 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:15:51,738 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait, b/c the ping often failed without a short break] *********************************************************************
|
||||
2023-06-07 10:15:51,757 p=80164 u=rob n=ansible | Pausing for 30 seconds
|
||||
2023-06-07 10:15:51,758 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:16:21,767 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:16:21,776 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: do ping test] **************************************************************************************************************
|
||||
2023-06-07 10:16:21,811 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:16:21,811 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:16:22,978 p=80164 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:16:22,979 p=80164 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:16:22,979 p=80164 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:16:22,979 p=80164 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:16:22,982 p=80942 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:16:22,986 p=80945 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:16:23,526 p=80945 u=rob n=p=80945 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:16:23,528 p=80942 u=rob n=p=80942 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:16:23,751 p=80942 u=rob n=p=80942 u=rob | paramiko [central] | Authentication (publickey) successful!
|
||||
2023-06-07 10:16:23,757 p=80945 u=rob n=p=80945 u=rob | paramiko [branch] | Authentication (publickey) successful!
|
||||
2023-06-07 10:16:29,367 p=80164 u=rob n=ansible | ok: [central] => (item=10.0.2.100)
|
||||
2023-06-07 10:16:29,468 p=80164 u=rob n=ansible | ok: [branch] => (item=10.0.1.100)
|
||||
2023-06-07 10:16:29,479 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: execute test commands] *****************************************************************************************************
|
||||
2023-06-07 10:16:29,506 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:16:29,510 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:16:30,791 p=80164 u=rob n=ansible | ok: [central] => (item={'desc': 'Test if IP is set to interface', 'command': "ip -4 addr show dev eth2 | grep inet | tr -s ' ' | cut -d' ' -f3 | head -n 1", 'wait_for': ['result[0] contains "10.0.1.254/24"']})
|
||||
2023-06-07 10:16:30,977 p=80164 u=rob n=ansible | ok: [branch] => (item={'desc': 'show interfaces wireguard', 'command': 'show interfaces wireguard', 'wait_for': ['result[0] contains "S - State, L - Link, u - Up, D - Down, A - Admin Down"', 'result[0] contains "Interface IP Address S/L Description"', 'result[0] contains "--------- ---------- --- -----------"', 'result[0] contains "wg01 192.168.0.2/24 u/u VPN-to-central"']})
|
||||
2023-06-07 10:16:32,249 p=80164 u=rob n=ansible | ok: [central] => (item={'desc': 'show interfaces wireguard', 'command': 'show interfaces wireguard', 'wait_for': ['result[0] contains "S - State, L - Link, u - Up, D - Down, A - Admin Down"', 'result[0] contains "Interface IP Address S/L Description"', 'result[0] contains "--------- ---------- --- -----------"', 'result[0] contains "wg01 192.168.0.1/24 u/u VPN-to-Branch"']})
|
||||
2023-06-07 10:16:32,261 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: register stdout commands] **************************************************************************************************
|
||||
2023-06-07 10:16:32,296 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:16:32,301 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:16:32,308 p=80164 u=rob n=ansible | skipping: [central] => (item={'name': 'show_interfaces_wireguard', 'command': 'show interfaces wireguard'})
|
||||
2023-06-07 10:16:32,311 p=80164 u=rob n=ansible | skipping: [branch] => (item={'name': 'show_interfaces_wireguard', 'command': 'show interfaces wireguard'})
|
||||
2023-06-07 10:16:32,314 p=80164 u=rob n=ansible | skipping: [central] => (item={'name': 'ping_branch_pc', 'command': 'ping 10.0.2.100 count 4'})
|
||||
2023-06-07 10:16:32,316 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:16:32,316 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:16:32,320 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Set variables] *************************************************************************************************************
|
||||
2023-06-07 10:16:32,340 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:16:32,342 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:16:32,347 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:16:32,352 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:16:32,357 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: ake sure tmp dir exist] ****************************************************************************************************
|
||||
2023-06-07 10:16:32,383 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:16:32,385 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:16:32,391 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:16:32,620 p=80164 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:16:32,624 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: register status of tmp/vyos-1.4-rolling-202306070317-amd64.iso] ************************************************************
|
||||
2023-06-07 10:16:32,646 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:16:32,650 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:16:32,650 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:16:32,777 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:16:32,784 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: ownload upgrade_iso] *******************************************************************************************************
|
||||
2023-06-07 10:16:32,812 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:16:32,814 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:16:32,820 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:16:33,544 p=80164 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:16:33,551 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Copy iso to host] **********************************************************************************************************
|
||||
2023-06-07 10:16:33,567 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:16:33,574 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:16:35,267 p=80945 u=rob n=p=80945 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:16:35,267 p=80942 u=rob n=p=80942 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:16:35,515 p=80945 u=rob n=p=80945 u=rob | paramiko [branch] | Authentication (publickey) successful!
|
||||
2023-06-07 10:16:35,519 p=80942 u=rob n=p=80942 u=rob | paramiko [central] | Authentication (publickey) successful!
|
||||
2023-06-07 10:16:36,291 p=80945 u=rob n=p=80945 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:16:36,297 p=80942 u=rob n=p=80942 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:16:36,520 p=80945 u=rob n=p=80945 u=rob | paramiko [branch] | Authentication (publickey) successful!
|
||||
2023-06-07 10:16:36,530 p=80942 u=rob n=p=80942 u=rob | paramiko [central] | Authentication (publickey) successful!
|
||||
2023-06-07 10:16:51,774 p=80164 u=rob n=ansible | changed: [central]
|
||||
2023-06-07 10:16:54,990 p=80164 u=rob n=ansible | changed: [branch]
|
||||
2023-06-07 10:16:54,997 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: upgrade vyos] **************************************************************************************************************
|
||||
2023-06-07 10:16:55,015 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:16:55,022 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:17:05,780 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:17:05,949 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:17:05,958 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Reboot vyos] ***************************************************************************************************************
|
||||
2023-06-07 10:17:05,989 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:17:05,990 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:17:07,614 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:17:07,640 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:17:07,646 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait while shutdown] *******************************************************************************************************
|
||||
2023-06-07 10:17:07,663 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:17:07,666 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Wait for vyos nodes] *******************************************************************************************************
|
||||
2023-06-07 10:17:07,690 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:17:07,691 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:17:08,793 p=80164 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:17:08,793 p=80164 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use ansible.utils.display.Display.verbosity instead. This feature will be removed in version 2.18.
|
||||
Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:17:09,530 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:17:09,543 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_7.9p1)
|
||||
2023-06-07 10:17:09,773 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:17:09,775 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | Auth banner: b'System is going down. Unprivileged users are not permitted to log in anymore. For technical details, see pam_nologin(8).\n\n'
|
||||
2023-06-07 10:19:08,164 p=80945 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:19:08,164 p=80942 u=rob n=ansible | persistent connection idle timeout triggered, timeout value is 120 secs.
|
||||
See the timeout setting options in the Network Debug and Troubleshooting Guide.
|
||||
2023-06-07 10:19:08,268 p=80945 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:19:08,269 p=80942 u=rob n=ansible | shutdown complete
|
||||
2023-06-07 10:19:40,839 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:19:40,842 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | Traceback (most recent call last):
|
||||
2023-06-07 10:19:40,843 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:19:40,843 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:19:40,843 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:19:40,843 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:19:40,844 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:19:40,844 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | raise socket.timeout()
|
||||
2023-06-07 10:19:40,844 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | socket.timeout
|
||||
2023-06-07 10:19:40,844 p=81056 u=rob n=p=81056 u=rob | paramiko [central] |
|
||||
2023-06-07 10:19:40,844 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:19:40,844 p=81056 u=rob n=p=81056 u=rob | paramiko [central] |
|
||||
2023-06-07 10:19:40,845 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | Traceback (most recent call last):
|
||||
2023-06-07 10:19:40,845 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:19:40,845 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | self._check_banner()
|
||||
2023-06-07 10:19:40,845 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:19:40,846 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | raise SSHException(
|
||||
2023-06-07 10:19:40,846 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:19:40,846 p=81056 u=rob n=p=81056 u=rob | paramiko [central] |
|
||||
2023-06-07 10:19:40,850 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | Exception (client): Error reading SSH protocol banner
|
||||
2023-06-07 10:19:40,853 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | Traceback (most recent call last):
|
||||
2023-06-07 10:19:40,853 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2270, in _check_banner
|
||||
2023-06-07 10:19:40,853 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | buf = self.packetizer.readline(timeout)
|
||||
2023-06-07 10:19:40,854 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 374, in readline
|
||||
2023-06-07 10:19:40,854 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | buf += self._read_timeout(timeout)
|
||||
2023-06-07 10:19:40,854 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/packet.py", line 611, in _read_timeout
|
||||
2023-06-07 10:19:40,854 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | raise socket.timeout()
|
||||
2023-06-07 10:19:40,854 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | socket.timeout
|
||||
2023-06-07 10:19:40,854 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:19:40,855 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | During handling of the above exception, another exception occurred:
|
||||
2023-06-07 10:19:40,855 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:19:40,855 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | Traceback (most recent call last):
|
||||
2023-06-07 10:19:40,855 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2093, in run
|
||||
2023-06-07 10:19:40,855 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | self._check_banner()
|
||||
2023-06-07 10:19:40,855 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | File "/Users/rob/.local/share/virtualenvs/vyos-eveng-b9X2mBdh/lib/python3.9/site-packages/paramiko/transport.py", line 2274, in _check_banner
|
||||
2023-06-07 10:19:40,856 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | raise SSHException(
|
||||
2023-06-07 10:19:40,856 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
|
||||
2023-06-07 10:19:40,856 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] |
|
||||
2023-06-07 10:19:42,471 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:19:42,492 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:19:42,719 p=81057 u=rob n=p=81057 u=rob | paramiko [branch] | Authentication (publickey) successful!
|
||||
2023-06-07 10:19:42,742 p=81056 u=rob n=p=81056 u=rob | paramiko [central] | Authentication (publickey) successful!
|
||||
2023-06-07 10:19:44,321 p=80164 u=rob n=ansible | ok: [central]
|
||||
2023-06-07 10:19:44,321 p=80164 u=rob n=ansible | ok: [branch]
|
||||
2023-06-07 10:19:44,325 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: clear tmp dir] *************************************************************************************************************
|
||||
2023-06-07 10:19:44,337 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:19:44,341 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Login to EVE-NG and get Cookie] ********************************************************************************************
|
||||
2023-06-07 10:19:44,362 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:19:44,364 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:19:44,369 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:19:45,354 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:19:45,361 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: stop nodes id] *************************************************************************************************************
|
||||
2023-06-07 10:19:45,390 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:19:45,396 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:19:45,401 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:19:45,407 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:19:45,411 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait after stop] ***********************************************************************************************************
|
||||
2023-06-07 10:19:45,426 p=80164 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:19:45,426 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:19:50,441 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:19:50,451 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: start nodes id] ************************************************************************************************************
|
||||
2023-06-07 10:19:50,481 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:19:50,483 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:19:50,489 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:19:50,496 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:19:50,500 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait after start] **********************************************************************************************************
|
||||
2023-06-07 10:19:50,515 p=80164 u=rob n=ansible | Pausing for 5 seconds
|
||||
2023-06-07 10:19:50,516 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:19:55,536 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:19:55,550 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: wait, b/c the ping often failed without a short break] *********************************************************************
|
||||
2023-06-07 10:19:55,572 p=80164 u=rob n=ansible | Pausing for 30 seconds
|
||||
2023-06-07 10:19:55,573 p=80164 u=rob n=ansible | (ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
|
||||
2023-06-07 10:20:25,593 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:20:25,610 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: do ping test] **************************************************************************************************************
|
||||
2023-06-07 10:20:25,644 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:20:25,646 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:26,829 p=80164 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:20:26,831 p=80164 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:20:26,831 p=80164 u=rob n=ansible | network_os is set to vyos
|
||||
2023-06-07 10:20:26,831 p=80164 u=rob n=ansible | [WARNING]: ansible-pylibssh not installed, falling back to paramiko
|
||||
|
||||
2023-06-07 10:20:26,840 p=81188 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:20:26,840 p=81189 u=rob n=ansible | [DEPRECATION WARNING]: PlayContext.verbosity is deprecated, use
|
||||
ansible.utils.display.Display.verbosity instead. This feature will be removed
|
||||
in version 2.18. Deprecation warnings can be disabled by setting
|
||||
deprecation_warnings=False in ansible.cfg.
|
||||
2023-06-07 10:20:27,354 p=81189 u=rob n=p=81189 u=rob | paramiko [central] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:20:27,363 p=81188 u=rob n=p=81188 u=rob | paramiko [branch] | Connected (version 2.0, client OpenSSH_9.2p1)
|
||||
2023-06-07 10:20:27,595 p=81189 u=rob n=p=81189 u=rob | paramiko [central] | Authentication (publickey) successful!
|
||||
2023-06-07 10:20:27,603 p=81188 u=rob n=p=81188 u=rob | paramiko [branch] | Authentication (publickey) successful!
|
||||
2023-06-07 10:20:35,488 p=80164 u=rob n=ansible | ok: [branch] => (item=10.0.1.100)
|
||||
2023-06-07 10:20:35,492 p=80164 u=rob n=ansible | ok: [central] => (item=10.0.2.100)
|
||||
2023-06-07 10:20:35,497 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: execute test commands] *****************************************************************************************************
|
||||
2023-06-07 10:20:35,523 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:20:35,526 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:36,829 p=80164 u=rob n=ansible | ok: [central] => (item={'desc': 'Test if IP is set to interface', 'command': "ip -4 addr show dev eth2 | grep inet | tr -s ' ' | cut -d' ' -f3 | head -n 1", 'wait_for': ['result[0] contains "10.0.1.254/24"']})
|
||||
2023-06-07 10:20:37,047 p=80164 u=rob n=ansible | ok: [branch] => (item={'desc': 'show interfaces wireguard', 'command': 'show interfaces wireguard', 'wait_for': ['result[0] contains "S - State, L - Link, u - Up, D - Down, A - Admin Down"', 'result[0] contains "Interface IP Address S/L Description"', 'result[0] contains "--------- ---------- --- -----------"', 'result[0] contains "wg01 192.168.0.2/24 u/u VPN-to-central"']})
|
||||
2023-06-07 10:20:38,295 p=80164 u=rob n=ansible | ok: [central] => (item={'desc': 'show interfaces wireguard', 'command': 'show interfaces wireguard', 'wait_for': ['result[0] contains "S - State, L - Link, u - Up, D - Down, A - Admin Down"', 'result[0] contains "Interface IP Address S/L Description"', 'result[0] contains "--------- ---------- --- -----------"', 'result[0] contains "wg01 192.168.0.1/24 u/u VPN-to-Branch"']})
|
||||
2023-06-07 10:20:38,307 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: register stdout commands] **************************************************************************************************
|
||||
2023-06-07 10:20:38,346 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:20:38,351 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:38,358 p=80164 u=rob n=ansible | skipping: [central] => (item={'name': 'show_interfaces_wireguard', 'command': 'show interfaces wireguard'})
|
||||
2023-06-07 10:20:38,360 p=80164 u=rob n=ansible | skipping: [branch] => (item={'name': 'show_interfaces_wireguard', 'command': 'show interfaces wireguard'})
|
||||
2023-06-07 10:20:38,361 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:38,363 p=80164 u=rob n=ansible | skipping: [central] => (item={'name': 'ping_branch_pc', 'command': 'ping 10.0.2.100 count 4'})
|
||||
2023-06-07 10:20:38,365 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:38,369 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Set variables] *************************************************************************************************************
|
||||
2023-06-07 10:20:38,390 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:20:38,393 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:38,398 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:38,403 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:38,408 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: make sure output dir exist] ************************************************************************************************
|
||||
2023-06-07 10:20:38,433 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:38,435 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:38,441 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:38,672 p=80164 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:20:38,677 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: make sure output include dir exist] ****************************************************************************************
|
||||
2023-06-07 10:20:38,701 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:38,704 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:38,709 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:38,943 p=80164 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:20:38,945 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Get timestamp from the system] *********************************************************************************************
|
||||
2023-06-07 10:20:38,966 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:38,967 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:38,972 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:39,149 p=80164 u=rob n=ansible | changed: [eveng]
|
||||
2023-06-07 10:20:39,155 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: Set variables] *************************************************************************************************************
|
||||
2023-06-07 10:20:39,180 p=80164 u=rob n=ansible | ok: [eveng]
|
||||
2023-06-07 10:20:39,183 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:39,183 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:39,189 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:39,193 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: generate lab rst file] *****************************************************************************************************
|
||||
2023-06-07 10:20:39,218 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:39,221 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:39,226 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:39,717 p=80164 u=rob n=ansible | changed: [eveng -> localhost]
|
||||
2023-06-07 10:20:39,722 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: find all *.conf files in Lab] **********************************************************************************************
|
||||
2023-06-07 10:20:39,748 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:39,748 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:39,756 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:40,044 p=80164 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:20:40,050 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: copy all *.conf files] *****************************************************************************************************
|
||||
2023-06-07 10:20:40,075 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:40,077 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:40,084 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:40,570 p=80164 u=rob n=ansible | changed: [eveng -> localhost] => (item={'path': 'labs/Wireguard/branch.conf', 'mode': '0644', 'isdir': False, 'ischr': False, 'isblk': False, 'isreg': True, 'isfifo': False, 'islnk': False, 'issock': False, 'uid': 501, 'gid': 20, 'size': 694, 'inode': 11035494, 'dev': 16777229, 'nlink': 1, 'atime': 1686123270.5077152, 'mtime': 1686123269.0257325, 'ctime': 1686123269.0257325, 'gr_name': 'staff', 'pw_name': 'rob', 'wusr': True, 'rusr': True, 'xusr': False, 'wgrp': False, 'rgrp': True, 'xgrp': False, 'woth': False, 'roth': True, 'xoth': False, 'isuid': False, 'isgid': False})
|
||||
2023-06-07 10:20:41,056 p=80164 u=rob n=ansible | changed: [eveng -> localhost] => (item={'path': 'labs/Wireguard/central.conf', 'mode': '0644', 'isdir': False, 'ischr': False, 'isblk': False, 'isreg': True, 'isfifo': False, 'islnk': False, 'issock': False, 'uid': 501, 'gid': 20, 'size': 687, 'inode': 11035495, 'dev': 16777229, 'nlink': 1, 'atime': 1686123270.4820926, 'mtime': 1686123269.0258439, 'ctime': 1686123269.0258439, 'gr_name': 'staff', 'pw_name': 'rob', 'wusr': True, 'rusr': True, 'xusr': False, 'wgrp': False, 'rgrp': True, 'xgrp': False, 'woth': False, 'roth': True, 'xoth': False, 'isuid': False, 'isgid': False})
|
||||
2023-06-07 10:20:41,062 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: find all *.config files in Lab] ********************************************************************************************
|
||||
2023-06-07 10:20:41,085 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:41,087 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:41,093 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:41,330 p=80164 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:20:41,334 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: copy all *.config files] ***************************************************************************************************
|
||||
2023-06-07 10:20:41,352 p=80164 u=rob n=ansible | skipping: [eveng]
|
||||
2023-06-07 10:20:41,364 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:41,364 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:41,372 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:41,377 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: find all *.png files in Lab] ***********************************************************************************************
|
||||
2023-06-07 10:20:41,400 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:41,402 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:41,408 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:41,643 p=80164 u=rob n=ansible | ok: [eveng -> localhost]
|
||||
2023-06-07 10:20:41,649 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: copy all *.png files] ******************************************************************************************************
|
||||
2023-06-07 10:20:41,674 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:41,676 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:41,681 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
2023-06-07 10:20:42,147 p=80164 u=rob n=ansible | ok: [eveng -> localhost] => (item={'path': 'labs/Wireguard/topology.png', 'mode': '0644', 'isdir': False, 'ischr': False, 'isblk': False, 'isreg': True, 'isfifo': False, 'islnk': False, 'issock': False, 'uid': 501, 'gid': 20, 'size': 158227, 'inode': 362576, 'dev': 16777229, 'nlink': 1, 'atime': 1676403697.132659, 'mtime': 1648155110.0, 'ctime': 1675368464.81138, 'gr_name': 'staff', 'pw_name': 'rob', 'wusr': True, 'rusr': True, 'xusr': False, 'wgrp': False, 'rgrp': True, 'xgrp': False, 'woth': False, 'roth': True, 'xoth': False, 'isuid': False, 'isgid': False})
|
||||
2023-06-07 10:20:42,153 p=80164 u=rob n=ansible | TASK [eve-ng-lab-test : Wireguard: copy ansible log files] ****************************************************************************************************
|
||||
2023-06-07 10:20:42,176 p=80164 u=rob n=ansible | skipping: [vyos-oobm]
|
||||
2023-06-07 10:20:42,179 p=80164 u=rob n=ansible | skipping: [central]
|
||||
2023-06-07 10:20:42,184 p=80164 u=rob n=ansible | skipping: [branch]
|
||||
113
docs/configexamples/autotest/Wireguard/Wireguard.rst
Normal file
@ -0,0 +1,113 @@
|
||||
#########
|
||||
Wireguard
|
||||
#########
|
||||
|
||||
|
||||
| Testdate: 2023-06-07
|
||||
| Version: 1.3.3
|
||||
| Upgrade Version: 1.4-rolling-202306070317
|
||||
|
||||
|
||||
This simple structure show how to connect two offices. One remote branch and the
|
||||
central office.
|
||||
|
||||
********
|
||||
Topology
|
||||
********
|
||||
|
||||
The topology have a central and a branch VyOS router and one client, to
|
||||
test, in each site.
|
||||
|
||||
.. image:: _include/topology.png
|
||||
:alt: Ansible Example topology image
|
||||
|
||||
*************
|
||||
Configuration
|
||||
*************
|
||||
|
||||
Set the local subnet on eth2 and the public ip address eth1 on each site.
|
||||
|
||||
Central
|
||||
|
||||
.. literalinclude:: _include/central.conf
|
||||
:language: none
|
||||
:lines: 1-2
|
||||
|
||||
Branch
|
||||
|
||||
.. literalinclude:: _include/branch.conf
|
||||
:language: none
|
||||
:lines: 1-2
|
||||
|
||||
|
||||
Next thing to do, is to create a wireguard keypair on each side.
|
||||
After this, the public key can be displayed, to save for later.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
vyos@central:~$ generate wireguard default-keypair
|
||||
vyos@central:~$ show wireguard keypairs pubkey default
|
||||
s35+/Ocmnss0F+4fHP7pgF5oBf6MSN2VHUWSVNtkeTc=
|
||||
|
||||
|
||||
After you have each public key. The wireguard interfaces can be setup.
|
||||
|
||||
|
||||
Central
|
||||
|
||||
.. literalinclude:: _include/central.conf
|
||||
:language: none
|
||||
:lines: 4-11
|
||||
|
||||
Branch
|
||||
|
||||
.. literalinclude:: _include/branch.conf
|
||||
:language: none
|
||||
:lines: 4-11
|
||||
|
||||
|
||||
To reach the network, a route must be set on each VyOS host.
|
||||
In this structure, a static interface route will fit the requirements.
|
||||
|
||||
Central
|
||||
|
||||
.. literalinclude:: _include/central.conf
|
||||
:language: none
|
||||
:lines: 13
|
||||
|
||||
Branch
|
||||
|
||||
.. literalinclude:: _include/branch.conf
|
||||
:language: none
|
||||
:lines: 13
|
||||
|
||||
*********************
|
||||
Testing and debugging
|
||||
*********************
|
||||
|
||||
After all is done and commit, let's take a look if the Wireguard interface is
|
||||
up and running.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
vyos@central:~$ show interfaces wireguard
|
||||
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
|
||||
Interface IP Address S/L Description
|
||||
--------- ---------- --- -----------
|
||||
wg01 192.168.0.1/24 u/u VPN-to-Branch
|
||||
|
||||
|
||||
And ping the Branch PC from your central router to check the response.
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
vyos@central:~$ ping 10.0.2.100 count 4
|
||||
PING 10.0.2.100 (10.0.2.100) 56(84) bytes of data.
|
||||
64 bytes from 10.0.2.100: icmp_seq=1 ttl=63 time=0.502 ms
|
||||
64 bytes from 10.0.2.100: icmp_seq=2 ttl=63 time=0.937 ms
|
||||
64 bytes from 10.0.2.100: icmp_seq=3 ttl=63 time=0.867 ms
|
||||
64 bytes from 10.0.2.100: icmp_seq=4 ttl=63 time=1.15 ms
|
||||
|
||||
--- 10.0.2.100 ping statistics ---
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 35ms
|
||||
rtt min/avg/max/mdev = 0.502/0.865/1.154/0.234 ms
|
||||
13
docs/configexamples/autotest/Wireguard/_include/branch.conf
Normal file
@ -0,0 +1,13 @@
|
||||
set interface ethernet eth2 address 10.0.2.254/24
|
||||
set interface ethernet eth1 address 198.51.100.2/24
|
||||
|
||||
set interfaces wireguard wg01 address 192.168.0.2/24
|
||||
set interfaces wireguard wg01 description 'VPN-to-central'
|
||||
set interfaces wireguard wg01 peer central allowed-ips 10.0.1.0/24
|
||||
set interfaces wireguard wg01 peer central allowed-ips 192.168.0.0/24
|
||||
set interfaces wireguard wg01 peer central address 198.51.100.1
|
||||
set interfaces wireguard wg01 peer central port 51820
|
||||
set interfaces wireguard wg01 peer central pubkey "s35+/Ocmnss0F+4fHP7pgF5oBf6MSN2VHUWSVNtkeTc="
|
||||
set interfaces wireguard wg01 port 51820
|
||||
|
||||
set protocols static interface-route 10.0.1.0/24 next-hop-interface wg01
|
||||
13
docs/configexamples/autotest/Wireguard/_include/central.conf
Normal file
@ -0,0 +1,13 @@
|
||||
set interface ethernet eth2 address 10.0.1.254/24
|
||||
set interface ethernet eth1 address 198.51.100.1/24
|
||||
|
||||
set interfaces wireguard wg01 address 192.168.0.1/24
|
||||
set interfaces wireguard wg01 description 'VPN-to-Branch'
|
||||
set interfaces wireguard wg01 peer branch allowed-ips 10.0.2.0/24
|
||||
set interfaces wireguard wg01 peer branch allowed-ips 192.168.0.0/24
|
||||
set interfaces wireguard wg01 peer branch address 198.51.100.2
|
||||
set interfaces wireguard wg01 peer branch port 51820
|
||||
set interfaces wireguard wg01 peer branch pubkey "WVQtVWxbz3f9Qv2q8t13+PL0MK+axg01hMuyZdqligw="
|
||||
set interfaces wireguard wg01 port 51820
|
||||
|
||||
set protocols static interface-route 10.0.2.0/24 next-hop-interface wg01
|
||||
BIN
docs/configexamples/autotest/Wireguard/_include/topology.png
Normal file
|
After Width: | Height: | Size: 154 KiB |
@ -0,0 +1 @@
|
||||
set interfaces ethernet eth1 ipv6 address autoconf
|
||||
BIN
docs/configexamples/autotest/tunnelbroker/_include/topology.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
@ -0,0 +1,2 @@
|
||||
set interfaces ethernet eth1 address '10.0.10.254/24'
|
||||
set interfaces ethernet eth2 address '10.0.20.254/24'
|
||||
@ -0,0 +1 @@
|
||||
set interfaces ethernet eth1 address dhcp
|
||||
@ -0,0 +1,13 @@
|
||||
set interfaces tunnel tun0 address '2001:470:6c:779::2/64' #Tunnelbroker Client IPv6 Address
|
||||
set interfaces tunnel tun0 description 'HE.NET IPv6 Tunnel'
|
||||
set interfaces tunnel tun0 encapsulation 'sit'
|
||||
set interfaces tunnel tun0 remote '216.66.86.114' #Tunnelbroker Server IPv4 Address
|
||||
set interfaces tunnel tun0 source-address '172.29.129.60' # Tunnelbroker Client IPv4 Address or if there is NAT the current WAN interface address
|
||||
|
||||
set protocols static interface-route6 ::/0 next-hop-interface tun0
|
||||
|
||||
set interface ethernet eth2 address '2001:470:6d:778::1/64' # Tunnelbroker Routed /64 prefix
|
||||
set service router-advert interface eth2 name-server '2001:470:20::2'
|
||||
set service router-advert interface eth2 prefix 2001:470:6d:778::/64 # Tunnelbroker Routed /64 prefix
|
||||
|
||||
set system name-server 2001:470:20::2 #Tunnelbroker DNS Server
|
||||