ImageMagick Orchestrator
Posted: 2019-08-12T14:01:41-07:00
I have begun seeking a means to manage or configure ImageMagick though some kind of orchestrator rather than through bash and was wondering does such a thing exist already?
My current use case is the for a repository for emotes:
https://gitlab.com/Elypia/elypia-emotes
I am using CI and ImageMagick installed in a Docker container to execute some scripts to build export all emotes, in all colors and sizes, and some montages.
However, - the build is still awfully slow and the biggest room for improvement I feel is being smarter about what to export. Why export every emote every time if I can cache the old ones, and store a hash of each emote so if the hash has changed we know we need to re-export it, else skip? Seems like simple enough logic but it adds more code and further "complication" to what's meant to be a simple emotes repository. (If the configuration changes then invalidate the cache)
The solution? A separate smaller project which acts as a ImageMagick orchestrator, it does everything required of it and manages the work including caching and such itself but and just required a simple configuration file such as YAML to tell it the state it should be, and to produce optimized commands to execute to achieve what is required.
An orchestrator would make it simpler to reuse anything here by just specifying colors/hue-shifts, sizes, and globs, amongst other variables.
Does something for this exist already? Should I bother making it? Is it possible it such a tool may exist built in at some point instead?
My current use case is the for a repository for emotes:
https://gitlab.com/Elypia/elypia-emotes
I am using CI and ImageMagick installed in a Docker container to execute some scripts to build export all emotes, in all colors and sizes, and some montages.
However, - the build is still awfully slow and the biggest room for improvement I feel is being smarter about what to export. Why export every emote every time if I can cache the old ones, and store a hash of each emote so if the hash has changed we know we need to re-export it, else skip? Seems like simple enough logic but it adds more code and further "complication" to what's meant to be a simple emotes repository. (If the configuration changes then invalidate the cache)
The solution? A separate smaller project which acts as a ImageMagick orchestrator, it does everything required of it and manages the work including caching and such itself but and just required a simple configuration file such as YAML to tell it the state it should be, and to produce optimized commands to execute to achieve what is required.
An orchestrator would make it simpler to reuse anything here by just specifying colors/hue-shifts, sizes, and globs, amongst other variables.
Does something for this exist already? Should I bother making it? Is it possible it such a tool may exist built in at some point instead?