start removing mentions of wasmcloud

Signed-off-by: Christine Dodrill <me@christine.website>
This commit is contained in:
Cadey Ratio 2020-12-06 10:48:15 -05:00
parent c5fc9336f5
commit 9a9c474c76
2 changed files with 34 additions and 34 deletions

View File

@ -1,5 +1,5 @@
--- ---
title: "Wasmcloud Progress: Hello, World!" title: "Trisiel Progress: Hello, World!"
date: 2019-12-08 date: 2019-12-08
series: olin series: olin
tags: tags:
@ -11,7 +11,7 @@ tags:
I have been working off and on over the years and have finally created the base I have been working off and on over the years and have finally created the base
of a functions as a service backend for [WebAssembly][wasm] code. I'm code-naming this of a functions as a service backend for [WebAssembly][wasm] code. I'm code-naming this
wasmcloud. [Wasmcloud][wasmcloud] is a pre-alpha prototype and is currently very much work in wasmcloud. [Trisiel][wasmcloud] is a pre-alpha prototype and is currently very much work in
progress. However, it's far enough along that I would like to explain what I progress. However, it's far enough along that I would like to explain what I
have been doing for the last few years and what it's all built up to. have been doing for the last few years and what it's all built up to.
@ -100,7 +100,7 @@ I've even written a few blogposts about Olin:
But, this was great for running stuff interactively and via the command line. It But, this was great for running stuff interactively and via the command line. It
left me wanting more. I wanted to have that mythical functions as a service left me wanting more. I wanted to have that mythical functions as a service
backend that I've been dreaming of. So, I created [wasmcloud][wasmcloud]. backend that I've been dreaming of. So, I created [Trisiel][wasmcloud].
## h ## h
@ -144,9 +144,9 @@ world. I even got this program running on bare metal:
[hlang]: https://h.christine.website [hlang]: https://h.christine.website
[vlang]: https://vlang.io [vlang]: https://vlang.io
## Wasmcloud ## Trisiel
[Wasmcloud][wasmcloud] is the culmination of all of this work. The goal of [Trisiel][wasmcloud] is the culmination of all of this work. The goal of
wasmcloud is to create a functions as a service backend for running people's wasmcloud is to create a functions as a service backend for running people's
code in an isolated server-side environment. code in an isolated server-side environment.
@ -181,11 +181,11 @@ Top-level flags (use "wasmcloud flags" for a full list):
This tool lets you do a few basic things: This tool lets you do a few basic things:
- Authenticate with the wasmcloud server - Authenticate with the Trisiel server
- Create handlers from WebAssembly files that meet the CommonWA API as realized - Create handlers from WebAssembly files that meet the CommonWA API as realized
by Olin by Olin
- Get logs for individual handler invocations - Get logs for individual handler invocations
- Run WebAssembly modules locally like they would get run on wasmcloud - Run WebAssembly modules locally like they would get run on Trisiel
Nearly all of the complexity is abstracted away from users as much as possible. Nearly all of the complexity is abstracted away from users as much as possible.

View File

