CLICLItypeA command you run, rather than a dependency you import.See every one →What this type is →independently maintainedindependently maintainedoriginPublished by one person or a small company outside SAP. Says nothing about quality; the readings say that.See every one →

abapGit Transport Generator

Writes the two files an SAP transport consists of, the cofile and the data file, from an abapGit repository, so a pipeline can deliver ABAP code through STMS without exporting a request from a development system.

Generates the cofile K<number>.<SID> and the data file R<number>.<SID> of an SAP transport from the source and XML of an abapGit repository, so the request can be added to the import queue in STMS and nothing has to be exported from a development system. For each object type it starts from a template: a real transport of one minimal object of that type, which the project does not ship and which you capture yourself from a system you are authorised to use. 46 abapGit object types are generated, among them PROG, CLAS, INTF, FUGR, DDIC types, MSAG, TRAN and SICF. ENHO and package interfaces are not supported, dynpros and GUI status are not generated, and texts are transported in the master language only. It is run as a Python command or as the published GitHub Action, reads no credentials and talks to no SAP system.

Facts

Last pushLicenceGPL-2.0

Where it sits

Lives in
Provides
Change promotionABAPChange promotioncapabilityMoving a change through the environments of a landscape, from development through test to production, and knowing which change has reached which environment. A [CI/CD pipeline](capability:ci-cd) builds and tests on each source change, [deployment](capability:deployment) puts a build onto its runtime, and getting source into git is [source control](capability:abap-source-control).
Requires
abapGitabapGitartifactThe generator is pointed at an abapGit repository and reads the source and XML it holds; merging every object into one request replaces the template's content with the repository's.

Who is behind it

F-WerF-WerPersonMaintains this
In the atlas: maintains 2, contributes to 1
@F-Wer
maintainer

Before choosing this

Conditions

PracticalFunctional boundary

The maintainer marks version 0.1.0 experimental and states that importing a transport changes the target system; generated transports were import-tested on one test system, SAP_BASIS 8.16, and no other release is tested yet. Template row layouts are release-specific, so a template captured on a different release can produce a transport that does not import, and the per-type handling was developed against specific template shapes.

What it declares

Every artifact

Type
CLI
Origin
Independently maintained
Runtime
build time

As a CLI

Distributed through
does not say

Connections2

By its type: a CLI is run from a terminalcallsdocumentedrequiresWhere abapGit Transport Generator runsYour terminal, actorYour terminalabapGit Transport Generator, moduleabapGit TransportGeneratorabapGit, moduleabapGit
SAPnot SAP's, or the project's ownstated in the documentdocumented only

README

quoted from F-Wer/abapgit-transport-generator under GPL-2.0, read
F-Wer/abapgit-transport-generator/README.mdOn GitHub

abapGit Transport Generator

Generate SAP transport files — the cofile K<number>.<SID> and the data file R<number>.<SID> — from an abapGit repository, so a CI pipeline can deliver ABAP code through STMS without exporting anything from a development system.

Experimental (0.1.0). Importing a transport changes the target system. Read the disclaimer and import into a non-production system first.

How it works

For each object type the generator starts from a template: a transport of one minimal object of that type, exported from a system you are authorized to use. It renames the template's object, request and texts, replaces its content with your repository's source and XML, and merges every object into one request. The result is checked structurally before it is written.

This project ships no templates. You capture your own once; see docs/templates.md.

Quick start

python -m venv .venv
.venv/bin/python -m pip install --require-hashes -r requirements.txt

# validate your template directory
python abapgit_to_transport.py --check-templates --templates /path/to/templates

# generate one transport with all objects of an abapGit repository
python abapgit_to_transport.py /path/to/abapgit-repo \
  --templates /path/to/templates \
  --request DEVK900001 --package ZDEMO_PACKAGE --author DEVELOPER
OptionMeaning
--requestRequest number <SID><letter><6 digits>; required
--sidDefaults to the request's first three characters
--packageTarget package; without it objects move into the template's package
--authorUser written into the generated metadata
--templatesTemplate directory (or ABAPGIT_TRANSPORT_TEMPLATES)
--objectGenerate a single object instead of all
--listList the detected objects and stop

Invalid values stop with exit code 2 before any file is written.

GitHub Action

- uses: actions/checkout@v4
- uses: actions/checkout@v4          # your private template repository
  with:
    repository: your-org/sap-transport-templates
    path: templates
    token: ${{ secrets.TEMPLATES_TOKEN }}
