Overview Version History Q & A Rating & Review
OBI README
Object builder for i (OBI) is an automatic build tool.
Notice:
Currently only the Beta version is available.
Final release will be available soon.
Features
Individual source lists with source descriptions
Check for changes
It checks all sources which have changed since last compilie.
The hash value of the source will be used to check if it has changed.
Check for dependencies
All objects which depend on the changed source will also be compiled (in correct order)
E.g. if a table or view has changed, all objects which use them will be compiled too
Compile in correct order
Tables before programs etc. based on the dependency list
See which objects has been compiled and their details
Command
joblog
spool file
error output
Requirements
The concept
The idea is to work with your sources locally on your PC.
Only for compile process, sources will be synchronised to the IFS.
Because you work locally, you need to sync your changes with other developers.
--> This is where git came in.
Following steps you need to do
Get your Sources to IFS (to your project folder)
Create a git repository
Add the project folder to this git repository
Open the OBI extension in vscode
You will see the welcome screen
Initialize the project with OBI
A new folder .obi
will be created including some initial config files.
Take a look into the config (server, user, ifs locations, ...)
User specific settings (like IFS remote directory, SSH password, ...) can be defined/overwritten in the User configuration
area.
Check if it works with Show changes
You should see a list of sources, ready to compile.
Reset the compiled object list
From now, the Show changes
action only shows changed sources.
On your IBM i clone OBI from GitHub somewhere in the IFS.
git clone https://github.com/andreas-prouza/obi /ifs/path/obi
(Remember the path. You need to set it in your project config)
When you are motivated, you can create a dependency list.
With a dependency OBI creates the correct build order and includes all dependend objects. (E.g. for SRVPGM, files, ...)
(See [dependency list](https://github.com/andreas-prouza/ibm-i-build-obi/blob/main/docs/pages/configuration.md#etcdependencytoml))
Sync all changes to your git repo
If no OBI config could be found, you will see the welcome screen:
Happy ever after!