@ -1,29 +1,29 @@
--- ---
title: "Wasmcloud Progress: Rewritten in Rust" title: "Trisiel Progress: Rewritten in Rust"
date: 2020-10-31 date: 2020-10-31
series: olin series: olin
tags: tags:
- wasm - wasm
- wasmcloud - trisiel
- wasmer - wasmer
--- ---
# Wasmcloud Progress: Rewritten in Rust # Trisiel Progress: Rewritten in Rust
It's been a while since I had the [last update for It's been a while since I had the [last update for
Wasmcloud](/blog/wasmcloud-progress-2019-12-08). In that time I have gotten a Trisiel](/blog/wasmcloud-progress-2019-12-08). In that time I have gotten a
lot done. As the title mentions I have completely rewritten Wasmcloud's entire lot done. As the title mentions I have completely rewritten Trisiel's entire
stack in Rust. Part of the reason was for [increased stack in Rust. Part of the reason was for [increased
speed](/blog/pahi-benchmarks-2020-03-26) and the other part was to get better at speed](/blog/pahi-benchmarks-2020-03-26) and the other part was to get better at
Rust. I also wanted to experiment with running Rust in production and this has Rust. I also wanted to experiment with running Rust in production and this has
been an excellent way to do that. been an excellent way to do that.
Wasmcloud is going to have a few major parts: Trisiel is going to have a few major parts:
- The API (likely to be hosted at `api.wasmcloud.app`) - The API (likely to be hosted at `api.trisiel.com`)
- The Executor (likely to be hosted at `run.wasmcloud.lgbt`) - The Executor (likely to be hosted at `run.trisiel.dev`)
- The Panel (likely to be hosted at `panel.wasmcloud.app`) - The Panel (likely to be hosted at `panel.trisiel.com`)
- The command line tool `wasmcloud` - The command line tool `trisiel`
- The Documentation site (likely to be hosted at `docs.wasmcloud.app`) - The Documentation site (likely to be hosted at `docs.trisiel`)
These parts will work together to implement a functions as a service platform. These parts will work together to implement a functions as a service platform.
@ -32,15 +32,15 @@ href="https://github.blog/2013-04-05-new-github-pages-domain-github-io/">this
GitHub Pages vulnerability</a> from 2013. It is on a `.lgbt` domain because LGBT GitHub Pages vulnerability</a> from 2013. It is on a `.lgbt` domain because LGBT
rights are human rights.](conversation://Mara/hacker) rights are human rights.](conversation://Mara/hacker)
I have also set up a (slightly sarcastic) landing page at I have also set up a landing page at
[wasmcloud.app](https://wasmcloud.app) and a twitter account at [trisiel.com](https://trisiel.com) and a twitter account at
[@usewasmcloud](https://twitter.com/usewasmcloud). Right now these are [@trisielcloud](https://twitter.com/trisielcloud). Right now these are
placeholders. I wanted to register the domains before they were taken by anyone placeholders. I wanted to register the domains before they were taken by anyone
else. else.
## Architecture ## Architecture
My previous attempt at Wasmcloud had more of a four tier webapp setup. The My previous attempt at Trisiel had more of a four tier webapp setup. The
overall stack looked something like this: overall stack looked something like this:
- Nginx in front of everything - Nginx in front of everything
@ -60,10 +60,10 @@ difficulties scaling globally due to ingress and egress data costs. This model
is solid and _probably would have worked_ with some compression or other is solid and _probably would have worked_ with some compression or other
improvements like that, but overall I was not happy with it and decided to scrap improvements like that, but overall I was not happy with it and decided to scrap
it while I was porting the executor component to Rust. If you want to read the it while I was porting the executor component to Rust. If you want to read the
source code of this iteration of Wasmcloud, take a look source code of this iteration of Trisiel, take a look
[here](https://tulpa.dev/within/wasmcloud). [here](https://tulpa.dev/within/wasmcloud).
The new architecture of Wasmcloud looks something like this: The new architecture of Trisiel looks something like this:
- Nginx in front of everything - Nginx in front of everything
- An API server that handles login with my gitea instance - An API server that handles login with my gitea instance
@ -74,9 +74,9 @@ The new architecture of Wasmcloud looks something like this:
The main change here is the fact that the executor listens over HTTPS, avoiding The main change here is the fact that the executor listens over HTTPS, avoiding
_a lot_ of the overhead involved in running this on a message queue. It's also _a lot_ of the overhead involved in running this on a message queue. It's also
much simpler to implement and allows me to reuse a vast majority of the much simpler to implement and allows me to reuse a vast majority of the
boilerplate that I developed for the Wasmcloud API server. boilerplate that I developed for the Trisiel API server.
This new version of Wasmcloud is also built on top of This new version of Trisiel is also built on top of
[Wasmer](https://wasmer.io/). Wasmer is a seriously fantastic library for this [Wasmer](https://wasmer.io/). Wasmer is a seriously fantastic library for this
and getting up and running was absolutely trivial, even though I knew very and getting up and running was absolutely trivial, even though I knew very
little Rust when I was writing [pa'i](/blog/pahi-hello-world-2020-02-22). I little Rust when I was writing [pa'i](/blog/pahi-hello-world-2020-02-22). I
@ -91,7 +91,7 @@ very little accounting for what resources and system calls are used, however it
does keep track of execution time. The executor also needs to have the request does keep track of execution time. The executor also needs to have the request
body of the client be wired to the standard in of the underlying module, which body of the client be wired to the standard in of the underlying module, which
will enable me to parse CGI replies from WebAssembly functions. This will allow will enable me to parse CGI replies from WebAssembly functions. This will allow
you to host HTTP endpoints on Wasmcloud using the same code that powers you to host HTTP endpoints on Trisiel using the same code that powers
[this](https://olin.within.website) and [this](https://olin.within.website) and
[this](http://cetacean.club/cgi-bin/olinfetch.wasm). [this](http://cetacean.club/cgi-bin/olinfetch.wasm).
@ -103,15 +103,15 @@ again.
Then comes the documentation. Oh god there will be so much documentation. I will Then comes the documentation. Oh god there will be so much documentation. I will
be _drowning_ in documentation by the end of this. be _drowning_ in documentation by the end of this.
I need to write the panel and command line tool for Wasmcloud. I want to write I need to write the panel and command line tool for Trisiel. I want to write
the panel in [Elm](https://elm-lang.org/) and the command line tool in Rust. the panel in [Elm](https://elm-lang.org/) and the command line tool in Rust.
There is basically zero validation for anything submitted to the Wasmcloud API. There is basically zero validation for anything submitted to the Trisiel API.
I will need to write validation in order to make it safer. I will need to write validation in order to make it safer.
I may also explore enabling support for [WASI](https://wasi.dev/) in the future, I may also explore enabling support for [WASI](https://wasi.dev/) in the future,
but as I have stated before I do not believe that WASI works very well for the but as I have stated before I do not believe that WASI works very well for the
futuristic plan-9 inspired model I want to use on Wasmcloud. futuristic plan-9 inspired model I want to use on Trisiel.
Right now the executor shells out to pa'i, but I want to embed pa'i into the Right now the executor shells out to pa'i, but I want to embed pa'i into the
executor binary so there are fewer moving parts involved. executor binary so there are fewer moving parts involved.
@ -126,7 +126,7 @@ limitations also don't help here.
[Rocket](https://rocket.rs) is an absolutely fantastic web framework and I [Rocket](https://rocket.rs) is an absolutely fantastic web framework and I
cannot recommend it enough. I am able to save _so much time_ with Rocket and its cannot recommend it enough. I am able to save _so much time_ with Rocket and its
slightly magic use of proc-macros. For an example, here is the entire source slightly magic use of proc-macros. For an example, here is the entire source
code of the `/whoami` route in the Wasmcloud API: code of the `/whoami` route in the Trisiel API:
```rust ```rust
#[get("/whoami")] #[get("/whoami")]
@ -165,7 +165,7 @@ CREATE TRIGGER set_timestamp_users
EXECUTE PROCEDURE trigger_set_timestamp(); EXECUTE PROCEDURE trigger_set_timestamp();
``` ```
Every table in Wasmcloud uses this in order to make programming against the Every table in Trisiel uses this in order to make programming against the
database easier. database easier.
The symbol/number layer on my Moonlander has been _so good_. It looks something The symbol/number layer on my Moonlander has been _so good_. It looks something
@ -196,7 +196,7 @@ As far as signups go, I am not accepting any signups at the moment. This is
pre-alpha software. The abuse story will need to be figured out, but I am fairly pre-alpha software. The abuse story will need to be figured out, but I am fairly
sure it will end up being some kind of "pay or you can only run the precompiled sure it will end up being some kind of "pay or you can only run the precompiled
example code in the documentation" with some kind of application process for the example code in the documentation" with some kind of application process for the
"free tier" of Wasmcloud. Of course, this is all theoretical and hinges on "free tier" of Trisiel. Of course, this is all theoretical and hinges on
Wasmcloud actually being productizable; so who knows? Trisiel actually being productizable; so who knows?
Be well. Be well.