Below are explanations for the correct matches for the use of packages and the goals and resources of domain partitioning.
Automated builds and repeatable builds. Automated tests and repeatable tests. Test categories and test frequencies. Continuous inspections. Continuous database integration. This string of tasks in creating an effective CI environment primarily enables one key benefit: releasing working software at any point in time, in any environment. As we said, if you cannot release your software, then it is almost as if it does not exist.
What makes up a typical deployment?
Regardless of platform, technology, or domain, deploying working software principally embodies six high-level steps.
- Label a repository's assets.
- Produce a clean environment, free of assumptions
- Generate and label a build directly from the repository and install it on the target machine.
- Successfully run tests at all levels in a clone of the production environment.
- Create build feedback reports.
- If necessary, you can roll back the release by using labels in your version control repository.
Once your CI environment is established, these sometimes painful steps can become as easy as pushing the Integrate button. You still need to keep track of which of the delivered features were supposed to be
delivered based on customer expectations (bill of materials), but you know that what is in there all works and constitutes working software. The single command should be as simple as typing ant deploy.