Welcome to the AbapConf2024 repository!
This project contains the source code showcased during the AbapConf 2024 demo: "Setting Up On-Premise ABAP CI/CD with GitHub Actions".
The demo follows concepts from this article, with updates reflecting the latest component changes.
Setting up a CI/CD pipeline using GitHub Actions for an ABAP On-Premise system.
In this repository there's the source code of an ABAP report that will validate with a regex an italian VAT number.
The unit tests in this package consist in testing the validity of that regex.
-
Code
Developers create features and fix bugs in this stage. -
Build
In ABAP, the build process involves releasing a transport request, which converts ABAP code/objects into binary files. -
Test
- Linter: Checks that the ABAP code is syntactically correct.
- Unit Tests: Ensures features work and no breaking changes are introduced.
- Note: While testing should ideally occur in a dedicated system, for simplicity, tests are run on the development system in this demo.
-
Release
- After successful tests, a release is created with a version and dependencies.
Each release of the software has a version and prerequisites/dependencies: the advantage of creating a release in this stage is assuring that whenever a specific version is installed and the prerequisites are ok, the release will work in a precise way.
-
Deploy (Optional, but shown in the demo)
- Automatic deployment to a target system with the latest features and fixes.
Central Development System (Source) | Customer Development System (Target) | Customer Quality System |
---|---|---|
A4H (via Nuve) | RST | RGD |
-
A4H (Source - Central Development System)
- abapGit
- ADASH
- TRM
-
RST (Target - Customer Development System)
- TRM
-
RGD (Customer Quality System)
- No additional software is required.
Notice how no software/utility has to exist on RGD (customer quality system): the transport from development (RST) to quality (RGD) is always done manually.
You can watch the live demo from the AbapConf 2024 Channel 2 livestream by clicking on this video thumbnail.
You can find the conference presentation here.
- TRM package: https://trmregistry.com/#/package/abapconf2024
Can be installed with TRM
trm install abapconf2024 1.0.0