nutshimit / mashin

Mashin is an extensible rust-powered Infrastructure as Code (IaC) platform with a Javascript runtime, simplifying cloud resource management through a seamless combination of custom providers and expressive scripting.
https://mashin.land
MIT License
20 stars 2 forks source link

Providers registry #29

Closed lemarier closed 1 year ago

lemarier commented 1 year ago

Is there an existing issue?

Motivation

Simple provider sharing

As we can consume remote provider / script we need to think how we’ll create a simple registry

Request

We can start by using github as main CDN (we can add a caching layer on top later)

We can have something like:

import * as provider from “https://mashin.run/std/mysql@0.1.0”

This could automatically resolve https://github.com/nutshimit/mashin_provider_mysql/releases/download/v0.1.0/mod.ts

Solution

Have a github app users can install on any repo, that will setup a webhook when there is a new release.

The webhook catch the release, make sure all requirements are match (valid .dll and .so), extract the public url for all assets

Then we can create the process we want based on our requirements at this stage

Are you willing to help with this request?

Yes!

lemarier commented 1 year ago

The proof of concept has been published here;

https://github.com/nutshimit/mashin_registry

The issue is moving to https://github.com/nutshimit/mashin_registry/issues/1