Export CLI plugin for adt-cli — deploy local serialized files to SAP.
npm install @abapify/adt-exportAdd to your adt.config.ts:
export default {
commands: ['@abapify/adt-export/commands/export'],
};Then use the command:
# Dry run - see what would be exported
adt export --source ./my-objects --format abapgit --dry-run
# Export to SAP with transport
adt export --source ./my-objects --format abapgit --transport DEVK900123
# Export specific object types only
adt export --source ./my-objects --format abapgit --transport DEVK900123 --types CLAS,INTF
# Export without activation (save inactive)
adt export --source ./my-objects --format abapgit --transport DEVK900123 --no-activate| Option | Description | Default |
|---|---|---|
-s, --source <path> |
Source directory containing serialized files | . |
-f, --format <format> |
Format plugin: abapgit, @abapify/adt-plugin-abapgit |
abapgit |
-t, --transport <request> |
Transport request for changes | (required unless dry-run) |
-p, --package <package> |
Target package for new objects | |
--types <types> |
Filter by object types (comma-separated) | |
--dry-run |
Validate without saving to SAP | false |
--no-activate |
Save inactive (skip activation) | false |
This plugin follows the two-generator pattern:
- FileTree (provided by CLI) → yields files to format plugin
- Format Plugin → yields ADK objects ready to deploy
The export command:
- Creates a FileTree from the source directory
- Calls the format plugin's
export(fileTree)generator - For each yielded ADK object:
- Filters by type if specified
- Saves inactive (unless dry run)
- Bulk activates all objects (unless
--no-activate)
Export functionality can modify your SAP system. By making it an explicit opt-in plugin:
- Users must consciously add it to their config
- No accidental deployments from typos
- Clear separation of read-only vs write operations
- Easier to audit which projects have deploy capabilities
- abapgit /
@abapify/adt-plugin-abapgit- abapGit format (.abap+.xmlfiles)
MIT