WEBVTT

1
00:00:18.995 --> 00:00:19.345
Right.

2
00:00:19.525 --> 00:00:21.465
<00:00:19.525>So <00:00:20.224>welcome <00:00:20.924>everyone.

3
00:00:22.735 --> 00:00:25.505
<00:00:22.735>Like <00:00:22.890>for <00:00:23.046>the <00:00:23.201>next <00:00:23.357>uh, <00:00:23.512>45 <00:00:23.668>minutes, <00:00:23.823>we <00:00:23.979>are <00:00:24.134>going

4
00:00:25.505 --> 00:00:27.545
<00:00:25.505>to <00:00:25.855>discuss <00:00:26.205>about, <00:00:26.555>uh, <00:00:26.904>GitHubs.

5
00:00:28.135 --> 00:00:31.265
<00:00:28.135>Like <00:00:28.368>what, <00:00:28.601>what <00:00:28.835>makes <00:00:29.068>it <00:00:29.301>so <00:00:29.535>interesting

6
00:00:31.365 --> 00:00:33.265
<00:00:31.365>and <00:00:31.598>what, <00:00:31.831>what <00:00:32.064>makes <00:00:32.298>it <00:00:32.531>so <00:00:32.765>successful?

7
00:00:33.265 --> 00:00:34.825
<00:00:33.265>Because <00:00:33.615>like, <00:00:33.965>there's <00:00:34.315>a <00:00:34.665>lot

8
00:00:34.825 --> 00:00:36.825
<00:00:34.825>of <00:00:35.105>discussions <00:00:35.385>nowadays <00:00:35.665>about <00:00:35.945>this <00:00:36.225>concept,

9
00:00:38.235 --> 00:00:42.455
<00:00:38.235>and <00:00:38.362>we <00:00:38.489>are <00:00:38.616>going <00:00:38.744>to <00:00:38.871>see <00:00:38.998>also <00:00:39.125>a <00:00:39.253>tool <00:00:39.380>called <00:00:39.507>Argo <00:00:39.635>CD

10
00:00:42.765 --> 00:00:46.935
<00:00:42.765>that <00:00:42.920>kind <00:00:43.076>of <00:00:43.231>respects <00:00:43.387>that <00:00:43.542>the <00:00:43.698>GitHub's <00:00:43.853>principles <00:00:44.009>behind <00:00:44.165>it

11
00:00:47.435 --> 00:00:49.535
<00:00:47.435>and, <00:00:47.668>and <00:00:47.901>try <00:00:48.135>tries <00:00:48.368>to <00:00:48.601>implement <00:00:48.835>them.

12
00:00:49.555 --> 00:00:52.735
<00:00:49.555>So <00:00:49.695>it, <00:00:49.835>it's <00:00:49.975>going <00:00:50.115>to <00:00:50.255>be <00:00:50.394>interesting <00:00:50.535>with <00:00:50.675>lots <00:00:50.815>of <00:00:50.955>demos.

13
00:00:53.795 --> 00:00:57.855
<00:00:53.795>So <00:00:53.922>a <00:00:54.049>little <00:00:54.176>words <00:00:54.304>about <00:00:54.431>me, <00:00:54.558>like <00:00:54.685>to <00:00:54.813>tell <00:00:54.940>you <00:00:55.067>the <00:00:55.195>context

14
00:00:58.025 --> 00:01:00.655
<00:00:58.025>where, <00:00:58.165>where <00:00:58.305>I'm <00:00:58.445>coming <00:00:58.585>from <00:00:58.725>and <00:00:58.864>what <00:00:59.004>I'm <00:00:59.144>doing <00:00:59.285>so <00:00:59.425>far.

15
00:01:01.795 --> 00:01:03.895
<00:01:01.795>So <00:01:02.028>like <00:01:02.261>I <00:01:02.495>have <00:01:02.728>a <00:01:02.961>developer <00:01:03.195>background

16
00:01:05.035 --> 00:01:08.815
<00:01:05.035>and <00:01:05.162>I, <00:01:05.289>I <00:01:05.416>am, <00:01:05.544>I, <00:01:05.671>I <00:01:05.798>started <00:01:05.925>with.net <00:01:06.053>and, <00:01:06.180>and <00:01:06.307>some <00:01:06.435>JavaScript,

17
00:01:09.395 --> 00:01:12.455
<00:01:09.395>but <00:01:09.595>somewhere <00:01:09.795>like <00:01:09.994>in, <00:01:10.195>probably <00:01:10.395>like <00:01:10.595>in <00:01:10.795>2012,

18
00:01:13.365 --> 00:01:16.615
<00:01:13.365>like <00:01:13.539>I <00:01:13.714>transitioned <00:01:13.890>to <00:01:14.065>this, <00:01:14.240>I <00:01:14.414>started <00:01:14.589>the <00:01:14.765>transition

19
00:01:16.615 --> 00:01:19.095
<00:01:16.615>to <00:01:16.964>this, <00:01:17.315>uh, <00:01:17.664>DevOps <00:01:18.015>culture.

20
00:01:19.575 --> 00:01:21.495
<00:01:19.575>'cause <00:01:19.808>just <00:01:20.041>somebody <00:01:20.275>had <00:01:20.508>to <00:01:20.741>do <00:01:20.975>this.

21
00:01:21.565 --> 00:01:23.655
<00:01:21.565>Like <00:01:21.845>we <00:01:22.125>were <00:01:22.405>deploying <00:01:22.685>on <00:01:22.965>AWS

22
00:01:24.195 --> 00:01:27.055
<00:01:24.195>and <00:01:24.350>it, <00:01:24.506>it <00:01:24.661>wasn't <00:01:24.817>possible <00:01:24.972>anymore <00:01:25.128>to <00:01:25.283>go, <00:01:25.439>I <00:01:25.595>know,

23
00:01:27.055 --> 00:01:29.815
<00:01:27.055>to <00:01:27.255>like <00:01:27.455>20 <00:01:27.655>VMs <00:01:27.855>and <00:01:28.055>restart <00:01:28.255>the <00:01:28.455>service.

24
00:01:30.095 --> 00:01:32.175
<00:01:30.095>'cause <00:01:30.295>like <00:01:30.495>I <00:01:30.695>tried <00:01:30.895>to <00:01:31.095>do <00:01:31.295>it <00:01:31.495>manually

25
00:01:32.195 --> 00:01:35.295
<00:01:32.195>and <00:01:32.428>your <00:01:32.661>whole <00:01:32.895>day <00:01:33.128>like <00:01:33.361>was <00:01:33.595>wasted.

26
00:01:35.315 --> 00:01:36.735
<00:01:35.315>You, <00:01:35.570>you <00:01:35.826>couldn't <00:01:36.081>like <00:01:36.337>work <00:01:36.593>anymore.

27
00:01:36.875 --> 00:01:41.695
<00:01:36.875>So <00:01:37.030>that's <00:01:37.186>when <00:01:37.341>I, <00:01:37.497>I <00:01:37.652>started <00:01:37.808>the <00:01:37.963>transition, <00:01:38.119>like <00:01:38.275>played

28
00:01:41.695 --> 00:01:44.615
<00:01:41.695>with <00:01:41.895>tools <00:01:42.095>like <00:01:42.294>Ansible <00:01:42.494>and <00:01:42.695>then <00:01:42.895>like <00:01:43.095>Terraform.

29
00:01:45.755 --> 00:01:49.775
<00:01:45.755>But <00:01:45.955>then <00:01:46.155>in, <00:01:46.354>in <00:01:46.554>2018, <00:01:46.755>I <00:01:46.955>joined <00:01:47.155>Mambo

30
00:01:50.685 --> 00:01:54.155
<00:01:50.685>where <00:01:50.840>I'm <00:01:50.996>now <00:01:51.151>like <00:01:51.307>a <00:01:51.462>tech <00:01:51.618>lead, <00:01:51.773>the <00:01:51.929>SRA <00:01:52.085>team

31
00:01:54.175 --> 00:01:55.475
<00:01:54.175>of <00:01:54.759>release <00:01:55.345>engineering.

32
00:01:56.095 --> 00:01:59.755
<00:01:56.095>And <00:01:56.270>what <00:01:56.445>I'm <00:01:56.620>doing <00:01:56.795>there <00:01:56.970>is <00:01:57.145>mostly <00:01:57.320>writing <00:01:57.495>code

33
00:02:00.575 --> 00:02:01.635
<00:02:00.575>for <00:02:01.529>operations.

34
00:02:01.815 --> 00:02:05.715
<00:02:01.815>So <00:02:01.970>I <00:02:02.126>write <00:02:02.281>go <00:02:02.437>and <00:02:02.592>sometimes <00:02:02.748>I, <00:02:02.903>I <00:02:03.059>write <00:02:03.215>Bash

35
00:02:06.335 --> 00:02:10.475
<00:02:06.335>and <00:02:06.490>in <00:02:06.646>Mambo, <00:02:06.801>we, <00:02:06.957>we <00:02:07.112>started <00:02:07.268>with <00:02:07.423>this <00:02:07.579>GitHubs <00:02:07.735>approach

36
00:02:11.215 --> 00:02:13.435
<00:02:11.215>and <00:02:11.415>we <00:02:11.615>adopted <00:02:11.815>a <00:02:12.015>tool <00:02:12.215>called <00:02:12.415>Argo <00:02:12.615>cd.

37
00:02:13.935 --> 00:02:16.675
<00:02:13.935>And <00:02:14.110>then <00:02:14.285>we <00:02:14.460>needed <00:02:14.635>some <00:02:14.810>features <00:02:14.985>for <00:02:15.160>Argo <00:02:15.335>cd.

38
00:02:17.655 --> 00:02:20.355
<00:02:17.655>And <00:02:17.830>then <00:02:18.005>I <00:02:18.180>took <00:02:18.355>some <00:02:18.530>features <00:02:18.705>like <00:02:18.880>pri <00:02:19.055>on

39
00:02:20.355 --> 00:02:21.475
<00:02:20.355>my <00:02:20.691>own <00:02:21.027>private <00:02:21.363>time.

40
00:02:22.465 --> 00:02:26.405
<00:02:22.465>And <00:02:22.592>this <00:02:22.719>come, <00:02:22.846>this <00:02:22.974>how <00:02:23.101>I <00:02:23.228>became <00:02:23.355>a <00:02:23.483>contributor <00:02:23.610>to <00:02:23.737>Argo <00:02:23.865>CD

41
00:02:26.405 --> 00:02:28.045
<00:02:26.405>and <00:02:26.871>other <00:02:27.338>Argo <00:02:27.805>project.

42
00:02:28.865 --> 00:02:32.085
<00:02:28.865>And <00:02:29.098>then <00:02:29.331>Argo <00:02:29.565>City <00:02:29.798>joined <00:02:30.031>the <00:02:30.265>CNCF.

43
00:02:32.985 --> 00:02:36.285
<00:02:32.985>And <00:02:33.140>that's <00:02:33.296>how <00:02:33.451>like <00:02:33.607>it <00:02:33.762>led <00:02:33.918>me <00:02:34.073>to <00:02:34.229>this <00:02:34.385>role

44
00:02:36.285 --> 00:02:37.325
<00:02:36.285>of <00:02:36.753>CNCF <00:02:37.221>ambassador.

45
00:02:37.645 --> 00:02:39.285
<00:02:37.645>'cause <00:02:37.845>like <00:02:38.045>I <00:02:38.245>was <00:02:38.445>ticking <00:02:38.645>all <00:02:38.845>the <00:02:39.045>boxes.

46
00:02:39.545 --> 00:02:43.545
<00:02:39.545>So, <00:02:40.011>um, <00:02:40.478>great <00:02:40.945>times.

47
00:02:45.515 --> 00:02:49.495
<00:02:45.515>So <00:02:45.670>in <00:02:45.826>the <00:02:45.981>next <00:02:46.137>40, <00:02:46.292>45 <00:02:46.448>minutes, <00:02:46.603>I, <00:02:46.759>I'm <00:02:46.915>going

48
00:02:49.495 --> 00:02:52.975
<00:02:49.495>to <00:02:49.670>explain <00:02:49.845>a <00:02:50.020>little <00:02:50.195>bit <00:02:50.370>like <00:02:50.545>about <00:02:50.720>Kubernetes <00:02:50.895>platform.

49
00:02:52.995 --> 00:02:55.735
<00:02:52.995>So <00:02:53.135>we <00:02:53.275>are <00:02:53.415>going <00:02:53.555>to <00:02:53.695>look <00:02:53.835>at <00:02:53.975>it <00:02:54.115>from <00:02:54.255>different <00:02:54.395>angles

50
00:02:55.835 --> 00:02:58.455
<00:02:55.835>and <00:02:55.975>we <00:02:56.115>are <00:02:56.255>going <00:02:56.395>to <00:02:56.535>look <00:02:56.675>like <00:02:56.815>lay <00:02:56.955>brick <00:02:57.095>on <00:02:57.235>brick

51
00:02:58.795 --> 00:03:03.615
<00:02:58.795>and <00:02:58.950>try <00:02:59.106>to <00:02:59.261>understand <00:02:59.417>like <00:02:59.572>how <00:02:59.728>this <00:02:59.883>platform <00:03:00.039>became <00:03:00.195>like

52
00:03:03.715 --> 00:03:05.575
<00:03:03.715>so <00:03:03.995>convenient <00:03:04.275>for <00:03:04.555>the <00:03:04.835>GitHubs <00:03:05.115>concept.

53
00:03:06.355 --> 00:03:08.575
<00:03:06.355>And <00:03:06.554>then <00:03:06.755>we <00:03:06.954>will <00:03:07.155>see <00:03:07.355>what <00:03:07.554>GitHubs <00:03:07.755>means

54
00:03:08.635 --> 00:03:10.575
<00:03:08.635>and <00:03:08.868>like <00:03:09.101>what <00:03:09.334>the <00:03:09.568>GitHubs <00:03:09.801>operator <00:03:10.035>is.

55
00:03:11.235 --> 00:03:13.775
<00:03:11.235>And <00:03:11.375>then <00:03:11.515>we <00:03:11.655>are <00:03:11.795>going <00:03:11.935>to <00:03:12.075>see <00:03:12.215>some <00:03:12.355>Argo <00:03:12.495>CD <00:03:12.635>features.

56
00:03:14.355 --> 00:03:18.235
<00:03:14.355>And <00:03:14.530>we'll <00:03:14.704>end <00:03:14.880>up <00:03:15.054>with <00:03:15.230>like <00:03:15.405>a <00:03:15.579>big <00:03:15.755>demo

57
00:03:19.135 --> 00:03:22.035
<00:03:19.135>to <00:03:19.290>show <00:03:19.446>like <00:03:19.601>how <00:03:19.757>Argo <00:03:19.912>City <00:03:20.068>can <00:03:20.223>self <00:03:20.379>manage <00:03:20.535>itself.

58
00:03:22.605 --> 00:03:24.315
<00:03:22.605>We'll <00:03:22.838>see <00:03:23.071>how <00:03:23.304>it <00:03:23.538>can <00:03:23.771>handle <00:03:24.005>like

59
00:03:24.995 --> 00:03:26.715
<00:03:24.995>external <00:03:25.275>clusters <00:03:25.555>to <00:03:25.835>work <00:03:26.115>them <00:03:26.395>with.

60
00:03:27.725 --> 00:03:31.065
<00:03:27.725>And <00:03:27.880>an <00:03:28.036>interesting <00:03:28.191>pattern <00:03:28.347>called <00:03:28.502>app <00:03:28.658>of <00:03:28.813>apps, <00:03:28.969>like <00:03:29.125>which,

61
00:03:31.115 --> 00:03:33.345
<00:03:31.115>which <00:03:31.395>will <00:03:31.675>allow <00:03:31.955>you <00:03:32.235>to, <00:03:32.515>uh,

62
00:03:33.455 --> 00:03:35.625
<00:03:33.454>install <00:03:33.734>like <00:03:34.015>different <00:03:34.295>applications <00:03:34.575>in <00:03:34.855>the

63
00:03:35.865 --> 00:03:36.945
<00:03:35.865>clusters <00:03:36.351>like <00:03:36.837>cluster.

64
00:03:36.945 --> 00:03:39.865
<00:03:36.945>You'll <00:03:37.072>see <00:03:37.199>how <00:03:37.326>we <00:03:37.454>can <00:03:37.581>have <00:03:37.708>a <00:03:37.835>tree <00:03:37.963>of <00:03:38.090>applications <00:03:38.217>in <00:03:38.345>stock.

65
00:03:39.965 --> 00:03:42.545
<00:03:39.965>So <00:03:40.198>that's <00:03:40.431>what <00:03:40.665>we're <00:03:40.898>going <00:03:41.131>to <00:03:41.365>do.

66
00:03:52.605 --> 00:03:57.375
<00:03:52.605>Okay, <00:03:52.838>so <00:03:53.071>back <00:03:53.304>in <00:03:53.538>2018, <00:03:53.771>even <00:03:54.005>like

67
00:03:57.475 --> 00:04:01.755
<00:03:57.475>before <00:03:57.650>I <00:03:57.825>joined <00:03:58.000>Mambo, <00:03:58.174>like <00:03:58.350>Mambo <00:03:58.525>had <00:03:58.700>the <00:03:58.875>monolith

68
00:04:01.895 --> 00:04:03.675
<00:04:01.895>and <00:04:02.128>it <00:04:02.361>was <00:04:02.595>running <00:04:02.828>it <00:04:03.061>on <00:04:03.295>VMs.

69
00:04:04.935 --> 00:04:08.745
<00:04:04.935>And <00:04:05.110>the <00:04:05.285>goal <00:04:05.460>was <00:04:05.635>something <00:04:05.810>like <00:04:05.985>they, <00:04:06.160>we <00:04:06.335>needed

70
00:04:08.745 --> 00:04:12.385
<00:04:08.745>to <00:04:08.920>start <00:04:09.095>like <00:04:09.270>new <00:04:09.445>additional <00:04:09.620>features, <00:04:09.795>like <00:04:09.970>new <00:04:10.145>things.

71
00:04:13.165 --> 00:04:14.425
<00:04:13.165>And <00:04:13.448>the <00:04:13.732>monolith <00:04:14.015>has <00:04:14.299>like,

72
00:04:15.045 --> 00:04:17.945
<00:04:15.045>had <00:04:15.325>a <00:04:15.605>pretty <00:04:15.885>low <00:04:16.164>deployment <00:04:16.445>cycle.

73
00:04:17.975 --> 00:04:22.705
<00:04:17.975>Like <00:04:18.115>it <00:04:18.255>was <00:04:18.395>not <00:04:18.535>deploying <00:04:18.675>as <00:04:18.815>fast <00:04:18.955>as <00:04:19.095>possible <00:04:19.235>to <00:04:19.375>production,

74
00:04:22.725 --> 00:04:26.205
<00:04:22.725>not <00:04:22.900>getting <00:04:23.075>to <00:04:23.250>the <00:04:23.425>market, <00:04:23.600>not <00:04:23.775>getting <00:04:23.950>that <00:04:24.125>feedback

75
00:04:26.475 --> 00:04:28.805
<00:04:26.475>that <00:04:26.630>you <00:04:26.786>need <00:04:26.941>as <00:04:27.097>fast <00:04:27.252>as <00:04:27.408>possible <00:04:27.563>from <00:04:27.719>your <00:04:27.875>client.

76
00:04:29.425 --> 00:04:32.285
<00:04:29.425>So <00:04:29.580>the <00:04:29.736>idea <00:04:29.891>was <00:04:30.047>like, <00:04:30.202>let's <00:04:30.358>try <00:04:30.513>to <00:04:30.669>do <00:04:30.825>this

77
00:04:32.315 --> 00:04:34.245
<00:04:32.315>with <00:04:32.665>microservices, <00:04:33.015>like <00:04:33.365>new <00:04:33.715>things

78
00:04:34.275 --> 00:04:37.245
<00:04:34.275>that <00:04:34.508>can <00:04:34.741>start <00:04:34.974>aside <00:04:35.208>the, <00:04:35.441>the <00:04:35.674>monolith.

79
00:04:37.245 --> 00:04:39.165
<00:04:37.245>We <00:04:37.445>can <00:04:37.645>try <00:04:37.845>to <00:04:38.045>do <00:04:38.245>them <00:04:38.445>with <00:04:38.645>microservices

80
00:04:39.945 --> 00:04:43.005
<00:04:39.945>and <00:04:40.145>kind <00:04:40.344>of <00:04:40.545>like <00:04:40.745>the <00:04:40.945>decision <00:04:41.145>was, <00:04:41.344>okay,

81
00:04:43.005 --> 00:04:46.565
<00:04:43.005>after <00:04:43.238>you <00:04:43.471>go <00:04:43.705>with <00:04:43.938>microservices, <00:04:44.171>like <00:04:44.405>containers

82
00:04:47.115 --> 00:04:48.485
<00:04:47.115>seem <00:04:47.423>like <00:04:47.731>an <00:04:48.039>obvious <00:04:48.348>choice.

83
00:04:49.085 --> 00:04:53.845
<00:04:49.085>'cause <00:04:49.201>like <00:04:49.318>you <00:04:49.435>can <00:04:49.551>run <00:04:49.668>a <00:04:49.784>micro <00:04:49.901>on <00:04:50.018>a <00:04:50.135>VM <00:04:50.251>completely <00:04:50.368>like <00:04:50.484>you,

84
00:04:53.845 --> 00:04:57.205
<00:04:53.845>it, <00:04:53.985>it's <00:04:54.125>much <00:04:54.265>better <00:04:54.405>to <00:04:54.545>run <00:04:54.685>it <00:04:54.825>like <00:04:54.965>in <00:04:55.105>different <00:04:55.245>containers.

85
00:04:57.465 --> 00:05:00.245
<00:04:57.465>And <00:04:57.620>then <00:04:57.776>of <00:04:57.931>course <00:04:58.087>like <00:04:58.242>you <00:04:58.398>need <00:04:58.553>a <00:04:58.709>container <00:04:58.865>orchestration

86
00:05:00.245 --> 00:05:05.125
<00:05:00.245>because <00:05:00.445>that <00:05:00.645>container <00:05:00.845>needs <00:05:01.045>to <00:05:01.245>be <00:05:01.445>scheduled <00:05:01.645>on,

87
00:05:05.425 --> 00:05:06.565
<00:05:05.425>on <00:05:05.938>different <00:05:06.451>VMs.

88
00:05:06.675 --> 00:05:09.245
<00:05:06.675>Like <00:05:06.850>needs, <00:05:07.025>needs <00:05:07.200>to <00:05:07.375>be <00:05:07.550>moved <00:05:07.725>from <00:05:07.900>a <00:05:08.075>different

89
00:05:09.505 --> 00:05:10.525
<00:05:09.505>VM <00:05:09.811>to <00:05:10.116>another <00:05:10.423>one.

90
00:05:11.115 --> 00:05:12.485
<00:05:11.115>They <00:05:11.361>are <00:05:11.608>closing, <00:05:11.854>they <00:05:12.101>are <00:05:12.348>starting.

91
00:05:12.705 --> 00:05:15.325
<00:05:12.705>So <00:05:12.905>you <00:05:13.104>really <00:05:13.305>need <00:05:13.505>a <00:05:13.705>container <00:05:13.905>orchestration <00:05:14.104>system.

92
00:05:15.745 --> 00:05:20.045
<00:05:15.745>Now <00:05:15.900>the <00:05:16.056>question <00:05:16.211>is <00:05:16.367>like, <00:05:16.522>was <00:05:16.678>this <00:05:16.833>our <00:05:16.989>only <00:05:17.145>option?

93
00:05:20.225 --> 00:05:23.645
<00:05:20.225>And <00:05:20.425>it <00:05:20.625>sometimes <00:05:20.825>the <00:05:21.025>question <00:05:21.225>is <00:05:21.425>obvious, <00:05:21.625>like,

94
00:05:24.385 --> 00:05:26.325
<00:05:24.385>did <00:05:24.664>we <00:05:24.945>consider <00:05:25.224>serverless <00:05:25.505>or <00:05:25.784>not?

95
00:05:28.125 --> 00:05:31.305
<00:05:28.125>And <00:05:28.280>the <00:05:28.436>idea <00:05:28.591>is <00:05:28.747>like <00:05:28.902>if <00:05:29.058>we <00:05:29.213>have <00:05:29.369>adopted <00:05:29.525>serverless,

96
00:05:31.565 --> 00:05:33.985
<00:05:31.565>it <00:05:31.798>could've <00:05:32.031>been <00:05:32.265>like <00:05:32.498>a <00:05:32.731>big <00:05:32.965>revolution

97
00:05:34.455 --> 00:05:37.065
<00:05:34.455>because <00:05:34.655>we <00:05:34.854>would've <00:05:35.055>need <00:05:35.255>to <00:05:35.455>change <00:05:35.655>a <00:05:35.854>lot

98
00:05:37.065 --> 00:05:40.985
<00:05:37.065>of <00:05:37.240>flows <00:05:37.415>from <00:05:37.590>the <00:05:37.765>monolith <00:05:37.940>going <00:05:38.115>to <00:05:38.290>this <00:05:38.465>microservices

99
00:05:41.205 --> 00:05:43.105
<00:05:41.205>and <00:05:41.671>this <00:05:42.138>Kubernetes <00:05:42.604>approach.

100
00:05:44.325 --> 00:05:47.745
<00:05:44.325>It <00:05:44.465>made <00:05:44.604>us <00:05:44.745>think <00:05:44.885>that <00:05:45.025>the <00:05:45.164>monolith <00:05:45.305>can <00:05:45.445>be <00:05:45.585>seen <00:05:45.724>like

101
00:05:48.845 --> 00:05:51.665
<00:05:48.845>not <00:05:49.020>the <00:05:49.195>MI <00:05:49.370>microservice, <00:05:49.545>but <00:05:49.720>more <00:05:49.895>like <00:05:50.070>a <00:05:50.245>microservice

102
00:05:52.245 --> 00:05:54.185
<00:05:52.245>and <00:05:52.445>it <00:05:52.645>can <00:05:52.845>still <00:05:53.045>be <00:05:53.245>run <00:05:53.445>in <00:05:53.645>Kubernetes.

103
00:05:54.845 --> 00:05:56.425
<00:05:54.845>And <00:05:55.125>today <00:05:55.405>it <00:05:55.685>happens <00:05:55.965>like <00:05:56.245>this.

104
00:05:57.265 --> 00:05:59.525
<00:05:57.265>So <00:05:57.440>we <00:05:57.615>still <00:05:57.789>have <00:05:57.965>the <00:05:58.140>monolith <00:05:58.315>running <00:05:58.490>in <00:05:58.664>VMs

105
00:05:59.865 --> 00:06:01.045
<00:05:59.865>and <00:06:00.130>we <00:06:00.396>have <00:06:00.661>the <00:06:00.927>monolith

106
00:06:01.045 --> 00:06:02.885
<00:06:01.045>for <00:06:01.278>some <00:06:01.511>new <00:06:01.745>newer <00:06:01.978>clients <00:06:02.211>running <00:06:02.445>in,

107
00:06:02.885 --> 00:06:04.605
<00:06:02.885>in <00:06:03.351>Kubernetes <00:06:03.818>in <00:06:04.284>containers

108
00:06:05.745 --> 00:06:07.885
<00:06:05.745>and <00:06:05.945>it's <00:06:06.145>in <00:06:06.345>production <00:06:06.545>and <00:06:06.745>it's <00:06:06.945>going <00:06:07.145>okay.

109
00:06:08.425 --> 00:06:10.525
<00:06:08.425>And <00:06:08.625>soon <00:06:08.825>we <00:06:09.025>are <00:06:09.225>going <00:06:09.425>to <00:06:09.625>transition <00:06:09.825>it.

