armbian-build/lib/functions/cli
Ricardo Pardini 622ef30f3c adapt obtain_complete_artifact() and friends to new reversioned scheme; introduce UPLOAD_TO_OCI_ONLY=yes for deploying to remote cache
> tl-dr: only deploys to remote OCI if `UPLOAD_TO_OCI_ONLY=yes`; stop leaving junk behind in local cache in many situations

- simplify CLI artifact building parameters and behaviour
    - `ARTIFACT_USE_CACHE` is now deprecated, and its behaviour is the default
    - for _any_ uploading to OCI to occur, `UPLOAD_TO_OCI_ONLY=yes` **must** be present; in this case, reversioning is not done
    - `FORCE_ARTIFACTS_DOWNLOAD` is completely removed (use `download-artifact` instead)
    - `cli_obtain_complete_artifact()`'s and `build_artifact_for_image()`'s reversioning is now moved to common `obtain_complete_artifact()`
- `standard_artifact_reversion_for_deployment()`:
    - check for hashed deb existence only if reversioned does not exist
    - touch the reversioned file if it already exists; helps to clean up junk later
    - delete hashed version after reversioning, so we don't leave trash behind
        - unless in `download-artifact` mode, which `touch`es the hashed version
        - we can later delete old files from packages-hashed to keep junk under control
- refactor `obtain_complete_artifact()`
    - extract function `artifact_dump_json_info()` since obtain is large enough already
    - when deploying to remote, always ignore all local and remote caches
    - introduce `artifact_is_available_in_revisioned_local_cache()`
        - if not deploying to remote, and revisioned cache exists, use it directly
        - if deploying to remote, reversioned is not checked and not created
    - if deploying to remote, force `DEB_COMPRESS=xz`
    - if deploying to remote, completely remove the local cache base dir after upload is done (no more junk leftover)
2023-08-12 09:58:32 +02:00
..
cli-artifact.sh adapt obtain_complete_artifact() and friends to new reversioned scheme; introduce UPLOAD_TO_OCI_ONLY=yes for deploying to remote cache 2023-08-12 09:58:32 +02:00
cli-build.sh interactive: better Repeat Build Options [by @mhoffrog, squashed, rebased] 2023-04-21 14:26:33 +02:00
cli-configdump.sh configdump: alias config-dump, config-dump-json and new config-dump-no-json (bash declare format) 2023-05-04 16:08:11 +02:00
cli-distccd.sh
cli-docker.sh git/docker: bsp-cli: fix BUILD_REPOSITORY_URL and BUILD_REPOSITORY_COMMIT under Docker; fixes AR-1750 2023-05-24 19:20:57 +02:00
cli-flash.sh cli: flash: introduce flash CLI command; introduce hook post_build_image_write 2023-04-15 22:43:06 +02:00
cli-jsoninfo.sh pipeline: force compositor to include REVISION= just like it already did for BETA= 2023-08-12 09:58:32 +02:00
cli-oras.sh
cli-patch.sh popular demand: bring back KERNEL_CONFIGURE=yes *during image build* 2023-05-09 10:05:09 +02:00
cli-requirements.sh bat-cat: introduce tooling support for bat (colorized/smart cat), including DEBIAN/xxx syntaxes; cached in Docker image 2023-03-31 09:12:44 +02:00
cli-undecided.sh
commands.sh pipeline: inventory all board vars; add not-eos-with-video; introduce TARGETS_FILTER_INCLUDE 2023-07-26 15:15:02 +02:00
entrypoint.sh Add compatibility for non-FHS 3.0 systems 2023-07-19 23:16:22 +02:00
utils-cli.sh docker/sudo: better control/info over CLI relaunch args; introduce CLI relaunch envs 2023-04-21 14:26:33 +02:00