Skip to content

Latest commit

 

History

History
51 lines (36 loc) · 2.1 KB

cmd_unarchive.rst

File metadata and controls

51 lines (36 loc) · 2.1 KB

ksconf unarchive

..  argparse::
    :module: ksconf.cli
    :func: build_cli_parser
    :path: unarchive
    :nodefault:

    --dest : @after
        Often this will be a git repository working tree where Splunk apps are stored.

    --app-name : @after
        Expanding archives that contain multiple (ITSI) or nested apps (NIX, ES) is not supported.

    --allow-local : @after
        Shipping local files is a Splunk app packaging violation so local files are blocked
        to prevent customizations from being overridden.

    --git-sanity-check : @replace
        By default, ``git status`` is run on the destination folder to detect working tree or
        index modifications before the unarchive process starts, but this is configurable.
        Sanity check choices go from least restrictive to most thorough:

        -   Use ``off`` to prevent any 'git status' safety checks.
        -   Use ``changed`` to abort only upon local modifications to files tracked by git.
        -   Use ``untracked`` (the default) to look for changed and untracked files before
            considering the tree clean.
        -   Use ``ignored`` to enable the most intense safety check which will abort if local
            changes, untracked, or ignored files are found.

    --git-mode : @after
        If a git commit is incorrect, simply roll it back with ``git reset`` or fix it with a
        ``git commit --amend`` before the changes are pushed anywhere else.  There's no native
        ``--dry-run`` or undo for unarchive mode because that's why you're using git in the first
        place, right? (Plus, such features would require significant overhead and unit testing.)

    SPL
        Supports tarballs (.tar.gz, .spl), and less-common zip files (.zip)


Note

What if I'm not using version control?

Sanity checks and commit modes are automatically disabled if the app is being installed into a directory that is not contained within a git working tree. Ksconf confirms that git is present and functional before running sanity checks.