110
00:06:10.545 --> 00:06:14.645
<00:06:10.545>So <00:06:10.685>this <00:06:10.825>is <00:06:10.965>kind <00:06:11.105>of <00:06:11.245>like <00:06:11.385>how <00:06:11.525>we <00:06:11.665>got <00:06:11.805>to <00:06:11.945>Kubernetes.

111
00:06:18.005 --> 00:06:21.265
<00:06:18.005>And <00:06:18.180>so <00:06:18.355>initially <00:06:18.530>we <00:06:18.705>need <00:06:18.880>to <00:06:19.055>talk <00:06:19.230>about <00:06:19.405>Kubernetes,

112
00:06:21.265 --> 00:06:24.225
<00:06:21.265>like <00:06:21.440>a <00:06:21.615>big <00:06:21.789>API <00:06:21.965>server, <00:06:22.140>like <00:06:22.315>think <00:06:22.490>about <00:06:22.664>it,

113
00:06:24.375 --> 00:06:26.265
<00:06:24.375>it's <00:06:24.725>an <00:06:25.075>rest <00:06:25.425>API <00:06:25.775>server.

114
00:06:26.965 --> 00:06:31.025
<00:06:26.965>And <00:06:27.120>it <00:06:27.276>has <00:06:27.431>a <00:06:27.587>database <00:06:27.742>behind, <00:06:27.898>like <00:06:28.053>usually <00:06:28.209>it's <00:06:28.364>ETCD,

115
00:06:31.445 --> 00:06:35.505
<00:06:31.445>but <00:06:31.620>not <00:06:31.795>necessarily <00:06:31.969>this <00:06:32.145>is, <00:06:32.320>uh, <00:06:32.495>the <00:06:32.670>default <00:06:32.844>choice,

116
00:06:36.605 --> 00:06:39.825
<00:06:36.605>but <00:06:36.780>sometimes <00:06:36.955>it <00:06:37.130>happens <00:06:37.305>to <00:06:37.480>like <00:06:37.655>have <00:06:37.830>other <00:06:38.005>implementation.

117
00:06:39.925 --> 00:06:42.545
<00:06:39.925>So <00:06:40.125>it's <00:06:40.325>not <00:06:40.525>like <00:06:40.725>necessary <00:06:40.925>to <00:06:41.125>be <00:06:41.325>TCD.

118
00:06:43.365 --> 00:06:47.785
<00:06:43.365>And <00:06:43.505>this <00:06:43.645>recipe <00:06:43.785>P <00:06:43.925>server <00:06:44.065>like <00:06:44.205>exposes <00:06:44.345>you <00:06:44.485>all <00:06:44.625>the <00:06:44.765>like

119
00:06:48.655 --> 00:06:52.475
<00:06:48.655>normal <00:06:48.934>HGTP <00:06:49.215>verbs <00:06:49.494>get <00:06:49.775>put <00:06:50.054>post

120
00:06:53.055 --> 00:06:57.775
<00:06:53.055>and <00:06:53.230>they <00:06:53.405>have <00:06:53.580>like <00:06:53.755>a <00:06:53.930>list <00:06:54.105>of <00:06:54.280>resources, <00:06:54.455>odds

121
00:06:58.675 --> 00:07:01.015
<00:06:58.675>config <00:06:59.025>maps, <00:06:59.375>deployment <00:06:59.725>replica <00:07:00.075>set.

122
00:07:01.675 --> 00:07:04.015
<00:07:01.675>And <00:07:01.908>you <00:07:02.141>can <00:07:02.375>do <00:07:02.608>changes <00:07:02.841>on <00:07:03.075>them.

123
00:07:04.045 --> 00:07:07.055
<00:07:04.045>Like <00:07:04.245>you, <00:07:04.445>you <00:07:04.645>can <00:07:04.845>update <00:07:05.045>them, <00:07:05.245>create <00:07:05.445>them,

124
00:07:07.475 --> 00:07:10.685
<00:07:07.475>you <00:07:07.650>can <00:07:07.825>get <00:07:08.000>the <00:07:08.175>details, <00:07:08.350>you <00:07:08.525>can <00:07:08.700>patch <00:07:08.875>them,

125
00:07:11.585 --> 00:07:12.845
<00:07:11.585>of <00:07:11.811>course <00:07:12.038>you <00:07:12.265>can <00:07:12.492>delete <00:07:12.719>them.

126
00:07:12.985 --> 00:07:16.685
<00:07:12.985>So <00:07:13.112>all <00:07:13.239>kind <00:07:13.366>of <00:07:13.494>changes <00:07:13.621>you <00:07:13.748>can <00:07:13.875>do <00:07:14.003>to <00:07:14.130>this, <00:07:14.257>uh, <00:07:14.385>resources

127
00:07:17.305 --> 00:07:18.365
<00:07:17.305>on <00:07:17.623>the <00:07:17.941>API <00:07:18.259>server.

128
00:07:18.905 --> 00:07:23.245
<00:07:18.905>And <00:07:19.060>this <00:07:19.216>API <00:07:19.371>server <00:07:19.527>also <00:07:19.682>has <00:07:19.838>like <00:07:19.993>an <00:07:20.149>API <00:07:20.304>specification

129
00:07:24.105 --> 00:07:27.765
<00:07:24.105>and <00:07:24.280>it's, <00:07:24.455>uh, <00:07:24.630>swagger <00:07:24.805>specification, <00:07:24.980>like <00:07:25.155>the <00:07:25.330>whole <00:07:25.505>name.

130
00:07:28.625 --> 00:07:31.685
<00:07:28.625>And <00:07:28.780>so <00:07:28.936>you, <00:07:29.091>you <00:07:29.247>can <00:07:29.402>build <00:07:29.558>your <00:07:29.713>client <00:07:29.869>from <00:07:30.025>it,

131
00:07:32.535 --> 00:07:33.955
<00:07:32.534>but <00:07:32.960>it's <00:07:33.387>not <00:07:33.813>necessarily

132
00:07:34.195 --> 00:07:38.645
<00:07:34.195>'cause <00:07:34.350>there <00:07:34.506>are <00:07:34.661>many <00:07:34.817>SDKs <00:07:34.972>in, <00:07:35.128>in <00:07:35.283>many <00:07:35.439>language <00:07:35.594>somehow.

133
00:07:38.715 --> 00:07:41.285
<00:07:38.715>Like <00:07:38.948>the <00:07:39.181>goal <00:07:39.415>language <00:07:39.648>has <00:07:39.881>an <00:07:40.115>advantage.

134
00:07:42.325 --> 00:07:45.805
<00:07:42.325>'cause <00:07:42.500>this <00:07:42.675>API, <00:07:42.849>it's <00:07:43.025>also <00:07:43.200>used <00:07:43.375>internally <00:07:43.550>by <00:07:43.724>components

135
00:07:45.865 --> 00:07:50.285
<00:07:45.865>of <00:07:46.065>Kubernetes <00:07:46.265>to <00:07:46.465>access, <00:07:46.665>uh, <00:07:46.865>all <00:07:47.065>the, <00:07:47.265>in,

136
00:07:50.315 --> 00:07:52.685
<00:07:50.315>like <00:07:50.665>all <00:07:51.015>the <00:07:51.365>resources <00:07:51.715>inside.

137
00:07:53.505 --> 00:07:56.245
<00:07:53.505>So <00:07:53.738>whenever, <00:07:53.971>uh, <00:07:54.205>it's <00:07:54.438>a <00:07:54.671>new <00:07:54.905>release

138
00:07:56.245 --> 00:07:58.965
<00:07:56.245>of <00:07:56.478>Kubernetes <00:07:56.711>one <00:07:56.945>20 <00:07:57.178>being, <00:07:57.411>uh, <00:07:57.645>deployed.

139
00:07:59.715 --> 00:08:03.895
<00:07:59.715>Also <00:07:59.855>the <00:07:59.995>client <00:08:00.135>version <00:08:00.275>is <00:08:00.415>a <00:08:00.555>new <00:08:00.695>client <00:08:00.835>version <00:08:00.975>is <00:08:01.115>being

140
00:08:04.135 --> 00:08:06.855
<00:08:04.135>deployed <00:08:04.310>that <00:08:04.485>works <00:08:04.659>inside <00:08:04.835>with <00:08:05.010>1 <00:08:05.185>10, <00:08:05.360>1 <00:08:05.534>20.

141
00:08:07.115 --> 00:08:11.255
<00:08:07.115>But, <00:08:07.315>uh, <00:08:07.515>from <00:08:07.715>what <00:08:07.915>I <00:08:08.115>know <00:08:08.315>also, <00:08:08.515>uh,

142
00:08:11.565 --> 00:08:12.575
<00:08:11.565>like <00:08:12.474>Python

143
00:08:12.955 --> 00:08:17.735
<00:08:12.955>and <00:08:13.094>Java <00:08:13.234>clients <00:08:13.375>are <00:08:13.515>also <00:08:13.655>being <00:08:13.794>pretty <00:08:13.935>close <00:08:14.075>to <00:08:14.215>the <00:08:14.354>flow,

144
00:08:17.735 --> 00:08:21.095
<00:08:17.735>like <00:08:17.935>very <00:08:18.135>up <00:08:18.335>to <00:08:18.535>date <00:08:18.735>maybe, <00:08:18.935>uh, <00:08:19.135>uh,

145
00:08:21.335 --> 00:08:22.535
<00:08:21.335>deployed <00:08:21.551>like <00:08:21.767>in <00:08:21.983>the <00:08:22.199>same <00:08:22.415>time,

146
00:08:22.535 --> 00:08:23.695
<00:08:22.535>like <00:08:22.743>released <00:08:22.952>in <00:08:23.161>the <00:08:23.370>same <00:08:23.579>time.

147
00:08:23.695 --> 00:08:25.015
<00:08:23.695>So <00:08:24.091>the <00:08:24.486>new <00:08:24.883>version.

148
00:08:25.275 --> 00:08:29.455
<00:08:25.275>So, <00:08:25.430>so <00:08:25.586>you, <00:08:25.741>you <00:08:25.897>get <00:08:26.052>SDKs <00:08:26.208>in <00:08:26.363>quite <00:08:26.519>many <00:08:26.674>languages

149
00:08:29.955 --> 00:08:32.175
<00:08:29.955>and <00:08:30.130>it's <00:08:30.305>easy <00:08:30.479>to <00:08:30.655>interact <00:08:30.830>with <00:08:31.005>the <00:08:31.180>API <00:08:31.354>server.

150
00:08:33.295 --> 00:08:37.335
<00:08:33.294>Whenever <00:08:33.469>you <00:08:33.645>do <00:08:33.819>like, <00:08:33.995>uh, <00:08:34.169>command <00:08:34.344>QCTL <00:08:34.520>get <00:08:34.694>pods

151
00:08:38.245 --> 00:08:40.095
<00:08:38.245>that <00:08:38.525>goes <00:08:38.804>to <00:08:39.085>the <00:08:39.365>API <00:08:39.645>server.

152
00:08:40.635 --> 00:08:42.055
<00:08:40.635>It <00:08:40.954>does <00:08:41.274>also <00:08:41.593>the <00:08:41.913>authentication

153
00:08:42.115 --> 00:08:43.935
<00:08:42.115>and <00:08:42.348>authorization <00:08:42.581>for <00:08:42.815>you <00:08:43.048>behind <00:08:43.281>the <00:08:43.515>scene

154
00:08:44.355 --> 00:08:47.135
<00:08:44.355>and <00:08:44.510>is <00:08:44.666>able <00:08:44.821>to <00:08:44.977>get <00:08:45.132>the <00:08:45.288>stuff <00:08:45.443>from <00:08:45.599>the <00:08:45.755>API

155
00:08:47.135 --> 00:08:48.255
<00:08:47.135>server <00:08:47.387>and <00:08:47.639>display <00:08:47.891>to <00:08:48.143>you.

156
00:08:50.605 --> 00:08:52.255
<00:08:50.605>Next <00:08:50.885>we <00:08:51.165>can <00:08:51.445>think <00:08:51.725>of <00:08:52.005>the,

157
00:08:56.155 --> 00:09:00.865
<00:08:56.155>as <00:08:56.435>a <00:08:56.714>series <00:08:56.995>of, <00:08:57.275>uh, <00:08:57.555>microservices,

158
00:09:01.245 --> 00:09:05.105
<00:09:01.245>uh, <00:09:01.445>a <00:09:01.645>list <00:09:01.845>of <00:09:02.045>pieces <00:09:02.245>that <00:09:02.445>work <00:09:02.645>together

159
00:09:05.845 --> 00:09:08.225
<00:09:05.845>and <00:09:06.125>do <00:09:06.405>some <00:09:06.685>inter <00:09:06.965>interesting <00:09:07.245>things.

160
00:09:08.405 --> 00:09:11.145
<00:09:08.405>So <00:09:08.579>I'm <00:09:08.755>not <00:09:08.930>going <00:09:09.105>to <00:09:09.280>to <00:09:09.454>begin <00:09:09.630>to <00:09:09.805>details,

161
00:09:11.765 --> 00:09:15.945
<00:09:11.765>but <00:09:11.939>this <00:09:12.115>is <00:09:12.290>how, <00:09:12.465>uh, <00:09:12.640>this <00:09:12.814>all <00:09:12.990>kinds <00:09:13.165>of

162
00:09:16.825 --> 00:09:18.105
<00:09:16.825>controllers <00:09:17.209>we <00:09:17.593>call <00:09:17.977>them,

163
00:09:18.125 --> 00:09:22.625
<00:09:18.125>and <00:09:18.265>you'll <00:09:18.405>hear <00:09:18.545>this, <00:09:18.685>uh, <00:09:18.825>word <00:09:18.965>a <00:09:19.105>lot, <00:09:19.245>work <00:09:19.385>together <00:09:19.525>to

164
00:09:23.695 --> 00:09:26.385
<00:09:23.695>like, <00:09:24.045>uh, <00:09:24.395>schedule <00:09:24.745>pods, <00:09:25.095>uh,

165
00:09:26.675 --> 00:09:29.025
<00:09:26.675>start <00:09:26.908>new <00:09:27.141>instances <00:09:27.375>and <00:09:27.608>and <00:09:27.841>so <00:09:28.074>on.

166
00:09:29.405 --> 00:09:32.265
<00:09:29.405>So <00:09:29.605>let, <00:09:29.805>let's <00:09:30.005>look <00:09:30.204>at <00:09:30.405>the <00:09:30.605>yellow <00:09:30.805>part.

167
00:09:33.205 --> 00:09:34.785
<00:09:33.205>So <00:09:33.555>here <00:09:33.905>we <00:09:34.255>can <00:09:34.605>see

168
00:09:34.785 --> 00:09:38.145
<00:09:34.785>that <00:09:34.959>we <00:09:35.135>have <00:09:35.310>the <00:09:35.485>replica <00:09:35.660>set <00:09:35.834>being <00:09:36.010>a <00:09:36.185>producer

169
00:09:38.775 --> 00:09:42.905
<00:09:38.775>putting <00:09:38.902>in <00:09:39.029>a <00:09:39.156>queue <00:09:39.284>that <00:09:39.411>we <00:09:39.538>need <00:09:39.665>to <00:09:39.793>add <00:09:39.920>one <00:09:40.047>more <00:09:40.175>pod.

170
00:09:43.845 --> 00:09:46.385
<00:09:43.845>And <00:09:44.045>it's <00:09:44.245>like <00:09:44.445>it, <00:09:44.645>each <00:09:44.845>job <00:09:45.045>is <00:09:45.245>done.

171
00:09:46.965 --> 00:09:48.665
<00:09:46.965>And <00:09:47.245>then <00:09:47.525>we <00:09:47.805>have <00:09:48.085>the <00:09:48.365>scheduler

172
00:09:49.445 --> 00:09:52.625
<00:09:49.445>and <00:09:49.645>the <00:09:49.845>scheduler <00:09:50.045>picks <00:09:50.245>up <00:09:50.445>from <00:09:50.645>this <00:09:50.845>queue.

173
00:09:52.885 --> 00:09:55.545
<00:09:52.885>And <00:09:53.060>this <00:09:53.235>time, <00:09:53.410>this <00:09:53.585>time <00:09:53.760>now <00:09:53.935>it's <00:09:54.110>the <00:09:54.285>consumer

174
00:09:55.885 --> 00:09:59.625
<00:09:55.885>and <00:09:56.025>it <00:09:56.165>says <00:09:56.305>that <00:09:56.444>it <00:09:56.585>has <00:09:56.725>one <00:09:56.865>pod <00:09:57.005>to <00:09:57.145>start <00:09:57.285>it.

175
00:10:00.565 --> 00:10:03.625
<00:10:00.565>And <00:10:00.720>this <00:10:00.876>pod <00:10:01.031>needs <00:10:01.187>to <00:10:01.342>be <00:10:01.498>assigned <00:10:01.653>to <00:10:01.809>one <00:10:01.965>node.

176
00:10:03.625 --> 00:10:06.945
<00:10:03.625>This <00:10:03.825>is <00:10:04.025>the <00:10:04.225>scheduler <00:10:04.425>job <00:10:04.625>just <00:10:04.825>takes <00:10:05.025>pods

177
00:10:06.945 --> 00:10:08.265
<00:10:06.945>that <00:10:07.242>need <00:10:07.539>to <00:10:07.836>be <00:10:08.133>assigned.

178
00:10:08.535 --> 00:10:10.665
<00:10:08.535>They <00:10:08.709>are <00:10:08.885>like <00:10:09.060>in <00:10:09.235>a <00:10:09.410>pending <00:10:09.584>state, <00:10:09.760>pending <00:10:09.935>state.

179
00:10:11.505 --> 00:10:13.585
<00:10:11.505>And <00:10:11.660>then <00:10:11.816>it, <00:10:11.971>they, <00:10:12.127>they <00:10:12.282>need <00:10:12.438>to <00:10:12.593>get <00:10:12.749>on <00:10:12.905>OneNote.

180
00:10:13.585 --> 00:10:15.345
<00:10:13.585>They <00:10:13.818>need <00:10:14.051>to <00:10:14.285>get <00:10:14.518>assigned <00:10:14.751>to <00:10:14.985>OneNote.

181
00:10:15.345 --> 00:10:18.105
<00:10:15.345>So <00:10:15.485>it's <00:10:15.625>just <00:10:15.765>this <00:10:15.905>assignment <00:10:16.045>that <00:10:16.185>the <00:10:16.325>scheduler <00:10:16.465>needs <00:10:16.605>to <00:10:16.745>do.

182
00:10:19.085 --> 00:10:20.545
<00:10:19.085>And <00:10:19.347>it'll <00:10:19.610>try <00:10:19.873>to <00:10:20.136>do <00:10:20.399>it

183
00:10:21.605 --> 00:10:24.105
<00:10:21.605>and <00:10:21.838>it, <00:10:22.071>it <00:10:22.305>might <00:10:22.538>succeed <00:10:22.771>or <00:10:23.005>not.

184
00:10:24.585 --> 00:10:25.865
<00:10:24.585>'cause <00:10:24.815>there <00:10:25.045>might <00:10:25.276>be <00:10:25.506>nodes <00:10:25.737>available,

185
00:10:26.445 --> 00:10:29.145
<00:10:26.445>but <00:10:26.678>they <00:10:26.911>might <00:10:27.145>not <00:10:27.378>have <00:10:27.611>enough <00:10:27.845>memory

186
00:10:29.365 --> 00:10:34.025
<00:10:29.365>or <00:10:29.472>CPU <00:10:29.580>to <00:10:29.688>handle <00:10:29.795>that <00:10:29.903>pod, <00:10:30.011>or <00:10:30.118>it <00:10:30.226>might <00:10:30.334>be <00:10:30.441>able <00:10:30.549>to <00:10:30.657>do <00:10:30.765>it.

187
00:10:34.045 --> 00:10:35.545
<00:10:34.045>So <00:10:34.213>it <00:10:34.382>might <00:10:34.551>not <00:10:34.719>be <00:10:34.888>able <00:10:35.057>to <00:10:35.226>do <00:10:35.395>it.

188
00:10:36.285 --> 00:10:40.185
<00:10:36.285>If <00:10:36.485>it's <00:10:36.685>able, <00:10:36.885>then <00:10:37.084>the <00:10:37.285>scheduler, <00:10:37.485>uh, <00:10:37.685>goes

189
00:10:40.205 --> 00:10:42.025
<00:10:40.205>to <00:10:40.555>the <00:10:40.905>last <00:10:41.255>entry <00:10:41.605>here

190
00:10:42.485 --> 00:10:46.985
<00:10:42.485>and <00:10:42.625>becomes <00:10:42.765>now <00:10:42.905>producer, <00:10:43.045>uh, <00:10:43.185>binds <00:10:43.325>the <00:10:43.465>pod <00:10:43.605>to <00:10:43.745>one <00:10:43.885>node

191
00:10:47.565 --> 00:10:51.625
<00:10:47.565>and <00:10:47.765>the <00:10:47.965>node <00:10:48.165>has <00:10:48.365>like, <00:10:48.565>uh, <00:10:48.765>running <00:10:48.965>there.

192
00:10:52.245 --> 00:10:56.105
<00:10:52.245>And <00:10:52.420>this <00:10:52.595>is <00:10:52.770>responsible <00:10:52.945>of <00:10:53.120>picking <00:10:53.295>the <00:10:53.470>PO <00:10:53.645>assigned

193
00:10:56.105 --> 00:11:00.385
<00:10:56.105>to <00:10:56.260>each <00:10:56.416>node <00:10:56.571>and <00:10:56.727>start <00:10:56.882>talking <00:10:57.038>with <00:10:57.193>the <00:10:57.349>container <00:10:57.505>runtime

194
00:11:00.385 --> 00:11:02.585
<00:11:00.385>and <00:11:00.585>starting <00:11:00.785>actually <00:11:00.985>those <00:11:01.185>containers <00:11:01.385>from <00:11:01.585>the <00:11:01.785>po

195
00:11:02.785 --> 00:11:04.505
<00:11:02.785>'cause <00:11:02.940>it <00:11:03.096>can, <00:11:03.251>because <00:11:03.407>it <00:11:03.562>can <00:11:03.718>be <00:11:03.873>more <00:11:04.029>than <00:11:04.185>one.

196
00:11:05.245 --> 00:11:08.185
<00:11:05.245>So <00:11:05.525>we <00:11:05.805>have <00:11:06.085>this <00:11:06.365>pieces <00:11:06.645>talking

197
00:11:08.245 --> 00:11:09.865
<00:11:08.245>asynchronously <00:11:08.595>to <00:11:08.945>one <00:11:09.295>each <00:11:09.645>other.

198
00:11:10.685 --> 00:11:14.905
<00:11:10.685>And <00:11:10.824>we <00:11:10.964>see <00:11:11.104>that <00:11:11.244>sometimes <00:11:11.385>it's <00:11:11.525>possible <00:11:11.665>that <00:11:11.805>some <00:11:11.944>of <00:11:12.084>these,

199
00:11:15.485 --> 00:11:17.745
<00:11:15.485>uh, <00:11:15.835>events <00:11:16.185>might <00:11:16.535>be <00:11:16.885>missed.

200
00:11:18.285 --> 00:11:19.905
<00:11:18.285>We <00:11:18.564>might <00:11:18.844>lose <00:11:19.125>some <00:11:19.405>of <00:11:19.685>them.

201
00:11:20.605 --> 00:11:23.465
<00:11:20.605>Uh, <00:11:20.721>we, <00:11:20.838>we <00:11:20.955>might <00:11:21.071>not <00:11:21.188>be <00:11:21.305>able <00:11:21.421>to <00:11:21.538>react <00:11:21.655>on <00:11:21.771>some <00:11:21.888>of <00:11:22.005>them.

202
00:11:23.565 --> 00:11:27.225
<00:11:23.565>And <00:11:23.720>we'll <00:11:23.876>see <00:11:24.031>what, <00:11:24.187>what <00:11:24.342>happens, <00:11:24.498>uh, <00:11:24.653>with <00:11:24.809>such <00:11:24.965>events

203
00:11:27.295 --> 00:11:29.945
<00:11:27.295>that <00:11:27.469>might <00:11:27.645>not <00:11:27.819>be <00:11:27.995>processed <00:11:28.170>or <00:11:28.344>might <00:11:28.520>be <00:11:28.694>lost.

204
00:11:31.885 --> 00:11:36.385
<00:11:31.885>And <00:11:32.025>kind <00:11:32.165>of <00:11:32.305>like <00:11:32.444>the <00:11:32.585>third <00:11:32.725>brick <00:11:32.865>is <00:11:33.005>this <00:11:33.145>control <00:11:33.285>loop.

205
00:11:37.285 --> 00:11:40.225
<00:11:37.285>So <00:11:37.459>you'll <00:11:37.635>hear <00:11:37.810>these <00:11:37.985>words <00:11:38.160>of <00:11:38.334>controllers <00:11:38.510>a <00:11:38.685>lot,

206
00:11:40.505 --> 00:11:41.905
<00:11:40.505>Kubernetes <00:11:41.135>controllers, <00:11:41.765>controllers.

207
00:11:42.805 --> 00:11:47.225
<00:11:42.805>And <00:11:42.979>the <00:11:43.155>idea <00:11:43.329>comes <00:11:43.505>from <00:11:43.680>like <00:11:43.854>robotics, <00:11:44.030>from <00:11:44.204>automation.

208
00:11:48.545 --> 00:11:52.545
<00:11:48.545>And <00:11:48.719>let, <00:11:48.895>let's <00:11:49.069>say <00:11:49.245>like <00:11:49.420>I <00:11:49.594>have <00:11:49.770>this <00:11:49.944>arm

209
00:11:53.535 --> 00:11:54.995
<00:11:53.535>and <00:11:53.797>it <00:11:54.060>it, <00:11:54.323>it's <00:11:54.586>like <00:11:54.849>this

210
00:11:55.935 --> 00:11:58.395
<00:11:55.935>and <00:11:56.090>I <00:11:56.246>needed <00:11:56.401>to <00:11:56.557>bring <00:11:56.712>it <00:11:56.868>like <00:11:57.023>this <00:11:57.179>in <00:11:57.334>90%.

211
00:11:58.415 --> 00:12:01.195
<00:11:58.415>So <00:11:58.555>this <00:11:58.694>is <00:11:58.834>kind <00:11:58.974>of <00:11:59.115>what <00:11:59.255>the <00:11:59.395>robot <00:11:59.535>needs <00:11:59.675>to <00:11:59.814>do.

212
00:12:01.625 --> 00:12:04.875
<00:12:01.625>Like <00:12:01.800>have <00:12:01.975>this <00:12:02.150>arm, <00:12:02.325>like <00:12:02.500>this <00:12:02.675>receives <00:12:02.850>the <00:12:03.025>command

213
00:12:04.895 --> 00:12:06.355
<00:12:04.895>and <00:12:05.157>needs <00:12:05.420>to <00:12:05.683>be <00:12:05.946>like <00:12:06.209>this.

214
00:12:06.615 --> 00:12:07.955
<00:12:06.615>So <00:12:06.916>just <00:12:07.218>a <00:12:07.519>simple <00:12:07.821>action.

215
00:12:08.415 --> 00:12:12.235
<00:12:08.415>So <00:12:08.570>what <00:12:08.726>it <00:12:08.881>does <00:12:09.037>after <00:12:09.192>receive <00:12:09.348>receives <00:12:09.503>the <00:12:09.659>command <00:12:09.814>is

216
00:12:12.235 --> 00:12:15.605
<00:12:12.235>that <00:12:12.362>it <00:12:12.489>does <00:12:12.616>the <00:12:12.744>observe <00:12:12.871>part, <00:12:12.998>am <00:12:13.125>I <00:12:13.253>in <00:12:13.380>the <00:12:13.507>right <00:12:13.635>state?

