#Dagger ๐Ÿค WASM

1 messages ยท Page 1 of 1 (latest)

crisp nova
#

Let's explore and achieve how we can run dagger in WASM & also dagger pipelines in WASM without docker

final chasm
molten sandal
#

yeah definitely not

#

you can run wasm in dagger, but not the other way around

crisp nova
crisp nova
final chasm
#

Basically, Dagger uses BuildKit and BuildKit does not run in WASM. That would be a big ask of the BuildKit team (different company) without any real benefit. It does not make a lot of sense to compile Go to WASM because Go runs much better natively, as a binary. BuildKit also relies on having a container runtime available for the things it needs to do, see the readme linked above. Dagger would need upstream support in BuildKit.

More generally, WASM is not replacing containers. Rather, it is another runtime that people can target when it makes sense. Is there a specific use-case you are thinking about when asking about WASM support?

molten sandal
#

Right. Even if some parts of Dagger were adapted to run on WASM (and some parts could), it would not be useful, because Dagger needs direct access to a Linux/OCI system. So even if 90% of dagger were running in the wasm sandbox, you would need the remaining 10% outside the sandbox, to control the underlying Linux system. Making it pointless to sandbox the other 90%.

#

However there are many other ways Dagger can be useful in the WASM community. All of them rely on daggerizing the WASM tooling (easy) or the WASM runtime itself (moderate).

final chasm
#

I can see Dagger treating WASM as another "container" runtime or target architecture for containers. That sounds feasible or already possible?

molten sandal
#

sure, definitely possible. Probably today with some duct tape; later with first-class API support

crisp nova
#

Alright got it guys. Thanks for clarity

crisp nova
#

So in near future dagger will add first class support to target wasm build process? right?

final chasm
#

You should already be able to produce WASM binaries in Dagger. This would be almost the same as containerizing your WASM pipeline with a Dockerfile.