Archives manipulation

Various methods are available to import and export items:

Archiving:

http://localhost/rudder/api/archives/archive/groups
Export node groups and node groups categories.
http://localhost/rudder/api/archives/archive/directives
Export policy library (categories, active techniques, directives).
http://localhost/rudder/api/archives/archive/rules
Export rules
http://localhost/rudder/api/archives/archive/full
Export everything

Listing:

http://localhost/rudder/api/archives/list/groups
List available archives datetime for groups (the datetime is in the format awaited for restoration).
http://localhost/rudder/api/archives/list/directives
List available archives datetime for policy library (the datetime is in the format awaited for restoration).
http://localhost/rudder/api/archives/list/rules
List available archives datetime for configuration rules (the datetime is in the format awaited for restoration).
http://localhost/rudder/api/archives/list/full
List available archives datetime for full archives (the datetime is in the format awaited for restoration).

Restoring a given archive:

http://localhost/rudder/api/archives/restore/groups/datetime/[archiveId]
Restore given groups archive.
http://localhost/rudder/api/archives/restore/directives/datetime/[archiveId]
Restore given directives archive.
http://localhost/rudder/api/archives/restore/rules/datetime/[archiveId]
Restore given rules archive.
http://localhost/rudder/api/archives/restore/full/datetime/[archiveId]
Restore everything.

Restoring the latest available archive (from a previously archived action, and so from a Git tag):

http://localhost/rudder/api/archives/restore/groups/latestArchive
http://localhost/rudder/api/archives/restore/directives/latestArchive
http://localhost/rudder/api/archives/restore/rules/latestArchive
http://localhost/rudder/api/archives/restore/full/latestArchive

Restoring the latest available commit (use Git HEAD):

http://localhost/rudder/api/archives/restore/groups/latestCommit
http://localhost/rudder/api/archives/restore/directives/latestCommit
http://localhost/rudder/api/archives/restore/rules/latestCommit
http://localhost/rudder/api/archives/restore/full/latestCommit

Downloading a ZIP archive

The REST API allows to download a ZIP archive of groups, directives and rules (as XML files) for a given Git commit ID (the commit HASH).

It is not designed to query for available Git commit ID, so you will need to get it directly from a Git tool (for example with Git log) or from the list API.

Note that that API allows to download ANY Git commit ID as a ZIP archive, not only the one corresponding to Rudder archives.

Note 2: you should rename the resulting file with a ".zip" extension as most zip utilities won’t work correctly on a file not having it.

http://localhost/rudder/api/archives/zip/groups/[GitCommitId]
Download groups for the given Commit ID as a ZIP archive.
http://localhost/rudder/api/archives/zip/directives/[GitCommitId]
Download directives for the given Commit ID as a ZIP archive.
http://localhost/rudder/api/archives/zip/rules/[archiveId]
Download rules for the given Commit ID as a ZIP archive.
http://localhost/rudder/api/archives/zip/full/[archiveId]
Download groups, directives and rules for the given Commit ID as a ZIP archive.