217
00:12:16.385 --> 00:12:18.525
<00:12:16.385>And <00:12:16.735>the <00:12:17.085>question <00:12:17.435>is <00:12:17.785>no.

218
00:12:19.425 --> 00:12:21.405
<00:12:19.425>So <00:12:19.658>next <00:12:19.891>it <00:12:20.125>does <00:12:20.358>like <00:12:20.591>this <00:12:20.824>diff

219
00:12:21.825 --> 00:12:25.885
<00:12:21.825>and <00:12:21.941>this <00:12:22.058>means <00:12:22.175>what <00:12:22.291>do <00:12:22.408>I <00:12:22.525>need <00:12:22.641>to <00:12:22.758>do <00:12:22.875>in <00:12:22.991>order <00:12:23.108>to <00:12:23.225>get

220
00:12:25.905 --> 00:12:27.965
<00:12:25.905>to <00:12:26.105>the <00:12:26.305>desired <00:12:26.505>part <00:12:26.704>to <00:12:26.905>the <00:12:27.105>desired <00:12:27.305>state?

221
00:12:28.585 --> 00:12:29.605
<00:12:28.585>And <00:12:29.044>I'm <00:12:29.503>calculating.

222
00:12:29.625 --> 00:12:32.285
<00:12:29.625>So <00:12:29.825>I <00:12:30.025>would <00:12:30.225>need <00:12:30.425>to <00:12:30.625>apply <00:12:30.825>some <00:12:31.025>force

223
00:12:33.365 --> 00:12:36.825
<00:12:33.365>and <00:12:33.520>to <00:12:33.676>push <00:12:33.831>like <00:12:33.987>the <00:12:34.142>hand <00:12:34.298>like <00:12:34.453>this <00:12:34.609>in <00:12:34.765>order

224
00:12:36.925 --> 00:12:38.185
<00:12:36.925>to <00:12:37.151>be <00:12:37.378>in <00:12:37.605>the <00:12:37.832>desired <00:12:38.059>state.

225
00:12:38.205 --> 00:12:41.425
<00:12:38.205>So <00:12:38.332>I'm <00:12:38.459>calculating <00:12:38.586>what <00:12:38.714>force <00:12:38.841>do <00:12:38.968>I <00:12:39.095>need <00:12:39.223>to <00:12:39.350>put <00:12:39.477>on <00:12:39.605>the,

226
00:12:41.645 --> 00:12:44.975
<00:12:41.645>and <00:12:41.800>what, <00:12:41.956>what <00:12:42.111>do <00:12:42.267>I <00:12:42.422>need <00:12:42.578>to <00:12:42.733>trigger <00:12:42.889>in <00:12:43.045>there?

227
00:12:44.975 --> 00:12:47.895
<00:12:44.975>What <00:12:45.102>kind <00:12:45.229>of <00:12:45.356>actions <00:12:45.484>in <00:12:45.611>order <00:12:45.738>to <00:12:45.865>get <00:12:45.993>to <00:12:46.120>the <00:12:46.247>desired <00:12:46.375>state.

228
00:12:48.075 --> 00:12:50.255
<00:12:48.075>And <00:12:48.308>this <00:12:48.541>is <00:12:48.775>like <00:12:49.008>the <00:12:49.241>acting <00:12:49.475>phase.

229
00:12:50.775 --> 00:12:54.015
<00:12:50.775>I <00:12:50.902>need <00:12:51.029>to <00:12:51.156>provide <00:12:51.284>that, <00:12:51.411>I <00:12:51.538>need <00:12:51.665>to <00:12:51.793>do <00:12:51.920>that <00:12:52.047>acting <00:12:52.175>phase.

230
00:12:55.115 --> 00:12:58.135
<00:12:55.115>And <00:12:55.348>probably <00:12:55.581>maybe <00:12:55.815>it'll <00:12:56.048>get <00:12:56.281>like <00:12:56.515>this.

231
00:12:58.795 --> 00:13:01.495
<00:12:58.795>And <00:12:58.969>then <00:12:59.145>I <00:12:59.319>would <00:12:59.495>go <00:12:59.670>again <00:12:59.844>on <00:13:00.020>the <00:13:00.194>observe

232
00:13:02.315 --> 00:13:05.255
<00:13:02.315>and <00:13:02.442>see <00:13:02.569>what <00:13:02.696>do <00:13:02.824>I <00:13:02.951>need <00:13:03.078>to <00:13:03.205>do <00:13:03.333>in <00:13:03.460>order <00:13:03.587>to, <00:13:03.715>like,

233
00:13:05.395 --> 00:13:06.495
<00:13:05.395>am <00:13:05.593>I <00:13:05.790>in <00:13:05.989>the <00:13:06.187>right <00:13:06.385>state?

234
00:13:06.675 --> 00:13:09.815
<00:13:06.675>So <00:13:06.814>the <00:13:06.954>answer <00:13:07.094>is <00:13:07.234>no. <00:13:07.375>What <00:13:07.515>do <00:13:07.655>I <00:13:07.795>need <00:13:07.935>to <00:13:08.074>do?

235
00:13:10.495 --> 00:13:11.695
<00:13:10.495>I <00:13:10.765>would <00:13:11.035>calculate <00:13:11.305>the <00:13:11.575>actions,

236
00:13:12.485 --> 00:13:14.055
<00:13:12.485>then <00:13:12.718>I <00:13:12.951>need <00:13:13.185>to <00:13:13.418>apply <00:13:13.651>the <00:13:13.885>actions.

237
00:13:14.355 --> 00:13:16.135
<00:13:14.355>So <00:13:14.555>maybe <00:13:14.755>it <00:13:14.955>gets <00:13:15.155>a <00:13:15.355>little <00:13:15.555>bit <00:13:15.755>closer,

238
00:13:16.785 --> 00:13:19.055
<00:13:16.785>maybe <00:13:16.985>it <00:13:17.185>gets <00:13:17.385>up <00:13:17.584>to <00:13:17.785>the <00:13:17.985>desire <00:13:18.185>state.

239
00:13:19.835 --> 00:13:23.785
<00:13:19.835>But <00:13:19.990>what <00:13:20.146>happens <00:13:20.301>next <00:13:20.457>is, <00:13:20.612>again, <00:13:20.768>the <00:13:20.923>observe, <00:13:21.079>create <00:13:21.235>the

240
00:13:24.305 --> 00:13:28.305
<00:13:24.305>applying, <00:13:24.505>uh, <00:13:24.704>strategy, <00:13:24.905>and <00:13:25.104>then <00:13:25.305>do <00:13:25.505>the <00:13:25.704>action.

241
00:13:28.605 --> 00:13:32.305
<00:13:28.605>So <00:13:28.760>this <00:13:28.916>is, <00:13:29.071>this <00:13:29.227>loop <00:13:29.382>also <00:13:29.538>happens <00:13:29.693>for <00:13:29.849>these <00:13:30.005>controllers.

242
00:13:32.845 --> 00:13:36.785
<00:13:32.845>And <00:13:32.972>we'll <00:13:33.099>see <00:13:33.226>exactly <00:13:33.354>like <00:13:33.481>how <00:13:33.608>it <00:13:33.735>can, <00:13:33.863>how <00:13:33.990>it <00:13:34.117>gets <00:13:34.245>applied

243
00:13:37.325 --> 00:13:38.865
<00:13:37.325>to <00:13:37.787>the <00:13:38.249>GitHub's <00:13:38.711>concept.

244
00:13:43.085 --> 00:13:45.265
<00:13:43.085>So <00:13:43.435>we <00:13:43.785>started <00:13:44.135>with <00:13:44.485>API,

245
00:13:46.305 --> 00:13:50.395
<00:13:46.305>then <00:13:46.479>we <00:13:46.655>saw <00:13:46.829>different <00:13:47.005>pieces <00:13:47.180>working <00:13:47.354>together, <00:13:47.530>it <00:13:47.704>kind

246
00:13:50.395 --> 00:13:52.115
<00:13:50.395>of <00:13:50.745>in <00:13:51.095>a <00:13:51.444>synchronous <00:13:51.795>mode.

247
00:13:53.465 --> 00:13:57.245
<00:13:53.465>Then <00:13:53.698>we <00:13:53.931>saw <00:13:54.165>this, <00:13:54.398>uh, <00:13:54.631>controller <00:13:54.865>idea,

248
00:13:58.075 --> 00:14:00.365
<00:13:58.075>this <00:13:58.308>automation <00:13:58.541>that <00:13:58.775>always <00:13:59.008>trying <00:13:59.241>to <00:13:59.475>get

249
00:14:00.365 --> 00:14:03.725
<00:14:00.365>to <00:14:00.565>the <00:14:00.765>desire <00:14:00.965>state <00:14:01.165>and <00:14:01.365>like <00:14:01.565>never <00:14:01.765>resting

250
00:14:03.745 --> 00:14:06.725
<00:14:03.745>and <00:14:03.900>always <00:14:04.056>trying <00:14:04.211>to <00:14:04.367>apply <00:14:04.522>the <00:14:04.678>changes <00:14:04.833>to <00:14:04.989>get <00:14:05.145>them

251
00:14:06.785 --> 00:14:08.045
<00:14:06.785>to <00:14:07.011>get <00:14:07.238>to <00:14:07.465>the <00:14:07.692>desired <00:14:07.919>state.

252
00:14:09.345 --> 00:14:13.125
<00:14:09.345>So <00:14:09.500>you, <00:14:09.656>you <00:14:09.811>might <00:14:09.967>be <00:14:10.122>familiar <00:14:10.278>with, <00:14:10.433>um, <00:14:10.589>this <00:14:10.745>command,

253
00:14:14.265 --> 00:14:15.885
<00:14:14.265>uh, <00:14:14.731>called <00:14:15.198>QCL <00:14:15.665>apply.

254
00:14:16.505 --> 00:14:19.245
<00:14:16.505>And <00:14:16.738>this <00:14:16.971>is <00:14:17.205>now <00:14:17.438>for <00:14:17.671>declarative <00:14:17.905>API.

255
00:14:19.955 --> 00:14:22.085
<00:14:19.955>Initially, <00:14:20.235>when <00:14:20.515>we <00:14:20.795>talked <00:14:21.075>about <00:14:21.355>API,

256
00:14:22.085 --> 00:14:23.605
<00:14:22.085>usually <00:14:22.541>API, <00:14:22.997>it's <00:14:23.453>imperative.

257
00:14:24.145 --> 00:14:28.205
<00:14:24.145>We <00:14:24.378>talked <00:14:24.611>about <00:14:24.845>get, <00:14:25.078>uh, <00:14:25.311>post, <00:14:25.545>delete,

258
00:14:29.275 --> 00:14:31.895
<00:14:29.275>uh, <00:14:29.555>put <00:14:29.834>like <00:14:30.115>update <00:14:30.395>or <00:14:30.675>create.

259
00:14:32.835 --> 00:14:36.695
<00:14:32.835>But <00:14:32.951>now <00:14:33.068>in <00:14:33.185>this <00:14:33.301>case <00:14:33.418>we <00:14:33.535>are, <00:14:33.651>we, <00:14:33.768>we <00:14:33.885>have <00:14:34.001>a <00:14:34.118>declarative, <00:14:34.235>API,

260
00:14:37.065 --> 00:14:40.265
<00:14:37.065>which <00:14:37.265>means <00:14:37.465>that <00:14:37.665>I'm <00:14:37.865>able <00:14:38.065>to <00:14:38.265>apply <00:14:38.465>with,

261
00:14:40.265 --> 00:14:43.945
<00:14:40.265>with <00:14:40.405>the <00:14:40.545>first <00:14:40.685>command, <00:14:40.824>I'm <00:14:40.965>able <00:14:41.105>to <00:14:41.245>apply <00:14:41.385>to <00:14:41.525>the <00:14:41.665>cluster,

262
00:14:44.575 --> 00:14:46.065
<00:14:44.575>what <00:14:44.843>I <00:14:45.111>have <00:14:45.379>in <00:14:45.647>that <00:14:45.916>file.

263
00:14:46.725 --> 00:14:50.465
<00:14:46.725>And <00:14:46.865>in <00:14:47.005>that <00:14:47.145>file <00:14:47.285>I <00:14:47.425>might <00:14:47.565>have <00:14:47.705>like <00:14:47.845>a <00:14:47.985>new <00:14:48.125>deployment

264
00:14:51.845 --> 00:14:55.705
<00:14:51.845>or <00:14:51.972>am <00:14:52.099>I <00:14:52.226>have <00:14:52.354>an <00:14:52.481>existing <00:14:52.608>deployment <00:14:52.735>that <00:14:52.863>I <00:14:52.990>need <00:14:53.117>to <00:14:53.245>update.

265
00:14:56.485 --> 00:15:00.225
<00:14:56.485>But <00:14:56.951>this <00:14:57.418>cube, <00:14:57.885>C-T-L-C-L-I

266
00:15:00.325 --> 00:15:04.395
<00:15:00.325>and <00:15:00.465>the <00:15:00.605>cluster <00:15:00.745>is <00:15:00.885>going <00:15:01.025>to <00:15:01.165>figure <00:15:01.305>out <00:15:01.445>that <00:15:01.585>for <00:15:01.725>me.

267
00:15:04.615 --> 00:15:07.395
<00:15:04.615>And <00:15:04.755>it's <00:15:04.895>going <00:15:05.035>to <00:15:05.175>calculate <00:15:05.315>what <00:15:05.455>actions <00:15:05.595>needs <00:15:05.735>to <00:15:05.875>be <00:15:06.015>done.

268
00:15:07.935 --> 00:15:12.755
<00:15:07.935>So <00:15:08.168>first <00:15:08.401>it'll <00:15:08.635>observe, <00:15:08.868>then <00:15:09.101>it'll <00:15:09.334>calculate

269
00:15:12.905 --> 00:15:15.715
<00:15:12.905>what <00:15:13.045>needs <00:15:13.185>to <00:15:13.324>be <00:15:13.464>done, <00:15:13.605>and <00:15:13.745>then <00:15:13.885>it'll <00:15:14.025>actually <00:15:14.165>apply <00:15:14.305>them.

270
00:15:15.895 --> 00:15:19.355
<00:15:15.895>So <00:15:16.069>you <00:15:16.245>can <00:15:16.420>see <00:15:16.595>this <00:15:16.770>concept <00:15:16.944>from <00:15:17.120>robotics <00:15:17.295>happening

271
00:15:19.355 --> 00:15:21.635
<00:15:19.355>here <00:15:19.821>on <00:15:20.288>the <00:15:20.755>declarative.

272
00:15:21.675 --> 00:15:25.755
<00:15:21.675>API <00:15:21.814>the <00:15:21.954>cube <00:15:22.094>scale <00:15:22.234>apply <00:15:22.375>can <00:15:22.515>also <00:15:22.655>like, <00:15:22.795>take <00:15:22.935>a <00:15:23.074>directory

273
00:15:26.415 --> 00:15:30.675
<00:15:26.415>and <00:15:26.615>everything <00:15:26.814>that's <00:15:27.015>in <00:15:27.214>that <00:15:27.415>directory <00:15:27.615>can <00:15:27.814>get

274
00:15:31.185 --> 00:15:32.275
<00:15:31.185>applied <00:15:31.512>to <00:15:31.839>the <00:15:32.165>cluster.

275
00:15:32.655 --> 00:15:33.915
<00:15:32.655>So <00:15:32.881>all <00:15:33.108>the <00:15:33.335>files <00:15:33.562>in <00:15:33.789>there,

276
00:15:33.915 --> 00:15:38.435
<00:15:33.915>and <00:15:34.031>I, <00:15:34.148>I <00:15:34.265>think <00:15:34.381>it <00:15:34.498>also <00:15:34.615>has <00:15:34.731>minus <00:15:34.848>R <00:15:34.964>for, <00:15:35.081>uh, <00:15:35.198>reverse, <00:15:35.314>uh,

277
00:15:38.755 --> 00:15:41.235
<00:15:38.755>recursive, <00:15:39.105>sir, <00:15:39.455>which <00:15:39.805>will <00:15:40.155>go

278
00:15:41.235 --> 00:15:42.915
<00:15:41.235>to <00:15:41.515>every <00:15:41.795>folder <00:15:42.075>from <00:15:42.355>the <00:15:42.635>directory.

279
00:15:43.855 --> 00:15:45.195
<00:15:43.855>And, <00:15:44.156>uh, <00:15:44.458>the <00:15:44.759>first <00:15:45.061>part,

280
00:15:45.375 --> 00:15:47.635
<00:15:45.375>the <00:15:45.575>third <00:15:45.775>part <00:15:45.975>is <00:15:46.175>not <00:15:46.375>a <00:15:46.575>real <00:15:46.775>command.

281
00:15:47.705 --> 00:15:50.795
<00:15:47.705>This <00:15:47.860>doesn't <00:15:48.016>exist <00:15:48.171>and <00:15:48.327>I <00:15:48.482>don't <00:15:48.638>think <00:15:48.793>it'll <00:15:48.949>be <00:15:49.105>implemented,

282
00:15:51.495 --> 00:15:54.755
<00:15:51.495>but <00:15:51.670>just <00:15:51.845>imagine <00:15:52.020>that <00:15:52.195>we <00:15:52.370>started <00:15:52.545>with <00:15:52.720>a <00:15:52.895>file,

283
00:15:56.005 --> 00:15:57.345
<00:15:56.005>we <00:15:56.306>went <00:15:56.608>to <00:15:56.909>a <00:15:57.211>directory.

284
00:15:58.415 --> 00:16:02.625
<00:15:58.415>What <00:15:58.531>about <00:15:58.648>if <00:15:58.765>we <00:15:58.881>can <00:15:58.998>apply <00:15:59.115>the <00:15:59.231>content <00:15:59.348>of <00:15:59.464>the <00:15:59.581>whole <00:15:59.698>git <00:15:59.814>repo

285
00:16:03.165 --> 00:16:04.195
<00:16:03.165>to <00:16:03.628>the <00:16:04.092>cluster?

286
00:16:04.815 --> 00:16:07.675
<00:16:04.815>So <00:16:04.990>we <00:16:05.165>can <00:16:05.340>take <00:16:05.515>what's <00:16:05.690>inside <00:16:05.865>the <00:16:06.040>git <00:16:06.215>repo,

287
00:16:09.365 --> 00:16:11.575
<00:16:09.365>take <00:16:09.598>everything <00:16:09.831>from <00:16:10.065>there, <00:16:10.298>all <00:16:10.531>the <00:16:10.765>manifest

288
00:16:12.515 --> 00:16:13.895
<00:16:12.515>and <00:16:12.763>apply <00:16:13.011>them <00:16:13.260>to <00:16:13.508>the <00:16:13.757>cluster.

289
00:16:15.235 --> 00:16:18.215
<00:16:15.235>And <00:16:15.435>kind <00:16:15.635>of <00:16:15.835>this <00:16:16.035>is <00:16:16.235>happening <00:16:16.435>with, <00:16:16.635>uh,

290
00:16:19.325 --> 00:16:20.785
<00:16:19.325>in <00:16:19.763>the <00:16:20.201>GitHub's <00:16:20.639>controller.

291
00:16:22.525 --> 00:16:24.615
<00:16:22.525>Well, <00:16:22.758>things <00:16:22.991>are <00:16:23.225>a <00:16:23.458>little <00:16:23.691>more <00:16:23.925>complicated

292
00:16:25.085 --> 00:16:29.695
<00:16:25.085>because <00:16:25.260>GI <00:16:25.435>has <00:16:25.610>repos <00:16:25.785>like, <00:16:25.960>like <00:16:26.135>a <00:16:26.310>repo <00:16:26.485>with

293
00:16:30.755 --> 00:16:34.935
<00:16:30.755>it <00:16:30.882>needs <00:16:31.009>you, <00:16:31.136>you, <00:16:31.264>it <00:16:31.391>might <00:16:31.518>have <00:16:31.645>like <00:16:31.773>private <00:16:31.900>repo <00:16:32.027>with, <00:16:32.155>uh,

294
00:16:34.935 --> 00:16:36.615
<00:16:34.935>with <00:16:35.285>different <00:16:35.635>type <00:16:35.984>of <00:16:36.334>access.

295
00:16:36.895 --> 00:16:38.415
<00:16:36.895>SSH <00:16:37.237>key <00:16:37.579>or <00:16:37.920>user <00:16:38.262>password.

296
00:16:38.915 --> 00:16:43.815
<00:16:38.915>And <00:16:39.115>it <00:16:39.314>has, <00:16:39.515>uh, <00:16:39.714>references, <00:16:39.915>branches <00:16:40.115>or <00:16:40.314>talks.

297
00:16:44.395 --> 00:16:46.375
<00:16:44.395>It <00:16:44.675>can <00:16:44.954>have <00:16:45.235>different <00:16:45.515>puffs <00:16:45.795>inside.

298
00:16:46.435 --> 00:16:48.495
<00:16:46.435>So <00:16:46.785>you <00:16:47.135>like <00:16:47.484>different <00:16:47.834>configuration

299
00:16:49.155 --> 00:16:51.375
<00:16:49.155>and <00:16:49.388>we'll <00:16:49.621>see <00:16:49.855>that <00:16:50.088>in <00:16:50.321>Argo <00:16:50.555>cd.

300
00:16:52.825 --> 00:16:56.205
<00:16:52.825>But <00:16:53.000>this <00:16:53.175>is <00:16:53.350>what <00:16:53.525>GitHub's <00:16:53.700>really <00:16:53.875>is <00:16:54.050>a <00:16:54.225>way

301
00:16:57.105 --> 00:17:00.515
<00:16:57.105>to <00:16:57.305>take <00:16:57.505>the <00:16:57.705>state <00:16:57.905>from <00:16:58.105>a <00:16:58.305>git <00:16:58.505>repo

302
00:17:00.695 --> 00:17:02.035
<00:17:00.695>and <00:17:00.936>to <00:17:01.177>apply <00:17:01.418>to <00:17:01.659>the <00:17:01.901>cluster.

303
00:17:02.655 --> 00:17:06.475
<00:17:02.655>So <00:17:02.810>here, <00:17:02.966>like <00:17:03.121>git <00:17:03.277>is <00:17:03.432>the <00:17:03.588>source <00:17:03.743>of <00:17:03.899>truth <00:17:04.055>here.

304
00:17:06.575 --> 00:17:10.475
<00:17:06.575>I'm <00:17:06.808>keeping <00:17:07.041>my <00:17:07.275>desired <00:17:07.508>configuration <00:17:07.741>while <00:17:07.975>I'm,

305
00:17:10.495 --> 00:17:12.035
<00:17:10.494>I'm <00:17:10.725>telling <00:17:10.956>the <00:17:11.187>cluster <00:17:11.419>to <00:17:11.650>get <00:17:11.881>to

306
00:17:12.035 --> 00:17:13.275
<00:17:12.035>that <00:17:12.593>desired <00:17:13.151>configuration.

307
00:17:15.065 --> 00:17:19.925
<00:17:15.065>So, <00:17:15.298>um, <00:17:15.531>more <00:17:15.765>like <00:17:15.998>GitHub's <00:17:16.231>also <00:17:16.465>means

308
00:17:20.435 --> 00:17:25.165
<00:17:20.435>that <00:17:20.609>this <00:17:20.784>part <00:17:20.960>of <00:17:21.135>reaching <00:17:21.310>the <00:17:21.484>desired <00:17:21.659>configuration <00:17:21.835>needs

309
00:17:25.165 --> 00:17:27.765
<00:17:25.165>to <00:17:25.365>be <00:17:25.565>done <00:17:25.764>from <00:17:25.964>a <00:17:26.165>controller <00:17:26.365>running <00:17:26.565>in

310
00:17:27.765 --> 00:17:28.805
<00:17:27.765>somewhere <00:17:28.077>in <00:17:28.389>the <00:17:28.701>cluster.

311
00:17:28.905 --> 00:17:32.405
<00:17:28.905>So <00:17:29.021>it's <00:17:29.138>not <00:17:29.254>done <00:17:29.371>by <00:17:29.488>push, <00:17:29.605>but <00:17:29.721>needs <00:17:29.838>to <00:17:29.955>be <00:17:30.071>done <00:17:30.188>by <00:17:30.305>pull.

312
00:17:33.705 --> 00:17:37.035
<00:17:33.705>This <00:17:33.832>is <00:17:33.959>the <00:17:34.086>term <00:17:34.214>that <00:17:34.341>the <00:17:34.468>guys <00:17:34.595>from <00:17:34.723>Git, <00:17:34.850>uh, <00:17:34.977>from <00:17:35.105>wops,

313
00:17:37.585 --> 00:17:38.995
<00:17:37.585>WeWorks <00:17:38.008>came, <00:17:38.431>came <00:17:38.853>with.

314
00:17:38.995 --> 00:17:41.355
<00:17:38.995>So, <00:17:39.274>and <00:17:39.554>this <00:17:39.834>what <00:17:40.114>GitHubs <00:17:40.395>means,

315
00:17:41.575 --> 00:17:43.115
<00:17:41.575>having <00:17:41.921>something <00:17:42.268>in <00:17:42.614>the <00:17:42.961>cluster

316
00:17:43.585 --> 00:17:45.315
<00:17:43.585>that <00:17:44.051>handles <00:17:44.518>this <00:17:44.985>reconciliation.

317
00:17:48.725 --> 00:17:50.605
<00:17:48.725>And <00:17:48.958>this <00:17:49.191>is <00:17:49.425>what <00:17:49.658>Argo <00:17:49.891>CD <00:17:50.125>is.

318
00:17:51.275 --> 00:17:55.005
<00:17:51.275>It's <00:17:51.430>a <00:17:51.586>GitHubs <00:17:51.741>controller, <00:17:51.897>but <00:17:52.052>we <00:17:52.208>don't <00:17:52.363>call <00:17:52.519>it <00:17:52.675>controller

319
00:17:55.005 --> 00:17:59.205
<00:17:55.005>because <00:17:55.238>controllers <00:17:55.471>are <00:17:55.705>the <00:17:55.938>things <00:17:56.171>that <00:17:56.405>work

320
00:17:59.475 --> 00:18:03.245
<00:17:59.475>with <00:17:59.824>internal <00:18:00.175>Kubernetes <00:18:00.524>resources, <00:18:00.875>pos

321
00:18:03.875 --> 00:18:07.245
<00:18:03.875>deployments, <00:18:04.075>replica <00:18:04.275>sets, <00:18:04.475>config <00:18:04.675>maps <00:18:04.875>and <00:18:05.075>so <00:18:05.275>on.

322
00:18:07.945 --> 00:18:11.005
<00:18:07.945>So <00:18:08.100>it's <00:18:08.256>an <00:18:08.411>operator <00:18:08.567>because <00:18:08.722>it <00:18:08.878>works <00:18:09.033>with <00:18:09.189>external <00:18:09.345>things.

323
00:18:11.305 --> 00:18:13.685
<00:18:11.305>And <00:18:11.480>git <00:18:11.655>uh, <00:18:11.830>git <00:18:12.005>ripple <00:18:12.180>is <00:18:12.355>an <00:18:12.530>external <00:18:12.705>things.

324
00:18:14.025 --> 00:18:15.565
<00:18:14.025>So <00:18:14.302>that's <00:18:14.579>kind <00:18:14.856>of <00:18:15.133>the <00:18:15.411>difference

325
00:18:15.565 --> 00:18:17.125
<00:18:15.565>between <00:18:16.031>operator <00:18:16.498>and <00:18:16.965>controller.

326
00:18:17.865 --> 00:18:22.125
<00:18:17.865>So <00:18:17.981>Argo <00:18:18.098>CD <00:18:18.215>will <00:18:18.331>keep <00:18:18.448>in <00:18:18.565>sync <00:18:18.681>what <00:18:18.798>you <00:18:18.915>have <00:18:19.031>in <00:18:19.148>a <00:18:19.265>git

