Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This is to ensure, the libraries, executables and other files installed to the INTROOT are available for compilation and runtime. After this point close all your consoles and start with new ones in order for them to be properly configured.

Fill the INTROOT with the interface data

Go to the repository directory:

Code Block
languagebash
> cd ~/Repos/awv/ICD/src
> make all install

Check you have some key files in your INTROOT:

Code Block
languagebash
collapsetrue
> ls -1 $INTROOT/lib/lib*Stubs.so
/home/almamgr/introot/lib/libCameraStubs.so
/home/almamgr/introot/lib/libConsoleStubs.so
/home/almamgr/introot/lib/libDataBaseStubs.so
/home/almamgr/introot/lib/libInstrumentStubs.so
/home/almamgr/introot/lib/libSchedulerStubs.so
/home/almamgr/introot/lib/libStorageStubs.so
/home/almamgr/introot/lib/libSYSTEMErrStubs.so
/home/almamgr/introot/lib/libTelescopeControlStubs.so
/home/almamgr/introot/lib/libTelescopeStubs.so
/home/almamgr/introot/lib/libTypesStubs.so

> ls -1 $INTROOT/lib/python/site-packages/*_idl.py
/home/almamgr/introot/lib/python/site-packages/Camera_idl.py
/home/almamgr/introot/lib/python/site-packages/Console_idl.py
/home/almamgr/introot/lib/python/site-packages/DataBase_idl.py
/home/almamgr/introot/lib/python/site-packages/Instrument_idl.py
/home/almamgr/introot/lib/python/site-packages/Scheduler_idl.py
/home/almamgr/introot/lib/python/site-packages/Storage_idl.py
/home/almamgr/introot/lib/python/site-packages/SYSTEMErr_idl.py
/home/almamgr/introot/lib/python/site-packages/TelescopeControl_idl.py
/home/almamgr/introot/lib/python/site-packages/Telescope_idl.py
/home/almamgr/introot/lib/python/site-packages/Types_idl.py

> ls -1 $INTROOT/lib/*.jar
/home/almamgr/introot/lib/Camera.jar
/home/almamgr/introot/lib/Console.jar
/home/almamgr/introot/lib/DataBase.jar
/home/almamgr/introot/lib/Instrument.jar
/home/almamgr/introot/lib/Scheduler.jar
/home/almamgr/introot/lib/Storage.jar
/home/almamgr/introot/lib/SYSTEMErr.jar
/home/almamgr/introot/lib/TelescopeControl.jar
/home/almamgr/introot/lib/Telescope.jar
/home/almamgr/introot/lib/Types.jar

Prepare your module

Go to the repository and add your module to the directory structure. For instance I will choose the following name for the Telescope implementation in Java:

Code Block
languagebash
> cd ~/Repos/awv
> getTemplateForDirectory MODROOT_WS jTelescope

Check the contents of the directory are correct:

Code Block
languagebash
> ls -1 jTelescope/
bin
ChangeLog
config
doc
idl
include
lib
LOGS
man
object
rtai
src
test

Right now the directory ~/Repos/awv should look something like:

Code Block
> ls -1 ~/Repos/awv/
EXTERNAL
ICD
ITS
jTelescope

To put an example, once it is integrated with other groups' modules, it could see similar to:

Code Block
> ls -1 ~/Repos/awv/
EXTERNAL
ICD
ITS
jTelescope
pyScheduling
cppInstruments
pyConsole
jDatabase
...

Bear in mind that there's some freedom with the name convention and these names are purely referential.

Pushing to Git

The person that was appointed in your group to work for ITS (Integration and Testing System) needs to upload your module (and during the workshop, the updates), to Git. First commit!

Code Block
languagebash
cd ~/Repos/awv
git pull
git add jTelescope/src/Makefile
git commit -m "First commit for jTelescope module"
git push

That way, other people in your team, and the integration team, can see the changes you've been working on during the workshop.