This software configuration management plan will define the practices to be used for all the deliverables of the Provisioner project helping project team to work in parallel activities without compromising Provisioner's quality. Those specific deliverables are:
This project uses Subversion to manage its source code, sample configuration files and web-site contents. Instructions on how to connect to Subversion can be found here . General information regarding Subversion tool can be found here .
Role | Name |
Configuration Manager | Gonzalo Espert |
Configuration Manager Backup | Open position |
Is the forum by which changes are approved or rejected. It manage, control and track the changes in source code. The purpose is to manage reported issues into maintenance releases or a set of releases. They ensure that issues are prioritized and addressed in the correct version(s). They address any requested change or defect to meet users' community needs. Configuration Control Board meetings will be performed on demand as per project´s needs.
Name | Role | Backup |
Gonzalo Espert | Chair | Gordon Pearson |
Gordon Pearson | Developer |
Maintaining a continually integrated system is our goal from a configuration management perspective. To accomplish this, Provisioner project uses a central code-line that acts as a basis for sub-branches and their resultant merges. We call this central code-line "Main-line". Doing main-line development means that all ongoing development activities end up on a single code-line at some time. Thus, the main-line is a work in progress and will not always be release quality.
To prevent chaos on the main-line all developers are encouraged to set up their private work-spaces where they can do private system builds, unit tests, and smoke tests.
Each time an official release is performed a new tag will be created. This tag will serve as a snapshot for the state of the source code at that particular moment in time. The naming convention for those tags will be: Provisioner-mayor.minor.revision , for example the tag for version 1.0.18 will be Provisioner-1.0.18 . Source code repository will look like this: identitymngr/tags/Provisioner-1.0.18/ . To be able to do bug fixing for a particular release, a new branch will be created for each official release. The naming convention will be the same as the one for tags. Source code repository will look like this: identitymngr/branches/Provisioner-1.0.18/ . Before each release, the configuration manager merges all the fixings to the main-line so all improvements make it to the release.
Avoid getting out of date by doing fine grained tasks, checking in your changes after each one, and also updating your work-space before starting a new task. You are encouraged to establish a discipline of creating a brand new work-space periodically to avoid problems that stray files might cause, and preventing the “works for me” syndrome.
To do your coding follow this procedure: