Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do you organize your RPGLE subversion repository on IBM i?

How do you organize your RPGLE subversion repository on IBM i ?

I'm currently working in a travel business company that has a vast amount (about 13k) of RPGLE - sources for their in-house application and finally they want to use version control and adopt a more modern style of coding (the whole WDSC - RDi stuff).

So my all-the-time-project is to sanify and modernize the whole coding process bit by bit.

The open source subversion for OS/400 works like a charm with just 2 minor issues during install.

I have a pretty good image in my head how it should work, but i think it breaks with some traditions, so i want your opinion.

/subversion/repositories/{name of the in-house-application}
   /{project_a}
       /trunk
           /doc
           /sql
           /{a source file that is named like the project. i.e. project_a }
               /myRPGsrc.rpgle
               /myCLLEsrc.clle
               /myDDSsrc.dspf
               /myDDSsrc.pf
               /compile.clle
            .iseries_project_properties
            .project
       /branch
       /tag
   /{project_b}
   /global_stuff
   /nightly_build

So the main difference would be not having different source files like QRPGLESRC, QCLSRC, QDDSSRC and the like and instead one sourcefile that contains all project sources and can be checked out as an WDSC-project. The project-sourcefile could also easily be named "src" like it is common on other repos, but in case some developers would want to check out multiple projects into /QSYS.LIB/SOMELIB.LIB/ they wouldn't have to worry about namespaces themselves.

So what do you think? is it hybris? do you see problems? Do you have already some experience? please share! :)

like image 959
squarefox Avatar asked Nov 28 '08 09:11

squarefox


1 Answers

How are the source and objects currently organized? Would you want to set up Subversion to work with the current library structure instead of creating this new IFS directory structure?

I'd suggest using object types (pgm, file, cmd, pnlgrp, sql, etc.) for file extensions instead of source file types (rpgle, clle, sql, etc.). You could have xyz.rpgle and xyz.clle sources in conflict as they both compile to XYZ *PGM.

like image 134
Paul Morgan Avatar answered Nov 15 '22 04:11

Paul Morgan