Skip to content

significa/storyblok-assets-cleanup

Repository files navigation

significa's banner

Cleanup Storyblok assets

PyPI version storyblok-assets-cleanup CI/CD

storyblok-assets-cleanup is a CLI utility to find and delete unused assets (images, videos, documents, etc) in the Storyblok CMS.

Features:

  • Find assets without references;
  • Output a summary of assets to be deleted, grouped by folder;
  • Perform a backup of assets before deletion;
  • Delete the actual assets.

Getting started

Requirements

Installation

In order to keep your system tidy and without conflicts in your global and user packages, we recommend pipx:

pipx install storyblok-assets-cleanup

This should do the trick for all systems. Adapt the installation command to fit your and preferred tool.

Use pipx upgrade storyblok-assets-cleanup to update to the latest release. Check the package releases on PyPI.

Usage

usage: storyblok_assets_cleanup.py [-h] [--token TOKEN] --space-id SPACE_ID
                                   [--region {eu,us,ca,au,cn}] [--delete | --no-delete]
                                   [--backup | --no-backup] [--backup-directory BACKUP_DIRECTORY]
                                   [--cache | --no-cache] [--cache-directory CACHE_DIRECTORY]
                                   [--continue-download-on-failure | --no-continue-download-on-failure]
                                   [--blacklisted-path BLACKLISTED_PATH]
                                   [--blacklisted-word BLACKLISTED_WORD]

storyblok-assets-cleanup an utility to delete unused assets.

options:
  -h, --help            show this help message and exit
  --token TOKEN         Storyblok personal access token, alternatively use the env var
                        STORYBLOK_PERSONAL_ACCESS_TOKEN.
  --space-id SPACE_ID   Storyblok space ID, alternatively use the env var STORYBLOK_SPACE_ID.
  --region {eu,us,ca,au,cn}
                        Storyblok region (default: EU)
  --delete, --no-delete
                        If we should delete assets, default to false.
  --backup, --no-backup
                        If we should backup assets (to the directory specified in `--backup-
                        directory`), defaults to true.
  --backup-directory BACKUP_DIRECTORY
                        Backup directory, defaults to ./assets_backup.
  --cache, --no-cache   If we should use cache the assets index. Defaults to True (recommended).
  --cache-directory CACHE_DIRECTORY
                        Cache directory, defaults to ./cache.
  --continue-download-on-failure, --no-continue-download-on-failure
                        If we should continue if the download of an asset fails. Defaults to true.
  --blacklisted-path BLACKLISTED_PATH
                        Filepaths that should be ignored. Optional, defaults to no blacklisted
                        paths.
  --blacklisted-word BLACKLISTED_WORD
                        Will not delete assets which contains the specified words in its filename.
                        Default to none/empty list.

Development

  • Ensure you have make installed.
  • Create a virtual environment: make setup-venv.
  • Install dependencies: make install-deps.

Then you can install (link) the local repository globally with make local-install.

Before pushing changes ensure your code is properly formatted with make lint. Auto format the code with make format.

License

MIT

About

Utility to find and delete unused Storyblok assets.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •