-: In the last section, we ran through the entire flow
of making a change to our application
and then redeploying it.
We merged the polar request on GitHub.
That triggered a change on Travis CI
which redeployed our application,
and that automatically updated Elastic Beanstalk.
So now if I go back to my URL right here,
I'll see I was changed on the feature branch.
And that's pretty much it.
So that's a pretty rock solid development workflow
that you can use in your own team of engineers
or even by yourself if you want to have
your own kind of personal review process.
Now, one quick thing I wanna mention here,
and this is a diagram that we had looked at a while ago,
we did not really have to use Docker
for any of the stuff that we just went through.
The entire process of hooking up Travis CI
of running our tests, of deploying with Elastic Beanstalk,
Docker was just not required.
And we could have done all this
by making use of Shells scripts and whatnot
and we could have just completely ignored Docker.
The difference here, and the reason that we used Docker,
was that it significantly made setting up all this stuff
a lot easier.
If you really think about it,
once we got our Docker file put together,
so this right here, once we got that put together,
the only kind of piece of complexity that there was
during the deployment process was the .travis.yml file.
And the vast majority of all this stuff
was just understanding that,
hey, we need to first build the image
and then execute this command right here to run the tests.
That was pretty much it.
Just about everything that we just could put together
could be reused
with any other type of valid Docker container.
So we could probably sub in a rails application
with all the same infrastructure,
and the only difference would be
probably how we run the test right here.
That would basically be it.
So that's a benefit to using Docker.
You set up this pipeline one time
and then you can make small changes over time,
but you probably don't have to re-architect
your entire deployment pipeline
if you decide to change some of your infrastructure
or your actual project composition
at some point in the future.
So I hope this was pretty enjoyable,
but we're not quite done yet.
So let's take a quick break right here
and continue in the next section.