as lines of business and projects increase, the use of the rsync command to publish code has not met the requirements. So want to get a set of code publishing platform.
"Demand Collection"
1. A version was developed years ago and was only communicated with the front-end PHP team. There is a discrepancy between the need to discover backend requirements and the front end. So this version has been wasted.
2. After the Spring Festival, with the line of business leader re-communication needs, ready to re-development.
"Development Architecture"
1. Front-end design:
Pages use bootstrap, CSS, and jquery.
2. Database design:
The database uses MySQL.
3. Back-end development language:
More familiar with Django, so use Django development.
"Functional Design"
1. System settings:
System settings mainly include: Group management, user management, project management and so on. User Login and Rights Management, managed by invoking the SSO API.
2. Code Management:
Code management mainly includes pull code, PUSH code, check code, post code, and ROLLBACK.
Pull code:
Code,pull to the online code repository through the platform, compressing and generating the MD5 checksum.
Push code:
First select publish items, online servers, version information, and so on. The directory is then specified through the platform push to the online server.
Check code:
Verify that the online server code MD5 value is the same as the Code Warehouse code MD5 value. If the same goes to the next step.
Post code:
If validation passes, the line server code path is soft-chained to the project root and then the reload service.
ROLLBACK:
The online server retains 5 copies of the code, which can be rolled back to the specified version via rollback when there is a problem with the newly-launched code.
3. Project Management:
The main management of each project, group and online server correspondence and access rights.
"Code Flowchart"
650) this.width=650; "src=" http://s3.51cto.com/wyfs02/M00/5B/17/wKioL1T_lSSgygDiAACbBQmV9pY336.jpg "title=" fb.png "alt=" Wkiol1t_lssgygdiaacbbqmv9py336.jpg "/>
"Page Show"
650) this.width=650; "src=" Http://s3.51cto.com/wyfs02/M00/5B/17/wKioL1T_ltmzy8KiAAMIBZ3m2Nc768.jpg "title=" Cc2.png "alt=" Wkiol1t_ltmzy8kiaamibz3m2nc768.jpg "/>
650) this.width=650; "src=" Http://s3.51cto.com/wyfs02/M01/5B/17/wKioL1T_l6yC9KW8AAO0R8xkj5g726.jpg "title=" Cc3.png "alt=" Wkiol1t_l6yc9kw8aao0r8xkj5g726.jpg "/>
Summary
now the V1 version is on-line and will be revised later according to the new requirements.
This article is from the "David" blog, so be sure to keep this source http://davidbj.blog.51cto.com/4159484/1619199
Operations Automation-code publishing platform