Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

πŸ₯”βœ¨ Space: Domains #74

Closed
2 of 8 tasks
Tracked by #23 ...
zspencer opened this issue Aug 3, 2020 · 1 comment
Closed
2 of 8 tasks
Tracked by #23 ...

πŸ₯”βœ¨ Space: Domains #74

zspencer opened this issue Aug 3, 2020 · 1 comment
Labels
⛰️ epic Work we expect will take multiple patches to complete ✨ feature Reduces Client's Burden or Grants them Benefits πŸ₯” Satisfices It's good enough to use, but not particularly great
Milestone

Comments

@zspencer
Copy link
Member

zspencer commented Aug 3, 2020

While Spaces in a neighborhood can be accessed at their neighborhood address (i.e. https://neighborhood.example.com/spaces/space-handle); Commercial Clients expect People would visit a Space via a domain that represents their organization.

Use Cases

Operator Experience

  • Automate allocation of the Space Domain with the Neighborhood Infrastructure
    • DNS Provider (Cloudflare)
    • Web Host (Heroku)
    • Transactional Email Service?
@zspencer zspencer added documentation ✨ feature Reduces Client's Burden or Grants them Benefits ⛰️ epic Work we expect will take multiple patches to complete labels Aug 3, 2020
zspencer added a commit that referenced this issue Aug 7, 2020
This allows us to use meet.zinc.coop for our convene domain for Zinc, as well as
renames the `jitsi` folder and other references to `videobridge` 

#61 
#74
@zspencer zspencer changed the title Branded Domains Branding: Custom Domains Aug 23, 2021
@zspencer zspencer added this to the 1.0 - Andromeda milestone Aug 23, 2021
@zspencer zspencer changed the title Branding: Custom Domains Branded Spaces: Custom Domains Aug 23, 2021
@zspencer zspencer mentioned this issue Aug 23, 2021
16 tasks
@zspencer zspencer removed this from the 1.0 - Andromeda milestone Sep 18, 2022
@zspencer zspencer changed the title Branded Spaces: Custom Domains Spaces: Custom Domains Dec 18, 2022
zspencer added a commit that referenced this issue Dec 18, 2022
#74

This had been bugging me for a bit, where the paths on the page would
always include the spaces, even if they were being routed to a custom
domain.

Now, we send folks to the domain that the space claims and drop the
Space from the path, but only on urls built using Rails Polymorphic url
builders.

For example:

`space_room_path(space, room)` will still go to
`current_domain.example.com/spaces/:space_id/rooms/:room_id`, while `url_for([space, room])` or
`link_to([space, room])` will go to
`space_domain.example.com/rooms/:room_id`
@zspencer zspencer changed the title Spaces: Custom Domains Spaces: BYO Domains Dec 18, 2022
zspencer added a commit that referenced this issue Dec 21, 2022
#74

This had been bugging me for a bit, where the paths on the page would
always include the spaces, even if they were being routed to a custom
domain.

Now, we send folks to the domain that the space claims and drop the
Space from the path, but only on urls built using Rails Polymorphic url
builders.

For example:

`space_room_path(space, room)` will still go to
`current_domain.example.com/spaces/:space_id/rooms/:room_id`, while `url_for([space, room])` or
`link_to([space, room])` will go to
`space_domain.example.com/rooms/:room_id`

* Spaces: Support BYO Domains Everywhere! (#1001)

Move (almost) everything to the Polymorphic syntax!

* Provide slightly better docs and terser code
zspencer added a commit that referenced this issue Dec 21, 2022
#23
#74

Apparently `domain` doesn't uhh... quite work. `host` does!
zspencer added a commit that referenced this issue Dec 22, 2022
#23
#74

When I was testing #74 on https://beta.zeespencer.com/ I discovered that it didn't quite work, and was nesting sub-domains (i.e. `beta.zeespencer.com` became `beta.beta.zeespencer.com`)

This is likely because the [`domain` option for `url_for`](http://api.rubyonrails.org/classes/ActionDispatch/Routing/UrlFor.html#method-i-url_for) doesn't actually do the whole domain; just the TLD!

Womp womp!
zspencer added a commit that referenced this issue Jan 24, 2023
#74
#1067

Turns out, having the Space routes split into two sections meant some of
the updates to the routes did not get applied for spaces with
BYO-Domains.

This... fixes that...
zspencer added a commit that referenced this issue Jan 24, 2023
#74
#1067

Turns out, having the Space routes split into two sections meant some of
the updates to the routes did not get applied for spaces with
BYO-Domains.

This... fixes that...
zspencer added a commit that referenced this issue Jan 30, 2023
#74
#1078

This doesn't compeltely fix #1078, but it should help with making sure
the branded domains take precedence (which is part of the problem)
zspencer added a commit that referenced this issue Jan 30, 2023
We probably want to figure out a better strategy for how we test the BYO
domains feature; perhaps there's a way to do it with the end-to-end
tests so that they run against a BYO-domained Space and a non-BYO
domained space in different github actions? I don't know 🀷

#74
zspencer added a commit that referenced this issue Jan 31, 2023
* BYO Domains: Enforce Custom Domains when Set

#74
#1078

This doesn't compeltely fix #1078, but it should help with making sure
the branded domains take precedence (which is part of the problem)

* Invitations: Use `location` to identify where to send people

Like all Resources in Convene, Invitations to a Convene Space can be on
a BYO Domain *or* a path under the Neighborhoods primary domain, they
want to use the `location` method for determining where they live within
the object graph.

* BYO Domains: Test that they redirect appropriately
zspencer added a commit that referenced this issue Mar 3, 2023
- #74

I introduced this bug in b65a233,
basically the `SpaceController#show` was not finding by domain, so it
would give an empty page.

This also adds support for using
[`assert_select`](http://api.rubyonrails.org/classes/ActionDispatch/IntegrationTest.html)
in request specs, so long as the `subject` is a `TestResponse`.
zspencer added a commit that referenced this issue Mar 3, 2023
- #74

I introduced this bug in b65a233,
basically the `SpaceController#show` was not finding by domain, so it
would give an empty page.

This also adds support for using
[`assert_select`](http://api.rubyonrails.org/classes/ActionDispatch/IntegrationTest.html)
in request specs, so long as the `subject` is a `TestResponse`.
zspencer added a commit that referenced this issue Mar 3, 2023
- #74

I introduced this bug in b65a233,
basically the `SpaceController#show` was not finding by domain, so it
would give an empty page.

This also adds support for using
[`assert_select`](http://api.rubyonrails.org/classes/ActionDispatch/IntegrationTest.html)
in request specs, so long as the `subject` is a `TestResponse`.
zspencer added a commit that referenced this issue Mar 3, 2023
- #74

I introduced this bug in b65a233,
basically the `SpaceController#show` was not finding by domain, so it
would give an empty page.

This also adds support for using
[`assert_select`](http://api.rubyonrails.org/classes/ActionDispatch/IntegrationTest.html)
in request specs, so long as the `subject` is a `TestResponse`.
zspencer added a commit that referenced this issue Mar 3, 2023
zspencer added a commit that referenced this issue Mar 4, 2023
zspencer added a commit that referenced this issue Mar 4, 2023
zspencer added a commit that referenced this issue Mar 4, 2023
🧹 `Space`: Use `Space#location` for consistency

- #74
- Extracted from: #1083
zspencer added a commit that referenced this issue Mar 4, 2023
zspencer added a commit that referenced this issue Mar 4, 2023
🧹 `Furniture`: use `location` rather when building new Furniture

- Extracted from: #1083
- #74
- #709
@zspencer zspencer changed the title Spaces: BYO Domains πŸ₯” Spaces: Visiting a Space via a Domain Apr 15, 2023
@zspencer zspencer added the πŸ₯” Satisfices It's good enough to use, but not particularly great label Apr 15, 2023
@zspencer zspencer changed the title πŸ₯” Spaces: Visiting a Space via a Domain πŸ₯” Space: Domains May 6, 2023
@zspencer zspencer changed the title πŸ₯” Space: Domains πŸ₯”βœ¨ Space: Domains May 27, 2023
zspencer added a commit that referenced this issue May 27, 2023
- #892
- #74

I noticed that the `Convene` link in the footer was always to the
current `root_url`, which will be the `Space` when visiting the `Space`
via a `Domain`.

This shifts it to use the `APP_ROOT_URL`, and allows `Operator`s to
configure the Neighborhood name and Tagline.
zspencer added a commit that referenced this issue May 27, 2023
- #892
- #74

I noticed that the `Convene` link in the footer was always to the
current `root_url`, which will be the `Space` when visiting the `Space`
via a `Domain`.

This shifts it to use the `APP_ROOT_URL`, and allows `Operator`s to
configure the Neighborhood name and Tagline.
zspencer added a commit that referenced this issue May 27, 2023
- #892
- #74

I noticed that the `Convene` link in the footer was always to the
current `root_url`, which will be the `Space` when visiting the `Space`
via a `Domain`.

This shifts it to use the `APP_ROOT_URL`, and allows `Operator`s to
configure the Neighborhood name and Tagline.
zspencer added a commit that referenced this issue Jun 1, 2023
- #892
- #74

I noticed that the `Convene` link in the footer was always to the
current `root_url`, which will be the `Space` when visiting the `Space`
via a `Domain`.

This shifts it to use the `APP_ROOT_URL`, and allows `Operator`s to
configure the Neighborhood name and Tagline.
zspencer added a commit that referenced this issue Jun 1, 2023
- #892
- #74

I noticed that the `Convene` link in the footer was always to the
current `root_url`, which will be the `Space` when visiting the `Space`
via a `Domain`.

This shifts it to use the `APP_ROOT_URL`, and allows `Operator`s to
configure the Neighborhood name and Tagline.
@rosschapman
Copy link
Contributor

🧹 Relegated to cold storage

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⛰️ epic Work we expect will take multiple patches to complete ✨ feature Reduces Client's Burden or Grants them Benefits πŸ₯” Satisfices It's good enough to use, but not particularly great
Projects
None yet
Development

No branches or pull requests

2 participants