327
00:18:22.895 --> 00:18:26.035
<00:18:22.895>ripple <00:18:23.050>with <00:18:23.206>what <00:18:23.361>you <00:18:23.517>want <00:18:23.672>to <00:18:23.828>have <00:18:23.983>in <00:18:24.139>the <00:18:24.295>cluster.

328
00:18:26.895 --> 00:18:31.075
<00:18:26.895>So <00:18:27.035>what <00:18:27.175>we <00:18:27.315>showed, <00:18:27.455>what <00:18:27.595>we <00:18:27.735>saw <00:18:27.875>with <00:18:28.014>the <00:18:28.155>observe <00:18:28.295>diff

329
00:18:31.815 --> 00:18:36.435
<00:18:31.815>and <00:18:31.990>act <00:18:32.165>apply, <00:18:32.340>this <00:18:32.515>is <00:18:32.690>what <00:18:32.865>will <00:18:33.040>happen, <00:18:33.215>uh,

330
00:18:37.405 --> 00:18:39.095
<00:18:37.405>also <00:18:37.754>in <00:18:38.105>the <00:18:38.455>GitHubs <00:18:38.805>operator.

331
00:18:39.675 --> 00:18:42.875
<00:18:39.675>So <00:18:39.875>it <00:18:40.075>takes <00:18:40.274>the <00:18:40.475>manifest <00:18:40.675>from <00:18:40.875>the <00:18:41.075>Git,

332
00:18:44.175 --> 00:18:47.875
<00:18:44.175>it <00:18:44.291>calculates <00:18:44.408>them, <00:18:44.524>it <00:18:44.641>sees <00:18:44.758>what <00:18:44.875>do <00:18:44.991>I <00:18:45.108>need <00:18:45.225>to <00:18:45.341>do <00:18:45.458>in <00:18:45.575>order

333
00:18:48.695 --> 00:18:50.155
<00:18:48.695>to <00:18:49.133>make <00:18:49.571>it <00:18:50.009>happen.

334
00:18:50.415 --> 00:18:52.995
<00:18:50.415>So <00:18:50.555>I <00:18:50.695>would <00:18:50.835>get <00:18:50.975>in <00:18:51.115>the <00:18:51.254>cluster <00:18:51.395>to <00:18:51.534>the <00:18:51.675>desire <00:18:51.815>state.

335
00:18:53.655 --> 00:18:56.115
<00:18:53.655>And <00:18:53.855>then <00:18:54.055>it's <00:18:54.254>actually <00:18:54.455>happened <00:18:54.655>at <00:18:54.855>QCTL <00:18:55.055>apply.

336
00:18:57.225 --> 00:18:59.685
<00:18:57.225>And <00:18:57.425>Argo <00:18:57.625>City, <00:18:57.824>it's <00:18:58.024>an <00:18:58.225>open <00:18:58.425>source <00:18:58.625>project.

337
00:19:00.545 --> 00:19:04.885
<00:19:00.545>Um, <00:19:00.778>it's <00:19:01.011>uh, <00:19:01.245>started <00:19:01.478>to <00:19:01.711>be <00:19:01.945>part

338
00:19:04.885 --> 00:19:07.885
<00:19:04.885>of <00:19:05.085>CNCF <00:19:05.285>somewhere <00:19:05.485>last <00:19:05.685>beginning <00:19:05.885>of <00:19:06.085>last <00:19:06.285>year.

339
00:19:08.425 --> 00:19:10.085
<00:19:08.425>And <00:19:08.658>you, <00:19:08.891>you <00:19:09.125>can <00:19:09.358>check <00:19:09.591>it <00:19:09.825>out.

340
00:19:10.425 --> 00:19:15.125
<00:19:10.425>And <00:19:10.552>in <00:19:10.679>2018 <00:19:10.806>when <00:19:10.934>we <00:19:11.061>started <00:19:11.188>with <00:19:11.315>it, <00:19:11.443>it <00:19:11.570>was <00:19:11.697>barely <00:19:11.825>starting,

341
00:19:15.785 --> 00:19:19.125
<00:19:15.785>but <00:19:15.960>now <00:19:16.135>it's <00:19:16.310>full <00:19:16.485>of <00:19:16.660>a <00:19:16.835>a <00:19:17.010>lot <00:19:17.185>of

342
00:19:19.825 --> 00:19:23.445
<00:19:19.825>people <00:19:20.000>trying <00:19:20.175>to <00:19:20.350>contribute <00:19:20.525>a <00:19:20.700>a <00:19:20.875>lot <00:19:21.050>of <00:19:21.225>users

343
00:19:24.105 --> 00:19:26.405
<00:19:24.105>and <00:19:24.385>the <00:19:24.665>documentation <00:19:24.945>is <00:19:25.225>much <00:19:25.505>better.

344
00:19:26.585 --> 00:19:27.885
<00:19:26.585>So <00:19:26.877>it <00:19:27.170>might <00:19:27.462>be <00:19:27.755>useful

345
00:19:27.885 --> 00:19:29.645
<00:19:27.885>for <00:19:28.040>you <00:19:28.196>if <00:19:28.351>you <00:19:28.507>have <00:19:28.662>time <00:19:28.818>to <00:19:28.973>check <00:19:29.129>it <00:19:29.285>out.

346
00:19:29.945 --> 00:19:34.325
<00:19:29.945>Please <00:19:30.145>do. <00:19:30.345>Uh, <00:19:30.544>one <00:19:30.745>of <00:19:30.945>the <00:19:31.145>first <00:19:31.345>things

347
00:19:34.985 --> 00:19:37.925
<00:19:34.985>you <00:19:35.159>discover <00:19:35.334>when <00:19:35.510>you <00:19:35.685>start <00:19:35.860>with <00:19:36.034>Argo <00:19:36.209>CD <00:19:36.385>is

348
00:19:37.925 --> 00:19:39.085
<00:19:37.925>that <00:19:38.133>it <00:19:38.342>has <00:19:38.551>a <00:19:38.760>nice <00:19:38.969>ui.

349
00:19:39.935 --> 00:19:41.665
<00:19:39.935>It's <00:19:40.215>much <00:19:40.495>nicer <00:19:40.774>than <00:19:41.054>this <00:19:41.335>one.

350
00:19:41.665 --> 00:19:46.065
<00:19:41.665>This, <00:19:41.820>this <00:19:41.976>is <00:19:42.131>kind <00:19:42.287>of <00:19:42.442>a, <00:19:42.598>uh, <00:19:42.753>an <00:19:42.909>older <00:19:43.065>version.

351
00:19:47.035 --> 00:19:48.545
<00:19:47.035>We'll <00:19:47.261>see <00:19:47.488>it <00:19:47.714>soon <00:19:47.941>in <00:19:48.167>the <00:19:48.394>demo.

352
00:19:50.055 --> 00:19:53.715
<00:19:50.055>And <00:19:50.255>the <00:19:50.455>UI <00:19:50.655>is <00:19:50.855>not <00:19:51.055>only <00:19:51.255>to <00:19:51.455>see

353
00:19:53.715 --> 00:19:55.075
<00:19:53.715>what <00:19:54.021>happens <00:19:54.327>in <00:19:54.633>Argo <00:19:54.939>cd,

354
00:19:55.335 --> 00:19:57.355
<00:19:55.335>but <00:19:55.568>it's <00:19:55.801>also <00:19:56.035>a, <00:19:56.268>a <00:19:56.501>good <00:19:56.735>tool

355
00:19:57.355 --> 00:19:59.435
<00:19:57.355>for <00:19:57.705>onboarding <00:19:58.055>people <00:19:58.405>in <00:19:58.755>Kubernetes.

356
00:19:59.635 --> 00:20:02.235
<00:19:59.635>'cause <00:19:59.810>you <00:19:59.985>can <00:20:00.160>see <00:20:00.335>a <00:20:00.510>pod, <00:20:00.685>how <00:20:00.860>it <00:20:01.035>terminates,

357
00:20:02.455 --> 00:20:04.315
<00:20:02.455>and <00:20:02.688>then <00:20:02.921>a, <00:20:03.155>a <00:20:03.388>new <00:20:03.621>version <00:20:03.855>starting.

358
00:20:05.175 --> 00:20:09.405
<00:20:05.175>And <00:20:05.375>you, <00:20:05.575>you <00:20:05.774>can <00:20:05.975>see <00:20:06.175>replica <00:20:06.375>sets <00:20:06.575>how,

359
00:20:09.705 --> 00:20:11.965
<00:20:09.705>if <00:20:09.985>you <00:20:10.264>want <00:20:10.544>to <00:20:10.824>move <00:20:11.105>forward

360
00:20:12.265 --> 00:20:14.045
<00:20:12.265>or <00:20:12.498>roll <00:20:12.731>back <00:20:12.965>to <00:20:13.198>a <00:20:13.431>different <00:20:13.665>version.

361
00:20:14.145 --> 00:20:16.045
<00:20:14.145>So <00:20:14.495>it, <00:20:14.845>it's <00:20:15.195>very <00:20:15.545>interesting

362
00:20:16.045 --> 00:20:19.725
<00:20:16.045>and <00:20:16.278>give <00:20:16.511>the <00:20:16.745>people <00:20:16.978>this <00:20:17.211>nice <00:20:17.445>ui.

363
00:20:20.585 --> 00:20:24.645
<00:20:20.585>Of <00:20:20.725>course, <00:20:20.865>it's <00:20:21.005>only <00:20:21.145>for <00:20:21.285>things <00:20:21.425>that <00:20:21.565>Argo <00:20:21.705>CD <00:20:21.845>is <00:20:21.985>managing.

364
00:20:24.705 --> 00:20:26.045
<00:20:24.705>So <00:20:25.308>not <00:20:25.911>everything

365
00:20:26.045 --> 00:20:27.925
<00:20:26.045>that <00:20:26.245>happens <00:20:26.445>in <00:20:26.645>the <00:20:26.845>cluster <00:20:27.045>will <00:20:27.245>appear <00:20:27.445>here,

366
00:20:28.145 --> 00:20:29.925
<00:20:28.145>but <00:20:28.378>all <00:20:28.611>the <00:20:28.845>applications <00:20:29.078>that <00:20:29.311>are <00:20:29.545>installed

367
00:20:29.925 --> 00:20:32.005
<00:20:29.925>with <00:20:30.274>Argo <00:20:30.625>CD <00:20:30.975>are <00:20:31.325>upgraded

368
00:20:32.005 --> 00:20:36.285
<00:20:32.005>and <00:20:32.180>are <00:20:32.355>removed, <00:20:32.530>deleted <00:20:32.705>by <00:20:32.880>Argo <00:20:33.055>CD <00:20:33.230>all <00:20:33.405>like,

369
00:20:36.425 --> 00:20:38.165
<00:20:36.425>all <00:20:36.705>these <00:20:36.985>actions <00:20:37.264>will <00:20:37.544>appear <00:20:37.825>here.

370
00:20:43.125 --> 00:20:46.575
<00:20:43.125>This <00:20:43.405>is <00:20:43.685>kind <00:20:43.965>of <00:20:44.245>its <00:20:44.525>architecture.

371
00:20:47.505 --> 00:20:50.965
<00:20:47.505>It <00:20:47.632>it's <00:20:47.759>a <00:20:47.886>little <00:20:48.014>bit <00:20:48.141>older <00:20:48.268>model, <00:20:48.395>it's <00:20:48.523>still <00:20:48.650>up <00:20:48.777>to <00:20:48.905>date.

372
00:20:52.605 --> 00:20:57.465
<00:20:52.605>So <00:20:52.732>starting <00:20:52.859>from <00:20:52.986>the <00:20:53.114>left <00:20:53.241>where <00:20:53.368>we <00:20:53.495>have <00:20:53.623>like <00:20:53.750>this <00:20:53.877>gray <00:20:54.005>user,

373
00:20:58.685 --> 00:21:02.065
<00:20:58.685>he <00:20:58.812>is <00:20:58.939>able <00:20:59.066>to <00:20:59.194>use <00:20:59.321>the <00:20:59.448>ui, <00:20:59.575>it <00:20:59.703>has <00:20:59.830>also <00:20:59.957>a <00:21:00.085>CLI

374
00:21:02.925 --> 00:21:05.505
<00:21:02.925>and <00:21:03.158>those <00:21:03.391>will <00:21:03.625>reach <00:21:03.858>the <00:21:04.091>API <00:21:04.325>server.

375
00:21:05.765 --> 00:21:09.585
<00:21:05.765>So <00:21:05.920>we <00:21:06.076>see <00:21:06.231>this <00:21:06.387>gray <00:21:06.542>box <00:21:06.698>here, <00:21:06.853>the <00:21:07.009>API <00:21:07.165>server

376
00:21:10.285 --> 00:21:12.785
<00:21:10.285>and <00:21:10.460>these <00:21:10.635>parts <00:21:10.810>are <00:21:10.985>running <00:21:11.160>in <00:21:11.335>a <00:21:11.510>Kubernetes <00:21:11.685>cluster.

377
00:21:14.065 --> 00:21:17.925
<00:21:14.065>And <00:21:14.265>the <00:21:14.465>API <00:21:14.665>server <00:21:14.865>is <00:21:15.065>responsible <00:21:15.265>to <00:21:15.465>modify

378
00:21:18.915 --> 00:21:20.365
<00:21:18.915>some <00:21:19.241>resources <00:21:19.567>from <00:21:19.893>the <00:21:20.220>cluster.

379
00:21:20.705 --> 00:21:23.845
<00:21:20.705>So <00:21:20.879>like <00:21:21.054>we <00:21:21.230>saw <00:21:21.405>the <00:21:21.580>API <00:21:21.754>server <00:21:21.929>of <00:21:22.105>Kubernetes

380
00:21:24.965 --> 00:21:28.395
<00:21:24.965>being <00:21:25.165>able <00:21:25.365>to <00:21:25.564>do <00:21:25.764>things <00:21:25.965>on, <00:21:26.165>in <00:21:26.365>Kubernetes.

381
00:21:28.675 --> 00:21:32.785
<00:21:28.675>Internals, <00:21:28.955>internal <00:21:29.235>resources <00:21:29.514>we <00:21:29.794>said <00:21:30.075>about

382
00:21:34.005 --> 00:21:37.865
<00:21:34.005>pos <00:21:34.160>config <00:21:34.316>maps, <00:21:34.471>deployments <00:21:34.627>here, <00:21:34.782>the <00:21:34.938>A <00:21:35.093>server <00:21:35.249>is <00:21:35.405>able

383
00:21:37.865 --> 00:21:42.705
<00:21:37.865>to <00:21:38.040>do <00:21:38.215>changes <00:21:38.390>on <00:21:38.565>Argo <00:21:38.740>CD <00:21:38.915>owns, <00:21:39.090>uh, <00:21:39.265>resources,

384
00:21:42.845 --> 00:21:46.625
<00:21:42.845>it <00:21:43.000>has <00:21:43.156>some <00:21:43.311>CDs, <00:21:43.467>custom <00:21:43.622>research <00:21:43.778>definition <00:21:43.933>of <00:21:44.089>its <00:21:44.245>own.

385
00:21:47.325 --> 00:21:51.545
<00:21:47.325>And <00:21:47.480>the <00:21:47.636>API <00:21:47.791>server <00:21:47.947>is <00:21:48.102>responsible <00:21:48.258>for <00:21:48.413>creating <00:21:48.569>such <00:21:48.725>things,

386
00:21:52.895 --> 00:21:54.855
<00:21:52.895>updating, <00:21:53.175>deleting, <00:21:53.455>getting <00:21:53.735>and <00:21:54.014>so <00:21:54.295>on.

387
00:21:54.855 --> 00:21:56.375
<00:21:54.855>Also <00:21:55.197>some, <00:21:55.539>some <00:21:55.881>custom <00:21:56.223>actions.

388
00:21:56.955 --> 00:21:58.575
<00:21:56.955>So <00:21:57.155>we <00:21:57.355>do <00:21:57.554>that <00:21:57.754>through <00:21:57.955>the <00:21:58.155>API <00:21:58.355>server.

389
00:21:59.205 --> 00:22:01.055
<00:21:59.205>Then <00:21:59.485>we <00:21:59.764>have <00:22:00.044>the <00:22:00.324>repository <00:22:00.605>service

390
00:22:01.475 --> 00:22:06.375
<00:22:01.475>and <00:22:01.602>the <00:22:01.729>repository <00:22:01.856>service, <00:22:01.984>its <00:22:02.111>job <00:22:02.238>is <00:22:02.365>to <00:22:02.493>look <00:22:02.620>at <00:22:02.747>the <00:22:02.875>repo

391
00:22:07.635 --> 00:22:09.695
<00:22:07.635>and <00:22:07.810>figure <00:22:07.985>out <00:22:08.160>what <00:22:08.335>do <00:22:08.510>I <00:22:08.685>have <00:22:08.860>in <00:22:09.035>there?

392
00:22:10.495 --> 00:22:14.415
<00:22:10.495>'cause <00:22:10.635>Argo <00:22:10.774>CD <00:22:10.915>can <00:22:11.054>work <00:22:11.195>with <00:22:11.334>help, <00:22:11.475>can <00:22:11.614>work <00:22:11.754>with <00:22:11.895>customize

393
00:22:15.445 --> 00:22:17.655
<00:22:15.445>snet <00:22:15.645>case <00:22:15.845>on <00:22:16.044>it <00:22:16.245>and <00:22:16.445>also <00:22:16.645>simple <00:22:16.845>manifest.

394
00:22:18.275 --> 00:22:21.455
<00:22:18.275>So <00:22:18.475>what <00:22:18.675>it'll <00:22:18.875>do, <00:22:19.075>it'll <00:22:19.275>check <00:22:19.475>the <00:22:19.675>content

395
00:22:21.755 --> 00:22:26.295
<00:22:21.755>and <00:22:21.882>say, <00:22:22.009>do <00:22:22.136>I <00:22:22.264>have <00:22:22.391>a <00:22:22.518>chart <00:22:22.645>to <00:22:22.773>AML <00:22:22.900>file <00:22:23.027>with <00:22:23.155>BC?

396
00:22:27.605 --> 00:22:28.815
<00:22:27.605>Then <00:22:27.877>it's <00:22:28.149>a <00:22:28.421>helm <00:22:28.694>repo.

397
00:22:29.155 --> 00:22:32.045
<00:22:29.155>And <00:22:29.330>then <00:22:29.504>it <00:22:29.680>looks, <00:22:29.855>what <00:22:30.030>is <00:22:30.205>the <00:22:30.379>API <00:22:30.555>version?

398
00:22:32.225 --> 00:22:34.805
<00:22:32.225>Is <00:22:32.380>it <00:22:32.536>V <00:22:32.691>one <00:22:32.847>or <00:22:33.002>V <00:22:33.158>two? <00:22:33.313>It's <00:22:33.469>V <00:22:33.625>two.

399
00:22:34.805 --> 00:22:37.045
<00:22:34.805>Okay, <00:22:34.980>so <00:22:35.155>it's, <00:22:35.330>I'm <00:22:35.505>applying <00:22:35.680>this <00:22:35.855>with <00:22:36.030>helm <00:22:36.205>three.

400
00:22:37.795 --> 00:22:41.605
<00:22:37.795>Then <00:22:37.995>what <00:22:38.195>it'll <00:22:38.395>do, <00:22:38.595>it'll <00:22:38.795>create <00:22:38.995>the <00:22:39.195>manifest.

401
00:22:43.035 --> 00:22:44.775
<00:22:43.035>So <00:22:43.268>it <00:22:43.501>does <00:22:43.735>a <00:22:43.968>helm <00:22:44.201>template <00:22:44.435>inside,

402
00:22:45.585 --> 00:22:49.455
<00:22:45.585>which <00:22:45.712>was <00:22:45.839>really <00:22:45.966>great <00:22:46.094>at <00:22:46.221>the <00:22:46.348>time <00:22:46.475>when <00:22:46.603>we <00:22:46.730>only <00:22:46.857>used <00:22:46.985>helm

403
00:22:49.455 --> 00:22:52.395
<00:22:49.455>two <00:22:49.655>because <00:22:49.855>we <00:22:50.054>didn't <00:22:50.254>need <00:22:50.455>the <00:22:50.655>tiller, <00:22:50.855>right?

404
00:22:52.455 --> 00:22:57.315
<00:22:52.455>The <00:22:52.629>templates <00:22:52.804>were <00:22:52.980>created <00:22:53.155>inside <00:22:53.330>the <00:22:53.504>Argo <00:22:53.679>CD <00:22:53.855>process.

405
00:22:58.175 --> 00:23:01.995
<00:22:58.175>And <00:22:58.330>then <00:22:58.486>at <00:22:58.641>the <00:22:58.797>end <00:22:58.952>the <00:22:59.108>application <00:22:59.263>controller <00:22:59.419>will <00:22:59.575>apply

406
00:23:01.995 --> 00:23:03.775
<00:23:01.995>them <00:23:02.461>to <00:23:02.928>the <00:23:03.395>cluster.

407
00:23:04.195 --> 00:23:06.335
<00:23:04.195>So <00:23:04.544>the <00:23:04.895>application <00:23:05.245>controller, <00:23:05.595>it's,

408
00:23:06.475 --> 00:23:10.765
<00:23:06.475>it <00:23:06.708>is <00:23:06.941>the <00:23:07.175>one <00:23:07.408>responsible <00:23:07.641>for <00:23:07.875>checking,

409
00:23:11.785 --> 00:23:15.525
<00:23:11.785>do <00:23:11.940>I <00:23:12.096>have <00:23:12.251>any <00:23:12.407>changes <00:23:12.562>in <00:23:12.718>the <00:23:12.873>git <00:23:13.029>ripple <00:23:13.185>checking,

410
00:23:16.065 --> 00:23:18.485
<00:23:16.065>do <00:23:16.220>I <00:23:16.376>have <00:23:16.531>new <00:23:16.687>applications <00:23:16.842>that <00:23:16.998>I <00:23:17.153>need <00:23:17.309>to <00:23:17.465>deploy

411
00:23:19.545 --> 00:23:21.205
<00:23:19.545>or <00:23:19.778>like <00:23:20.011>do <00:23:20.245>I <00:23:20.478>have <00:23:20.711>new <00:23:20.945>constraints?

412
00:23:21.445 --> 00:23:22.765
<00:23:21.445>'cause <00:23:21.682>there <00:23:21.920>is <00:23:22.157>another <00:23:22.395>CRD <00:23:22.633>used,

413
00:23:22.765 --> 00:23:24.165
<00:23:22.765>especially <00:23:23.395>for <00:23:24.025>constraints.

414
00:23:24.715 --> 00:23:25.805
<00:23:24.715>It's <00:23:25.042>called <00:23:25.369>up <00:23:25.696>project.

415
00:23:26.425 --> 00:23:30.045
<00:23:26.425>So <00:23:26.565>it <00:23:26.705>checks <00:23:26.845>the <00:23:26.985>git <00:23:27.125>repos <00:23:27.264>for <00:23:27.405>new <00:23:27.544>commit, <00:23:27.685>it <00:23:27.825>checks

416
00:23:30.305 --> 00:23:32.445
<00:23:30.305>for <00:23:30.538>new <00:23:30.771>application <00:23:31.005>and <00:23:31.238>for <00:23:31.471>new <00:23:31.705>constraints.

417
00:23:33.025 --> 00:23:34.925
<00:23:33.025>And <00:23:33.258>it'll <00:23:33.491>work <00:23:33.725>with <00:23:33.958>the <00:23:34.191>repository <00:23:34.425>service

418
00:23:34.945 --> 00:23:35.965
<00:23:34.945>to <00:23:35.251>get <00:23:35.557>the <00:23:35.862>manifest

419
00:23:36.505 --> 00:23:38.405
<00:23:36.505>and <00:23:36.705>then <00:23:36.905>it'll <00:23:37.105>apply <00:23:37.305>them <00:23:37.505>to <00:23:37.705>the <00:23:37.905>cluster.

420
00:23:38.945 --> 00:23:41.045
<00:23:38.945>So <00:23:39.178>application <00:23:39.411>control <00:23:39.645>is <00:23:39.878>the <00:23:40.111>one <00:23:40.345>responsible

421
00:23:41.105 --> 00:23:43.125
<00:23:41.105>for <00:23:41.305>cube <00:23:41.505>CT <00:23:41.705>L <00:23:41.905>apply <00:23:42.105>at <00:23:42.305>the <00:23:42.505>end

422
00:23:43.125 --> 00:23:45.565
<00:23:43.125>because <00:23:43.325>that's <00:23:43.525>what <00:23:43.725>will <00:23:43.925>happen <00:23:44.125>at <00:23:44.325>the <00:23:44.525>end

423
00:23:46.605 --> 00:23:47.665
<00:23:46.605>at <00:23:46.843>Cube <00:23:47.081>CT <00:23:47.320>L <00:23:47.559>apply.

424
00:23:49.265 --> 00:23:53.295
<00:23:49.265>And <00:23:49.440>we <00:23:49.615>can <00:23:49.790>see <00:23:49.965>here <00:23:50.140>that <00:23:50.315>all <00:23:50.490>these <00:23:50.665>um,

425
00:23:53.765 --> 00:23:56.735
<00:23:53.765>Argo <00:23:53.940>CD <00:23:54.115>PCs, <00:23:54.290>they <00:23:54.465>run <00:23:54.640>in <00:23:54.815>this <00:23:54.990>central <00:23:55.165>cluster,

426
00:23:57.515 --> 00:23:59.975
<00:23:57.515>but <00:23:57.690>it <00:23:57.865>is <00:23:58.040>possible <00:23:58.215>to <00:23:58.390>deploy <00:23:58.565>to <00:23:58.740>different <00:23:58.915>cluster.

427
00:24:00.075 --> 00:24:02.055
<00:24:00.075>So <00:24:00.275>we're <00:24:00.475>not <00:24:00.675>only <00:24:00.875>deploying <00:24:01.075>to <00:24:01.275>the <00:24:01.475>cluster

428
00:24:02.055 --> 00:24:05.015
<00:24:02.055>where <00:24:02.255>Argo <00:24:02.455>CD <00:24:02.655>is <00:24:02.855>running, <00:24:03.055>we're <00:24:03.255>also <00:24:03.455>deploying

429
00:24:05.275 --> 00:24:06.375
<00:24:05.275>to <00:24:05.770>external <00:24:06.265>cluster.

430
00:24:06.595 --> 00:24:10.175
<00:24:06.595>So <00:24:06.770>this <00:24:06.945>is <00:24:07.120>like <00:24:07.295>pretty <00:24:07.470>good, <00:24:07.645>especially <00:24:07.820>for <00:24:07.995>Mambo,

431
00:24:11.105 --> 00:24:12.695
<00:24:11.105>which <00:24:11.455>is <00:24:11.805>a <00:24:12.155>sauce <00:24:12.505>business.

432
00:24:13.275 --> 00:24:16.135
<00:24:13.275>And <00:24:13.450>we <00:24:13.625>have <00:24:13.800>different <00:24:13.975>clients <00:24:14.150>with <00:24:14.325>their <00:24:14.500>own, <00:24:14.675>uh,

433
00:24:16.325 --> 00:24:20.415
<00:24:16.325>installations, <00:24:16.525>sometimes <00:24:16.725>even <00:24:16.925>with <00:24:17.125>their <00:24:17.325>own <00:24:17.525>AWS <00:24:17.725>account

434
00:24:20.515 --> 00:24:24.255
<00:24:20.515>or, <00:24:20.795>uh, <00:24:21.075>other, <00:24:21.355>uh, <00:24:21.635>cloud <00:24:21.915>accounts.

