I’m excited to announce today a release candidate for the Singularity Registry Server with Google Build. What does this mean? It’s a completely open source version of Singularity Hub that you can deploy on your own, meaning that you:

  1. Add one or more recipes to a GitHub repository
  2. Connect the repository to your Singularity Registry Server
  3. Pushes to your repository use webhooks to trigger builds
  4. The builds happen via Google Cloud Build
  5. Finished containers are served from Google Storage

This happens by way of the Google Build integration provided by the Singularity Registry client, which, by the way, will let you run these same builds from your command line, either providing a local recipe and context, or a GitHub repository to use.

What do you think?

If you are interested in the complete setup documentation (that will be rendered in the web interface when the pull request is merged) see here for the markdown, and this issue for a rendered version. If you don’t care about the details and want to play? You can do that too!

Try it out!

and then leave feedback and report other issues here. The preview will be open until the end of next week for you to test. For those interested, a (poorly done, really terrible, I really should try harder on these things) video is included below.

Additionally, I’m interested in your feedback to the following questions:

Should Singularity Hub be Migrated?

Specifically, should Singularity Hub be migrated to this? Sylabs has never provided me with a secure build branch for Singularity beyond 2.5.1, so I’ve been unable to update the Singularity Hub builders. This means that it’s forever frozen at that version. With Google Cloud build, we could use any (or the latest) version of Singularity without issue. I had hoped that Sylabs would step up to provide the same service to build from a version controlled repository and put Singularity Hub out of business, but I haven’t seen this yet.