name: "Cache APT Packages" description: "Install APT based packages and cache them for future runs." author: awalsh128 branding: icon: "hard-drive" color: "green" inputs: packages: description: "Space delimited list of packages to install. Version can be specified optionally using APT command syntax of = (e.g. xdot=1.2-2)." required: true default: "" version: description: "User defined version value of cache to load. Each version will have its own cache. Note, all characters except spaces are allowed." required: false default: "" execute_install_scripts: description: > Execute Debian package pre and post install script upon restore. See https://github.com/awalsh128/cache-apt-pkgs-action/tree/main-2/README.md caveats for more information. required: false default: "false" empty_packages_behavior: description: > Desired behavior when the provided package list is empty. Available Options: error: Fail the action with an error message warn: Output a warning without failing the action ignore: Proceed silently without warnings or errors required: false default: "error" debug: description: "Enable debugging when there are issues with action. Also uploads the action logs and manifests as a workflow artifact, which is otherwise done only when the action fails. Minor performance penalty." required: false default: "false" outputs: cache-hit: description: "A boolean value to indicate a cache was found for the packages requested." package-version-list: description: > The main requested packages and versions that are installed. Represented as a sorted comma delimited list with equals delimit on the package version (i.e. =,=,...). Packages installed for a non-native architecture include it (i.e. :=). all-package-version-list: description: > All the pulled in packages and versions, including dependencies, that are installed. Represented as a sorted comma delimited list with equals delimit on the package version (i.e. =,=,...). Packages installed for a non-native architecture include it (i.e. :=). runs: using: "node24" main: "dist/action/index.js"