- The last piece of the puzzle we're going to talk about
is having a good, stable release pipeline for your project.
A release pipeline is a sibling topic
of continuous integration.
While CI is concerned
with integrating and validating your codebase,
a release pipeline is focused on
effectively managing your different project configurations.
Both of these
should be a part of your testing and release arsenal.
Let's look at a practical example.
Say we have a mobile application
that's going to have a development, production
and release configuration.
If the project is using a backend to push and pull data,
these configurations would be mirrored in the API.
So that means that we'd be in charge
of three different sets of variables and settings
when committing work, running tests, and deploying.
You can address this in two ways.
One, you can just do this manually,
and do any configuration switching or settings in your code
at build time.
In an agile environment, this might be several times a day
and is not going to help you out.
The second option
is automating this process as much as possible.
Third-party tools can help you do this.
And depending on what platform and IDE you're working with,
there might already be tools in place
to help make your agile life easier.
The main takeaway here is,
don't spend sprint development time
dealing with these kinds of logistics
when you can just as easily set up a release pipeline
at the beginning of your project.