-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Hi there,
I'd like to suggest an extension of how vizarr is distributed - based on our experience in hosting it within the Fractal platform (cc @zonia3000 @jluethi)
How we deploy vizarr
One component of the Fractal platform is fractal-data, which is a disk-to-http data-streaming service. The HTTP URLs for ome-zarr images are then used as sources for a hosted vizarr instance.
Rather than setting up the development tools (e.g. pnpm) on the virtual machines where we run the Fractal services, we produce pre-built files for vizarr and host them on GitHub (currently within the fractal-data releases, see e.g. https://github.com/fractal-analytics-platform/fractal-data/releases/tag/v0.5.0) and we fetch them on the machine where vizarr is hosted.
That is, we fetch them e.g. as
FRACTAL_DATA_VERSION="0.5.0"
wget -qO- "https://github.com/fractal-analytics-platform/fractal-data/releases/download/v${FRACTAL_DATA_VERSION}/fractal-vizarr-v${FRACTAL_DATA_VERSION}.tar.gz" | tar -xz
and then we directly expose them over HTTP.
This approach has served us well in the past, especially since we sometimes relied on our own vizarr fork. As of the latest release, we started creating builds based on the BioNGFF/vizarr fork - and we'd like to continue doing so in the future. For the moment we are pulling a specific commit (88b6f81), but in the future we would rather rely on BioNGFF/vizarr released versions.
The main drawback here is that we are coupling vizarr-version updates with our streaming-tool releases. That is, we would have to create a new release of our streaming tool every time we want to use a more recent BioNGFF/vizarr version.
Possible way forward
Question: Would it possible/relevant for the BioNGFF team to generate and distribute the vizarr build outputs?
As far as I can tell, there are two options:
- Running
pnpm run buildin the GitHub action that creates a GitHub release and then attaching the output file as a release artifacts (which is what we are currently doing - see https://github.com/fractal-analytics-platform/fractal-data/blob/e25f19609603ce916ea9a68420349d98c5afd9da/.github/workflows/github_release.yaml#L29-L55). I am confident this should be doable, and we can provide support if needed. - Maybe you could publish the build artifact on https://www.npmjs.com/package/@biongff/vizarr? Right now it seems to only host the source code, and to be honest I cannot say whether it's common/doable to host the built files over there.