WEBVTT

1
00:00.000 --> 00:04.560
Now, taking into account our software development life cycle and the planning

2
00:04.560 --> 00:09.890
that goes into being able to integrate new tools, features, and all sorts of

3
00:09.890 --> 00:14.000
other great bells and whistles to our cloud environment.

4
00:14.000 --> 00:18.420
We have to be able to do this in a continuous integration and continuous

5
00:18.420 --> 00:21.000
development type model.

6
00:21.000 --> 00:27.150
Where simply put continuous integration means that we're constantly improving

7
00:27.150 --> 00:33.240
by including new features and code that we develop or even new physical systems
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

7
00:27.150 --> 00:33.240
by including new features and code that we develop or even new physical systems

8
00:33.240 --> 00:36.000
into our actual cloud environment.

9
00:36.000 --> 00:41.300
And constant development allows us to be able to go through and continuously

10
00:41.300 --> 00:46.700
develop new features or even security patches for some vulnerabilities that we

11
00:46.700 --> 00:48.000
find later on.

12
00:48.000 --> 00:52.480
Now, we're going to take a look at these individually to make sure that we don

13
00:52.480 --> 00:57.050
't confuse the two and then circle back around to put both of them together with

14
00:57.050 --> 00:58.000
an example.

15
00:58.000 --> 01:02.020
The first one I want to go through is continuous integration. Now, CI is the
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

15
00:58.000 --> 01:02.020
The first one I want to go through is continuous integration. Now, CI is the

16
01:02.020 --> 01:07.120
practice of constantly integrating code and changes into the existing program

17
01:07.120 --> 01:11.000
or programs throughout its entire life cycle.

18
01:11.000 --> 01:14.640
That's why I wanted to touch back on the software development life cycle that

19
01:14.640 --> 01:16.000
we did just a moment ago.

20
01:16.000 --> 01:20.020
And with regard to our software development life cycle that we just learned

21
01:20.020 --> 01:24.230
about the process of continuous integration follows the exact same path as new

22
01:24.230 --> 01:26.000
software being developed.

23
01:26.000 --> 01:30.790
The tricky part here is the constant integration of our finished product making
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

23
01:26.000 --> 01:30.790
The tricky part here is the constant integration of our finished product making

24
01:30.790 --> 01:33.000
its way into the live environment.

25
01:33.000 --> 01:38.410
Our testing phase of SDLC is where CI or continuous integration can be

26
01:38.410 --> 01:42.570
validated the most, but requires us to maintain a sandbox environment that is

27
01:42.570 --> 01:45.000
closed to as our real world production network is part of the process.

28
01:45.000 --> 01:52.000
And this may not always be the case depending on our organization and budget.

29
01:52.000 --> 01:56.030
So if we're restricted by budget or just the fact that we're a smaller

30
01:56.030 --> 02:02.060
organization, we're going to try to test as best as we can and try to
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

30
01:56.030 --> 02:02.060
organization, we're going to try to test as best as we can and try to

31
02:02.060 --> 02:05.000
incorporate a second set of eyes to validate.

32
02:05.000 --> 02:10.180
This is more the review portion of the software development life cycle. And

33
02:10.180 --> 02:14.100
that way we can make sure that we're sure of what's being developed before it's

34
02:14.100 --> 02:16.000
being launched.

35
02:16.000 --> 02:21.080
And continuous integration isn't all about coding and introducing new programs

36
02:21.080 --> 02:25.670
to the mix. It could also be that we're trying to expand our actual

37
02:25.670 --> 02:27.000
infrastructure.

38
02:27.000 --> 02:31.810
And we're going to be adding more memory to a server. We could be adding new
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

38
02:27.000 --> 02:31.810
And we're going to be adding more memory to a server. We could be adding new

39
02:31.810 --> 02:36.000
servers altogether to account for load balancing as an example.

40
02:36.000 --> 02:44.000
And while CI uses the SDLC model overall development follows a pipeline flow.

41
02:44.000 --> 02:50.540
And this would be source build test and deploy source would be actually this

42
02:50.540 --> 02:53.600
source code that we're using to be able to develop whatever it is we're trying

43
02:53.600 --> 02:54.000
to develop.

44
02:54.000 --> 02:58.050
This could be hardware as well. So source could be a piece of physical hardware

45
02:58.050 --> 03:01.920
build would be more of our compiler. So if we're doing this in a C++
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

45
02:58.050 --> 03:01.920
build would be more of our compiler. So if we're doing this in a C++

46
03:01.920 --> 03:07.950
environment, we would actually have to compile it out or go into an actual do

47
03:07.950 --> 03:08.000
cker.

48
03:08.000 --> 03:13.120
And we're going to test basically go through and see if there's anything that

49
03:13.120 --> 03:18.470
we need to double check fix patch for security purposes and then we'll go into

50
03:18.470 --> 03:23.000
deploying or staging everything up for our actual production environment.

51
03:23.000 --> 03:26.970
All this kind of falls into that constant development that we've been going

52
03:26.970 --> 03:31.740
over and speaking of development, that's where we're going to pass off to our
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

52
03:26.970 --> 03:31.740
over and speaking of development, that's where we're going to pass off to our

53
03:31.740 --> 03:34.000
next portion of this section.

54
03:34.000 --> 03:38.510
Because like I said, I wanted to separate CI and CD a little bit before we

55
03:38.510 --> 03:41.000
bring them back together to hold hands.
