1 00:00:06,320 --> 00:00:11,499 [Music] 2 00:00:16,240 --> 00:00:20,080 welcome back everyone i hope you had a 3 00:00:18,160 --> 00:00:22,000 great afternoon tea 4 00:00:20,080 --> 00:00:24,720 um this next talk 5 00:00:22,000 --> 00:00:26,560 is from alice farazi who is a gentle 6 00:00:24,720 --> 00:00:28,880 linux developer and the gento kernel 7 00:00:26,560 --> 00:00:31,359 project leader and works as an embedded 8 00:00:28,880 --> 00:00:33,760 software engineer at cybertrust japan 9 00:00:31,359 --> 00:00:36,559 focusing on the linux kernel 10 00:00:33,760 --> 00:00:38,239 um alice will be presenting um uh 11 00:00:36,559 --> 00:00:39,360 integrating 12 00:00:38,239 --> 00:00:41,920 the 13 00:00:39,360 --> 00:00:44,960 gen2 kernel testing systems with the 14 00:00:41,920 --> 00:00:47,920 kernel ci project 15 00:00:44,960 --> 00:00:49,760 this is a pre-recorded talk so feel free 16 00:00:47,920 --> 00:00:50,879 to put your questions in the venulis 17 00:00:49,760 --> 00:00:53,440 chat 18 00:00:50,879 --> 00:00:55,440 we'll have a short time for q a at the 19 00:00:53,440 --> 00:00:59,120 end of the talk and alice will also be 20 00:00:55,440 --> 00:01:01,520 watching the chat throughout 21 00:00:59,120 --> 00:01:01,520 let's go 22 00:01:05,360 --> 00:01:09,200 hello everyone 23 00:01:07,040 --> 00:01:11,520 in this presentation i will talk about 24 00:01:09,200 --> 00:01:14,400 merging an existing framework into canon 25 00:01:11,520 --> 00:01:17,280 ci or how to test your own kind of 26 00:01:14,400 --> 00:01:20,720 project with canon ci 27 00:01:17,280 --> 00:01:21,840 my name is alicia ferrazzi i am a gen2 28 00:01:20,720 --> 00:01:25,200 developer 29 00:01:21,840 --> 00:01:28,720 i am the june 2k project leader 30 00:01:25,200 --> 00:01:31,439 and i am the agent okay nfc creator 31 00:01:28,720 --> 00:01:33,439 i am part of current ci as the technical 32 00:01:31,439 --> 00:01:35,759 steering committee member 33 00:01:33,439 --> 00:01:38,320 i'm also part of a civil infrastructure 34 00:01:35,759 --> 00:01:39,360 platform as a testing working group 35 00:01:38,320 --> 00:01:42,560 member 36 00:01:39,360 --> 00:01:44,640 i am working for miracle linux powered 37 00:01:42,560 --> 00:01:46,880 by saber truss japan 38 00:01:44,640 --> 00:01:51,040 as a software engineer 39 00:01:46,880 --> 00:01:54,000 and i am the lead sai system development 40 00:01:51,040 --> 00:01:56,240 for am linux that is an embedded linux 41 00:01:54,000 --> 00:01:58,719 distribution developed by cybertrust 42 00:01:56,240 --> 00:01:58,719 japan 43 00:02:01,439 --> 00:02:05,680 so in this presentation i will at first 44 00:02:03,759 --> 00:02:08,720 talk about the current ci what is 45 00:02:05,680 --> 00:02:13,520 currency who is doing rci and why 46 00:02:08,720 --> 00:02:15,920 canesia is needed i will talk about the 47 00:02:13,520 --> 00:02:17,200 canonsi composition 48 00:02:15,920 --> 00:02:20,400 i will 49 00:02:17,200 --> 00:02:23,920 talk about the big picture of canon ci 50 00:02:20,400 --> 00:02:27,200 and uh knci current 51 00:02:23,920 --> 00:02:30,640 available uh testing laboratory 52 00:02:27,200 --> 00:02:30,640 i will talk about the 53 00:02:31,120 --> 00:02:35,680 frame definition as 54 00:02:33,440 --> 00:02:37,760 uh in this presentation we will sometime 55 00:02:35,680 --> 00:02:40,239 talk about framework and 56 00:02:37,760 --> 00:02:41,280 i will define what we mean in this 57 00:02:40,239 --> 00:02:43,760 context 58 00:02:41,280 --> 00:02:46,080 in this presentation context 59 00:02:43,760 --> 00:02:49,040 and 60 00:02:46,080 --> 00:02:49,040 i will talk about 61 00:02:49,680 --> 00:02:54,239 which way we have of merging our testing 62 00:02:52,080 --> 00:02:57,760 framework into current ci 63 00:02:54,239 --> 00:02:58,720 and in this presentation the main topic 64 00:02:57,760 --> 00:03:00,959 is 65 00:02:58,720 --> 00:03:03,680 about uh using kinesio and native 66 00:03:00,959 --> 00:03:05,200 implementation so what is kinesio native 67 00:03:03,680 --> 00:03:06,480 implementation 68 00:03:05,200 --> 00:03:09,360 and 69 00:03:06,480 --> 00:03:12,239 i will talk about the 70 00:03:09,360 --> 00:03:14,400 the work that i'm doing for 71 00:03:12,239 --> 00:03:15,440 the civil infrastructure platform 72 00:03:14,400 --> 00:03:17,840 project 73 00:03:15,440 --> 00:03:20,480 for integrating a receiving 74 00:03:17,840 --> 00:03:25,040 infrastructure plot platform 75 00:03:20,480 --> 00:03:25,040 testing framework into kinesia native 76 00:03:26,720 --> 00:03:29,120 and 77 00:03:30,400 --> 00:03:35,360 i will uh 78 00:03:32,720 --> 00:03:37,200 also talk about a cancer currently 79 00:03:35,360 --> 00:03:42,000 supported test 80 00:03:37,200 --> 00:03:44,640 and in the end i will show a example 81 00:03:42,000 --> 00:03:46,879 of one of the meal that 82 00:03:44,640 --> 00:03:46,879 cp sk 83 00:03:48,560 --> 00:03:54,959 is getting from 84 00:03:50,480 --> 00:03:54,959 a canon ci about with a picana 85 00:03:55,200 --> 00:03:58,799 and 86 00:03:56,159 --> 00:04:01,120 in the end i will talk about the sap web 87 00:03:58,799 --> 00:04:04,159 dashboard and give you a conclusion of 88 00:04:01,120 --> 00:04:04,159 this presentation 89 00:04:05,599 --> 00:04:10,159 so what is can sci can si 90 00:04:08,159 --> 00:04:11,680 is a community based open source 91 00:04:10,159 --> 00:04:14,799 distributed 92 00:04:11,680 --> 00:04:17,919 test automation system that is focused 93 00:04:14,799 --> 00:04:22,240 on upstream kernel development 94 00:04:17,919 --> 00:04:27,160 he is currently testing upstream on 155 95 00:04:22,240 --> 00:04:27,160 of physical board and virtual board 96 00:04:28,400 --> 00:04:31,280 kernethci 97 00:04:31,520 --> 00:04:35,759 is organized by the technical steering 98 00:04:34,560 --> 00:04:38,479 committee 99 00:04:35,759 --> 00:04:40,840 and the advisory board 100 00:04:38,479 --> 00:04:42,880 i'm part of the technical student 101 00:04:40,840 --> 00:04:45,520 committee the technical student 102 00:04:42,880 --> 00:04:48,720 committee is formed by the canada cycle 103 00:04:45,520 --> 00:04:50,960 developer and maintainer 104 00:04:48,720 --> 00:04:52,320 and the canadian cover developer and 105 00:04:50,960 --> 00:04:55,320 maintainer 106 00:04:52,320 --> 00:04:55,320 are 107 00:04:58,080 --> 00:05:03,759 are maintaining a good uh quality of the 108 00:05:01,680 --> 00:05:06,160 kinesthei code 109 00:05:03,759 --> 00:05:09,440 and also 110 00:05:06,160 --> 00:05:10,720 helping with maintenance and adding new 111 00:05:09,440 --> 00:05:13,440 feature to 112 00:05:10,720 --> 00:05:15,360 uh can escape 113 00:05:13,440 --> 00:05:17,120 to canon ci 114 00:05:15,360 --> 00:05:19,759 and 115 00:05:17,120 --> 00:05:23,479 we also have an advisory board 116 00:05:19,759 --> 00:05:23,479 that is um 117 00:05:24,720 --> 00:05:30,800 made by the prime organization 118 00:05:26,560 --> 00:05:33,680 representatives that are involved in sci 119 00:05:30,800 --> 00:05:38,080 these representatives harmonizing the 120 00:05:33,680 --> 00:05:40,479 budget and help coordinating a currency 121 00:05:38,080 --> 00:05:40,479 task 122 00:05:44,720 --> 00:05:49,520 so can sei is needed for ensuring the 123 00:05:47,680 --> 00:05:52,080 quality stability and long-term 124 00:05:49,520 --> 00:05:54,479 maintenance of the lino's kernel by 125 00:05:52,080 --> 00:05:56,080 maintaining an open ecosystem around 126 00:05:54,479 --> 00:05:59,680 test automation 127 00:05:56,080 --> 00:05:59,680 practice and principle 128 00:06:00,720 --> 00:06:05,280 so the kinesi 129 00:06:02,400 --> 00:06:05,280 composition 130 00:06:05,440 --> 00:06:12,080 is made by the kinesio core 131 00:06:09,120 --> 00:06:14,319 that is called also core tool 132 00:06:12,080 --> 00:06:18,319 that contains the main configuration and 133 00:06:14,319 --> 00:06:18,319 the main tools of canon ci 134 00:06:18,960 --> 00:06:25,280 and uh 135 00:06:20,960 --> 00:06:25,280 these uh main tool are 136 00:06:26,000 --> 00:06:30,160 are used by um 137 00:06:28,720 --> 00:06:33,039 jenkins 138 00:06:30,160 --> 00:06:37,039 for orchestrating 139 00:06:33,039 --> 00:06:39,759 the building a booting and testing of 140 00:06:37,039 --> 00:06:39,759 the kernel 141 00:06:42,319 --> 00:06:48,479 can sei is composed also by a backend 142 00:06:45,759 --> 00:06:50,240 that currently is being 143 00:06:48,479 --> 00:06:54,080 reworked 144 00:06:50,240 --> 00:06:55,680 and this backend provides also a canasia 145 00:06:54,080 --> 00:06:57,840 web api 146 00:06:55,680 --> 00:06:59,440 that can be used for 147 00:06:57,840 --> 00:07:00,240 getting data 148 00:06:59,440 --> 00:07:03,919 or 149 00:07:00,240 --> 00:07:07,520 for doing some tasks like for example 150 00:07:03,919 --> 00:07:08,639 uploading a file to the ci 151 00:07:07,520 --> 00:07:11,120 storage 152 00:07:08,639 --> 00:07:13,759 server 153 00:07:11,120 --> 00:07:16,080 we also have a front end 154 00:07:13,759 --> 00:07:18,639 that is the 155 00:07:16,080 --> 00:07:21,280 web dashboard of canon ci 156 00:07:18,639 --> 00:07:23,919 that is showing the data available from 157 00:07:21,280 --> 00:07:23,919 the backend 158 00:07:25,280 --> 00:07:30,720 and we also have we are using currently 159 00:07:28,000 --> 00:07:33,840 we are using jenkins for orchestrating 160 00:07:30,720 --> 00:07:33,840 building and tests 161 00:07:35,280 --> 00:07:42,000 and we have some testing lab 162 00:07:38,479 --> 00:07:43,199 currently a testing lab are mostly only 163 00:07:42,000 --> 00:07:46,400 lava 164 00:07:43,199 --> 00:07:48,000 but in the future we are considering to 165 00:07:46,400 --> 00:07:51,840 support also 166 00:07:48,000 --> 00:07:51,840 a different testing laboratory 167 00:07:52,720 --> 00:07:58,639 and this testing lab 168 00:07:55,360 --> 00:08:00,400 is formed by the test definition that 169 00:07:58,639 --> 00:08:03,039 are 170 00:08:00,400 --> 00:08:06,879 containing the lava jobs 171 00:08:03,039 --> 00:08:08,560 test definition using used by lava 172 00:08:06,879 --> 00:08:12,160 laboratory for 173 00:08:08,560 --> 00:08:13,360 executing the test on the kernel 174 00:08:12,160 --> 00:08:15,120 and 175 00:08:13,360 --> 00:08:20,400 so if a 176 00:08:15,120 --> 00:08:22,319 new kernel test need to be added to ksci 177 00:08:20,400 --> 00:08:24,319 this is the place 178 00:08:22,319 --> 00:08:29,680 where we want to add 179 00:08:24,319 --> 00:08:32,080 the new lava job test definition 180 00:08:29,680 --> 00:08:32,080 and 181 00:08:32,800 --> 00:08:35,760 the 182 00:08:33,599 --> 00:08:38,880 testing laboratory 183 00:08:35,760 --> 00:08:40,959 can be easily deploying deployed by 184 00:08:38,880 --> 00:08:43,200 using a lava docker 185 00:08:40,959 --> 00:08:46,320 and 186 00:08:43,200 --> 00:08:48,880 by using lava docker you can 187 00:08:46,320 --> 00:08:50,160 deploy your own econsci lava testing 188 00:08:48,880 --> 00:08:52,080 laboratory 189 00:08:50,160 --> 00:08:54,800 and helping 190 00:08:52,080 --> 00:08:59,040 kernel ci by sharing your 191 00:08:54,800 --> 00:09:01,519 resource or board with current ci 192 00:08:59,040 --> 00:09:05,120 we also have a case adb 193 00:09:01,519 --> 00:09:06,080 that is a tool to submit a connect test 194 00:09:05,120 --> 00:09:10,800 data 195 00:09:06,080 --> 00:09:10,800 to the nsci common database 196 00:09:17,120 --> 00:09:20,959 so here we can see the big picture of 197 00:09:19,279 --> 00:09:22,480 kinesi 198 00:09:20,959 --> 00:09:26,240 and 199 00:09:22,480 --> 00:09:30,240 ksi is made by kinesia native 200 00:09:26,240 --> 00:09:32,880 and but also kcdb 201 00:09:30,240 --> 00:09:35,680 that is getting data from independent 202 00:09:32,880 --> 00:09:40,000 testing framework 203 00:09:35,680 --> 00:09:43,200 so a canister native is the main uh 204 00:09:40,000 --> 00:09:45,760 ci of ksci 205 00:09:43,200 --> 00:09:45,760 that is 206 00:09:47,600 --> 00:09:54,080 booting and testing and 207 00:09:50,880 --> 00:09:55,120 building the kernel for currency i 208 00:09:54,080 --> 00:09:57,760 and 209 00:09:55,120 --> 00:09:59,920 sending the main result 210 00:09:57,760 --> 00:10:00,720 of each test 211 00:09:59,920 --> 00:10:03,120 to 212 00:10:00,720 --> 00:10:06,079 currency 213 00:10:03,120 --> 00:10:08,079 and in the bottom part we can see 214 00:10:06,079 --> 00:10:09,680 all independent testing framework but 215 00:10:08,079 --> 00:10:11,920 are not part of 216 00:10:09,680 --> 00:10:15,360 can sei but we want to 217 00:10:11,920 --> 00:10:16,399 uh share their own data with current ci 218 00:10:15,360 --> 00:10:18,880 and 219 00:10:16,399 --> 00:10:19,839 these independent testing framework can 220 00:10:18,880 --> 00:10:22,000 use 221 00:10:19,839 --> 00:10:26,959 a case idb 222 00:10:22,000 --> 00:10:29,760 it is a tool for sending their own 223 00:10:26,959 --> 00:10:32,760 testing result to work an si common 224 00:10:29,760 --> 00:10:32,760 database 225 00:10:38,399 --> 00:10:41,760 so here we can see the list of the 226 00:10:40,320 --> 00:10:43,680 currently 227 00:10:41,760 --> 00:10:46,079 available 228 00:10:43,680 --> 00:10:49,760 currencies in laboratory that are 229 00:10:46,079 --> 00:10:50,880 connected and shared to can sei 230 00:10:49,760 --> 00:10:53,519 and 231 00:10:50,880 --> 00:10:57,440 some of that are shared by 232 00:10:53,519 --> 00:10:58,240 a people or organization to kind of ci 233 00:10:57,440 --> 00:11:00,399 so 234 00:10:58,240 --> 00:11:02,800 by using the 235 00:11:00,399 --> 00:11:04,480 lava docker repository you can also 236 00:11:02,800 --> 00:11:07,920 share your own 237 00:11:04,480 --> 00:11:11,519 uh testing laboratory to canon ci 238 00:11:07,920 --> 00:11:14,959 and sharing your resource to currency 239 00:11:11,519 --> 00:11:18,079 and helping currency on 240 00:11:14,959 --> 00:11:21,680 getting kernel tests on more 241 00:11:18,079 --> 00:11:21,680 uh different board 242 00:11:22,720 --> 00:11:27,279 so in this presentation we sometimes 243 00:11:25,519 --> 00:11:28,800 talk about framework 244 00:11:27,279 --> 00:11:31,279 and 245 00:11:28,800 --> 00:11:32,640 in this in this context in the context 246 00:11:31,279 --> 00:11:34,240 of this presentation we are talking 247 00:11:32,640 --> 00:11:36,079 about testing framework 248 00:11:34,240 --> 00:11:38,880 including kernel building booting and 249 00:11:36,079 --> 00:11:38,880 testing code 250 00:11:39,839 --> 00:11:44,560 for example 251 00:11:41,600 --> 00:11:46,959 the syrian construction platform project 252 00:11:44,560 --> 00:11:48,399 have its own testing framework for 253 00:11:46,959 --> 00:11:50,079 testing the 254 00:11:48,399 --> 00:11:54,920 sap 255 00:11:50,079 --> 00:11:54,920 super long-term support currently 256 00:12:03,600 --> 00:12:08,720 so there are mainly two ways 257 00:12:06,560 --> 00:12:08,720 of 258 00:12:09,120 --> 00:12:11,920 contributing 259 00:12:10,720 --> 00:12:14,079 uh 260 00:12:11,920 --> 00:12:15,040 to kansas ci 261 00:12:14,079 --> 00:12:18,399 one 262 00:12:15,040 --> 00:12:20,079 is to merging uh your code directly into 263 00:12:18,399 --> 00:12:22,160 kanesha native 264 00:12:20,079 --> 00:12:24,480 and this is the topic that we'll be 265 00:12:22,160 --> 00:12:29,120 talking this presentation 266 00:12:24,480 --> 00:12:31,839 and as an example i will show a 267 00:12:29,120 --> 00:12:35,120 bit a part of the work that i 268 00:12:31,839 --> 00:12:37,519 did in this month 269 00:12:35,120 --> 00:12:39,040 as a member of the cv infrastructure 270 00:12:37,519 --> 00:12:41,920 platform 271 00:12:39,040 --> 00:12:44,079 and for porting vessel infrastructure 272 00:12:41,920 --> 00:12:48,079 platform testing framework 273 00:12:44,079 --> 00:12:48,079 to the econesia native 274 00:12:49,120 --> 00:12:57,680 and the second way is to use a ksidb 275 00:12:53,440 --> 00:12:59,519 and the kcdb way has been presented at 276 00:12:57,680 --> 00:13:03,040 the linux 277 00:12:59,519 --> 00:13:05,519 conference australia in 2021 278 00:13:03,040 --> 00:13:06,880 uh in the agent can sei version to 279 00:13:05,519 --> 00:13:10,240 presentation 280 00:13:06,880 --> 00:13:10,240 and will be not 281 00:13:11,120 --> 00:13:15,440 part of the topic of this presentation 282 00:13:14,240 --> 00:13:17,519 but 283 00:13:15,440 --> 00:13:20,480 uh is just only for 284 00:13:17,519 --> 00:13:24,000 know that there are with two way of 285 00:13:20,480 --> 00:13:24,000 contributing to kind of ci 286 00:13:25,519 --> 00:13:32,079 so in this presentation we will talk 287 00:13:27,600 --> 00:13:32,079 about the kinesio native implementation 288 00:13:33,040 --> 00:13:36,959 so connective native implementation is 289 00:13:35,600 --> 00:13:39,839 the main 290 00:13:36,959 --> 00:13:42,399 testing framework of canon ci 291 00:13:39,839 --> 00:13:45,199 and is used for automating the build 292 00:13:42,399 --> 00:13:48,600 boot and test of the 293 00:13:45,199 --> 00:13:48,600 kernel tree 294 00:13:49,839 --> 00:13:53,839 and 295 00:13:50,959 --> 00:13:55,120 we have also our experimental bisection 296 00:13:53,839 --> 00:13:57,440 system 297 00:13:55,120 --> 00:13:57,440 and 298 00:13:58,000 --> 00:14:00,959 is a 299 00:13:59,040 --> 00:14:03,040 developer and 300 00:14:00,959 --> 00:14:05,519 this kind of seniority implementation is 301 00:14:03,040 --> 00:14:08,839 developed and maintained by the canada 302 00:14:05,519 --> 00:14:08,839 ci community 303 00:14:16,880 --> 00:14:20,959 so i am 304 00:14:18,560 --> 00:14:22,480 from working with a canister native 305 00:14:20,959 --> 00:14:26,079 implementation 306 00:14:22,480 --> 00:14:28,320 i could see that some good point is that 307 00:14:26,079 --> 00:14:31,199 i have already integrated some 308 00:14:28,320 --> 00:14:32,800 kernel boot and testing framework for 309 00:14:31,199 --> 00:14:34,399 working with 310 00:14:32,800 --> 00:14:36,639 the kernel 311 00:14:34,399 --> 00:14:36,639 and 312 00:14:38,000 --> 00:14:45,040 you can say various support 313 00:14:41,120 --> 00:14:45,360 very offered a can sei api 314 00:14:45,040 --> 00:14:47,600 so 315 00:14:45,360 --> 00:14:49,680 [Music] 316 00:14:47,600 --> 00:14:50,639 we can work with the canonical native 317 00:14:49,680 --> 00:14:52,639 data 318 00:14:50,639 --> 00:14:56,480 or doing some tasks by using the 319 00:14:52,639 --> 00:14:56,480 kinesthetic api 320 00:14:56,720 --> 00:15:01,600 and the code is maintained by the 321 00:14:58,959 --> 00:15:04,959 kanesha community 322 00:15:01,600 --> 00:15:06,000 and is a linux foundation project and 323 00:15:04,959 --> 00:15:07,760 um 324 00:15:06,000 --> 00:15:09,360 also by using canasia native 325 00:15:07,760 --> 00:15:12,639 implementation 326 00:15:09,360 --> 00:15:14,320 we can use a very source shared with the 327 00:15:12,639 --> 00:15:17,120 canister 328 00:15:14,320 --> 00:15:22,000 and so all the testing laboratory 329 00:15:17,120 --> 00:15:22,000 resources that are shared with a kinesi 330 00:15:24,839 --> 00:15:30,079 er one of the 331 00:15:27,440 --> 00:15:31,040 problem that i could see is that 332 00:15:30,079 --> 00:15:33,360 uh 333 00:15:31,040 --> 00:15:34,480 is of course made only for a canal 334 00:15:33,360 --> 00:15:36,160 testing 335 00:15:34,480 --> 00:15:38,240 so 336 00:15:36,160 --> 00:15:41,440 we tasked with a heart of the scope of 337 00:15:38,240 --> 00:15:43,759 kinesia native are 338 00:15:41,440 --> 00:15:45,279 not integrated into the canister native 339 00:15:43,759 --> 00:15:47,040 upstream code 340 00:15:45,279 --> 00:15:50,480 uh for example 341 00:15:47,040 --> 00:15:53,839 uh distribution packaging and that's why 342 00:15:50,480 --> 00:15:56,880 uh gen two of his own 343 00:15:53,839 --> 00:15:59,440 external booting and testing 344 00:15:56,880 --> 00:15:59,440 framework 345 00:16:04,480 --> 00:16:07,920 so 346 00:16:05,199 --> 00:16:09,519 receiving infrastructure platform 347 00:16:07,920 --> 00:16:12,240 is a 348 00:16:09,519 --> 00:16:13,519 linux foundation project with aims to 349 00:16:12,240 --> 00:16:16,639 establish 350 00:16:13,519 --> 00:16:19,279 a base layer of industrial grade tooling 351 00:16:16,639 --> 00:16:20,880 using the linux kernel and author open 352 00:16:19,279 --> 00:16:24,000 source project 353 00:16:20,880 --> 00:16:26,399 and you can see the website link in this 354 00:16:24,000 --> 00:16:26,399 slide 355 00:16:30,880 --> 00:16:36,320 so the cip 356 00:16:32,959 --> 00:16:38,880 team decided because of 357 00:16:36,320 --> 00:16:42,720 good point of kinesia native pro 358 00:16:38,880 --> 00:16:42,720 the currency native to 359 00:16:43,600 --> 00:16:48,160 integrate 360 00:16:45,040 --> 00:16:52,399 to start to merge their own 361 00:16:48,160 --> 00:16:55,120 testing framework into a kinesia native 362 00:16:52,399 --> 00:16:56,560 so in the next stage in the next slide i 363 00:16:55,120 --> 00:16:57,519 will explain 364 00:16:56,560 --> 00:17:00,880 uh 365 00:16:57,519 --> 00:17:02,639 what kinesia is doing for 366 00:17:00,880 --> 00:17:04,640 integrating this 367 00:17:02,639 --> 00:17:08,480 to 368 00:17:04,640 --> 00:17:08,480 kind of a native framework 369 00:17:10,000 --> 00:17:14,880 so the cip testing framework 370 00:17:13,919 --> 00:17:16,959 is 371 00:17:14,880 --> 00:17:19,839 the code is only maintained by vcrp 372 00:17:16,959 --> 00:17:19,839 community 373 00:17:21,039 --> 00:17:29,200 is on a gitlab pipeline so 374 00:17:25,839 --> 00:17:32,080 is using github pipeline and 375 00:17:29,200 --> 00:17:34,400 the code that is using gitlab pipeline 376 00:17:32,080 --> 00:17:35,520 are mostly used only by the crp 377 00:17:34,400 --> 00:17:36,880 community 378 00:17:35,520 --> 00:17:39,200 and so 379 00:17:36,880 --> 00:17:39,200 is 380 00:17:39,280 --> 00:17:41,520 very 381 00:17:42,160 --> 00:17:47,240 no cycling of such code because 382 00:17:48,880 --> 00:17:53,039 it's not reusing some some code 383 00:17:51,919 --> 00:17:54,400 and 384 00:17:53,039 --> 00:17:56,400 so all 385 00:17:54,400 --> 00:17:59,440 such code have to be maintained by the 386 00:17:56,400 --> 00:18:01,120 sap community so also future change and 387 00:17:59,440 --> 00:18:02,480 new feature 388 00:18:01,120 --> 00:18:06,000 that are done 389 00:18:02,480 --> 00:18:09,120 need to be maintained by cip community 390 00:18:06,000 --> 00:18:10,960 and results are mostly only shared with 391 00:18:09,120 --> 00:18:13,200 sap team 392 00:18:10,960 --> 00:18:13,200 by 393 00:18:13,440 --> 00:18:20,000 getting result from the gitlab pipeline 394 00:18:17,760 --> 00:18:23,039 and also uh 395 00:18:20,000 --> 00:18:26,240 the test is using a vcap level 396 00:18:23,039 --> 00:18:29,360 laboratory with a 397 00:18:26,240 --> 00:18:32,080 21 physical and virtual active board 398 00:18:29,360 --> 00:18:32,080 under test 399 00:18:34,320 --> 00:18:40,240 by merging 400 00:18:36,400 --> 00:18:41,280 the crp testing framework into canon ci 401 00:18:40,240 --> 00:18:44,400 we have 402 00:18:41,280 --> 00:18:46,880 a code that is maintained by both the cp 403 00:18:44,400 --> 00:18:47,679 community and can sei 404 00:18:46,880 --> 00:18:52,000 so 405 00:18:47,679 --> 00:18:54,320 is allowing for coordinates as 406 00:18:52,000 --> 00:18:56,720 most of the code is maintained by both 407 00:18:54,320 --> 00:19:00,240 community 408 00:18:56,720 --> 00:19:02,480 and all change that we are to record 409 00:19:00,240 --> 00:19:02,480 are 410 00:19:03,679 --> 00:19:12,240 and future change will be added from 411 00:19:08,160 --> 00:19:14,880 sap community and canada community 412 00:19:12,240 --> 00:19:16,720 and results are also integrated along 413 00:19:14,880 --> 00:19:20,400 with canadia 414 00:19:16,720 --> 00:19:23,400 and a summary is shared with sap mailing 415 00:19:20,400 --> 00:19:23,400 lists 416 00:19:24,320 --> 00:19:30,480 and also by integrating into currency 417 00:19:27,280 --> 00:19:31,600 native we can also use all the resource 418 00:19:30,480 --> 00:19:34,320 that is 419 00:19:31,600 --> 00:19:35,120 uh using an sdi 420 00:19:34,320 --> 00:19:38,160 uh 421 00:19:35,120 --> 00:19:39,280 so we have 155 422 00:19:38,160 --> 00:19:41,039 physical 423 00:19:39,280 --> 00:19:42,799 and virtual board 424 00:19:41,039 --> 00:19:46,080 and 425 00:19:42,799 --> 00:19:47,600 we do almost for each 426 00:19:46,080 --> 00:19:49,840 [Music] 427 00:19:47,600 --> 00:19:53,440 release 428 00:19:49,840 --> 00:19:57,200 190 build 429 00:19:53,440 --> 00:19:58,000 and also we can get some future 430 00:19:57,200 --> 00:20:00,559 that 431 00:19:58,000 --> 00:20:02,720 we didn't have on 432 00:20:00,559 --> 00:20:04,640 uh 433 00:20:02,720 --> 00:20:06,000 on the civil infrastructure testing 434 00:20:04,640 --> 00:20:08,400 framework like for example the 435 00:20:06,000 --> 00:20:09,440 experimental b section 436 00:20:08,400 --> 00:20:11,919 that 437 00:20:09,440 --> 00:20:15,200 is helping with regression by doing 438 00:20:11,919 --> 00:20:15,200 automatic bisection 439 00:20:16,480 --> 00:20:22,799 also a kinesin native 440 00:20:19,120 --> 00:20:22,799 is currently supporting 441 00:20:24,080 --> 00:20:28,040 these tests 442 00:20:25,679 --> 00:20:29,120 and we have some 443 00:20:28,040 --> 00:20:30,240 [Music] 444 00:20:29,120 --> 00:20:33,280 subset 445 00:20:30,240 --> 00:20:35,919 of kcl test and ltp 446 00:20:33,280 --> 00:20:39,280 mostly because 447 00:20:35,919 --> 00:20:41,039 each test that is added to 448 00:20:39,280 --> 00:20:43,600 kinesi 449 00:20:41,039 --> 00:20:43,600 need to be 450 00:20:44,400 --> 00:20:47,679 particularly kinesiosci is working by 451 00:20:46,400 --> 00:20:49,280 regression 452 00:20:47,679 --> 00:20:50,640 so 453 00:20:49,280 --> 00:20:53,760 need 454 00:20:50,640 --> 00:20:54,720 that each test that is added to kinesio 455 00:20:53,760 --> 00:20:59,200 native 456 00:20:54,720 --> 00:20:59,200 i have to pass from for most 457 00:20:59,600 --> 00:21:04,480 tests 458 00:21:01,840 --> 00:21:07,600 after most tests are passing 459 00:21:04,480 --> 00:21:10,559 it will be implemented into kinesi 460 00:21:07,600 --> 00:21:14,000 so if there is like some k sub test that 461 00:21:10,559 --> 00:21:16,320 is currently blocked broken is 462 00:21:14,000 --> 00:21:16,320 not 463 00:21:16,960 --> 00:21:21,919 currently headed to the canister but it 464 00:21:19,280 --> 00:21:25,360 can be added in the future when 465 00:21:21,919 --> 00:21:25,360 such problem gets solved 466 00:21:26,960 --> 00:21:29,200 so 467 00:21:29,360 --> 00:21:33,919 anyway anyone can add 468 00:21:32,080 --> 00:21:36,159 their own tests 469 00:21:33,919 --> 00:21:36,159 and 470 00:21:36,880 --> 00:21:42,400 similar infrastructure platform i did 471 00:21:39,840 --> 00:21:43,600 with spectrum marker down checker 472 00:21:42,400 --> 00:21:44,400 as 473 00:21:43,600 --> 00:21:47,280 we 474 00:21:44,400 --> 00:21:50,000 was using such tests 475 00:21:47,280 --> 00:21:52,880 for the cv infrastructure platform 476 00:21:50,000 --> 00:21:52,880 testing framework 477 00:21:53,200 --> 00:21:56,200 and 478 00:21:58,080 --> 00:22:02,159 and now such taste is money 479 00:22:03,120 --> 00:22:06,720 supported by both community 480 00:22:10,080 --> 00:22:17,679 so a good way of contributing to can sei 481 00:22:13,919 --> 00:22:17,679 is adding new tests 482 00:22:20,320 --> 00:22:25,520 so as i was saying by 483 00:22:23,039 --> 00:22:28,960 integrating the 484 00:22:25,520 --> 00:22:30,799 cp uh testing framework into kinesi 485 00:22:28,960 --> 00:22:31,679 we also get a 486 00:22:30,799 --> 00:22:33,919 mail 487 00:22:31,679 --> 00:22:38,320 from a can sei 488 00:22:33,919 --> 00:22:41,799 with a summary of the can hci 489 00:22:38,320 --> 00:22:41,799 testing result 490 00:22:42,559 --> 00:22:44,960 and 491 00:22:51,760 --> 00:22:57,039 this is one example of such summary of 492 00:22:55,360 --> 00:23:00,400 the 493 00:22:57,039 --> 00:23:00,400 cip linux 494 00:23:04,240 --> 00:23:09,679 and is send it to the cip dev 495 00:23:07,919 --> 00:23:12,400 mini list 496 00:23:09,679 --> 00:23:13,600 and we can see 497 00:23:12,400 --> 00:23:15,919 if 498 00:23:13,600 --> 00:23:17,280 some kernel failed to build 499 00:23:15,919 --> 00:23:20,159 or 500 00:23:17,280 --> 00:23:24,480 in harder case if some 501 00:23:20,159 --> 00:23:24,480 kernel failed to pass some tests 502 00:23:26,080 --> 00:23:32,320 and in case that something broke 503 00:23:29,520 --> 00:23:34,240 we will have a regression email 504 00:23:32,320 --> 00:23:39,039 that we show 505 00:23:34,240 --> 00:23:39,039 on which board that has failed 506 00:23:40,000 --> 00:23:42,320 and 507 00:23:43,440 --> 00:23:48,080 still on the same 508 00:23:45,919 --> 00:23:51,840 regression email 509 00:23:48,080 --> 00:23:51,840 we will get um 510 00:23:52,640 --> 00:24:00,480 a link with the detail that will send to 511 00:23:56,000 --> 00:24:00,480 the web dashboard but we give 512 00:24:00,640 --> 00:24:04,960 almost same detail of the 513 00:24:03,679 --> 00:24:08,159 email 514 00:24:04,960 --> 00:24:08,159 about the fail 515 00:24:08,240 --> 00:24:13,840 and we will have some log file 516 00:24:11,919 --> 00:24:15,840 with the 517 00:24:13,840 --> 00:24:17,440 full log 518 00:24:15,840 --> 00:24:22,320 of the fade 519 00:24:17,440 --> 00:24:25,520 and we will have um 520 00:24:22,320 --> 00:24:26,559 last pass with issue 521 00:24:25,520 --> 00:24:28,080 when 522 00:24:26,559 --> 00:24:29,760 which 523 00:24:28,080 --> 00:24:34,000 kernel release 524 00:24:29,760 --> 00:24:34,000 was passing the test 525 00:24:34,080 --> 00:24:39,840 before these tests started to fail 526 00:24:38,559 --> 00:24:42,080 so if 527 00:24:39,840 --> 00:24:43,840 we have tests for 528 00:24:42,080 --> 00:24:45,360 fuel kernel 529 00:24:43,840 --> 00:24:46,720 release 530 00:24:45,360 --> 00:24:49,600 we can 531 00:24:46,720 --> 00:24:53,600 see that there is a problem 532 00:24:49,600 --> 00:24:53,600 and it will add some 533 00:24:53,760 --> 00:24:58,400 relevant error message 534 00:24:56,240 --> 00:24:58,400 of 535 00:24:59,039 --> 00:25:05,120 from the log 536 00:25:01,039 --> 00:25:08,559 of the error that we got 537 00:25:05,120 --> 00:25:09,840 and this can in some cases can help 538 00:25:08,559 --> 00:25:13,039 to 539 00:25:09,840 --> 00:25:13,039 understand the problem 540 00:25:13,440 --> 00:25:17,120 and also 541 00:25:14,960 --> 00:25:18,159 um 542 00:25:17,120 --> 00:25:20,320 is 543 00:25:18,159 --> 00:25:22,559 it can also start 544 00:25:20,320 --> 00:25:22,559 the 545 00:25:22,720 --> 00:25:28,400 automatic b section but currently is 546 00:25:25,600 --> 00:25:30,080 experimental so we still have to see 547 00:25:28,400 --> 00:25:32,960 result from 548 00:25:30,080 --> 00:25:32,960 such system 549 00:25:36,159 --> 00:25:42,320 and we also got a dashboard 550 00:25:40,000 --> 00:25:44,919 that is part of can ci 551 00:25:42,320 --> 00:25:49,120 and by getting going to 552 00:25:44,919 --> 00:25:51,760 cip.co.org we can see each uh 553 00:25:49,120 --> 00:25:54,640 canisia release and 554 00:25:51,760 --> 00:25:56,159 the status for each 555 00:25:54,640 --> 00:25:58,960 can is use 556 00:25:56,159 --> 00:26:01,279 cp a current release 557 00:25:58,960 --> 00:26:01,279 and 558 00:26:04,400 --> 00:26:07,360 so we can see 559 00:26:06,320 --> 00:26:10,240 if 560 00:26:07,360 --> 00:26:12,880 some build have had some problem or some 561 00:26:10,240 --> 00:26:15,360 tested some problem or some 562 00:26:12,880 --> 00:26:15,360 release 563 00:26:16,000 --> 00:26:21,600 so in conclusion working on a canesia 564 00:26:18,960 --> 00:26:24,080 native helped to create a sheriff's side 565 00:26:21,600 --> 00:26:26,240 of tooling and infrastructure for 566 00:26:24,080 --> 00:26:28,080 improving channel dependability and 567 00:26:26,240 --> 00:26:30,480 assurance 568 00:26:28,080 --> 00:26:31,760 so like 569 00:26:30,480 --> 00:26:35,840 cp 570 00:26:31,760 --> 00:26:35,840 the civil infrastructure platform 571 00:26:35,919 --> 00:26:39,200 by 572 00:26:37,679 --> 00:26:41,200 working uh 573 00:26:39,200 --> 00:26:43,679 adding their own 574 00:26:41,200 --> 00:26:47,279 tool to can sei 575 00:26:43,679 --> 00:26:51,200 airpad not only by to test 576 00:26:47,279 --> 00:26:52,880 a cip kernel but also to test upstream 577 00:26:51,200 --> 00:26:55,760 are such tests 578 00:26:52,880 --> 00:26:56,720 are in many cases are shared to 579 00:26:55,760 --> 00:27:01,039 also 580 00:26:56,720 --> 00:27:01,039 with the upstream kernel code 581 00:27:02,240 --> 00:27:07,039 and also a 582 00:27:04,240 --> 00:27:08,799 currency is a native is a useful tool 583 00:27:07,039 --> 00:27:11,760 for discovering 584 00:27:08,799 --> 00:27:11,760 regression bugs 585 00:27:12,559 --> 00:27:14,799 and 586 00:27:15,840 --> 00:27:21,159 working with 587 00:27:17,600 --> 00:27:21,159 doing kind of 588 00:27:23,600 --> 00:27:28,880 to to find 589 00:27:26,000 --> 00:27:31,039 bugs on the kernel 590 00:27:28,880 --> 00:27:35,120 and helping improving the canal 591 00:27:31,039 --> 00:27:37,039 dependability and assurance 592 00:27:35,120 --> 00:27:40,399 so if you are interested there is the 593 00:27:37,039 --> 00:27:40,399 canesia documentation 594 00:27:41,440 --> 00:27:46,399 there is also a link about the 595 00:27:44,159 --> 00:27:49,600 work that the civil infrastructure 596 00:27:46,399 --> 00:27:52,080 testing project a few infrastructure 597 00:27:49,600 --> 00:27:52,080 platform 598 00:27:52,399 --> 00:27:58,240 test framework 599 00:27:54,880 --> 00:27:58,240 mad testing work group 600 00:27:59,440 --> 00:28:05,919 is doing for a integrating 601 00:28:03,520 --> 00:28:08,240 for doing for testing cip 602 00:28:05,919 --> 00:28:11,840 uh with canonical native 603 00:28:08,240 --> 00:28:15,360 and if you are interested by going to 604 00:28:11,840 --> 00:28:17,440 such dashboard you can see 605 00:28:15,360 --> 00:28:20,559 which 606 00:28:17,440 --> 00:28:24,799 feature we are working on currently 607 00:28:20,559 --> 00:28:28,679 and what we are doing or what we did 608 00:28:24,799 --> 00:28:28,679 in more detail 609 00:28:30,000 --> 00:28:35,360 and uh there is the canisium antenna 610 00:28:32,559 --> 00:28:38,640 channel so of course 611 00:28:35,360 --> 00:28:41,039 uh you can ask a question on 612 00:28:38,640 --> 00:28:45,760 this presentation but 613 00:28:41,039 --> 00:28:47,840 also after this presentation you can 614 00:28:45,760 --> 00:28:50,480 ask a question to a 615 00:28:47,840 --> 00:28:54,080 kind of sign maintainer channel that i 616 00:28:50,480 --> 00:28:54,080 showed on this slide 617 00:28:55,360 --> 00:29:01,760 so that's everything for my presentation 618 00:28:58,159 --> 00:29:01,760 and thank you for listening 619 00:29:04,000 --> 00:29:07,600 all right 620 00:29:05,200 --> 00:29:10,080 um we've had a few questions come in 621 00:29:07,600 --> 00:29:12,399 we've only got a very short time for 622 00:29:10,080 --> 00:29:15,200 questions so i'll um hand over to 623 00:29:12,399 --> 00:29:17,919 allison let her pick which uh ones that 624 00:29:15,200 --> 00:29:20,960 um she thinks we we can talk about in 625 00:29:17,919 --> 00:29:22,799 the limited time we've got left 626 00:29:20,960 --> 00:29:27,760 hi again uh 627 00:29:22,799 --> 00:29:30,000 from japan and live currently 628 00:29:27,760 --> 00:29:30,000 so 629 00:29:32,960 --> 00:29:38,880 um we had uh one question that is about 630 00:29:36,799 --> 00:29:40,640 what is the recommended workflow for 631 00:29:38,880 --> 00:29:43,120 adding support 632 00:29:40,640 --> 00:29:44,799 for a new driver device if the question 633 00:29:43,120 --> 00:29:48,720 is about testing 634 00:29:44,799 --> 00:29:50,720 on the canesia documentation there is a 635 00:29:48,720 --> 00:29:52,559 article about 636 00:29:50,720 --> 00:29:56,399 adding testing 637 00:29:52,559 --> 00:29:58,320 to canonsi and i think that is the the 638 00:29:56,399 --> 00:30:00,720 best way would be to check we can 639 00:29:58,320 --> 00:30:03,600 actually documentation about how to add 640 00:30:00,720 --> 00:30:05,200 a new driver or device to kinesiol 641 00:30:03,600 --> 00:30:08,399 for testing 642 00:30:05,200 --> 00:30:11,360 and how to add another question is how 643 00:30:08,399 --> 00:30:12,320 to add or create a new test lab 644 00:30:11,360 --> 00:30:14,720 on 645 00:30:12,320 --> 00:30:15,679 the canonsei gitlab 646 00:30:14,720 --> 00:30:18,720 github 647 00:30:15,679 --> 00:30:20,399 there is a repository that is 648 00:30:18,720 --> 00:30:22,480 a lava docker but probably is the 649 00:30:20,399 --> 00:30:26,559 fastest way for adding 650 00:30:22,480 --> 00:30:28,799 a new test lab took an sdi is to 651 00:30:26,559 --> 00:30:30,240 go into a can sei 652 00:30:28,799 --> 00:30:32,720 github 653 00:30:30,240 --> 00:30:34,960 repository and where is the lava docker 654 00:30:32,720 --> 00:30:37,279 depository that is 655 00:30:34,960 --> 00:30:39,360 uh simple to deploy because it's using 656 00:30:37,279 --> 00:30:41,440 docker and 657 00:30:39,360 --> 00:30:44,159 by just starting that 658 00:30:41,440 --> 00:30:44,159 lava docker 659 00:30:44,559 --> 00:30:50,480 system it will give you 660 00:30:47,120 --> 00:30:50,480 a lava docker testing 661 00:30:50,559 --> 00:30:55,039 system for 662 00:30:53,039 --> 00:30:57,840 connecting to can sei 663 00:30:55,039 --> 00:31:00,000 and for getting the key for connecting 664 00:30:57,840 --> 00:31:03,440 such system to kinesi 665 00:31:00,000 --> 00:31:05,200 you have to open an issue to kinesi core 666 00:31:03,440 --> 00:31:08,080 which is one of the repository into the 667 00:31:05,200 --> 00:31:09,039 canister organization on github 668 00:31:08,080 --> 00:31:11,440 and 669 00:31:09,039 --> 00:31:12,799 you open an issue requesting to get in 670 00:31:11,440 --> 00:31:15,120 such 671 00:31:12,799 --> 00:31:16,480 a key for connecting your laboratory to 672 00:31:15,120 --> 00:31:20,320 kinesi 673 00:31:16,480 --> 00:31:22,399 and uh you will after get contacted by 674 00:31:20,320 --> 00:31:24,399 canesia team for 675 00:31:22,399 --> 00:31:26,000 adding such 676 00:31:24,399 --> 00:31:27,440 uh lava dog 677 00:31:26,000 --> 00:31:30,000 system to the 678 00:31:27,440 --> 00:31:32,559 canister there is also some 679 00:31:30,000 --> 00:31:34,480 work to add 680 00:31:32,559 --> 00:31:36,720 also different 681 00:31:34,480 --> 00:31:38,399 system other than lava docker that is 682 00:31:36,720 --> 00:31:40,240 the one we are using now 683 00:31:38,399 --> 00:31:43,440 but 684 00:31:40,240 --> 00:31:44,799 is currently a work in progress 685 00:31:43,440 --> 00:31:45,840 and 686 00:31:44,799 --> 00:31:48,320 these 687 00:31:45,840 --> 00:31:49,840 testing laboratories that 688 00:31:48,320 --> 00:31:52,000 are 689 00:31:49,840 --> 00:31:52,880 made by 690 00:31:52,000 --> 00:31:55,360 a 691 00:31:52,880 --> 00:31:57,279 canesia user 692 00:31:55,360 --> 00:32:01,600 are 693 00:31:57,279 --> 00:32:04,559 there is some case that are made by some 694 00:32:01,600 --> 00:32:07,200 company that are interested on tests on 695 00:32:04,559 --> 00:32:08,640 their hardware but not only 696 00:32:07,200 --> 00:32:10,720 also 697 00:32:08,640 --> 00:32:13,760 [Music] 698 00:32:10,720 --> 00:32:15,519 there is some personal case that we 699 00:32:13,760 --> 00:32:16,320 wanted to connect with your own hardware 700 00:32:15,519 --> 00:32:19,440 to 701 00:32:16,320 --> 00:32:19,440 uh knci but 702 00:32:19,600 --> 00:32:23,760 that is for uh some kind of personal 703 00:32:22,240 --> 00:32:24,480 usage but not 704 00:32:23,760 --> 00:32:27,039 uh 705 00:32:24,480 --> 00:32:29,120 related to company such things 706 00:32:27,039 --> 00:32:32,080 so 707 00:32:29,120 --> 00:32:34,559 who want to help on can i see i can 708 00:32:32,080 --> 00:32:36,480 connect their own test level doesn't 709 00:32:34,559 --> 00:32:39,480 have to be a company for doing such 710 00:32:36,480 --> 00:32:39,480 things 711 00:32:42,159 --> 00:32:45,279 um 712 00:32:43,200 --> 00:32:48,399 i think that brings us to the uh 713 00:32:45,279 --> 00:32:48,399 end of our time slot 714 00:32:48,720 --> 00:32:53,760 um so if you've got any further 715 00:32:50,640 --> 00:32:56,640 questions uh feel free to uh 716 00:32:53,760 --> 00:32:59,360 ask them uh offline um 717 00:32:56,640 --> 00:33:01,919 and i'm sure alice will be happy to 718 00:32:59,360 --> 00:33:01,919 answer those 719 00:33:03,120 --> 00:33:08,399 so thank you very much for your talk uh 720 00:33:05,600 --> 00:33:09,760 we'll be coming back in a bit under 10 721 00:33:08,399 --> 00:33:11,440 minutes 722 00:33:09,760 --> 00:33:13,840 at 4 20 p.m 723 00:33:11,440 --> 00:33:16,799 for david go 724 00:33:13,840 --> 00:33:19,360 speaking on kernel testing with k-unit 725 00:33:16,799 --> 00:33:19,360 see you all then 726 00:33:19,760 --> 00:33:23,000 thank you