Beginning AngularJS

(WallPaper) #1

Chapter 10 ■ Deployment ConsiDerations


This approach works well enough, but problems start to occur when projects become larger and more involved.

■ Tip the File transfer protocol (Ftp) is a standard network protocol used to transfer computer files from one host to


another host over a tCp-based network, such as the internet.


One added complexity in such cases is that multiple developers must be able to access and edit the source code,
and they must be aware of what other developers and stakeholders are up to. Certain question must be asked and
answered. How do we manage the source code? How do we test that it all works once changes have been made to it?
How do we move successfully tested code into the production environment without stumbling upon configuration
errors and other mistakes? How do we communicate the status of the project to other developers and stakeholders?
Such questions, and many others like them, are often addressed through a process known as Continuous
Integration. This topic could, and does, fill entire books, so we will only scratch the surface here.
Continuous Integration, often referred to as CI, is essentially any system which allows a group of developers and
other stakeholders to frequently and easily update, build, test and deploy changes to software. More often than not,
much of this process is automated. A typical CI process would address at least the following objectives.



  1. Maintain a code repository

  2. Automate the build

  3. Test the code

  4. Report the status of the system

  5. Automate deployment


As a developer you are very likely to encounter the need to maintain a code repository (objective 1) as this will
require you to use a version control system of some form. For example, your team might have chosen to use GIT,
a popular distributed version control system, to pull code files from a remote source code repository so that you
can carry out tasks such as adding new features or fixing bugs. At some point later you would commit your changes
and then push your work back to the version control system. Tools such as GIT help you to identify and resolve any
conflicts that your changes (or the changes of other developers) may have introduced. They also make sure that your
changes can be seen and accessed by other developers on your team.


Figure 10-2. Simple FTP approach to moving files to a web server

Free download pdf