435
00:24:25.505 --> 00:24:29.605
<00:24:25.505>And <00:24:25.645>for <00:24:25.785>that, <00:24:25.925>uh, <00:24:26.065>means <00:24:26.205>that <00:24:26.345>they <00:24:26.485>have <00:24:26.625>their <00:24:26.765>own <00:24:26.905>clusters,

436
00:24:29.605 --> 00:24:30.645
<00:24:29.605>their <00:24:30.073>own <00:24:30.541>installations.

437
00:24:30.825 --> 00:24:32.605
<00:24:30.825>And <00:24:31.000>for <00:24:31.175>us <00:24:31.350>it <00:24:31.525>was <00:24:31.700>important <00:24:31.875>to <00:24:32.050>be <00:24:32.225>able

438
00:24:32.605 --> 00:24:35.365
<00:24:32.605>to <00:24:32.780>deploy <00:24:32.955>into <00:24:33.130>their <00:24:33.305>cluster <00:24:33.480>from <00:24:33.655>a <00:24:33.830>central <00:24:34.005>location

439
00:24:35.365 --> 00:24:36.405
<00:24:35.365>to <00:24:35.677>manage <00:24:35.989>those <00:24:36.301>clusters.

440
00:24:37.115 --> 00:24:39.445
<00:24:37.115>There's <00:24:37.348>also <00:24:37.581>possibility <00:24:37.815>to <00:24:38.048>have <00:24:38.281>sync <00:24:38.515>hooks.

441
00:24:40.145 --> 00:24:43.845
<00:24:40.145>And <00:24:40.345>that <00:24:40.545>means <00:24:40.745>like <00:24:40.945>if <00:24:41.145>a <00:24:41.345>deploy <00:24:41.545>failed,

442
00:24:44.585 --> 00:24:48.445
<00:24:44.585>you <00:24:44.760>can <00:24:44.935>get <00:24:45.110>a <00:24:45.285>sync <00:24:45.460>hook <00:24:45.635>saying, <00:24:45.810>um, <00:24:45.985>okay,

443
00:24:48.505 --> 00:24:49.725
<00:24:48.505>so <00:24:48.779>I <00:24:49.054>have <00:24:49.328>a <00:24:49.602>problem.

444
00:24:51.645 --> 00:24:53.465
<00:24:51.645>You <00:24:51.878>can <00:24:52.111>put <00:24:52.345>a <00:24:52.578>message <00:24:52.811>on <00:24:53.045>Slack

445
00:24:53.805 --> 00:24:57.505
<00:24:53.805>or <00:24:53.921>if <00:24:54.038>it <00:24:54.155>went <00:24:54.271>okay, <00:24:54.388>you <00:24:54.505>can <00:24:54.621>say <00:24:54.738>that <00:24:54.855>I <00:24:54.971>have <00:24:55.088>a <00:24:55.205>problem.

446
00:24:57.805 --> 00:24:59.465
<00:24:57.805>Uh, <00:24:58.155>sorry, <00:24:58.505>everything <00:24:58.855>went <00:24:59.205>okay.

447
00:25:00.405 --> 00:25:03.185
<00:25:00.405>Uh, <00:25:00.638>okay, <00:25:00.871>time <00:25:01.105>to <00:25:01.338>celebrate <00:25:01.571>the <00:25:01.805>deployment

448
00:25:03.185 --> 00:25:04.425
<00:25:03.185>to <00:25:03.464>enter <00:25:03.743>k <00:25:04.022>to <00:25:04.301>production.

449
00:25:04.805 --> 00:25:06.665
<00:25:04.805>It <00:25:05.038>can <00:25:05.271>also <00:25:05.505>go <00:25:05.738>to <00:25:05.971>monitoring <00:25:06.205>apps.

450
00:25:06.725 --> 00:25:09.465
<00:25:06.725>It <00:25:06.852>can <00:25:06.979>go, <00:25:07.106>I <00:25:07.234>know, <00:25:07.361>to, <00:25:07.488>to <00:25:07.615>do <00:25:07.743>apps <00:25:07.870>and <00:25:07.997>so <00:25:08.125>on.

451
00:25:09.485 --> 00:25:12.065
<00:25:09.485>So <00:25:09.718>the <00:25:09.951>sync <00:25:10.185>hook <00:25:10.418>is <00:25:10.651>pretty <00:25:10.885>configurable.

452
00:25:12.065 --> 00:25:15.345
<00:25:12.065>You, <00:25:12.181>you <00:25:12.298>can <00:25:12.415>put <00:25:12.531>scripts <00:25:12.648>in <00:25:12.765>there <00:25:12.881>and <00:25:12.998>they, <00:25:13.115>they <00:25:13.231>will <00:25:13.348>be <00:25:13.465>run

453
00:25:15.345 --> 00:25:17.765
<00:25:15.345>and <00:25:15.811>everything <00:25:16.278>will <00:25:16.745>happen.

454
00:25:19.145 --> 00:25:21.725
<00:25:19.145>And <00:25:19.425>this <00:25:19.705>API <00:25:19.985>also, <00:25:20.264>uh, <00:25:20.545>it,

455
00:25:21.745 --> 00:25:25.285
<00:25:21.745>it <00:25:21.872>also <00:25:21.999>supports <00:25:22.126>like <00:25:22.254>open <00:25:22.381>API <00:25:22.508>you <00:25:22.635>you <00:25:22.763>can <00:25:22.890>work <00:25:23.017>with <00:25:23.145>it

456
00:25:25.555 --> 00:25:29.995
<00:25:25.555>with <00:25:25.730>uh, <00:25:25.905>uh, <00:25:26.080>like <00:25:26.255>you <00:25:26.430>can <00:25:26.605>create <00:25:26.780>your <00:25:26.955>client

457
00:25:30.015 --> 00:25:31.155
<00:25:30.015>and <00:25:30.357>work <00:25:30.699>with <00:25:31.041>it.

458
00:25:31.615 --> 00:25:33.515
<00:25:31.615>You <00:25:31.895>can <00:25:32.175>use <00:25:32.455>it <00:25:32.735>via <00:25:33.015>CLI.

459
00:25:33.525 --> 00:25:36.235
<00:25:33.525>There <00:25:33.805>is <00:25:34.085>also <00:25:34.365>the <00:25:34.645>possibility <00:25:34.925>to

460
00:25:38.465 --> 00:25:41.735
<00:25:38.465>controller <00:25:38.620>checks <00:25:38.776>every <00:25:38.931>three <00:25:39.087>minutes <00:25:39.242>if <00:25:39.398>there <00:25:39.553>is <00:25:39.709>a <00:25:39.865>new

461
00:25:41.735 --> 00:25:44.005
<00:25:41.735>change <00:25:42.084>in <00:25:42.435>the <00:25:42.784>git <00:25:43.135>repo.

462
00:25:44.745 --> 00:25:46.125
<00:25:44.745>But <00:25:44.952>you <00:25:45.158>can <00:25:45.366>also <00:25:45.572>have <00:25:45.780>a <00:25:45.987>hook

463
00:25:46.545 --> 00:25:50.925
<00:25:46.545>and <00:25:46.825>Argo <00:25:47.105>CD <00:25:47.385>understands <00:25:47.665>the <00:25:47.945>main

464
00:25:51.465 --> 00:25:54.245
<00:25:51.465>GIT <00:25:51.745>providers, <00:25:52.024>GitLab, <00:25:52.304>GitHub <00:25:52.584>and <00:25:52.865>Bitbucket.

465
00:25:54.505 --> 00:25:58.125
<00:25:54.505>It <00:25:54.645>under <00:25:54.785>has <00:25:54.925>the, <00:25:55.065>it <00:25:55.205>understands <00:25:55.345>the <00:25:55.485>hooks <00:25:55.625>coming <00:25:55.765>from <00:25:55.905>them

466
00:25:58.865 --> 00:26:01.005
<00:25:58.865>and <00:25:59.020>you <00:25:59.176>don't <00:25:59.331>need <00:25:59.487>to <00:25:59.642>wait <00:25:59.798>for <00:25:59.953>those <00:26:00.109>three <00:26:00.265>minutes.

467
00:26:01.265 --> 00:26:02.365
<00:26:01.265>If <00:26:01.512>you <00:26:01.760>configure <00:26:02.007>the <00:26:02.255>hook,

468
00:26:02.535 --> 00:26:05.165
<00:26:02.535>it'll <00:26:02.735>start <00:26:02.935>applying <00:26:03.135>the <00:26:03.335>changes <00:26:03.535>from <00:26:03.735>the <00:26:03.935>getrepo

469
00:26:05.555 --> 00:26:09.125
<00:26:05.555>immediately <00:26:05.710>when <00:26:05.866>it <00:26:06.021>receives <00:26:06.177>it, <00:26:06.332>when <00:26:06.488>it <00:26:06.643>receives <00:26:06.799>the <00:26:06.955>hook.

470
00:26:10.225 --> 00:26:14.025
<00:26:10.225>So <00:26:10.399>this <00:26:10.574>is <00:26:10.750>kind <00:26:10.925>of, <00:26:11.100>uh, <00:26:11.274>the <00:26:11.449>main <00:26:11.625>architecture.

471
00:26:14.025 --> 00:26:17.825
<00:26:14.025>There <00:26:14.225>are <00:26:14.425>other <00:26:14.625>parts, <00:26:14.825>but <00:26:15.025>that's <00:26:15.225>enough <00:26:15.425>details.

472
00:26:19.155 --> 00:26:22.865
<00:26:19.155>Other <00:26:19.435>interesting <00:26:19.715>features. <00:26:19.995>It's <00:26:20.274>single <00:26:20.555>sign-on.

473
00:26:23.655 --> 00:26:26.865
<00:26:23.655>This <00:26:23.830>might <00:26:24.004>be, <00:26:24.180>might <00:26:24.355>seem <00:26:24.530>like <00:26:24.705>a <00:26:24.879>simple <00:26:25.055>thing,

474
00:26:27.365 --> 00:26:29.145
<00:26:27.365>but <00:26:27.598>it <00:26:27.831>was <00:26:28.065>really <00:26:28.298>important <00:26:28.531>for <00:26:28.765>us.

475
00:26:29.245 --> 00:26:32.305
<00:26:29.245>And <00:26:29.478>I <00:26:29.711>think <00:26:29.945>for <00:26:30.178>other <00:26:30.411>big <00:26:30.645>companies,

476
00:26:32.775 --> 00:26:35.985
<00:26:32.775>it's <00:26:32.915>really <00:26:33.055>important <00:26:33.195>not <00:26:33.335>to <00:26:33.475>have <00:26:33.615>another <00:26:33.755>layer <00:26:33.895>of <00:26:34.035>a <00:26:34.175>layer

477
00:26:36.005 --> 00:26:37.785
<00:26:36.005>of <00:26:36.238>users <00:26:36.471>that <00:26:36.705>you <00:26:36.938>need <00:26:37.171>to <00:26:37.405>handle.

478
00:26:38.445 --> 00:26:42.065
<00:26:38.445>So <00:26:38.600>you <00:26:38.756>can <00:26:38.911>use <00:26:39.067>your <00:26:39.222>Google <00:26:39.378>accounts, <00:26:39.533>your <00:26:39.689>GitHub <00:26:39.845>accounts,

479
00:26:42.345 --> 00:26:45.205
<00:26:42.345>Microsoft <00:26:42.472>and <00:26:42.599>so <00:26:42.726>on <00:26:42.854>to <00:26:42.981>be <00:26:43.108>able <00:26:43.235>to <00:26:43.363>connect <00:26:43.490>to <00:26:43.617>the <00:26:43.745>UI

480
00:26:45.265 --> 00:26:49.525
<00:26:45.265>or <00:26:45.420>use <00:26:45.576>the <00:26:45.731>CLI, <00:26:45.887>we <00:26:46.042>already <00:26:46.198>saw <00:26:46.353>it <00:26:46.509>can <00:26:46.665>be

481
00:26:50.215 --> 00:26:53.745
<00:26:50.215>installed <00:26:50.495>centrally <00:26:50.774>and <00:26:51.054>manage <00:26:51.334>multiple <00:26:51.615>clusters.

482
00:26:54.045 --> 00:26:57.825
<00:26:54.045>So <00:26:54.172>this <00:26:54.299>is <00:26:54.426>a <00:26:54.554>really <00:26:54.681>good <00:26:54.808>thing. <00:26:54.935>I <00:26:55.063>need <00:26:55.190>to <00:26:55.317>underline <00:26:55.445>it.

483
00:26:58.445 --> 00:27:01.145
<00:26:58.445>Um, <00:26:58.620>we'll <00:26:58.794>see <00:26:58.970>in <00:26:59.145>the <00:26:59.320>demo <00:26:59.495>the <00:26:59.669>declarative <00:26:59.845>setup

484
00:27:01.205 --> 00:27:03.025
<00:27:01.205>and <00:27:01.485>how <00:27:01.764>it <00:27:02.044>can <00:27:02.324>update <00:27:02.605>itself.

485
00:27:03.765 --> 00:27:06.545
<00:27:03.765>And <00:27:03.920>there <00:27:04.076>are <00:27:04.231>also <00:27:04.387>things <00:27:04.542>like <00:27:04.698>sync <00:27:04.853>wave <00:27:05.009>sync <00:27:05.165>windows

486
00:27:07.535 --> 00:27:11.945
<00:27:07.535>Sync <00:27:07.675>waves <00:27:07.815>is <00:27:07.955>I <00:27:08.095>want <00:27:08.235>to <00:27:08.375>deploy <00:27:08.515>this <00:27:08.655>part, <00:27:08.795>this <00:27:08.935>deployment.

487
00:27:11.945 --> 00:27:14.425
<00:27:11.945>First <00:27:12.120>and <00:27:12.294>second <00:27:12.470>part, <00:27:12.645>it'll <00:27:12.820>be <00:27:12.995>the <00:27:13.169>config <00:27:13.345>map.

488
00:27:16.685 --> 00:27:18.625
<00:27:16.685>And <00:27:16.885>there <00:27:17.085>is <00:27:17.284>a <00:27:17.485>a, <00:27:17.685>a <00:27:17.885>big <00:27:18.085>community.

489
00:27:18.625 --> 00:27:20.345
<00:27:18.625>You <00:27:18.825>can <00:27:19.025>go <00:27:19.225>online <00:27:19.425>and <00:27:19.625>ask <00:27:19.825>on <00:27:20.025>Slack

490
00:27:20.345 --> 00:27:22.385
<00:27:20.345>channels <00:27:20.695>if <00:27:21.045>you <00:27:21.395>have <00:27:21.745>problems.

491
00:27:22.385 --> 00:27:25.625
<00:27:22.385>There <00:27:22.585>are, <00:27:22.785>uh, <00:27:22.985>meetings <00:27:23.185>happening <00:27:23.385>once <00:27:23.585>every <00:27:23.785>month.

492
00:27:25.915 --> 00:27:29.665
<00:27:25.915>There <00:27:26.090>is <00:27:26.264>a <00:27:26.440>roadmap, <00:27:26.615>like <00:27:26.790>new <00:27:26.965>version <00:27:27.139>is <00:27:27.315>1.9.

493
00:27:30.085 --> 00:27:32.185
<00:27:30.085>So <00:27:30.365>you <00:27:30.645>can <00:27:30.925>check <00:27:31.205>out, <00:27:31.485>uh,

494
00:27:34.515 --> 00:27:37.525
<00:27:34.515>what <00:27:34.655>is <00:27:34.795>on <00:27:34.935>the <00:27:35.075>roadmap <00:27:35.215>of <00:27:35.355>1.9 <00:27:35.495>and <00:27:35.635>and <00:27:35.775>so <00:27:35.915>on.

495
00:27:37.545 --> 00:27:39.925
<00:27:37.545>And <00:27:37.745>you <00:27:37.945>can, <00:27:38.145>if <00:27:38.345>there <00:27:38.545>is <00:27:38.745>something <00:27:38.945>interesting,

496
00:27:39.945 --> 00:27:41.765
<00:27:39.945>you <00:27:40.225>can <00:27:40.504>be <00:27:40.784>an <00:27:41.064>early <00:27:41.345>adopter.

497
00:27:44.735 --> 00:27:47.665
<00:27:44.735>Okay? <00:27:44.890>One <00:27:45.046>other <00:27:45.201>thing <00:27:45.357>to <00:27:45.512>mention <00:27:45.668>is <00:27:45.823>the <00:27:45.979>GitHubs <00:27:46.135>engine.

498
00:27:47.775 --> 00:27:49.905
<00:27:47.775>This <00:27:48.055>was <00:27:48.335>something <00:27:48.615>introduced <00:27:48.895>in <00:27:49.175>1.6.

499
00:27:50.325 --> 00:27:53.305
<00:27:50.325>Um, <00:27:50.500>it <00:27:50.675>was <00:27:50.850>initially <00:27:51.025>started <00:27:51.200>as <00:27:51.375>a <00:27:51.550>joint <00:27:51.725>venture

500
00:27:53.305 --> 00:27:55.425
<00:27:53.305>between <00:27:53.655>Argo <00:27:54.005>CD <00:27:54.355>and <00:27:54.705>fluxed.

501
00:27:55.645 --> 00:27:57.265
<00:27:55.645>Fluxed <00:27:56.345>being, <00:27:57.045>uh,

502
00:27:57.725 --> 00:28:02.345
<00:27:57.725>the <00:27:57.899>other <00:27:58.074>solution <00:27:58.250>from <00:27:58.425>CNCF <00:27:58.600>initially <00:27:58.774>started <00:27:58.949>by <00:27:59.125>WeWorks,

503
00:28:02.605 --> 00:28:04.145
<00:28:02.605>but <00:28:03.067>now <00:28:03.529>A-C-N-C-F <00:28:03.991>project.

504
00:28:05.285 --> 00:28:08.385
<00:28:05.285>And <00:28:05.425>fluxed <00:28:05.565>is <00:28:05.705>the <00:28:05.845>other <00:28:05.985>solution, <00:28:06.125>uh, <00:28:06.265>that <00:28:06.405>you <00:28:06.545>can <00:28:06.685>use

505
00:28:08.385 --> 00:28:09.625
<00:28:08.385>to <00:28:08.664>do <00:28:08.943>to <00:28:09.222>apply <00:28:09.501>GitHubs.

506
00:28:10.045 --> 00:28:13.865
<00:28:10.045>And <00:28:10.172>this <00:28:10.299>is <00:28:10.426>a <00:28:10.554>common <00:28:10.681>library <00:28:10.808>that <00:28:10.935>was <00:28:11.063>taken <00:28:11.190>outside <00:28:11.317>Argo <00:28:11.445>cd

507
00:28:13.925 --> 00:28:15.425
<00:28:13.925>and <00:28:14.195>it <00:28:14.465>is <00:28:14.735>like <00:28:15.004>the <00:28:15.274>core.

508
00:28:16.765 --> 00:28:19.185
<00:28:16.765>And <00:28:16.998>what's <00:28:17.231>nice <00:28:17.465>is <00:28:17.698>that <00:28:17.931>in <00:28:18.165>November,

509
00:28:19.385 --> 00:28:22.825
<00:28:19.385>I <00:28:19.585>think <00:28:19.785>GitLab <00:28:19.985>announced <00:28:20.185>that <00:28:20.385>they <00:28:20.585>have <00:28:20.785>a

510
00:28:23.585 --> 00:28:26.985
<00:28:23.585>Kubernetes <00:28:23.818>agent <00:28:24.051>and <00:28:24.285>inside <00:28:24.518>that <00:28:24.751>Kubernetes <00:28:24.985>agent

511
00:28:27.495 --> 00:28:28.945
<00:28:27.495>uses <00:28:27.929>this <00:28:28.365>GitHubs <00:28:28.800>agent.

512
00:28:29.685 --> 00:28:33.425
<00:28:29.685>So <00:28:29.840>it's <00:28:29.996>really <00:28:30.151>nice <00:28:30.307>to <00:28:30.462>see <00:28:30.618>more, <00:28:30.773>more, <00:28:30.929>uh, <00:28:31.085>uh,

513
00:28:33.905 --> 00:28:36.985
<00:28:33.905>relevant <00:28:34.105>companies <00:28:34.305>coming <00:28:34.504>to <00:28:34.705>adopt <00:28:34.905>the <00:28:35.105>GitHubs <00:28:35.305>concept.

514
00:28:39.245 --> 00:28:41.045
<00:28:39.245>And <00:28:39.524>o <00:28:39.804>one <00:28:40.084>other <00:28:40.364>thing, <00:28:40.645>uh,

515
00:28:41.915 --> 00:28:44.925
<00:28:41.915>usually <00:28:42.195>controller <00:28:42.475>is <00:28:42.754>only <00:28:43.034>one <00:28:43.315>instance

516
00:28:45.685 --> 00:28:48.485
<00:28:45.685>'cause <00:28:45.860>you <00:28:46.034>don't <00:28:46.210>want <00:28:46.385>to <00:28:46.560>mingle <00:28:46.735>with <00:28:46.909>the <00:28:47.085>state.

517
00:28:49.345 --> 00:28:52.885
<00:28:49.345>But <00:28:49.500>in <00:28:49.656>1.8 <00:28:49.811>it <00:28:49.967>was <00:28:50.122>introduced <00:28:50.278>a <00:28:50.433>sharding <00:28:50.589>of <00:28:50.745>controller.

518
00:28:52.885 --> 00:28:56.085
<00:28:52.885>So <00:28:53.025>you <00:28:53.165>have <00:28:53.305>one <00:28:53.445>controller <00:28:53.585>that <00:28:53.725>it's, <00:28:53.865>it's <00:28:54.004>taking <00:28:54.145>care <00:28:54.285>of,

519
00:28:56.905 --> 00:29:01.365
<00:28:56.905>uh, <00:28:57.032>let's <00:28:57.159>say <00:28:57.286>one <00:28:57.414>third <00:28:57.541>of <00:28:57.668>the <00:28:57.795>cla <00:28:57.923>uh, <00:28:58.050>of <00:28:58.177>the <00:28:58.305>clusters.

520
00:29:01.365 --> 00:29:03.325
<00:29:01.365>Then <00:29:01.715>we <00:29:02.065>have <00:29:02.415>another <00:29:02.765>controller

521
00:29:03.325 --> 00:29:04.765
<00:29:03.325>that <00:29:03.541>is <00:29:03.757>taking <00:29:03.973>care <00:29:04.189>of <00:29:04.405>the <00:29:04.621>rest.

522
00:29:05.225 --> 00:29:08.005
<00:29:05.225>Or <00:29:05.341>you <00:29:05.458>can <00:29:05.574>split <00:29:05.691>it <00:29:05.808>in <00:29:05.925>three <00:29:06.041>or <00:29:06.158>four <00:29:06.274>and <00:29:06.391>and <00:29:06.508>so <00:29:06.625>on.

523
00:29:08.385 --> 00:29:12.075
<00:29:08.385>So <00:29:08.585>it <00:29:08.785>allows <00:29:08.985>us <00:29:09.185>to <00:29:09.385>have <00:29:09.585>multiple <00:29:09.785>controllers

524
00:29:12.075 --> 00:29:14.275
<00:29:12.075>because <00:29:12.541>controller <00:29:13.008>was <00:29:13.475>kind

525
00:29:14.275 --> 00:29:16.395
<00:29:14.275>of <00:29:14.475>the <00:29:14.675>only <00:29:14.875>thing <00:29:15.075>you <00:29:15.275>could <00:29:15.475>not <00:29:15.675>scale.

526
00:29:16.575 --> 00:29:19.235
<00:29:16.575>And <00:29:16.808>it <00:29:17.041>was <00:29:17.275>creating <00:29:17.508>problems, <00:29:17.741>especially <00:29:17.975>for,

527
00:29:19.455 --> 00:29:21.435
<00:29:19.455>for <00:29:19.921>big, <00:29:20.388>big <00:29:20.855>installation.

528
00:29:21.435 --> 00:29:23.675
<00:29:21.435>Like <00:29:21.668>when <00:29:21.901>you <00:29:22.135>have <00:29:22.368>more <00:29:22.601>than <00:29:22.835>2000

529
00:29:23.735 --> 00:29:27.955
<00:29:23.735>and <00:29:23.909>ups, <00:29:24.084>which <00:29:24.260>Mambo <00:29:24.435>is <00:29:24.610>pretty <00:29:24.784>close <00:29:24.959>to <00:29:25.135>that.

530
00:29:28.135 --> 00:29:31.035
<00:29:28.135>Or <00:29:28.310>like <00:29:28.485>when <00:29:28.660>you <00:29:28.835>have <00:29:29.010>more <00:29:29.185>than <00:29:29.360>100 <00:29:29.535>clusters.

531
00:29:33.165 --> 00:29:38.025
<00:29:33.165>And <00:29:33.365>yeah, <00:29:33.565>let's <00:29:33.764>get <00:29:33.965>to <00:29:34.165>the <00:29:34.365>demo <00:29:34.565>part.

532
00:29:40.245 --> 00:29:42.285
<00:29:40.245>So <00:29:40.711>in <00:29:41.178>the <00:29:41.645>demo,

533
00:29:45.065 --> 00:29:47.035
<00:29:45.065>hopefully <00:29:45.415>you <00:29:45.765>can <00:29:46.115>see <00:29:46.465>my,

534
00:29:52.395 --> 00:29:55.045
<00:29:52.395>it's <00:29:52.570>okay, <00:29:52.745>I <00:29:52.920>think <00:29:53.095>it's, <00:29:53.270>it's <00:29:53.445>better <00:29:53.620>like <00:29:53.795>this.

535
00:29:56.625 --> 00:30:00.685
<00:29:56.625>So <00:29:56.825>I <00:29:57.025>have <00:29:57.225>this <00:29:57.425>repo <00:29:57.625>here, <00:29:57.825>it's <00:29:58.025>called

536
00:30:01.475 --> 00:30:02.565
<00:30:01.475>Argo <00:30:01.965>CD <00:30:02.456>config.

537
00:30:03.265 --> 00:30:04.885
<00:30:03.265>You <00:30:03.615>can <00:30:03.965>find <00:30:04.315>it <00:30:04.665>here.

538
00:30:05.425 --> 00:30:08.285
<00:30:05.425>And <00:30:05.625>inside <00:30:05.825>here <00:30:06.024>I <00:30:06.225>have <00:30:06.425>an <00:30:06.625>installed <00:30:06.825>file

539
00:30:09.445 --> 00:30:11.145
<00:30:09.445>and <00:30:09.678>I, <00:30:09.911>I'm <00:30:10.145>going <00:30:10.378>to <00:30:10.611>start <00:30:10.845>it.

540
00:30:12.885 --> 00:30:17.095
<00:30:12.885>Usually <00:30:13.040>I <00:30:13.196>just <00:30:13.351>run <00:30:13.507>the, <00:30:13.662>those <00:30:13.818>commands <00:30:13.973>one <00:30:14.129>by <00:30:14.285>one.

541
00:30:17.875 --> 00:30:20.575
<00:30:17.875>But <00:30:18.108>now <00:30:18.341>because <00:30:18.575>uh, <00:30:18.808>I <00:30:19.041>need <00:30:19.275>to

542
00:30:22.605 --> 00:30:25.635
<00:30:22.605>hurry <00:30:22.745>up <00:30:22.885>a <00:30:23.025>little <00:30:23.165>bit <00:30:23.305>with, <00:30:23.445>with <00:30:23.585>the <00:30:23.725>demo, <00:30:23.865>I'm <00:30:24.005>going

543
00:30:25.635 --> 00:30:28.435
<00:30:25.635>to <00:30:25.810>start <00:30:25.985>it <00:30:26.160>and <00:30:26.335>then <00:30:26.510>we <00:30:26.685>can <00:30:26.860>look <00:30:27.035>exactly

