In
open source ABAP, we manage the ABAP code in
git, creating branches for each change. Each branch/
pull request is reviewed and testing before being merged.
As part of the pull request,
static analysis is automatically performed, and
unit tests are automatically run.
However, if the reviewer wants to try the application, the code must be manually pulled into a system. This is manual work, what if this could be avoided?
Preview deployments
With preview deployments, each commit to a pull request is automatically deployed so it can be run by the developer and/or reviewer, making it easy to test, and easy to figure out when/if something broke.
The blog post
Writing multitarget ABAP applications introduced a open source single page application(SPA), with backend state, which is a good example for testing preview deployments.
Using webpack, the transpiled ABAP code, along with a SQLite database, is transformed to static pages, which can be served via GitHub pages.
Note that the ABAP application code stays the same, just where it is run and how it receives the REST calls is changed. Instead of fetch() to a backend server, the fetch is monkey patched to redirect the request to JavaScript code running in the browser.
Check it out
All relevant code can be found on github, and an example in
https://github.com/open-abap/open-table-maintenance/pull/42
Click the link and it will open the application, be patient, loading still has to be optimized
🤠
Preview deployments does not replace testing in real systems, but is an easy way to get quick feedback on developments.
Questions/comments welcome