
| Line: 1 to 1 | ||||||||
|---|---|---|---|---|---|---|---|---|
Group Exercises | ||||||||
| Line: 7 to 7 | ||||||||
General SetupCourse virtual machine | ||||||||
| Changed: | ||||||||
| < < | To run the SL5 vmware virtual machine SL5 (32 bits) containing the ACS release 2014.2 you'll need the latest version of vmware player (linux, windows), vmware workstation (linux, windows) or vmware fusion (mac). To reduce the load on the host machine, each machine is running at user level 3 (no graphical environment). Your host environment should be able to open xterms and ssh connections to the guest OS. | |||||||
| > > | To run the CentOS5 vmware virtual machine (32 bits) containing the ACS release 2014.2 you'll need the latest version of vmware player (linux, windows), vmware workstation (linux, windows) or vmware fusion (mac). To reduce the load on the host machine, you may choose to run at user level 3 (no graphical environment). In this case, your host environment should be able to open an xterm and ssh connections to the guest OS. | |||||||
NetworkThe network is configured to assign a fix IP address to each virtual machine. The course virtual machines will be named: | ||||||||
| Changed: | ||||||||
| < < |
Group Exercise #1: Setting up an ACS work environmentBefore you begin | |||||||
| > > |
# virtual machine <vm_name> 192.168.1.XXX <vm_name>.<domain> <vm_name>
An | |||||||
| ||||||||
| Added: | ||||||||
| > > |
Group Exercise #1: Setting up an ACS work environment | |||||||
Setting up the ACS environment variables | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > | [user@host]$ cp -r /alma/ACS-2014.2/ACSSW/config/.acs $HOME | |||||||
| ||||||||
| Added: | ||||||||
| > > | # setting up INTROOT | |||||||
| export INTROOT=$HOME/introot | ||||||||
| Added: | ||||||||
| > > | # sourcing ACS environment variables | |||||||
source .acs/.bash_profile.acs
| ||||||||
| Changed: | ||||||||
| < < | your_user> | |||||||
| > > | user> | |||||||
Starting/stopping ACS services and running the tools
| ||||||||
| Line: 52 to 74 | ||||||||
| ||||||||
| Changed: | ||||||||
| < < | acsStartContainer - | |||||||
| > > | user> acsStartContainer - | |||||||
| ||||||||
| Line: 62 to 84 | ||||||||
Group Exercise #2: Setting up a development environmentSetting up the your local git repositoryGit is used as the source code repository. Below are the elementary working commands. A more complete git commands reference is here. Before you start you need to define your git user name (same as development account) and e-mail: | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > | user> git-config --global user.name $USER user> git-config --global user.email $USER@$HOSTNAME | |||||||
Cloning the course repositoryThere is a central git repository at the integration server. You will clone that repository and do all further changes locally by issuing: | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > | user> git clone ssh://its@integration/opt/git/los.git | |||||||
Pulling from the repository to get updatesYou can get the latests updates for your local repository from the central server: | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > | user> git pull | |||||||
Pushing to the repository to provide your updatesTo commit changes to your local repository: | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > | user> git add [changed files] user> git commit | |||||||
| And to push your changes back to the central server (and make them available to others): | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > | user> git push | |||||||
| If you are not sure you can always check the change status: | ||||||||
| Changed: | ||||||||
| < < |
Setting up your INTROOT area | |||||||
| > > | Setting up your | |||||||
| Create an integration root area for your personal account (INTROOT) by issuing the following commands: | ||||||||
| Changed: | ||||||||
| < < | rm –rf $INTROOT getTemplateForDirectory INTROOT $INTROOT | |||||||
| > > | user> rm –rf $INTROOT user> getTemplateForDirectory INTROOT $INTROOT | |||||||
Setting up your your first software moduleDocumentation about tools and module structure: ALMA Software Development Tools and Integration Procedures. Create a new module using the getTemplate command: | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > | user> cd ~/<local repository> user> getTemplateand navigate the text menu as follows:
| |||||||
| Inside the ICD module, run make all to compile the IDL files and generate all stubs and skeletons. | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > | user> cd ~/<local repository>/ICD/src; user> make clean all install user> cd ˜/<local repository>/<module name>/src user> make clean all install | |||||||
| Changed: | ||||||||
| < < | Group Exercise #N: LOS Development | |||||||
| > > | Group Exercise #3: LOS Development | |||||||
AssignmentsThe suggested development teams composition is:
| ||||||||
| Line: 102 to 144 | ||||||||
First Day | ||||||||
| Added: | ||||||||
| > > | The task for the first day is to implement a first empty component in C++ that compiles correctly, setting up the CDB and run a manual test using a python simple client. Progress will be measured as follows:
| |||||||
Second Day | ||||||||
| Changed: | ||||||||
| < < | Group Exercise #N: LOS IntegrationThird Day | |||||||
| > > | The tasks for the second day are to create a first automatic component test, a first system commit, running the test against an integrated test CDB, and incrementally adding functionality. The progress will be measured periodically against the following metric:
Group Exercise #4: LOS IntegrationThe task for the third day is to add errors and logging to each component and fully integrate the system to run an automatic observation. Progress metrics are:
TODO list
| |||||||
Conclusions and Final Remarks-- | ||||||||