Difference between revisions of "Continuous Integration"
(→Project goal) |
|||
(4 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
+ | {{Admon/obsolete}} | ||
+ | |||
<big><big> Continuous Integration Project for NexJ Express Code</big></big> | <big><big> Continuous Integration Project for NexJ Express Code</big></big> | ||
{{NexJ_Express Index}} | {{NexJ_Express Index}} | ||
Line 5: | Line 7: | ||
==Project goal== | ==Project goal== | ||
Currently, NexJ has a Mercurial Repository (Internal) in which, the NexJ Express Server (Core) code is maintained with all its histories. NexJ is planning to share a Core Repository with the Open Source Community by creating a Repository (External) that will be kept in sync with the Internal Repository.<br/> | Currently, NexJ has a Mercurial Repository (Internal) in which, the NexJ Express Server (Core) code is maintained with all its histories. NexJ is planning to share a Core Repository with the Open Source Community by creating a Repository (External) that will be kept in sync with the Internal Repository.<br/> | ||
− | |||
− | == Current Status | + | === Contributors === |
+ | * [[Minooz/Projects | Minoo Ziaei]] | ||
+ | * [[User:Gbatumbya|Grace Batumbya]] | ||
+ | |||
+ | |||
+ | == Current Status== | ||
+ | <big><big>Project Completed</big></big> | ||
<br/> | <br/> | ||
+ | |||
==Project Phases== | ==Project Phases== | ||
Line 14: | Line 22: | ||
* Get requirements from NexJ | * Get requirements from NexJ | ||
* Incorporate requirements from NexJ into Design of algorithm for syncing repositories | * Incorporate requirements from NexJ into Design of algorithm for syncing repositories | ||
− | * Provide the proposal for review and approved - [[Continuous_Integration/proposal | final version of proposal]] | + | * Provide the proposal for review and approved - [[Continuous_Integration/proposal | final version of proposal]] , [https://docs.google.com/document/d/17Fuj_9A7sBkzlbP0t0bOY3Qs1iiAhKAvfNTuUMnHUcg/edit?hl=en_US Google Doc ] |
===Phase 2: Creating Similar Environment (Done) === | ===Phase 2: Creating Similar Environment (Done) === |
Latest revision as of 19:29, 26 January 2014
Continuous Integration Project for NexJ Express Code
Project goal
Currently, NexJ has a Mercurial Repository (Internal) in which, the NexJ Express Server (Core) code is maintained with all its histories. NexJ is planning to share a Core Repository with the Open Source Community by creating a Repository (External) that will be kept in sync with the Internal Repository.
Contributors
Current Status
Project Completed
Project Phases
Phase 1: Design Proposal (Done)
- Get requirements from NexJ
- Incorporate requirements from NexJ into Design of algorithm for syncing repositories
- Provide the proposal for review and approved - final version of proposal , Google Doc
Phase 2: Creating Similar Environment (Done)
- Internal Repository
- Creating a Mercurial repository and adding some changes to it to grow the history of it.
- Controller
- This will be containing temporary repositories as the result of scripting.
- External Repository
- Creating another Mercurial repository using 'hg' commands from the latest 'change-set' of Internal Repository.
Phase 3: Scripting (Done)
- Ant
- Doesn't support some of non-regular Mercurial commands that we need to play with change-sets
- Bash
- Supports everything we need for the project. script
Phase 4: Running the script on CI system (Done)
- Buildbot
- Hudson
- Simple to setup and configure.
- Runs different types of scripts: bash, ant, batch
- Can be scheduled to run automatically or manually
- Test Project
Phase 5: Code Review (Done)
- Execute the script on one of Nexj computers.
Phase 6: Make Changes as per Code Review (Done)
- Define paths based on Nexj's requirements
- Modify the script to be able to retrieve change-sets of a remote repository
- Create specific error message for each problem during running the script
Phase 7: Code Review (Done)
- Send code for review.
- NexJ Express Repository in use