- uses: F-Wer/abapgit-transport-generator@v0.1.0
  with:
    request: DEVK900001
    package: ZDEMO_PACKAGE
    templates: templates

Inputs reach the action's scripts only through environment variables. The generated files are verified before the action reports success.

Importing

  1. Copy K… to /usr/sap/trans/cofiles/ and R… to /usr/sap/trans/data/ in binary mode.
  2. STMS → Extras → Other Requests → Add → your request, then import it.
  3. If the objects already exist, import with Overwrite Originals.

Supported object types

46 abapGit object types are generated, among them PROG, CLAS, INTF, FUGR, DDIC types (DOMA, DTEL, TABL, TTYP, VIEW, ENQU, SHLP), MSAG, TRAN, SICF, XSLT, Adobe forms (SFPF/SFPI), packages (DEVC) and many table-based types. Import-tested on one test system (SAP_BASIS 8.16) only; no other release is tested yet. ENHO and package interfaces are not supported. Per-type status: docs/support.md.

Known limits: dynpros and GUI status are not generated; table foreign keys, secondary indexes and search-help assignments are not shipped; texts are transported in the master language only.

Security and data

The tool reads no credentials and talks to no SAP system. Generated files contain your source code and your templates' metadata: treat them like the repository they come from. Report vulnerabilities as described in SECURITY.md.

Contributing

See CONTRIBUTING.md. This project follows the Contributor Covenant.

License

GPL-2.0-only — see LICENSE. Not affiliated with SAP SE or the abapGit project; see the disclaimer.

GPL-2.0, read

History

Latest

v0.1.0

Other 8

Notes

First public version.

  • Generate one transport (cofile and data file) for all objects of an abapGit repository, or for a single object, for 46 object types.
  • Templates are user-supplied: a template directory with templates.json, chosen by --templates or ABAPGIT_TRANSPORT_TEMPLATES, and validated by --check-templates (files, request, object, required tables).
  • Request, SID, package and author are validated before any file is written; the SID defaults to the request's first three characters.
  • Generation stops unless the request lists exactly the generated objects.
  • Every generated data file passes a structural verifier (container, checksums, record round trip, request shape, template leftovers).
  • Composite GitHub Action with environment-only input handling.
  • Repository XML is parsed with defusedxml.
  • Dependencies are locked with hashes.
Change promotion
  1. HammerNative macOS code editor for ABAP and CDSfrom ABAP
  2. CPIOpsCPI artifacts committed to Git as source files, with a quality checkfrom BTP/BAIP
  3. SAP Cloud Transport ManagementMoves MTA archives and content between SAP BTP accountsfrom BTP/BAIP
  4. Cloud ALM Link for ADTEclipse plugin linking ABAP transports to SAP Cloud ALM featuresfrom ABAP
  5. EPOD ADT MCP ServerMCP server for ABAP on the ADT session, in Eclipse or standalonefrom ABAP
  6. furkancosgun/Transport-Management-ToolUploads, downloads and imports ABAP transport requests as filesfrom ABAP
  7. furkancosgun/ZWARPAdds a program's dependent objects to a transport requestfrom ABAP
  8. abapToCSAP GUI transaction for one-click transports of copiesfrom ABAP
  9. ABAP remote filesystemVS Code extension editing ABAP systems over ADT as a filesystemfrom ABAP
  10. ActiveControl Transport form creatorVS Code extension automating ActiveControl transport formsfrom ABAP
  11. ZCTS_BROWSERReport creating transports of copies without a new versionfrom ABAP
  12. git-env-branchesShows which feature branches reached which environment branchfrom General
  13. qttTool mapping BEx queries to the transport requests carrying themfrom ABAP
  14. ABAP Development Tools for VS CodeSAP's ABAP tools in VS Code, over RFC to on-premise or HTTP to cloudfrom ABAP
  15. abap-adt-cliCLI that pulls and pushes ABAP packages as local files over ADTfrom ABAP
  16. KlystronMCP server in ABAP inside the application server, with agent skillsfrom ABAP
  17. ZTCTA transport checking tool that analyses ABAP transports at object level before they move to production, determining a safe order and flagging risks.from ABAP

Details

Sources3
GitHub APIdiscovered herechecked
github.com/F-Wer/abapgit-transport-generatortree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
runtimesbuild-time
discovered viaGitHub API
first seen in the atlas
ecosystem and domainabap, operations-and-runtime
History in the atlas1
  1. First seen.
For your agent
Ref
artifact:f-wer-abapgit-transport-generator
JSON
/artifacts/f-wer-abapgit-transport-generator.json
MCP
Connecting an agent