mirror of
https://seed.radicle.dev/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5.git
synced 2026-10-18 19:30:27 +08:00
Move public deployment from app.radicle.xyz to radicle.network
This commit is contained in:
committed by
Lorenz Leutgeb
parent
1003b165e5
commit
7e725f3bdf
@@ -5,7 +5,7 @@ collaboration and publishing stack, directly from your web browser.
|
|||||||
|
|
||||||
**Deployment Options:**
|
**Deployment Options:**
|
||||||
|
|
||||||
* **Public Server:** The Radicle team maintains a public instance at [app.radicle.xyz][app]
|
* **Public Server:** The Radicle team maintains a public instance at [radicle.network][app]
|
||||||
* **Local-first:** Run the UI locally
|
* **Local-first:** Run the UI locally
|
||||||
* **Self-hosting:** Deploy the UI on your own server
|
* **Self-hosting:** Deploy the UI on your own server
|
||||||
|
|
||||||
@@ -122,15 +122,15 @@ The UI is distributed under the terms of GPLv3. See [LICENSE][lic] for details.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
[app]: https://app.radicle.xyz
|
[app]: https://radicle.network
|
||||||
[con]: ./CONTRIBUTING.md
|
[con]: ./CONTRIBUTING.md
|
||||||
[def]: ./config/default.json
|
[def]: ./config/default.json
|
||||||
[env]: ./config/custom-environment-variables.json
|
[env]: ./config/custom-environment-variables.json
|
||||||
[iss]: https://app.radicle.xyz/nodes/iris.radicle.xyz/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5/issues
|
[iss]: https://radicle.network/nodes/iris.radicle.xyz/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5/issues
|
||||||
[lic]: ./LICENSE
|
[lic]: ./LICENSE
|
||||||
[nco]: https://github.com/node-config/node-config/wiki/Configuration-Files
|
[nco]: https://github.com/node-config/node-config/wiki/Configuration-Files
|
||||||
[nod]: https://nodejs.org
|
[nod]: https://nodejs.org
|
||||||
[npm]: https://www.npmjs.com
|
[npm]: https://www.npmjs.com
|
||||||
[pat]: https://app.radicle.xyz/nodes/iris.radicle.xyz/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5/patches
|
[pat]: https://radicle.network/nodes/iris.radicle.xyz/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5/patches
|
||||||
[rad]: https://radicle.xyz
|
[rad]: https://radicle.xyz
|
||||||
[zul]: https://radicle.zulipchat.com/#narrow/stream/369278-web
|
[zul]: https://radicle.zulipchat.com/#narrow/stream/369278-web
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"fallbackPublicExplorer": "https://app.radicle.xyz/nodes/$host/$rid$path",
|
"fallbackPublicExplorer": "https://radicle.network/nodes/$host/$rid$path",
|
||||||
"requiredApiVersion": "~0.18.0",
|
"requiredApiVersion": "~0.18.0",
|
||||||
"defaultHttpdPort": 443,
|
"defaultHttpdPort": 443,
|
||||||
"defaultLocalHttpdPort": 8080,
|
"defaultLocalHttpdPort": 8080,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||||
Upstream-Name: radicle-httpd
|
Upstream-Name: radicle-httpd
|
||||||
Upstream-Contact: https://radicle.xyz/
|
Upstream-Contact: https://radicle.xyz/
|
||||||
Source: https://app.radicle.xyz/seeds/seed.radicle.xyz
|
Source: https://radicle.network/seeds/seed.radicle.xyz
|
||||||
|
|
||||||
Files: *
|
Files: *
|
||||||
Copyright: 2019-2021, The Radicle Foundation
|
Copyright: 2019-2021, The Radicle Foundation
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
import fs from "fs";
|
import fs from "fs";
|
||||||
|
|
||||||
const file = "build/index.html";
|
const file = "build/index.html";
|
||||||
const snippet = `<script defer="" data-domain="app.radicle.xyz" src="https://plausible.io/js/script.js"></script>`;
|
const snippet = `<script defer="" data-domain="radicle.network" src="https://plausible.io/js/script.js"></script>`;
|
||||||
|
|
||||||
const html = fs.readFileSync(file, "utf8");
|
const html = fs.readFileSync(file, "utf8");
|
||||||
|
|
||||||
|
|||||||
@@ -671,7 +671,7 @@ export const gitOptions = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
export const defaultConfig: Config = {
|
export const defaultConfig: Config = {
|
||||||
publicExplorer: "https://app.radicle.xyz/nodes/$host/$rid$path",
|
publicExplorer: "https://radicle.network/nodes/$host/$rid$path",
|
||||||
preferredSeeds: [],
|
preferredSeeds: [],
|
||||||
web: {
|
web: {
|
||||||
pinned: {
|
pinned: {
|
||||||
|
|||||||
@@ -73,8 +73,8 @@ describe("String Assertions", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
test.each([
|
test.each([
|
||||||
{ url: "https://app.radicle.xyz", expected: true },
|
{ url: "https://radicle.network", expected: true },
|
||||||
{ url: "http://app.radicle.xyz", expected: true },
|
{ url: "http://radicle.network", expected: true },
|
||||||
{ url: "http://app", expected: true },
|
{ url: "http://app", expected: true },
|
||||||
{ url: "://app", expected: false },
|
{ url: "://app", expected: false },
|
||||||
{ url: "//app", expected: false },
|
{ url: "//app", expected: false },
|
||||||
@@ -122,7 +122,7 @@ describe("Path Manipulation", () => {
|
|||||||
{
|
{
|
||||||
imagePath: "/assets/images/tux.png",
|
imagePath: "/assets/images/tux.png",
|
||||||
base: "/",
|
base: "/",
|
||||||
origin: "https://app.radicle.xyz",
|
origin: "https://radicle.network",
|
||||||
expected: "assets/images/tux.png",
|
expected: "assets/images/tux.png",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -134,7 +134,7 @@ describe("Path Manipulation", () => {
|
|||||||
{
|
{
|
||||||
imagePath: "assets/images/tux.png",
|
imagePath: "assets/images/tux.png",
|
||||||
base: "/",
|
base: "/",
|
||||||
origin: "https://app.radicle.xyz",
|
origin: "https://radicle.network",
|
||||||
expected: "assets/images/tux.png",
|
expected: "assets/images/tux.png",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
+2
-2
@@ -5,7 +5,7 @@ preview card images for social media embeds.
|
|||||||
|
|
||||||
## How it works
|
## How it works
|
||||||
|
|
||||||
`app.radicle.xyz` is a plain static SPA. A Cloudflare Redirect Rule
|
`radicle.network` is a plain static SPA. A Cloudflare Redirect Rule
|
||||||
302s social media crawlers to `open-graph.radicle.network`, which
|
302s social media crawlers to `open-graph.radicle.network`, which
|
||||||
returns HTML with OG tags. The `og:image` points to `/cards/...` on
|
returns HTML with OG tags. The `og:image` points to `/cards/...` on
|
||||||
the same domain, where the worker renders PNG cards via Satori + resvg-wasm.
|
the same domain, where the worker renders PNG cards via Satori + resvg-wasm.
|
||||||
@@ -26,7 +26,7 @@ cards degrade: specific item -> repo -> node -> home.
|
|||||||
**Rules > Redirect Rules** on the `radicle.xyz` zone:
|
**Rules > Redirect Rules** on the `radicle.xyz` zone:
|
||||||
|
|
||||||
```
|
```
|
||||||
(http.host eq "app.radicle.xyz") and (
|
(http.host eq "radicle.network") and (
|
||||||
(http.user_agent contains "Twitterbot") or
|
(http.user_agent contains "Twitterbot") or
|
||||||
(http.user_agent contains "facebookexternalhit") or
|
(http.user_agent contains "facebookexternalhit") or
|
||||||
(http.user_agent contains "Facebot") or
|
(http.user_agent contains "Facebot") or
|
||||||
|
|||||||
@@ -2185,7 +2185,7 @@ async function handleOgHtml(request, url, env) {
|
|||||||
return new Response("Not found", { status: 404 });
|
return new Response("Not found", { status: 404 });
|
||||||
}
|
}
|
||||||
|
|
||||||
const appBase = env.APP_BASE || "https://app.radicle.xyz";
|
const appBase = env.APP_BASE || "https://radicle.network";
|
||||||
const appHost = new URL(appBase).hostname;
|
const appHost = new URL(appBase).hostname;
|
||||||
const hostParam = route.type === "home" ? `?host=${appHost}` : "";
|
const hostParam = route.type === "home" ? `?host=${appHost}` : "";
|
||||||
const ogImageUrl = escapeHtml(
|
const ogImageUrl = escapeHtml(
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ routes = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
[vars]
|
[vars]
|
||||||
APP_BASE = "https://app.radicle.xyz"
|
APP_BASE = "https://radicle.network"
|
||||||
|
|
||||||
[[rules]]
|
[[rules]]
|
||||||
type = "CompiledWasm"
|
type = "CompiledWasm"
|
||||||
|
|||||||
Reference in New Issue
Block a user