deislabs / hippo

The WebAssembly Platform

Home Page:https://docs.hippofactory.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Allow user-defined application hostname

vdice opened this issue · comments

Currently, hippo provides the one auto-generated hostname in a given app's job configuration; see:

"traefik.http.routers." + nomadJob.Id + @".rule=Host(`" + nomadJob.Domain + "`)",

There are cases where a user may want to specify an alternate hostname for a given app. For example, a user might wish for the app to be accessible via a canonical website.example.com in addition to (or instead of) the auto-generated spin-deploy.website.hippo.example.com hostname.

I believe at the Traefik annotation level, we'd just need to add another Host entry (see that link above) as well as an alternate domain for the same value here. Reference https://doc.traefik.io/traefik/v2.0/routing/routers to be sure.

This is something that can be set while creating the channel. If a custom domain is passed to the API, that domain will be passed to the nomadJob during creation.

spin deploy could handle this by setting the domain field when calling .add_channel().