544
00:30:29.185 --> 00:30:30.595
<00:30:29.185>what <00:30:29.502>is <00:30:29.819>in <00:30:30.136>that <00:30:30.454>file.

545
00:30:32.415 --> 00:30:34.835
<00:30:32.415>So <00:30:32.648>this <00:30:32.881>way <00:30:33.115>we <00:30:33.348>will <00:30:33.581>go <00:30:33.815>faster.

546
00:30:35.175 --> 00:30:38.075
<00:30:35.175>So <00:30:35.350>what <00:30:35.524>we'll <00:30:35.700>do, <00:30:35.875>we'll <00:30:36.050>create <00:30:36.225>a <00:30:36.399>kind <00:30:36.575>cluster.

547
00:30:39.245 --> 00:30:42.305
<00:30:39.245>And <00:30:39.385>in <00:30:39.524>this <00:30:39.665>kind <00:30:39.804>cluster <00:30:39.945>we'll <00:30:40.084>install <00:30:40.225>Argos <00:30:40.364>D <00:30:40.504>180 <00:30:40.645>2.

548
00:30:44.625 --> 00:30:48.205
<00:30:44.625>And <00:30:44.858>the <00:30:45.091>installation <00:30:45.325>is <00:30:45.558>done <00:30:45.791>with <00:30:46.025>customized.

549
00:30:48.985 --> 00:30:53.325
<00:30:48.985>So <00:30:49.140>we're <00:30:49.296>going <00:30:49.451>to <00:30:49.607>this <00:30:49.762>Argo <00:30:49.918>CD <00:30:50.073>folder <00:30:50.229>in <00:30:50.385>here.

550
00:30:53.775 --> 00:30:56.045
<00:30:53.775>There <00:30:54.125>is <00:30:54.475>the <00:30:54.825>customization <00:30:55.175>dol

551
00:30:56.585 --> 00:30:59.645
<00:30:56.585>and <00:30:56.760>you <00:30:56.935>can <00:30:57.110>see <00:30:57.285>that <00:30:57.460>the <00:30:57.635>base <00:30:57.810>goes <00:30:57.985>to

552
00:31:00.635 --> 00:31:04.445
<00:31:00.635>Argo <00:31:00.985>CD <00:31:01.335>manifest <00:31:01.685>version <00:31:02.035>1.82.

553
00:31:04.905 --> 00:31:06.565
<00:31:04.905>I'm <00:31:05.185>also <00:31:05.465>doing <00:31:05.745>some <00:31:06.024>changes <00:31:06.305>here,

554
00:31:06.565 --> 00:31:08.685
<00:31:06.565>like <00:31:06.798>adding <00:31:07.031>the <00:31:07.265>Argo <00:31:07.498>CD <00:31:07.731>in <00:31:07.965>namespace

555
00:31:09.345 --> 00:31:13.805
<00:31:09.345>and <00:31:09.500>adding <00:31:09.656>some <00:31:09.811>additional <00:31:09.967>stuff <00:31:10.122>into <00:31:10.278>some, <00:31:10.433>um, <00:31:10.589>config <00:31:10.745>map

556
00:31:14.065 --> 00:31:16.325
<00:31:14.065>and <00:31:14.345>putting <00:31:14.625>d <00:31:14.905>deployment <00:31:15.185>to <00:31:15.465>zero.

557
00:31:16.645 --> 00:31:20.205
<00:31:16.645>'cause <00:31:16.845>this <00:31:17.045>is <00:31:17.245>used <00:31:17.445>for <00:31:17.645>single <00:31:17.845>sign <00:31:18.045>on

558
00:31:20.225 --> 00:31:21.885
<00:31:20.225>and <00:31:20.504>we, <00:31:20.784>we <00:31:21.064>donated <00:31:21.344>right <00:31:21.625>now,

559
00:31:23.025 --> 00:31:27.645
<00:31:23.025>and <00:31:23.180>I, <00:31:23.336>I'm <00:31:23.491>trying <00:31:23.647>to <00:31:23.802>use <00:31:23.958>every, <00:31:24.113>every <00:31:24.269>piece <00:31:24.425>of,

560
00:31:28.105 --> 00:31:32.365
<00:31:28.105>uh, <00:31:28.260>power <00:31:28.416>'cause <00:31:28.571>I <00:31:28.727>will <00:31:28.882>start <00:31:29.038>also <00:31:29.193>a <00:31:29.349>second <00:31:29.505>cluster.

561
00:31:33.545 --> 00:31:36.725
<00:31:33.545>And <00:31:33.895>if <00:31:34.245>all <00:31:34.595>the <00:31:34.945>presentation,

562
00:31:36.725 --> 00:31:38.605
<00:31:36.725>this <00:31:36.880>will <00:31:37.036>will <00:31:37.191>be <00:31:37.347>a <00:31:37.502>little <00:31:37.658>heavy <00:31:37.813>on <00:31:37.969>the <00:31:38.125>machine.

563
00:31:39.985 --> 00:31:44.675
<00:31:39.985>Uh, <00:31:40.218>okay, <00:31:40.451>so <00:31:40.685>it's, <00:31:40.918>it <00:31:41.151>is <00:31:41.385>installing

564
00:31:45.345 --> 00:31:47.635
<00:31:45.345>Argo <00:31:45.625>cd, <00:31:45.905>then <00:31:46.185>we <00:31:46.465>can <00:31:46.745>look.

565
00:31:48.335 --> 00:31:51.075
<00:31:48.335>So <00:31:48.535>we <00:31:48.735>have <00:31:48.935>the <00:31:49.135>first <00:31:49.335>application <00:31:49.535>being <00:31:49.735>applied.

566
00:31:52.135 --> 00:31:56.015
<00:31:52.135>Uh, <00:31:52.335>actually <00:31:52.535>I <00:31:52.735>think <00:31:52.935>first <00:31:53.135>is <00:31:53.335>the <00:31:53.535>project.

567
00:31:56.595 --> 00:32:00.775
<00:31:56.595>But <00:31:56.735>let, <00:31:56.875>let's <00:31:57.015>look <00:31:57.155>first <00:31:57.295>at <00:31:57.435>the <00:31:57.575>application, <00:31:57.715>not <00:31:57.855>this <00:31:57.995>one.

568
00:32:00.965 --> 00:32:02.175
<00:32:00.965>This <00:32:01.237>one <00:32:01.509>is <00:32:01.781>being <00:32:02.053>applied.

569
00:32:02.355 --> 00:32:04.855
<00:32:02.355>So <00:32:02.530>we <00:32:02.705>have <00:32:02.880>an <00:32:03.055>application, <00:32:03.230>it's <00:32:03.405>called <00:32:03.580>Argo <00:32:03.755>cd.

570
00:32:05.365 --> 00:32:07.935
<00:32:05.365>This <00:32:05.520>is <00:32:05.676>the <00:32:05.831>custom <00:32:05.987>resources <00:32:06.142>that <00:32:06.298>I <00:32:06.453>was <00:32:06.609>talking <00:32:06.765>about.

571
00:32:07.935 --> 00:32:09.535
<00:32:07.935>This <00:32:08.215>is <00:32:08.495>the <00:32:08.774>custom <00:32:09.054>resource <00:32:09.335>definition.

572
00:32:10.995 --> 00:32:15.015
<00:32:10.995>And <00:32:11.169>this <00:32:11.344>application <00:32:11.520>will <00:32:11.695>go <00:32:11.870>to <00:32:12.044>the <00:32:12.219>default <00:32:12.395>server,

573
00:32:15.725 --> 00:32:17.015
<00:32:15.725>like <00:32:16.305>in <00:32:16.886>cluster

574
00:32:18.785 --> 00:32:20.925
<00:32:18.785>and <00:32:18.985>on <00:32:19.185>the <00:32:19.385>next <00:32:19.585>page <00:32:19.785>called <00:32:19.985>Argo <00:32:20.185>cd.

575
00:32:21.345 --> 00:32:25.165
<00:32:21.345>And <00:32:21.500>we'll <00:32:21.656>install <00:32:21.811>what <00:32:21.967>it'll <00:32:22.122>find <00:32:22.278>in <00:32:22.433>this <00:32:22.589>git <00:32:22.745>ripple

576
00:32:27.865 --> 00:32:31.325
<00:32:27.865>on <00:32:28.065>this <00:32:28.265>branch <00:32:28.465>master <00:32:28.665>and <00:32:28.865>in <00:32:29.065>this <00:32:29.265>path.

577
00:32:31.425 --> 00:32:34.845
<00:32:31.425>So <00:32:31.658>it'll <00:32:31.891>install <00:32:32.125>what <00:32:32.358>is <00:32:32.591>in <00:32:32.825>here.

578
00:32:36.735 --> 00:32:39.645
<00:32:36.735>And <00:32:36.890>we <00:32:37.046>see <00:32:37.201>here <00:32:37.357>like <00:32:37.512>sync <00:32:37.668>policy, <00:32:37.823>it <00:32:37.979>is <00:32:38.135>automated

579
00:32:39.705 --> 00:32:42.045
<00:32:39.705>and <00:32:39.905>prune <00:32:40.105>false <00:32:40.304>means <00:32:40.504>that <00:32:40.705>it'll <00:32:40.905>not <00:32:41.105>delete

580
00:32:42.045 --> 00:32:43.925
<00:32:42.045>unless <00:32:42.325>I <00:32:42.605>will <00:32:42.885>do <00:32:43.165>it <00:32:43.445>manually.

581
00:32:44.265 --> 00:32:45.365
<00:32:44.265>So <00:32:44.595>this <00:32:44.925>what <00:32:45.255>means,

582
00:32:45.645 --> 00:32:47.725
<00:32:45.645>'cause <00:32:45.878>deleting <00:32:46.111>is <00:32:46.345>a <00:32:46.578>little <00:32:46.811>bit <00:32:47.045>dangerous.

583
00:32:47.745 --> 00:32:52.435
<00:32:47.745>You <00:32:47.978>can <00:32:48.211>do <00:32:48.445>uh, <00:32:48.678>really <00:32:48.911>nasty <00:32:49.145>stuff.

584
00:32:53.695 --> 00:32:58.305
<00:32:53.695>So <00:32:53.928>initially <00:32:54.161>we <00:32:54.395>installed <00:32:54.628>it <00:32:54.861>from <00:32:55.095>here,

585
00:32:58.735 --> 00:33:00.785
<00:32:58.735>from <00:32:59.084>this <00:32:59.435>Argos <00:32:59.784>CD <00:33:00.135>folder.

586
00:33:01.045 --> 00:33:04.425
<00:33:01.045>And <00:33:01.220>then <00:33:01.395>we <00:33:01.570>tell <00:33:01.745>it, <00:33:01.920>okay, <00:33:02.095>you <00:33:02.270>can <00:33:02.445>go

587
00:33:04.425 --> 00:33:05.825
<00:33:04.425>and <00:33:04.677>you'll <00:33:04.929>find <00:33:05.181>an <00:33:05.433>application <00:33:05.685>there,

588
00:33:05.885 --> 00:33:08.385
<00:33:05.885>but <00:33:06.351>it's <00:33:06.818>already <00:33:07.285>installed.

589
00:33:08.525 --> 00:33:12.265
<00:33:08.525>So <00:33:08.680>it'll <00:33:08.836>calculate, <00:33:08.991>like <00:33:09.147>we <00:33:09.302>saw, <00:33:09.458>it'll <00:33:09.613>calculate <00:33:09.769>the <00:33:09.925>diff

590
00:33:12.685 --> 00:33:14.745
<00:33:12.685>and <00:33:12.840>you'll <00:33:12.996>see <00:33:13.151>that <00:33:13.307>actually <00:33:13.462>there's <00:33:13.618>nothing <00:33:13.773>to <00:33:13.929>be <00:33:14.085>applied.

591
00:33:15.165 --> 00:33:16.545
<00:33:15.165>But <00:33:15.579>from <00:33:15.993>now <00:33:16.407>on,

592
00:33:16.675 --> 00:33:19.265
<00:33:16.675>after <00:33:16.875>having <00:33:17.075>this <00:33:17.274>application <00:33:17.475>deployed <00:33:17.675>to <00:33:17.875>the <00:33:18.075>cluster,

593
00:33:19.845 --> 00:33:23.025
<00:33:19.845>it <00:33:20.020>actually <00:33:20.195>creates <00:33:20.370>this <00:33:20.545>link <00:33:20.720>between <00:33:20.895>the <00:33:21.070>Git <00:33:21.245>RPO

594
00:33:23.565 --> 00:33:24.625
<00:33:23.565>and <00:33:23.883>the <00:33:24.201>cluster <00:33:24.519>state.

595
00:33:24.725 --> 00:33:27.625
<00:33:24.725>So <00:33:24.852>whenever <00:33:24.979>I <00:33:25.106>will <00:33:25.234>do <00:33:25.361>next <00:33:25.488>a <00:33:25.615>change <00:33:25.743>in <00:33:25.870>the <00:33:25.997>Git <00:33:26.125>rpo,

596
00:33:27.625 --> 00:33:29.145
<00:33:27.625>it'll <00:33:27.967>be <00:33:28.309>picked <00:33:28.651>up <00:33:28.993>automatically

597
00:33:29.145 --> 00:33:30.185
<00:33:29.145>and <00:33:29.379>deployed <00:33:29.613>into <00:33:29.847>the <00:33:30.081>cluster.

598
00:33:30.365 --> 00:33:32.185
<00:33:30.365>And <00:33:30.598>this <00:33:30.831>will <00:33:31.065>be <00:33:31.298>our <00:33:31.531>first <00:33:31.765>change.

599
00:33:34.295 --> 00:33:38.065
<00:33:34.295>Then <00:33:34.422>we <00:33:34.549>take <00:33:34.676>a <00:33:34.804>look <00:33:34.931>at <00:33:35.058>the <00:33:35.185>app <00:33:35.313>project, <00:33:35.440>this <00:33:35.567>another <00:33:35.695>CR

600
00:33:38.885 --> 00:33:39.985
<00:33:38.885>custom <00:33:39.875>resource.

601
00:33:40.485 --> 00:33:43.105
<00:33:40.485>And <00:33:40.640>we <00:33:40.796>see <00:33:40.951>that <00:33:41.107>the <00:33:41.262>app <00:33:41.418>project <00:33:41.573>can <00:33:41.729>be <00:33:41.885>used

602
00:33:43.645 --> 00:33:45.225
<00:33:43.645>to <00:33:44.111>define <00:33:44.578>some <00:33:45.045>constraints.

603
00:33:45.565 --> 00:33:48.985
<00:33:45.565>So <00:33:45.720>for <00:33:45.876>example, <00:33:46.031>I <00:33:46.187>can <00:33:46.342>say <00:33:46.498>that <00:33:46.653>all <00:33:46.809>the <00:33:46.965>applications

604
00:33:48.985 --> 00:33:51.505
<00:33:48.985>that <00:33:49.185>use <00:33:49.385>this <00:33:49.584>app <00:33:49.784>project <00:33:49.985>can <00:33:50.185>only <00:33:50.385>deploy

605
00:33:51.505 --> 00:33:55.305
<00:33:51.505>to <00:33:51.645>the <00:33:51.785>default <00:33:51.925>cluster, <00:33:52.065>can <00:33:52.205>only <00:33:52.345>take <00:33:52.485>stuff <00:33:52.625>from <00:33:52.765>this <00:33:52.905>GI

606
00:33:56.725 --> 00:33:59.985
<00:33:56.725>and <00:33:56.880>there <00:33:57.036>is <00:33:57.191>no <00:33:57.347>restriction <00:33:57.502>on <00:33:57.658>namespace, <00:33:57.813>I <00:33:57.969>cannot <00:33:58.125>add.

607
00:34:00.085 --> 00:34:03.945
<00:34:00.085>And <00:34:00.285>you <00:34:00.485>can <00:34:00.685>also <00:34:00.885>start <00:34:01.085>adding <00:34:01.285>some <00:34:01.485>restrictions.

608
00:34:04.005 --> 00:34:07.145
<00:34:04.005>For <00:34:04.285>example, <00:34:04.565>I <00:34:04.845>can <00:34:05.125>blacklist <00:34:05.405>something

609
00:34:07.165 --> 00:34:10.335
<00:34:07.165>and <00:34:07.365>say, <00:34:07.565>uh, <00:34:07.764>I <00:34:07.965>will <00:34:08.165>not <00:34:08.364>allow <00:34:08.565>it

610
00:34:10.715 --> 00:34:12.415
<00:34:10.715>to <00:34:11.415>create <00:34:12.115>secrets.

611
00:34:12.895 --> 00:34:15.575
<00:34:12.895>'cause <00:34:13.094>secrets <00:34:13.295>should <00:34:13.495>come <00:34:13.695>from <00:34:13.895>an <00:34:14.094>external <00:34:14.295>source.

612
00:34:15.955 --> 00:34:17.455
<00:34:15.955>Uh, <00:34:16.179>I, <00:34:16.404>I <00:34:16.630>can <00:34:16.855>do <00:34:17.080>that <00:34:17.304>and

613
00:34:17.555 --> 00:34:20.655
<00:34:17.554>or <00:34:17.730>I <00:34:17.904>can <00:34:18.080>allow <00:34:18.254>it <00:34:18.429>only <00:34:18.605>to <00:34:18.779>create <00:34:18.955>deployment

614
00:34:20.795 --> 00:34:24.845
<00:34:20.795>and <00:34:20.922>not <00:34:21.049>state <00:34:21.176>full <00:34:21.304>sets <00:34:21.431>because <00:34:21.558>that's <00:34:21.685>what <00:34:21.813>it <00:34:21.940>needs <00:34:22.067>to <00:34:22.195>do.

615
00:34:24.915 --> 00:34:26.245
<00:34:24.915>This <00:34:25.513>the <00:34:26.112>project

616
00:34:26.275 --> 00:34:28.125
<00:34:26.275>that <00:34:26.475>use <00:34:26.675>the <00:34:26.875>application <00:34:27.075>that <00:34:27.275>use <00:34:27.475>this <00:34:27.675>project.

617
00:34:28.225 --> 00:34:31.765
<00:34:28.225>So <00:34:28.352>we <00:34:28.479>can <00:34:28.606>see <00:34:28.734>here <00:34:28.861>that <00:34:28.988>we <00:34:29.115>have <00:34:29.243>the <00:34:29.370>project <00:34:29.497>defined <00:34:29.625>here,

618
00:34:32.975 --> 00:34:35.085
<00:34:32.975>which <00:34:33.255>project <00:34:33.534>this <00:34:33.815>application <00:34:34.094>to <00:34:34.375>use

619
00:34:37.805 --> 00:34:41.215
<00:34:37.804>following <00:34:37.980>on <00:34:38.154>this <00:34:38.330>will <00:34:38.504>get <00:34:38.679>the <00:34:38.855>binary, <00:34:39.029>the <00:34:39.205>CLI,

620
00:34:41.715 --> 00:34:44.695
<00:34:41.715>it <00:34:41.948>calculates <00:34:42.181>if <00:34:42.415>it's <00:34:42.648>Linux <00:34:42.881>or <00:34:43.115>Mac,

621
00:34:46.215 --> 00:34:48.315
<00:34:46.215>and <00:34:46.448>it <00:34:46.681>gets <00:34:46.915>the <00:34:47.148>binary <00:34:47.381>180 <00:34:47.615>2.

622
00:34:48.575 --> 00:34:52.595
<00:34:48.574>And <00:34:48.774>actually <00:34:48.975>it <00:34:49.174>will, <00:34:49.375>uh, <00:34:49.574>put <00:34:49.774>it <00:34:49.975>like,

623
00:34:52.695 --> 00:34:53.915
<00:34:52.695>uh, <00:34:53.244>this <00:34:53.793>custom.

624
00:34:54.495 --> 00:34:58.755
<00:34:54.495>So <00:34:54.611>if <00:34:54.728>you <00:34:54.844>have <00:34:54.961>already <00:34:55.078>Argo <00:34:55.194>cd, <00:34:55.311>it'll <00:34:55.428>just <00:34:55.545>put <00:34:55.661>Argo <00:34:55.778>cd <00:34:55.895>uh,

625
00:34:58.965 --> 00:35:00.435
<00:34:58.965>minus <00:34:59.626>180 <00:35:00.288>2.

626
00:35:01.685 --> 00:35:04.785
<00:35:01.685>Uh, <00:35:01.918>so <00:35:02.151>it'll <00:35:02.384>not <00:35:02.618>uh, <00:35:02.851>do <00:35:03.085>anything

627
00:35:04.815 --> 00:35:07.265
<00:35:04.815>with <00:35:05.015>if <00:35:05.215>you <00:35:05.415>have <00:35:05.615>already <00:35:05.815>installed <00:35:06.015>the <00:35:06.215>version.

628
00:35:08.005 --> 00:35:11.105
<00:35:08.005>And <00:35:08.160>then <00:35:08.316>it <00:35:08.471>takes <00:35:08.627>the <00:35:08.782>password, <00:35:08.938>the <00:35:09.093>default <00:35:09.249>password <00:35:09.405>for

629
00:35:11.845 --> 00:35:14.905
<00:35:11.845>the <00:35:12.000>UI <00:35:12.156>and <00:35:12.311>the <00:35:12.467>CLI <00:35:12.622>and <00:35:12.778>it'll <00:35:12.933>display <00:35:13.089>it <00:35:13.245>here.

630
00:35:15.085 --> 00:35:16.625
<00:35:15.085>So <00:35:15.431>it <00:35:15.778>generates <00:35:16.124>a <00:35:16.471>password,

631
00:35:16.625 --> 00:35:18.985
<00:35:16.625>which <00:35:16.858>is <00:35:17.091>actually <00:35:17.325>the <00:35:17.558>server <00:35:17.791>po <00:35:18.025>name.

632
00:35:19.165 --> 00:35:21.585
<00:35:19.165>So <00:35:19.398>let's <00:35:19.631>see <00:35:19.865>the <00:35:20.098>state. <00:35:20.331>Okay, <00:35:20.565>great.

633
00:35:21.685 --> 00:35:24.625
<00:35:21.685>So <00:35:21.840>we, <00:35:21.996>we <00:35:22.151>have <00:35:22.307>it <00:35:22.462>running. <00:35:22.618>We, <00:35:22.773>we <00:35:22.929>can <00:35:23.085>check.

634
00:35:29.745 --> 00:35:32.715
<00:35:29.745>Okay, <00:35:29.944>so <00:35:30.145>try <00:35:30.345>to <00:35:30.545>connect <00:35:30.745>it <00:35:30.944>can <00:35:31.145>yet,

635
00:35:33.535 --> 00:35:38.245
<00:35:33.535>but <00:35:33.651>we <00:35:33.768>see <00:35:33.884>that <00:35:34.001>we <00:35:34.118>have <00:35:34.234>the <00:35:34.351>version <00:35:34.468>180 <00:35:34.585>2, <00:35:34.701>which <00:35:34.818>is <00:35:34.935>great.

636
00:35:38.785 --> 00:35:42.805
<00:35:38.785>So <00:35:38.984>next <00:35:39.185>we'll <00:35:39.384>go <00:35:39.585>into <00:35:39.785>the <00:35:39.984>self-managed <00:35:40.185>cluster.

637
00:35:43.025 --> 00:35:46.445
<00:35:43.025>So <00:35:43.200>we <00:35:43.375>started, <00:35:43.550>we <00:35:43.725>did <00:35:43.900>these <00:35:44.075>actions <00:35:44.250>from <00:35:44.425>here.

638
00:35:47.585 --> 00:35:50.125
<00:35:47.585>Now <00:35:47.725>we <00:35:47.865>just <00:35:48.005>want <00:35:48.145>to <00:35:48.285>connect <00:35:48.425>to <00:35:48.565>the <00:35:48.705>Argo <00:35:48.845>CD <00:35:48.985>ui.

639
00:35:50.125 --> 00:35:52.765
<00:35:50.125>So <00:35:50.325>I'm <00:35:50.525>going <00:35:50.725>to <00:35:50.925>do <00:35:51.125>a <00:35:51.325>port <00:35:51.525>forward.

640
00:35:57.835 --> 00:36:01.965
<00:35:57.835>Okay? <00:35:57.975>The <00:35:58.115>pod <00:35:58.255>is <00:35:58.395>not <00:35:58.535>up <00:35:58.675>and <00:35:58.815>running <00:35:58.955>yet. <00:35:59.095>It's <00:35:59.235>impending.

641
00:36:03.515 --> 00:36:08.485
<00:36:03.515>Okay, <00:36:03.690>great. <00:36:03.865>Hopefully <00:36:04.040>I <00:36:04.214>will <00:36:04.390>be <00:36:04.565>able <00:36:04.740>to, <00:36:04.915>okay,

642
00:36:08.515 --> 00:36:10.165
<00:36:08.515>this <00:36:08.795>gets <00:36:09.075>the, <00:36:09.355>uh, <00:36:09.634>admin <00:36:09.915>user,

643
00:36:10.425 --> 00:36:13.245
<00:36:10.425>but <00:36:10.705>we <00:36:10.985>are <00:36:11.265>okay <00:36:11.545>with, <00:36:11.825>uh,

644
00:36:13.465 --> 00:36:15.525
<00:36:13.465>we <00:36:13.815>have <00:36:14.165>it <00:36:14.515>listed <00:36:14.865>there.

645
00:36:15.945 --> 00:36:18.125
<00:36:15.945>And <00:36:16.120>so <00:36:16.295>if <00:36:16.470>now <00:36:16.645>I <00:36:16.820>go <00:36:16.995>to <00:36:17.170>local <00:36:17.345>host

646
00:36:18.685 --> 00:36:22.735
<00:36:18.685>1995, <00:36:19.151>it'll <00:36:19.618>tell <00:36:20.085>me.

647
00:36:23.095 --> 00:36:26.055
<00:36:23.095>'cause <00:36:23.294>in <00:36:23.495>this <00:36:23.694>case <00:36:23.895>the <00:36:24.095>certificate <00:36:24.294>is <00:36:24.495>autogenerated,

648
00:36:26.155 --> 00:36:28.055
<00:36:26.155>but <00:36:26.330>we <00:36:26.505>are, <00:36:26.680>okay, <00:36:26.855>we <00:36:27.030>are <00:36:27.205>on <00:36:27.380>local <00:36:27.555>host.

649
00:36:28.935 --> 00:36:33.725
<00:36:28.935>I <00:36:29.075>need <00:36:29.215>to <00:36:29.355>add <00:36:29.495>my <00:36:29.634>password <00:36:29.775>in <00:36:29.915>order <00:36:30.055>to <00:36:30.195>accept <00:36:30.335>it.

650
00:36:34.505 --> 00:36:37.045
<00:36:34.505>And <00:36:34.785>we <00:36:35.065>saw <00:36:35.345>user <00:36:35.625>is <00:36:35.905>admin

651
00:36:38.645 --> 00:36:41.385
<00:36:38.645>and <00:36:38.845>we <00:36:39.045>saw <00:36:39.245>the <00:36:39.445>password <00:36:39.645>being <00:36:39.845>written <00:36:40.045>here.

652
00:36:44.355 --> 00:36:48.315
<00:36:44.355>Nice. <00:36:44.635>So <00:36:44.915>let's <00:36:45.195>put <00:36:45.475>it <00:36:45.755>here

653
00:36:48.695 --> 00:36:49.715
<00:36:48.695>and <00:36:49.001>let's <00:36:49.307>sign <00:36:49.613>in.

654
00:36:50.675 --> 00:36:51.755
<00:36:50.675>I <00:36:50.869>don't <00:36:51.063>want <00:36:51.258>to <00:36:51.452>save <00:36:51.647>it.

