Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
pokrakam
Active Contributor

TL:DR

New application abapDevSysInit available to automate configuration and personalization tasks after installing a new ABAP Trial or Developer Edition instance.
Disclaimer: Work in progress at the time of writing, expect bugs and changes, may break stuff, use at own risk!

Background

I've been using ABAP Trial and Developer editions since SAP made the first NetWeaver ABAP trial system available back in 2000-something. It's great to have a system you can play around with and break. But that also means we need to install a new system every so often for various reasons - something broke, backups too old, new version available.

So here's the problem: How to manage the work I've done that I'd like to keep and move onto my new ABAP instance? Backing up the Virtual Machine is a sensible thing to do, but won't help in all cases. Before abapGit, I used to  export my objects using SAPlink and import into the new system. That comes with its own set of challenges of maintaining versions and keeping track of which version is on which system, especially if you regularly use more than one system (description of my setup at the end). abapGit however made a different mindset possible.

Enter  logo.svg

With abapGit, the Git repository becomes the single source of truth. It is possible to set up an automatic push to GitHub on a daily or even hourly basis. Your systems are now disposable, and it doesn't matter which one you want to use. If a system breaks, or, as happened a few days ago, SAP release a new version, then you can just delete it and fire up or install a new instance, and with Docker it's quicker than ever.

However the most time-consuming part is a bunch of stuff that I end up repeating for every new instance. Downloading and installing GitHub SSL certificates, changing user details, pulling various repos from GitHub, setting up GitHub authentication so I don't need to enter my password every time. And mundane stuff like updating my user profile to use decimal points and adding my email address.

So I built myself something to automate as much as I can and published it on GitHub.

How To Use abapDevSysInit

Coming back to the point of the blog: How to use it?

Installing: 

The repo is at https://github.com/pokrakam/abapDevSysInit, with two options to install:

  • If you already have abapGit installed, you can pull it directly from GitHub. Fortunately the new 2022 system already includes it.
  • If not, everything is in one report for this very reason, so all that's needed is to create a package and a program zdevsysinit and paste the code from GitHub (link in the readme).
Configuring:

Once again, the rationale is to be able to copy/paste, so no tables or anything. Therefore the configuration is just an include that sets a bunch of variables. 

As the configuration is personal to your requirements, it should be stored outside of SAP ready to be pasted into anew system. The include itself should ideally also live in a different package (e.g. $tmp), unless you have your own cloned version on GitHub. 

A config include example which you can copy/paste to get started is also in the repo. Settings should be self-explanatory.

Running:

The program will read the config and also try to determine what is/isn't available and toggle the different activity checkboxes accordingly.
e.g. The "Get abapGit Standalone" checkbox will be checked if it can't find report ZABAPGIT_STANDALONE, else unchecked. (Hint: The new 2022 system has a several months old version, so you can use this option to pull the latest one straight away).

pokrakam_0-1713897422857.png

This means the report can also be run directly in the Eclipse ADT console without needing any input.
Note that copy-pasting will not have the selection texts as in the screenshot above, but the raw parameter names (P_ABAPGT instead of "Get abapGit Standalone"). This is on the todo list. Edit: Done, you should only see P_... parameters the first time it runs, just restart it.

Feel free to raise any issues for bugs or feature requests on GitHub.

Addendum: My Setup

For anyone interested in my setup: I have two main systems: a NetWeaver 7.52 Developer Edition running in VMWare on my MacBook, and an ABAP on HANA Developer Edition on my NAS.
Why two? Convenience. For most Open Source projects 7.52 is quite sufficient and it takes exactly one minute to fire up 7.52 on my five year old MacBook, and it works anywhere, without internet, even on a plane ("in the cloud", I guess).
A4H in contrast takes 10-15 minutes to get going if my NAS is off, and only works at home unless I open up a VPN.

Labels in this area