SAP, DevOps && Cx
SAP InsideTrack Timisoara, April 2018
Prerequisites, current state and a look into the foreseeable future
@ivictor88 ( <-- look here for slides )
(A Developer Perspective)
How far into your project lifecycle are developers involved?
Endless Documentation that is:
a.k.a. High stress-levels, Weekend work & Emergency Conference Calls
An Alternative: Some Guiding Principles
Everybody is responsible for the delivery
- i.e. RUNNING software, in PRODUCTION
- not some KB of source code saved on a disk
Build quality in
- Automated feature tests
Reliable software delivery
- Practice the delivery
"If it hurts do it more often"
- Automate the recovery
- Delivery Pipelines
Scenario 1: Continuous Delivery on the SAP Cloud Platform
What it looks like
- Develop locally
- Push to SCM
- Every change produces a releasable software version
read that again:
Every change produces a releasable software version
"Trust is built in drops and lost in buckets"
- no silos
- shared responsibility
Test Pyramid in Practice
- unit tests
- integration tests
- contract tests
- e2e tests
The Anatomy of a CD Pipeline
A look into the S/4 world
Constraints in a classical ABAP environment..
- No "offline" (or local) development
- heavyweight systems
- Constraints of the software delivery process (transports)
Unstable dev. environment, ill-suited for automated test execution (except unit test)
rigid software delivery
on-the-fly environment creation not feasible
But newer solutions bring other opportunities
..and momentum is slowly rising..
One potential approach, many open questions...
static code check
unit tests / int. tests
deploy to staging
(or ABAP container?)
ABAP & UI5 resources
end-to-end tests on the UI
- S/4HANA On Premise
- Side-by-Side Extensions on SAP Cloud Platform
SAP Cloud Platform
.. How is Cx still achievable?
CTS+ and MTAs
- OnPrem - Cloud "binding"
- MTAs attached to TRs
- CTS+ handles deployment
SAP Cloud Platform
> ctsattach -a MTA -f archive.mtar -sid DEV
Further reading: open SAP Course
"Cloud Native Operations"
- Internalize the Principles
2. Apply them to your context
3. Find the right tools to enable you
- SAP CI/CD Best Practices / Tutorial:
- openSAP: Cloud-Native Operations
- SAP S/4 SDK Delivery Pipeline:
- Continuous Integration in ABAP:
Applying DevOps principles in SAP environments
By Victor Ionescu