655
00:36:51.975 --> 00:36:53.995
<00:36:51.975>So <00:36:52.150>now <00:36:52.325>I <00:36:52.500>also <00:36:52.674>have <00:36:52.850>the <00:36:53.025>Argo <00:36:53.200>CD <00:36:53.375>application,

656
00:36:55.425 --> 00:36:59.995
<00:36:55.425>which <00:36:55.891>we <00:36:56.358>installed <00:36:56.825>here.

657
00:37:02.675 --> 00:37:06.115
<00:37:02.675>And <00:37:02.908>okay, <00:37:03.141>we <00:37:03.375>have <00:37:03.608>an <00:37:03.841>error <00:37:04.075>probably.

658
00:37:06.585 --> 00:37:08.035
<00:37:06.585>Yeah, <00:37:06.911>it <00:37:07.237>gave <00:37:07.563>a <00:37:07.890>timeout,

659
00:37:09.905 --> 00:37:14.775
<00:37:09.905>but <00:37:10.080>we <00:37:10.255>can <00:37:10.430>always <00:37:10.605>try <00:37:10.780>another <00:37:10.955>thing <00:37:11.130>or <00:37:11.305>not.

660
00:37:14.905 --> 00:37:15.935
<00:37:14.905>Let's <00:37:15.214>do <00:37:15.523>a <00:37:15.832>refresh.

661
00:37:17.555 --> 00:37:19.775
<00:37:17.555>So <00:37:17.754>refresh <00:37:17.955>is <00:37:18.154>kind <00:37:18.355>of <00:37:18.555>the <00:37:18.754>same <00:37:18.955>thing,

662
00:37:19.955 --> 00:37:22.735
<00:37:19.955>but <00:37:20.154>it'll <00:37:20.355>not <00:37:20.555>try <00:37:20.755>to <00:37:20.955>apply <00:37:21.154>it <00:37:21.355>automatically

663
00:37:23.115 --> 00:37:25.135
<00:37:23.115>so <00:37:23.348>it <00:37:23.581>gets <00:37:23.814>content <00:37:24.048>from <00:37:24.281>the <00:37:24.515>giri.

664
00:37:25.875 --> 00:37:28.495
<00:37:25.875>Um, <00:37:26.050>sync <00:37:26.225>will <00:37:26.400>also <00:37:26.575>try <00:37:26.750>to <00:37:26.925>apply <00:37:27.100>it <00:37:27.275>automatically

665
00:37:29.435 --> 00:37:30.695
<00:37:29.435>to <00:37:29.718>apply <00:37:30.002>also <00:37:30.285>the <00:37:30.569>sync.

666
00:37:30.875 --> 00:37:32.735
<00:37:30.875>So <00:37:31.075>this, <00:37:31.275>this <00:37:31.475>is <00:37:31.675>kind <00:37:31.875>of <00:37:32.075>the <00:37:32.275>difference.

667
00:37:32.795 --> 00:37:34.335
<00:37:32.795>So <00:37:33.072>when <00:37:33.349>sync <00:37:33.626>is <00:37:33.903>not <00:37:34.181>available

668
00:37:34.335 --> 00:37:36.895
<00:37:34.335>because <00:37:34.490>it <00:37:34.646>didn't <00:37:34.801>find <00:37:34.957>anything, <00:37:35.112>we <00:37:35.268>can <00:37:35.423>go <00:37:35.579>with <00:37:35.735>refresh.

669
00:37:38.115 --> 00:37:41.815
<00:37:38.115>So <00:37:38.314>what <00:37:38.515>we <00:37:38.714>are <00:37:38.915>going <00:37:39.115>to <00:37:39.314>do <00:37:39.515>next

670
00:37:43.185 --> 00:37:46.005
<00:37:43.185>is <00:37:43.384>we <00:37:43.585>are <00:37:43.785>going <00:37:43.985>to <00:37:44.185>modify <00:37:44.384>this <00:37:44.585>version.

671
00:37:47.105 --> 00:37:51.245
<00:37:47.105>So <00:37:47.260>instead <00:37:47.416>of <00:37:47.571>1.82, <00:37:47.727>we're <00:37:47.882>going <00:37:48.038>to <00:37:48.193>upgrade <00:37:48.349>to <00:37:48.505>1.83.

672
00:37:52.755 --> 00:37:57.225
<00:37:52.755>So <00:37:52.882>this <00:37:53.009>is <00:37:53.136>the <00:37:53.264>change <00:37:53.391>we <00:37:53.518>are <00:37:53.645>going <00:37:53.773>to <00:37:53.900>do. <00:37:54.027>Only <00:37:54.155>this.

673
00:37:58.485 --> 00:38:01.465
<00:37:58.485>We <00:37:58.625>can <00:37:58.765>see <00:37:58.905>here <00:37:59.045>that <00:37:59.185>the <00:37:59.325>version <00:37:59.465>is <00:37:59.605>1 <00:37:59.745>8 <00:37:59.885>2.

674
00:38:04.395 --> 00:38:07.165
<00:38:04.395>Yeah, <00:38:04.628>it's <00:38:04.861>going <00:38:05.095>a <00:38:05.328>little <00:38:05.561>bit <00:38:05.795>slower.

675
00:38:09.325 --> 00:38:11.535
<00:38:09.325>Okay, <00:38:09.605>let <00:38:09.884>me <00:38:10.165>do <00:38:10.444>that. <00:38:10.725>Okay,

676
00:38:21.375 --> 00:38:21.845
<00:38:21.375>let's <00:38:21.798>see.

677
00:38:21.905 --> 00:38:23.325
<00:38:21.905>Do <00:38:22.224>we <00:38:22.544>have <00:38:22.863>any <00:38:23.183>questions?

678
00:38:25.015 --> 00:38:27.985
<00:38:25.015>What, <00:38:25.170>what <00:38:25.326>needs <00:38:25.481>to <00:38:25.637>be <00:38:25.792>done <00:38:25.948>in <00:38:26.103>terms <00:38:26.259>of <00:38:26.415>security?

679
00:38:28.845 --> 00:38:32.145
<00:38:28.845>So <00:38:29.044>probably <00:38:29.245>you're <00:38:29.444>referring <00:38:29.645>to <00:38:29.845>the <00:38:30.044>default <00:38:30.245>password.

680
00:38:32.765 --> 00:38:35.105
<00:38:32.765>So <00:38:32.964>you, <00:38:33.165>you <00:38:33.365>can <00:38:33.565>change <00:38:33.765>the <00:38:33.964>password, <00:38:34.165>uh,

681
00:38:35.655 --> 00:38:37.405
<00:38:35.655>after <00:38:36.121>you <00:38:36.588>install <00:38:37.055>it.

682
00:38:37.945 --> 00:38:42.005
<00:38:37.945>Um, <00:38:38.145>in <00:38:38.345>our <00:38:38.545>case, <00:38:38.745>we <00:38:38.945>use <00:38:39.145>single <00:38:39.345>sign-on

683
00:38:42.585 --> 00:38:45.245
<00:38:42.585>so <00:38:42.785>the <00:38:42.985>admin <00:38:43.185>user <00:38:43.385>can <00:38:43.585>actually <00:38:43.785>be <00:38:43.985>disabled.

684
00:38:45.835 --> 00:38:47.765
<00:38:45.835>Okay, <00:38:46.035>great. <00:38:46.235>It, <00:38:46.435>it, <00:38:46.635>it <00:38:46.835>started <00:38:47.035>to <00:38:47.235>sync.

685
00:38:47.765 --> 00:38:50.965
<00:38:47.765>So <00:38:47.920>we <00:38:48.076>can <00:38:48.231>have <00:38:48.387>the <00:38:48.542>first <00:38:48.698>demo <00:38:48.853>remote <00:38:49.009>list <00:38:49.165>so

686
00:38:51.935 --> 00:38:53.555
<00:38:51.935>the <00:38:52.215>admin <00:38:52.495>user <00:38:52.775>can <00:38:53.055>be <00:38:53.335>disabled.

687
00:38:53.735 --> 00:38:57.035
<00:38:53.735>And <00:38:53.862>even <00:38:53.989>when <00:38:54.116>you, <00:38:54.244>you'll <00:38:54.371>get <00:38:54.498>the <00:38:54.625>ui, <00:38:54.753>you'll <00:38:54.880>not <00:38:55.007>have <00:38:55.135>like,

688
00:38:57.495 --> 00:39:01.995
<00:38:57.495>uh, <00:38:57.634>any <00:38:57.775>uh, <00:38:57.915>text <00:38:58.055>box <00:38:58.194>to <00:38:58.335>other <00:38:58.475>user <00:38:58.615>or <00:38:58.755>password, <00:38:58.895>anything.

689
00:39:02.405 --> 00:39:06.595
<00:39:02.405>There <00:39:02.580>are <00:39:02.755>also <00:39:02.930>local <00:39:03.105>user. <00:39:03.280>So <00:39:03.455>sorry <00:39:03.630>about <00:39:03.805>that.

690
00:39:06.695 --> 00:39:09.795
<00:39:06.695>It <00:39:06.870>was <00:39:07.045>a <00:39:07.220>connection <00:39:07.395>glitch <00:39:07.570>and <00:39:07.745>I <00:39:07.920>got <00:39:08.095>disconnected.

691
00:39:10.695 --> 00:39:12.955
<00:39:10.695>So <00:39:10.928>we, <00:39:11.161>we <00:39:11.395>are <00:39:11.628>talking <00:39:11.861>about <00:39:12.095>security

692
00:39:13.375 --> 00:39:17.315
<00:39:13.375>and <00:39:13.550>the <00:39:13.725>fact <00:39:13.900>that <00:39:14.075>we <00:39:14.250>can <00:39:14.425>see <00:39:14.600>here <00:39:14.775>the

693
00:39:18.545 --> 00:39:21.795
<00:39:18.545>default <00:39:18.745>password <00:39:18.945>is <00:39:19.145>kind <00:39:19.345>of <00:39:19.545>the <00:39:19.745>pod <00:39:19.945>name,

694
00:39:23.125 --> 00:39:24.555
<00:39:23.125>which <00:39:23.446>is <00:39:23.768>the <00:39:24.090>default <00:39:24.412>password.

695
00:39:24.555 --> 00:39:25.675
<00:39:24.555>So <00:39:24.723>you <00:39:24.891>would <00:39:25.059>need <00:39:25.227>to <00:39:25.395>update <00:39:25.563>it.

696
00:39:25.675 --> 00:39:27.275
<00:39:25.675>If <00:39:25.850>you'll <00:39:26.025>still <00:39:26.200>use <00:39:26.375>the <00:39:26.550>admin <00:39:26.725>user, <00:39:26.900>you <00:39:27.075>need

697
00:39:27.275 --> 00:39:28.595
<00:39:27.275>to <00:39:27.473>update <00:39:27.671>it <00:39:27.869>to <00:39:28.067>something <00:39:28.265>more <00:39:28.462>serious.

698
00:39:29.535 --> 00:39:33.685
<00:39:29.535>Um, <00:39:29.734>'cause <00:39:29.935>at <00:39:30.134>least <00:39:30.335>part <00:39:30.535>of <00:39:30.734>the, <00:39:30.935>uh,

699
00:39:34.065 --> 00:39:35.365
<00:39:34.065>po <00:39:34.357>name <00:39:34.650>can <00:39:34.942>be <00:39:35.234>guessed.

700
00:39:36.465 --> 00:39:38.645
<00:39:36.465>The <00:39:36.698>first <00:39:36.931>part, <00:39:37.165>uh, <00:39:37.398>in <00:39:37.631>our <00:39:37.865>case,

701
00:39:38.665 --> 00:39:40.205
<00:39:38.665>we <00:39:39.011>are <00:39:39.358>using <00:39:39.704>single <00:39:40.051>sign-on.

702
00:39:40.385 --> 00:39:42.485
<00:39:40.385>So <00:39:40.665>actually <00:39:40.945>disabled <00:39:41.225>the <00:39:41.505>admin <00:39:41.785>user

703
00:39:42.785 --> 00:39:45.485
<00:39:42.785>and <00:39:42.960>there <00:39:43.134>are <00:39:43.310>some <00:39:43.484>local <00:39:43.660>users <00:39:43.835>you <00:39:44.009>can <00:39:44.185>use

704
00:39:45.585 --> 00:39:47.165
<00:39:45.585>and <00:39:45.818>you <00:39:46.051>can <00:39:46.285>configure <00:39:46.518>if <00:39:46.751>different, <00:39:46.985>right?

705
00:39:47.665 --> 00:39:51.605
<00:39:47.665>For <00:39:47.820>doing <00:39:47.976>automation <00:39:48.131>and <00:39:48.287>single <00:39:48.442>sign-on <00:39:48.598>for <00:39:48.753>your <00:39:48.909>real <00:39:49.065>users

706
00:39:51.865 --> 00:39:55.405
<00:39:51.865>and <00:39:51.981>single <00:39:52.098>sign-on <00:39:52.214>is <00:39:52.331>able <00:39:52.448>to, <00:39:52.564>you <00:39:52.681>can <00:39:52.798>use <00:39:52.915>it <00:39:53.031>from <00:39:53.148>the <00:39:53.265>ui.

707
00:39:56.225 --> 00:39:58.645
<00:39:56.225>And <00:39:56.458>when <00:39:56.691>the <00:39:56.924>admin <00:39:57.158>user <00:39:57.391>is <00:39:57.625>disabled,

708
00:39:58.705 --> 00:40:01.925
<00:39:58.705>you <00:39:58.880>don't <00:39:59.055>have <00:39:59.230>like <00:39:59.404>textbook <00:39:59.580>to, <00:39:59.755>sorry, <00:39:59.930>to <00:40:00.105>enter

709
00:40:02.915 --> 00:40:03.955
<00:40:02.915>a <00:40:03.227>username <00:40:03.538>and <00:40:03.851>password.

710
00:40:03.955 --> 00:40:06.235
<00:40:03.955>You <00:40:04.235>only <00:40:04.515>have <00:40:04.795>like <00:40:05.075>SSO <00:40:05.355>login.

711
00:40:06.345 --> 00:40:10.915
<00:40:06.345>What <00:40:06.484>you <00:40:06.625>have <00:40:06.765>Microsoft, <00:40:06.904>Google, <00:40:07.044>uh, <00:40:07.185>GitHub <00:40:07.325>and, <00:40:07.464>and <00:40:07.605>so <00:40:07.745>on.

712
00:40:10.915 --> 00:40:12.155
<00:40:10.915>What <00:40:11.194>whatever <00:40:11.473>you <00:40:11.752>set <00:40:12.031>up.

713
00:40:14.175 --> 00:40:17.075
<00:40:14.175>And <00:40:14.350>you <00:40:14.525>can <00:40:14.700>also <00:40:14.875>use <00:40:15.050>it <00:40:15.225>in <00:40:15.400>the <00:40:15.575>CLI

714
00:40:17.235 --> 00:40:19.275
<00:40:17.235>'cause <00:40:17.435>you <00:40:17.635>have <00:40:17.835>like <00:40:18.035>a <00:40:18.235>minus <00:40:18.435>SSO <00:40:18.635>flag.

715
00:40:21.185 --> 00:40:24.275
<00:40:21.185>Okay? <00:40:21.384>So <00:40:21.585>what <00:40:21.785>I <00:40:21.985>did <00:40:22.185>right <00:40:22.384>now <00:40:22.585>is

716
00:40:24.955 --> 00:40:28.515
<00:40:24.955>I <00:40:25.188>created <00:40:25.421>the <00:40:25.654>installation <00:40:25.888>of <00:40:26.121>180 <00:40:26.355>2

717
00:40:28.655 --> 00:40:30.555
<00:40:28.655>and <00:40:28.855>I <00:40:29.055>linked <00:40:29.255>it <00:40:29.455>to <00:40:29.655>the <00:40:29.855>Git <00:40:30.055>report.

718
00:40:30.615 --> 00:40:33.195
<00:40:30.615>You <00:40:30.895>can <00:40:31.174>see <00:40:31.455>here <00:40:31.734>the <00:40:32.015>commit.

719
00:40:33.375 --> 00:40:38.235
<00:40:33.375>And <00:40:33.530>I <00:40:33.686>also <00:40:33.841>pushed <00:40:33.997>the <00:40:34.152>commit <00:40:34.308>that <00:40:34.463>modified <00:40:34.619>the <00:40:34.775>version

720
00:40:38.825 --> 00:40:40.995
<00:40:38.825>from <00:40:39.024>1 <00:40:39.225>8 <00:40:39.424>2 <00:40:39.625>to <00:40:39.825>1 <00:40:40.024>8 <00:40:40.225>3.

721
00:40:41.055 --> 00:40:42.915
<00:40:41.055>So <00:40:41.288>this <00:40:41.521>happened <00:40:41.754>while <00:40:41.988>I <00:40:42.221>was <00:40:42.455>offline

722
00:40:42.915 --> 00:40:44.875
<00:40:42.915>and <00:40:43.148>I, <00:40:43.381>I <00:40:43.615>was <00:40:43.848>having <00:40:44.081>fun <00:40:44.315>upgrading.

723
00:40:46.295 --> 00:40:49.075
<00:40:46.295>So <00:40:46.528>it <00:40:46.761>actually, <00:40:46.995>you <00:40:47.228>can <00:40:47.461>see <00:40:47.695>here

724
00:40:49.075 --> 00:40:53.195
<00:40:49.075>that <00:40:49.214>it <00:40:49.355>changed <00:40:49.495>the <00:40:49.634>commit <00:40:49.774>from <00:40:49.915>CB <00:40:50.055>six <00:40:50.194>to <00:40:50.335>3D <00:40:50.475>five.

725
00:40:53.335 --> 00:40:56.355
<00:40:53.335>So <00:40:53.510>here <00:40:53.685>we <00:40:53.860>see, <00:40:54.035>we <00:40:54.210>still <00:40:54.385>see <00:40:54.560>CB <00:40:54.735>six.

726
00:40:56.655 --> 00:40:58.515
<00:40:56.655>So <00:40:56.830>I'm, <00:40:57.005>I <00:40:57.180>will <00:40:57.355>try <00:40:57.530>to <00:40:57.705>sync <00:40:57.880>it <00:40:58.055>now.

727
00:40:58.905 --> 00:41:01.395
<00:40:58.905>I'll <00:40:59.138>not <00:40:59.371>let <00:40:59.605>it <00:40:59.838>do <00:41:00.071>it <00:41:00.305>automatically

728
00:41:02.175 --> 00:41:04.555
<00:41:02.175>and <00:41:02.350>it <00:41:02.525>should <00:41:02.700>see <00:41:02.875>like <00:41:03.050>it's <00:41:03.225>out <00:41:03.400>of <00:41:03.575>sync.

729
00:41:11.725 --> 00:41:16.485
<00:41:11.725>It <00:41:11.924>takes <00:41:12.125>a <00:41:12.325>while <00:41:12.525>and <00:41:12.725>my <00:41:12.924>laptop <00:41:13.125>really

730
00:41:16.965 --> 00:41:19.165
<00:41:16.965>struggles <00:41:17.431>to <00:41:17.898>put, <00:41:18.365>uh,

731
00:41:23.075 --> 00:41:24.935
<00:41:23.075>to <00:41:23.308>take <00:41:23.541>this <00:41:23.774>and <00:41:24.008>make <00:41:24.241>it <00:41:24.475>work.

732
00:41:29.625 --> 00:41:31.195
<00:41:29.625>Okay, <00:41:29.975>hopefully <00:41:30.325>we <00:41:30.675>don't <00:41:31.025>have,

733
00:41:31.595 --> 00:41:33.235
<00:41:31.595>'cause <00:41:31.875>initially <00:41:32.154>I <00:41:32.435>had <00:41:32.714>a <00:41:32.995>timeout

734
00:41:35.665 --> 00:41:37.925
<00:41:35.665>on <00:41:36.131>connecting <00:41:36.598>to <00:41:37.065>GitHub.

735
00:41:45.425 --> 00:41:49.165
<00:41:45.425>So <00:41:45.625>meanwhile <00:41:45.825>I <00:41:46.025>can <00:41:46.225>show <00:41:46.425>you <00:41:46.625>the <00:41:46.825>CLI.

736
00:41:50.305 --> 00:41:52.645
<00:41:50.305>So <00:41:50.460>I <00:41:50.616>was <00:41:50.771>able <00:41:50.927>to <00:41:51.082>log <00:41:51.238>in <00:41:51.393>with <00:41:51.549>the <00:41:51.705>CLI.

737
00:41:52.785 --> 00:41:57.285
<00:41:52.785>You <00:41:52.901>can <00:41:53.018>see <00:41:53.134>here <00:41:53.251>I <00:41:53.368>was <00:41:53.484>able <00:41:53.601>to <00:41:53.718>log <00:41:53.835>into <00:41:53.951>this <00:41:54.068>server <00:41:54.185>here

738
00:41:58.035 --> 00:41:59.125
<00:41:58.035>putting <00:41:59.016>insecure

739
00:41:59.125 --> 00:42:03.895
<00:41:59.125>because <00:41:59.475>the <00:41:59.825>certificate <00:42:00.175>is <00:42:00.525>auto-generated

740
00:42:04.395 --> 00:42:05.815
<00:42:04.395>and <00:42:04.821>username <00:42:05.247>and <00:42:05.673>password.

741
00:42:06.195 --> 00:42:09.135
<00:42:06.195>And <00:42:06.335>I, <00:42:06.475>I <00:42:06.615>was <00:42:06.755>able <00:42:06.895>to <00:42:07.035>run <00:42:07.175>this <00:42:07.315>command <00:42:07.455>app <00:42:07.595>list

742
00:42:09.515 --> 00:42:11.575
<00:42:09.515>and <00:42:09.714>it <00:42:09.915>gave <00:42:10.115>me <00:42:10.315>the <00:42:10.515>list <00:42:10.714>of <00:42:10.915>applications.

743
00:42:11.595 --> 00:42:16.255
<00:42:11.595>So <00:42:11.711>in <00:42:11.828>my <00:42:11.944>case, <00:42:12.061>it's <00:42:12.178>just <00:42:12.294>Argo <00:42:12.411>CD <00:42:12.528>and <00:42:12.645>you <00:42:12.761>can <00:42:12.878>see <00:42:12.995>repo

744
00:42:16.275 --> 00:42:18.375
<00:42:16.275>and <00:42:16.475>you <00:42:16.675>can <00:42:16.875>see <00:42:17.075>the <00:42:17.275>status <00:42:17.475>is <00:42:17.675>synced.

745
00:42:18.475 --> 00:42:22.935
<00:42:18.475>So <00:42:18.615>it <00:42:18.755>brought <00:42:18.895>the <00:42:19.035>last <00:42:19.174>commit <00:42:19.315>from <00:42:19.455>Git. <00:42:19.595>So, <00:42:19.735>okay, <00:42:19.875>great.

746
00:42:23.555 --> 00:42:25.535
<00:42:23.555>So <00:42:23.730>now <00:42:23.904>we <00:42:24.080>see <00:42:24.254>that <00:42:24.430>it's <00:42:24.605>out <00:42:24.779>of <00:42:24.955>sync

747
00:42:26.315 --> 00:42:30.815
<00:42:26.315>and <00:42:26.515>probably <00:42:26.715>it <00:42:26.915>already <00:42:27.115>started <00:42:27.315>to, <00:42:27.515>to <00:42:27.715>deploy

748
00:42:30.995 --> 00:42:32.575
<00:42:30.995>or <00:42:31.461>it <00:42:31.928>should <00:42:32.395>start.

749
00:42:33.525 --> 00:42:36.575
<00:42:33.525>Okay, <00:42:33.991>let <00:42:34.458>me <00:42:34.925>see.

750
00:42:38.765 --> 00:42:40.675
<00:42:38.765>Everything <00:42:39.231>is <00:42:39.698>slower <00:42:40.165>now,

751
00:42:43.075 --> 00:42:47.855
<00:42:43.075>so <00:42:43.202>probably <00:42:43.329>now <00:42:43.456>we <00:42:43.584>just <00:42:43.711>need <00:42:43.838>to <00:42:43.965>wait <00:42:44.093>to <00:42:44.220>see <00:42:44.347>different <00:42:44.475>pods

752
00:42:49.545 --> 00:42:51.505
<00:42:49.545>spinning <00:42:49.825>up <00:42:50.105>with <00:42:50.385>the <00:42:50.665>new <00:42:50.945>version.

753
00:42:51.725 --> 00:42:53.545
<00:42:51.725>And <00:42:51.958>1 <00:42:52.191>8 <00:42:52.424>3 <00:42:52.658>will <00:42:52.891>appear <00:42:53.125>here.

754
00:42:55.905 --> 00:42:58.315
<00:42:55.905>Unfortunately, <00:42:56.105>I <00:42:56.305>will <00:42:56.505>not <00:42:56.705>have <00:42:56.905>time <00:42:57.105>to <00:42:57.305>go

755
00:42:58.575 --> 00:43:00.235
<00:42:58.575>to <00:42:59.041>the <00:42:59.508>second <00:42:59.975>exercise.

756
00:43:01.865 --> 00:43:04.715
<00:43:01.865>Okay, <00:43:02.040>let's <00:43:02.214>see <00:43:02.390>this <00:43:02.564>thinking, <00:43:02.740>maybe <00:43:02.915>now <00:43:03.089>it'll <00:43:03.265>be,

757
00:43:05.935 --> 00:43:07.515
<00:43:05.935>but <00:43:06.134>I, <00:43:06.335>I <00:43:06.535>can <00:43:06.735>tell <00:43:06.935>you <00:43:07.134>about <00:43:07.335>it.

758
00:43:07.655 --> 00:43:10.995
<00:43:07.655>You <00:43:07.810>can <00:43:07.966>clone <00:43:08.121>the <00:43:08.277>repo <00:43:08.432>and <00:43:08.588>uh, <00:43:08.743>do <00:43:08.899>it <00:43:09.055>yourself.

759
00:43:12.635 --> 00:43:14.095
<00:43:12.635>So <00:43:12.854>I <00:43:13.073>was <00:43:13.292>starting <00:43:13.511>a <00:43:13.730>second <00:43:13.948>cluster.

760
00:43:15.645 --> 00:43:19.745
<00:43:15.645>Uh, <00:43:15.785>there <00:43:15.925>is <00:43:16.065>some <00:43:16.205>workaround <00:43:16.345>if <00:43:16.485>you <00:43:16.625>are <00:43:16.765>working <00:43:16.905>on <00:43:17.045>Mac,

761
00:43:19.745 --> 00:43:22.665
<00:43:19.745>there <00:43:19.978>is <00:43:20.211>a <00:43:20.444>problem <00:43:20.678>with <00:43:20.911>kind, <00:43:21.145>uh,

762
00:43:22.925 --> 00:43:24.305
<00:43:22.925>it <00:43:23.173>depends <00:43:23.421>also <00:43:23.670>on <00:43:23.918>your <00:43:24.167>version,

763
00:43:24.445 --> 00:43:27.425
<00:43:24.445>but <00:43:24.678>if <00:43:24.911>you <00:43:25.145>have <00:43:25.378>latest <00:43:25.611>2010 <00:43:25.845>Docker,

764
00:43:28.165 --> 00:43:32.905
<00:43:28.165>it <00:43:28.292>is <00:43:28.419>a <00:43:28.546>problem <00:43:28.674>if <00:43:28.801>you <00:43:28.928>have <00:43:29.055>19 <00:43:29.183>something, <00:43:29.310>it's <00:43:29.437>not, <00:43:29.565>anyway,

765
00:43:32.965 --> 00:43:36.185
<00:43:32.965>if <00:43:33.120>you <00:43:33.276>run <00:43:33.431>this, <00:43:33.587>it'll <00:43:33.742>not <00:43:33.898>be, <00:43:34.053>uh, <00:43:34.209>an <00:43:34.365>issue.

