I am in the planning phase of restructuring our disruption and deployment process, trying to minimize problems with code loss and production. Our current system simply consists of creating a subdomain name on a random server for testing before clicking live, which makes me nuts.
I wanted to hear some suggestions or opinions on my current plan and get feedback or ideas on how to make this system better.
Details:
- Small development team.
- Dev and production exist on the same machine.
- Production versions exist on other servers.
- Approximately 30 projects are connected to the network (websites, web applications, service websites).
- About 30 projects are the application desktop, DLLs, components, bat files, etc.
- Virgin domain names accessible through VPN only.
- Create subdomains for web sites publicly available. exe-setting is available only through VPN.
- Each project will have a dev and intermediate domain and repository. The Dev version is an intermediate line branch.
- Primary repository dev: dev.domain.com (common names are used for example).
- Primary repository: staging.domain.com (common names are used, for example).
Deployment:
Project development options are intermediate trunk branches. Staging maintains a repository for specific projects. Files are then manually copied to the production location or deployment scripts are executed.
. , projectname.projecttype.dev.domain.com(site1.web.dev.domain.com). dev . . , .
Subversion:
* note: . *
: .
dev.domain.com
web.dev.domain.com
site1.web.dev.domain.com
site2.web.dev.domain.com
exe.dev.domain.com
app1.exe.dev.domain.com
app2.exe.dev.domain.com
Staging trunk: . .
, , . , , .
staging.domain.com
web.staging.domain.com
site1.web.staging.domain.com
site2.web.staging.domain.com
exe.staging.domain.com
app1.exe.staging.domain.com
app2.exe.staging.domain.com
? - , ? , ?