Application Development Blog Posts
Learn and share on deeper, cross technology development topics such as integration and connectivity, automation, cloud extensibility, developing at scale, and security.
cancel
Showing results for 
Search instead for 
Did you mean: 
larshp
Active Contributor

Intro


abaplint is an open-source static analysis tool for ABAP, it runs well with continuous integration tools like GitHub Apps, GitHub Actions, GitLab Pipelines, Bitbucket Pipelines, Azure Pipelines, Travis, and more. But the developer had to create a pull/merge request before the logic was triggered, now it is possible to run the checks earlier in the development process.

Setup


The setup consists of 2 components,

https://github.com/abaplint/abaplint-abap-backend to be installed on the ABAP backend using abapGit, it implements a custom code inspector check that can be added in the default variant.

https://github.com/abaplint/abaplint-cloud-foundry is a component that can be installed on your private cloud foundry environment, SAP offers a free CF trial.



The configuration is done via the normal code inspector UI, but the configuration is global and not per variant. If the package is also configured in abapGit, it is easy to pull the abaplint.json configuration from the remote git repository.



For testing purposes, endpoint http://sci.abaplint.org can be used instead of a private CF environment, use at own risk, unencrypted code will leave your infrastructure, plus the server is slow.

The vscode extension can be used to edit the configuration locally and offers checking of the config file via the latest json schema.



 

Result


When the configuration is done, it's possible to run the code inspector checks using your favorite editor/environment. Note that the code inspector check will hook automagically into ADT or ATC.



 

Outlook


As with all IT, this is work in progress, multithreading is not implemented on the server-side, in a CF set just add more instances.

There is lots of bugs, ABAP is a crazy language, but so far 300+ versions of abaplint have been released, and it will continue to evolve.

 
9 Comments