766
00:43:36.365 --> 00:43:39.185
<00:43:36.365>So <00:43:36.540>it'll <00:43:36.714>just, <00:43:36.890>if <00:43:37.064>you <00:43:37.240>don't <00:43:37.415>have <00:43:37.589>the <00:43:37.765>problem,

767
00:43:39.395 --> 00:43:40.665
<00:43:39.395>it'll <00:43:39.776>not <00:43:40.157>do <00:43:40.538>anything.

768
00:43:41.895 --> 00:43:46.625
<00:43:41.895>What <00:43:42.022>I <00:43:42.149>need <00:43:42.276>to <00:43:42.404>mention <00:43:42.531>is <00:43:42.658>here <00:43:42.785>in <00:43:42.913>the <00:43:43.040>dev <00:43:43.167>cluster <00:43:43.295>here,

769
00:43:46.625 --> 00:43:48.625
<00:43:46.625>you <00:43:46.800>need, <00:43:46.975>you'll <00:43:47.150>need <00:43:47.325>to <00:43:47.500>put <00:43:47.675>your <00:43:47.850>own <00:43:48.025>ip.

770
00:43:49.755 --> 00:43:52.615
<00:43:49.755>So <00:43:49.988>this <00:43:50.221>is <00:43:50.455>my <00:43:50.688>local <00:43:50.921>private <00:43:51.155>ip.

771
00:43:52.715 --> 00:43:55.775
<00:43:52.715>So <00:43:52.870>you <00:43:53.026>need <00:43:53.181>to <00:43:53.337>put <00:43:53.492>your <00:43:53.648>local <00:43:53.803>private <00:43:53.959>IP <00:43:54.115>because

772
00:43:55.965 --> 00:43:58.615
<00:43:55.965>otherwise <00:43:56.245>kind <00:43:56.525>listens <00:43:56.805>on <00:43:57.085>local <00:43:57.365>host.

773
00:43:59.795 --> 00:44:04.695
<00:43:59.795>So <00:43:59.911>you'll <00:44:00.028>not <00:44:00.145>be <00:44:00.261>able <00:44:00.378>to <00:44:00.495>tell <00:44:00.611>Argo <00:44:00.728>CD <00:44:00.845>in <00:44:00.961>its <00:44:01.078>own <00:44:01.195>container

774
00:44:04.755 --> 00:44:08.535
<00:44:04.755>to <00:44:04.930>co <00:44:05.105>connect <00:44:05.280>to <00:44:05.455>a <00:44:05.630>cluster <00:44:05.805>on <00:44:05.980>local <00:44:06.155>host

775
00:44:08.535 --> 00:44:11.575
<00:44:08.535>because <00:44:08.734>it'll <00:44:08.935>think <00:44:09.134>it's <00:44:09.335>on <00:44:09.535>namespace <00:44:09.734>local <00:44:09.935>host.

776
00:44:12.155 --> 00:44:15.775
<00:44:12.155>So <00:44:12.271>that's <00:44:12.388>why <00:44:12.505>it, <00:44:12.621>it <00:44:12.738>needs <00:44:12.855>to <00:44:12.971>be <00:44:13.088>like, <00:44:13.205>uh, <00:44:13.321>a <00:44:13.438>real <00:44:13.555>ip.

777
00:44:15.795 --> 00:44:18.735
<00:44:15.795>So <00:44:15.922>that's <00:44:16.049>why <00:44:16.176>here, <00:44:16.304>you <00:44:16.431>just <00:44:16.558>need <00:44:16.685>to <00:44:16.813>like <00:44:16.940>clone <00:44:17.067>this <00:44:17.195>report,

778
00:44:18.755 --> 00:44:23.455
<00:44:18.755>put <00:44:18.882>your <00:44:19.009>own <00:44:19.136>IP <00:44:19.264>locally, <00:44:19.391>and <00:44:19.518>you, <00:44:19.645>you <00:44:19.773>can, <00:44:19.900>and <00:44:20.027>also <00:44:20.155>here.

779
00:44:23.475 --> 00:44:26.415
<00:44:23.475>So <00:44:23.708>whenever <00:44:23.941>you <00:44:24.174>find <00:44:24.408>a <00:44:24.641>reference <00:44:24.875>modified

780
00:44:26.835 --> 00:44:29.015
<00:44:26.835>and <00:44:27.068>then <00:44:27.301>you, <00:44:27.535>you <00:44:27.768>just <00:44:28.001>run <00:44:28.235>this

781
00:44:29.015 --> 00:44:30.335
<00:44:29.015>and <00:44:29.252>you <00:44:29.490>have <00:44:29.727>the <00:44:29.965>second <00:44:30.203>cluster

782
00:44:30.635 --> 00:44:32.405
<00:44:30.635>and <00:44:30.915>I, <00:44:31.195>I, <00:44:31.475>I'm <00:44:31.755>explaining <00:44:32.035>here

783
00:44:33.075 --> 00:44:34.685
<00:44:33.075>what <00:44:33.308>you <00:44:33.541>have <00:44:33.774>in <00:44:34.008>the <00:44:34.241>second <00:44:34.475>cluster.

784
00:44:35.905 --> 00:44:38.765
<00:44:35.905>And <00:44:36.060>then <00:44:36.216>here <00:44:36.371>was <00:44:36.527>the <00:44:36.682>installation <00:44:36.838>for <00:44:36.993>the <00:44:37.149>second <00:44:37.305>cluster.

785
00:44:38.905 --> 00:44:42.645
<00:44:38.905>So <00:44:39.032>you <00:44:39.159>just <00:44:39.286>need <00:44:39.414>to <00:44:39.541>run <00:44:39.668>cube, <00:44:39.795>CTL, <00:44:39.923>apply <00:44:40.050>these <00:44:40.177>two <00:44:40.305>items

786
00:44:43.925 --> 00:44:45.985
<00:44:43.925>and <00:44:44.100>you'll <00:44:44.275>see <00:44:44.450>them <00:44:44.625>appear <00:44:44.800>in <00:44:44.975>the <00:44:45.150>dev <00:44:45.325>cluster.

787
00:44:46.125 --> 00:44:48.145
<00:44:46.125>It <00:44:46.358>would've <00:44:46.591>been <00:44:46.825>great. <00:44:47.058>Sorry <00:44:47.291>about <00:44:47.525>this.

788
00:44:50.285 --> 00:44:53.625
<00:44:50.285>So <00:44:50.484>let's <00:44:50.685>see <00:44:50.884>if <00:44:51.085>we <00:44:51.285>had <00:44:51.484>any <00:44:51.685>luck.

789
00:44:55.445 --> 00:44:59.415
<00:44:55.445>Well, <00:44:55.600>it's <00:44:55.756>trying <00:44:55.911>to, <00:44:56.067>it's <00:44:56.222>still <00:44:56.378>zero <00:44:56.533>out <00:44:56.689>of <00:44:56.845>one.

790
00:45:01.715 --> 00:45:05.945
<00:45:01.715>So <00:45:01.890>yeah, <00:45:02.065>demo <00:45:02.240>Gods <00:45:02.415>are <00:45:02.590>not <00:45:02.765>too <00:45:02.940>fast <00:45:03.115>today.

791
00:45:07.455 --> 00:45:10.265
<00:45:07.455>Need <00:45:07.654>to <00:45:07.855>bring <00:45:08.055>a <00:45:08.255>sacrifice. <00:45:08.455>My <00:45:08.654>laptop <00:45:08.855>probably.

792
00:45:12.565 --> 00:45:17.505
<00:45:12.565>So <00:45:12.705>let's <00:45:12.845>see, <00:45:12.985>how <00:45:13.125>do <00:45:13.265>you <00:45:13.405>monitor <00:45:13.545>or <00:45:13.685>service <00:45:13.825>in <00:45:13.965>production?

793
00:45:17.565 --> 00:45:20.625
<00:45:17.565>So <00:45:17.798>it, <00:45:18.031>it <00:45:18.265>provides, <00:45:18.498>um, <00:45:18.731>Prometheus <00:45:18.965>metrics.

794
00:45:22.325 --> 00:45:27.265
<00:45:22.325>Um, <00:45:22.452>and <00:45:22.579>I, <00:45:22.706>I <00:45:22.834>be, <00:45:22.961>yeah, <00:45:23.088>so <00:45:23.215>I <00:45:23.343>see <00:45:23.470>also <00:45:23.597>the <00:45:23.725>monitors.

795
00:45:27.605 --> 00:45:31.465
<00:45:27.605>So <00:45:27.805>it <00:45:28.005>provides, <00:45:28.205>uh, <00:45:28.405>it <00:45:28.605>provides <00:45:28.805>Prometheus <00:45:29.005>metrics

796
00:45:31.775 --> 00:45:36.105
<00:45:31.775>that <00:45:31.950>you <00:45:32.125>can <00:45:32.300>scrape <00:45:32.475>with <00:45:32.650>a, <00:45:32.825>uh, <00:45:33.000>Prometheus <00:45:33.175>operator

797
00:45:36.405 --> 00:45:39.625
<00:45:36.405>or <00:45:36.605>any <00:45:36.805>other, <00:45:37.005>uh, <00:45:37.205>thing <00:45:37.405>that <00:45:37.605>supports, <00:45:37.805>uh,

798
00:45:39.625 --> 00:45:42.225
<00:45:39.625>Prometheus <00:45:40.091>metrics <00:45:40.558>and <00:45:41.025>things

799
00:45:42.805 --> 00:45:46.595
<00:45:42.805>to <00:45:43.085>monitor <00:45:43.365>are <00:45:43.645>usually, <00:45:43.924>we <00:45:44.205>tend

800
00:45:46.595 --> 00:45:51.275
<00:45:46.595>to <00:45:46.722>have <00:45:46.849>big <00:45:46.976>applications <00:45:47.104>that <00:45:47.231>takes <00:45:47.358>a <00:45:47.485>lot <00:45:47.613>of <00:45:47.740>time <00:45:47.867>to <00:45:47.995>deploy.

801
00:45:51.275 --> 00:45:54.995
<00:45:51.275>Like <00:45:51.475>think <00:45:51.675>about <00:45:51.875>Istio, <00:45:52.075>that's <00:45:52.275>really <00:45:52.475>huge <00:45:52.675>application,

802
00:45:55.855 --> 00:45:58.795
<00:45:55.855>but <00:45:56.088>not <00:45:56.321>only <00:45:56.555>things <00:45:56.788>like <00:45:57.021>ingress <00:45:57.255>controllers

803
00:45:58.975 --> 00:46:03.595
<00:45:58.975>and <00:45:59.130>maybe <00:45:59.286>if <00:45:59.441>deployment <00:45:59.597>of <00:45:59.752>microservice <00:45:59.908>is <00:46:00.063>not <00:46:00.219>that <00:46:00.375>big,

804
00:46:04.495 --> 00:46:08.035
<00:46:04.495>but <00:46:04.634>the <00:46:04.775>idea <00:46:04.915>you <00:46:05.055>can, <00:46:05.194>uh, <00:46:05.335>like <00:46:05.475>create <00:46:05.615>a <00:46:05.755>baseline <00:46:05.895>for

805
00:46:08.035 --> 00:46:09.955
<00:46:08.035>how <00:46:08.234>much <00:46:08.435>time <00:46:08.634>it <00:46:08.835>takes <00:46:09.035>to <00:46:09.234>deploy <00:46:09.435>it.

806
00:46:10.335 --> 00:46:12.595
<00:46:10.335>And <00:46:10.510>then <00:46:10.685>if <00:46:10.860>it <00:46:11.035>takes <00:46:11.210>longer, <00:46:11.385>if <00:46:11.560>it <00:46:11.735>goes

807
00:46:12.595 --> 00:46:17.075
<00:46:12.595>with <00:46:12.722>a <00:46:12.849>threshold <00:46:12.976>like <00:46:13.104>10%, <00:46:13.231>you <00:46:13.358>can, <00:46:13.485>uh, <00:46:13.613>already <00:46:13.740>alert <00:46:13.867>on <00:46:13.995>it

808
00:46:17.415 --> 00:46:20.275
<00:46:17.415>or <00:46:17.648>you <00:46:17.881>can <00:46:18.115>put <00:46:18.348>different <00:46:18.581>things <00:46:18.815>there.

809
00:46:20.375 --> 00:46:22.875
<00:46:20.375>So <00:46:20.530>this <00:46:20.686>is <00:46:20.841>kind <00:46:20.997>of <00:46:21.152>the <00:46:21.308>things <00:46:21.463>we <00:46:21.619>are <00:46:21.775>watching.

810
00:46:23.735 --> 00:46:25.635
<00:46:23.735>And <00:46:24.201>over <00:46:24.668>the <00:46:25.135>versions,

811
00:46:25.855 --> 00:46:27.875
<00:46:25.855>the <00:46:26.135>LA <00:46:26.415>last <00:46:26.695>version <00:46:26.975>Argo <00:46:27.255>City

812
00:46:27.875 --> 00:46:29.355
<00:46:27.875>really <00:46:28.319>improved <00:46:28.763>its <00:46:29.207>performance.

813
00:46:29.935 --> 00:46:34.035
<00:46:29.935>And <00:46:30.168>this <00:46:30.401>kind <00:46:30.634>of <00:46:30.868>made <00:46:31.101>a <00:46:31.335>difference.

814
00:46:34.035 --> 00:46:36.075
<00:46:34.035>For <00:46:34.190>example, <00:46:34.346>one <00:46:34.501>year <00:46:34.657>ago <00:46:34.812>we, <00:46:34.968>we <00:46:35.123>got <00:46:35.279>a <00:46:35.435>lot

815
00:46:36.075 --> 00:46:37.635
<00:46:36.075>of <00:46:36.424>complaints <00:46:36.774>from <00:46:37.125>development <00:46:37.475>teams

816
00:46:38.305 --> 00:46:40.635
<00:46:38.305>that <00:46:38.538>things <00:46:38.771>were <00:46:39.004>progressing <00:46:39.238>really, <00:46:39.471>really <00:46:39.705>slow

817
00:46:41.295 --> 00:46:43.315
<00:46:41.295>and <00:46:41.528>they <00:46:41.761>were <00:46:41.995>not <00:46:42.228>able <00:46:42.461>to <00:46:42.695>maybe

818
00:46:43.865 --> 00:46:45.915
<00:46:43.865>meet <00:46:44.331>their <00:46:44.798>client <00:46:45.265>requirements.

819
00:46:46.235 --> 00:46:50.595
<00:46:46.235>'cause <00:46:46.390>you <00:46:46.546>have <00:46:46.701>a, <00:46:46.857>a <00:46:47.012>different, <00:46:47.168>uh, <00:46:47.323>window <00:46:47.479>of <00:46:47.635>deployment,

820
00:46:50.735 --> 00:46:53.115
<00:46:50.735>but <00:46:50.910>now <00:46:51.085>it's <00:46:51.260>in, <00:46:51.435>in <00:46:51.610>a <00:46:51.785>much <00:46:51.960>better <00:46:52.135>state.

821
00:46:54.495 --> 00:46:57.015
<00:46:54.495>Um, <00:46:55.194>yes, <00:46:55.895>you,

822
00:46:57.115 --> 00:47:00.335
<00:46:57.115>you <00:46:57.348>can <00:46:57.581>use <00:46:57.814>Monorepo <00:46:58.048>with <00:46:58.281>several <00:46:58.515>apps.

823
00:47:00.795 --> 00:47:05.495
<00:47:00.795>So <00:47:00.970>in <00:47:01.145>our <00:47:01.320>case, <00:47:01.495>uh, <00:47:01.670>there <00:47:01.845>is <00:47:02.020>one <00:47:02.195>repo

824
00:47:05.495 --> 00:47:06.975
<00:47:05.495>that <00:47:05.761>has <00:47:06.027>more <00:47:06.294>than <00:47:06.560>10 <00:47:06.827>apps.

825
00:47:07.475 --> 00:47:08.815
<00:47:07.475>We <00:47:07.877>don't <00:47:08.279>use <00:47:08.681>monorepo,

826
00:47:09.195 --> 00:47:11.935
<00:47:09.195>but <00:47:09.311>it <00:47:09.428>is <00:47:09.545>possible <00:47:09.661>we <00:47:09.778>have <00:47:09.895>one <00:47:10.011>repo <00:47:10.128>with <00:47:10.245>more <00:47:10.361>than <00:47:10.478>10 <00:47:10.595>apps.

827
00:47:12.515 --> 00:47:17.415
<00:47:12.515>And <00:47:12.631>that's <00:47:12.748>because <00:47:12.865>it, <00:47:12.981>see <00:47:13.098>we, <00:47:13.214>we <00:47:13.331>are <00:47:13.448>using <00:47:13.565>this <00:47:13.681>app <00:47:13.798>of <00:47:13.915>app.

828
00:47:17.715 --> 00:47:19.055
<00:47:17.715>So <00:47:17.956>I'm <00:47:18.197>just <00:47:18.438>going <00:47:18.679>to <00:47:18.921>explain

829
00:47:19.055 --> 00:47:21.055
<00:47:19.055>what <00:47:19.254>would've <00:47:19.455>happened <00:47:19.654>if <00:47:19.855>I <00:47:20.055>would <00:47:20.254>install <00:47:20.455>the,

830
00:47:21.525 --> 00:47:22.615
<00:47:21.525>this <00:47:22.506>application.

831
00:47:24.215 --> 00:47:28.815
<00:47:24.215>So <00:47:24.370>it <00:47:24.526>would've <00:47:24.681>went <00:47:24.837>to <00:47:24.992>this <00:47:25.148>to <00:47:25.303>Argo <00:47:25.459>CD <00:47:25.615>deploys

832
00:47:29.185 --> 00:47:31.245
<00:47:29.185>to <00:47:29.418>main <00:47:29.651>branch, <00:47:29.884>to <00:47:30.118>the <00:47:30.351>apps <00:47:30.585>folder.

833
00:47:31.385 --> 00:47:36.305
<00:47:31.385>And <00:47:31.540>in <00:47:31.696>the <00:47:31.851>apps <00:47:32.007>folder <00:47:32.162>it <00:47:32.318>would <00:47:32.473>find <00:47:32.629>not <00:47:32.785>actually,

834
00:47:36.305 --> 00:47:37.425
<00:47:36.305>let's <00:47:36.641>say <00:47:36.977>helm <00:47:37.313>charts

835
00:47:37.425 --> 00:47:40.665
<00:47:37.425>or <00:47:37.658>manifest <00:47:37.891>it <00:47:38.125>finds <00:47:38.358>again <00:47:38.591>some <00:47:38.825>applications.

836
00:47:41.885 --> 00:47:44.785
<00:47:41.885>And <00:47:42.165>those <00:47:42.445>applications <00:47:42.725>can <00:47:43.005>even <00:47:43.285>go

837
00:47:44.785 --> 00:47:47.625
<00:47:44.785>to <00:47:44.984>other <00:47:45.185>applications <00:47:45.384>in <00:47:45.585>from <00:47:45.785>the <00:47:45.984>same <00:47:46.185>repo.

838
00:47:48.005 --> 00:47:50.825
<00:47:48.005>So <00:47:48.285>I <00:47:48.565>can <00:47:48.845>have <00:47:49.125>here <00:47:49.405>apps

839
00:47:51.365 --> 00:47:55.665
<00:47:51.365>and <00:47:51.481>then <00:47:51.598>I <00:47:51.714>can <00:47:51.831>have <00:47:51.948>here, <00:47:52.064>I <00:47:52.181>know <00:47:52.298>a <00:47:52.415>second <00:47:52.531>level <00:47:52.648>of <00:47:52.765>apps.

840
00:47:56.005 --> 00:47:59.185
<00:47:56.005>And <00:47:56.160>anyway, <00:47:56.316>on <00:47:56.471>the <00:47:56.627>last <00:47:56.782>level <00:47:56.938>are <00:47:57.093>the <00:47:57.249>actual <00:47:57.405>microservices

841
00:47:59.295 --> 00:48:02.385
<00:47:59.295>that <00:47:59.495>you <00:47:59.695>want <00:47:59.895>to <00:48:00.095>deploy <00:48:00.295>in, <00:48:00.495>in <00:48:00.695>production.

842
00:48:03.445 --> 00:48:06.385
<00:48:03.445>But <00:48:03.620>you, <00:48:03.795>you <00:48:03.970>can <00:48:04.145>have <00:48:04.320>different <00:48:04.495>levels <00:48:04.670>in <00:48:04.845>the

843
00:48:06.385 --> 00:48:07.935
<00:48:06.385>folders, <00:48:07.779>right?

844
00:48:07.995 --> 00:48:11.175
<00:48:07.995>So <00:48:08.170>I <00:48:08.345>can <00:48:08.520>have <00:48:08.694>here <00:48:08.870>Argo <00:48:09.045>CD <00:48:09.220>deploys <00:48:09.395>ops

845
00:48:11.635 --> 00:48:15.615
<00:48:11.635>and <00:48:11.762>I <00:48:11.889>can, <00:48:12.016>I <00:48:12.144>think <00:48:12.271>I <00:48:12.398>have <00:48:12.525>Argo <00:48:12.653>cdd, <00:48:12.780>uh, <00:48:12.907>not <00:48:13.035>this,

846
00:48:15.845 --> 00:48:20.215
<00:48:15.845>this <00:48:16.020>is <00:48:16.194>kind, <00:48:16.370>so <00:48:16.544>Argo <00:48:16.720>CD <00:48:16.895>deploys <00:48:17.069>was <00:48:17.245>here.

847
00:48:20.875 --> 00:48:21.895
<00:48:20.875>So <00:48:21.181>you <00:48:21.487>can <00:48:21.793>see

848
00:48:23.635 --> 00:48:28.485
<00:48:23.635>that <00:48:23.790>in <00:48:23.946>ops <00:48:24.101>I <00:48:24.257>had <00:48:24.412>another <00:48:24.568>app <00:48:24.723>which <00:48:24.879>is <00:48:25.035>pointing

849
00:48:28.485 --> 00:48:32.455
<00:48:28.485>to <00:48:28.685>engine <00:48:28.885>X <00:48:29.085>folder <00:48:29.285>still <00:48:29.485>from <00:48:29.685>this <00:48:29.885>repo.

850
00:48:33.395 --> 00:48:34.615
<00:48:33.395>So <00:48:33.944>using <00:48:34.493>folders,

851
00:48:35.785 --> 00:48:38.565
<00:48:35.785>you <00:48:36.018>can <00:48:36.251>create <00:48:36.484>a <00:48:36.718>tree <00:48:36.951>of <00:48:37.185>applications.

852
00:48:38.585 --> 00:48:40.965
<00:48:38.585>So <00:48:38.740>you, <00:48:38.896>you <00:48:39.051>can <00:48:39.207>use <00:48:39.362>a <00:48:39.518>monorepo <00:48:39.673>without <00:48:39.829>any <00:48:39.985>problem,

853
00:48:41.705 --> 00:48:44.485
<00:48:41.705>but <00:48:41.904>I <00:48:42.105>don't <00:48:42.305>know, <00:48:42.505>you <00:48:42.705>probably <00:48:42.904>at <00:48:43.105>some

854
00:48:44.485 --> 00:48:45.605
<00:48:44.485>point <00:48:44.821>run <00:48:45.157>into <00:48:45.493>problems.

855
00:48:45.965 --> 00:48:47.885
<00:48:45.965>I <00:48:46.165>cannot <00:48:46.365>say <00:48:46.565>'cause <00:48:46.765>we <00:48:46.965>don't <00:48:47.165>use <00:48:47.365>them.

856
00:48:49.065 --> 00:48:52.515
<00:48:49.065>Um, <00:48:49.265>probably <00:48:49.465>performance <00:48:49.665>'cause <00:48:49.865>it's <00:48:50.065>only <00:48:50.265>one <00:48:50.465>repo.

857
00:48:52.535 --> 00:48:56.955
<00:48:52.535>So <00:48:52.642>Argo <00:48:52.750>cd, <00:48:52.858>like <00:48:52.965>if <00:48:53.073>it <00:48:53.181>sees <00:48:53.288>a <00:48:53.396>commit <00:48:53.504>on <00:48:53.611>that <00:48:53.719>repo, <00:48:53.827>it'll <00:48:53.935>see

858
00:48:56.955 --> 00:48:59.555
<00:48:56.955>that <00:48:57.110>man <00:48:57.266>I <00:48:57.421>have <00:48:57.577>a <00:48:57.732>lot <00:48:57.888>of <00:48:58.043>applications <00:48:58.199>to <00:48:58.355>sync.

859
00:48:59.955 --> 00:49:03.035
<00:48:59.955>'cause <00:49:00.110>it <00:49:00.266>does <00:49:00.421>know <00:49:00.577>exactly <00:49:00.732>what <00:49:00.888>to <00:49:01.043>think, <00:49:01.199>what <00:49:01.355>changed.

860
00:49:03.535 --> 00:49:05.835
<00:49:03.535>So <00:49:03.710>it <00:49:03.884>needs <00:49:04.060>to <00:49:04.234>calculate <00:49:04.410>a <00:49:04.585>lot <00:49:04.759>of <00:49:04.935>applications.

861
00:49:06.455 --> 00:49:09.735
<00:49:06.455>So <00:49:06.654>those <00:49:06.855>repo <00:49:07.055>servers, <00:49:07.255>you <00:49:07.455>can <00:49:07.654>scale <00:49:07.855>them.

862
00:49:09.735 --> 00:49:13.535
<00:49:09.735>So <00:49:09.851>I <00:49:09.968>know <00:49:10.085>you <00:49:10.201>can <00:49:10.318>put <00:49:10.435>2020, <00:49:10.551>let's <00:49:10.668>say <00:49:10.785>it's <00:49:10.901>not <00:49:11.018>a <00:49:11.135>problem

863
00:49:13.795 --> 00:49:15.875
<00:49:13.795>or <00:49:14.261>50, <00:49:14.728>why <00:49:15.195>not?

864
00:49:16.145 --> 00:49:19.885
<00:49:16.145>Nothing <00:49:16.345>will <00:49:16.545>stop <00:49:16.745>you. <00:49:16.945>So <00:49:17.145>hope <00:49:17.345>I <00:49:17.545>answered.

865
00:49:29.275 --> 00:49:32.015
<00:49:29.275>So <00:49:29.475>I, <00:49:29.675>I <00:49:29.875>don't <00:49:30.075>see <00:49:30.275>any <00:49:30.475>other <00:49:30.675>questions.

866
00:49:33.895 --> 00:49:38.355
<00:49:33.895>And <00:49:34.050>we <00:49:34.206>can <00:49:34.361>look <00:49:34.517>back <00:49:34.672>here. <00:49:34.828>It <00:49:34.983>still <00:49:35.139>didn't <00:49:35.295>start.

867
00:49:38.355 --> 00:49:41.535
<00:49:38.355>Unfortunately <00:49:38.821>it's <00:49:39.288>a <00:49:39.755>problem

868
00:49:41.595 --> 00:49:45.495
<00:49:41.595>of <00:49:41.750>resources <00:49:41.906>even <00:49:42.061>though <00:49:42.217>I <00:49:42.372>assigned <00:49:42.528>a <00:49:42.683>lot <00:49:42.839>of <00:49:42.995>CPU

869
00:49:45.515 --> 00:49:49.895
<00:49:45.515>and <00:49:45.795>for <00:49:46.075>my <00:49:46.355>um, <00:49:46.634>Docker <00:49:46.915>vm,

870
00:49:49.915 --> 00:49:53.745
<00:49:49.915>but <00:49:50.265>okay, <00:49:50.615>it <00:49:50.965>didn't <00:49:51.315>work.

871
00:49:57.375 --> 00:49:58.345
<00:49:57.375>It's <00:49:57.666>still <00:49:57.957>in <00:49:58.247>progress.