docs: update doc urls

Fixes: #543

Signed-off-by: Justin Garrison <justin.garrison@siderolabs.com>
This commit is contained in:
Justin Garrison 2024-08-16 11:17:05 -07:00
parent daa6d26b03
commit a173c8ae87
No known key found for this signature in database
GPG Key ID: 86EC2A4776B60B45
4 changed files with 86 additions and 32 deletions

View File

@ -33,7 +33,7 @@ Boot from an Omni image. Click to allocate to a cluster. Thats it!
Omni is available via a [Business Source License](LICENSE) which allows free installations in non-production environments. If you would like to deploy Omni for production use please contact [Sidero sales](mailto:sales@siderolabs.com). If you would like to subscribe to the hosted version of Omni please see the [SaaS pricing](https://www.siderolabs.com/pricing/).
If you would like to self-host Omni for non-production workloads please follow the [instructions in the documentation](https://omni.siderolabs.com/docs/how-to-guides/self-hosted/how-to-deploy-omni-on-prem/).
If you would like to self-host Omni for non-production workloads please follow the [instructions in the documentation](https://omni.siderolabs.com/how-to-guides/self_hosted/index).
## Development

View File

@ -13,7 +13,7 @@ This respository contains client code and gRPC API definitions used to access Om
## Documentation
For instructions on using Omni, see the [Documentation](https://omni.siderolabs.com/docs/).
For instructions on using Omni, see the [Documentation](https://omni.siderolabs.com/).
## Community

View File

@ -8,22 +8,33 @@ included in the LICENSE file.
<header class="t-header">
<div class="t-header-nav-wrapper">
<div class="t-header-logo-wrapper">
<router-link to="/" class="flex items-center gap-1 text-lg text-naturals-N13 uppercase">
<t-icon class="t-header-icon w-7 h-7" icon="logo"/>
<router-link
to="/"
class="flex items-center gap-1 text-lg text-naturals-N13 uppercase"
>
<t-icon class="t-header-icon w-7 h-7" icon="logo" />
<span class="font-bold">Sidero</span>
<span>Omni</span>
</router-link>
</div>
<div class="t-header-nav">
<a href="https://omni.siderolabs.com/docs/" target="_blank" class="flex hover:text-naturals-N14 transition-colors">
<a
href="https://omni.siderolabs.com/"
target="_blank"
class="flex hover:text-naturals-N14 transition-colors"
>
<t-icon class="t-header-nav-icon" icon="info" />
<span class="t-header-nav-name max-sm:hidden">Documentation</span>
</a>
<a href="https://github.com/siderolabs/omni/issues" target="_blank" class="flex hover:text-naturals-N14 transition-colors">
<a
href="https://github.com/siderolabs/omni/issues"
target="_blank"
class="flex hover:text-naturals-N14 transition-colors"
>
<t-icon class="t-header-nav-icon" icon="check-in-circle" />
<span class="t-header-nav-name max-sm:hidden">Report an issue</span>
</a>
<ongoing-tasks/>
<ongoing-tasks />
</div>
</div>
</header>

View File

@ -7,14 +7,32 @@ included in the LICENSE file.
<template>
<watch :opts="watchOverallStatusOpts" spinner noRecordsAlert errorsAlert>
<template #default="overallStatus">
<t-alert v-if="overallStatus.items[0]?.spec?.configuration_error" type="warn"
:title="`The backups storage is not properly configured: ${overallStatus.items[0]?.spec?.configuration_error}`">
<div class="flex gap-1">Check the <t-button type="subtle" @click="openDocs">documentation</t-button> on how to configure s3 backups using CLI.</div>
<div class="flex gap-1" v-if="canManageBackupStore">Or<t-button @click="$router.push({name: 'BackupStorage'})" type="subtle">configure backups in the UI.</t-button></div>
<t-alert
v-if="overallStatus.items[0]?.spec?.configuration_error"
type="warn"
:title="`The backups storage is not properly configured: ${overallStatus.items[0]?.spec?.configuration_error}`"
>
<div class="flex gap-1">
Check the
<t-button type="subtle" @click="openDocs">documentation</t-button> on
how to configure s3 backups using CLI.
</div>
<div class="flex gap-1" v-if="canManageBackupStore">
Or<t-button
@click="$router.push({ name: 'BackupStorage' })"
type="subtle"
>configure backups in the UI.</t-button
>
</div>
</t-alert>
<watch v-else :opts="watchStatusOpts" spinner noRecordsAlert errorsAlert>
<template #default="status">
<t-list :opts="watchOpts" search :sortOptions="sortOptions" :key="status.items[0]?.metadata?.updated">
<t-list
:opts="watchOpts"
search
:sortOptions="sortOptions"
:key="status.items[0]?.metadata?.updated"
>
<template #default="{ items, searchQuery }">
<div class="header">
<div class="list-grid">
@ -25,18 +43,32 @@ included in the LICENSE file.
</div>
</div>
<t-list-item v-for="item in items" :key="item.metadata.id!">
<div class="text-naturals-N12 relative pr-3" :class="{ 'pl-7': !item.spec.description }">
<div
class="text-naturals-N12 relative pr-3"
:class="{ 'pl-7': !item.spec.description }"
>
<div class="list-grid">
<WordHighlighter
:query="searchQuery"
:textToHighlight="item.metadata.id"
highlightClass="bg-naturals-N14"
/>
<div class="text-naturals-N14">{{ formatISO(item.spec.created_at as string, dateFormat) }}</div>
<div class="text-naturals-N14">{{ formatBytes(parseInt(item.spec.size ?? '0')) }}</div>
<div class="text-naturals-N14">
{{
formatISO(item.spec.created_at as string, dateFormat)
}}
</div>
<div class="text-naturals-N14">
{{ formatBytes(parseInt(item.spec.size ?? "0")) }}
</div>
<div class="text-naturals-N14 flex gap-2 items-center">
{{ item.spec.snapshot }}
<icon-button icon="copy" @click="copyText(item.spec.snapshot, undefined, () => {})"/>
<icon-button
icon="copy"
@click="
copyText(item.spec.snapshot, undefined, () => {})
"
/>
</div>
</div>
</div>
@ -51,7 +83,15 @@ included in the LICENSE file.
<script setup lang="ts">
import { Runtime } from "@/api/common/omni.pb";
import { ExternalNamespace, EtcdBackupType, LabelCluster, EtcdBackupStatusType, DefaultNamespace, EtcdBackupOverallStatusID, EtcdBackupOverallStatusType } from "@/api/resources";
import {
ExternalNamespace,
EtcdBackupType,
LabelCluster,
EtcdBackupStatusType,
DefaultNamespace,
EtcdBackupOverallStatusID,
EtcdBackupOverallStatusType,
} from "@/api/resources";
import { WatchOptions } from "@/api/watch";
import { computed } from "vue";
import { formatISO } from "@/methods/time";
@ -72,8 +112,8 @@ const dateFormat = "HH:mm MMM d y";
const route = useRoute();
const sortOptions = [
{id: 'id', desc: 'Creation Time ⬇', descending: true},
{id: 'id', desc: 'Creation Time ⬆'},
{ id: "id", desc: "Creation Time ⬇", descending: true },
{ id: "id", desc: "Creation Time ⬆" },
];
const watchStatusOpts = computed((): WatchOptions => {
@ -81,10 +121,10 @@ const watchStatusOpts = computed((): WatchOptions => {
resource: {
namespace: DefaultNamespace,
type: EtcdBackupStatusType,
id: route.params.cluster as string
id: route.params.cluster as string,
},
runtime: Runtime.Omni,
}
};
});
const watchOverallStatusOpts = computed((): WatchOptions => {
@ -92,10 +132,10 @@ const watchOverallStatusOpts = computed((): WatchOptions => {
resource: {
namespace: DefaultNamespace,
type: EtcdBackupOverallStatusType,
id: EtcdBackupOverallStatusID
id: EtcdBackupOverallStatusID,
},
runtime: Runtime.Omni,
}
};
});
const watchOpts = computed((): WatchOptions => {
@ -105,15 +145,18 @@ const watchOpts = computed((): WatchOptions => {
type: EtcdBackupType,
},
runtime: Runtime.Omni,
selectors: [
`${LabelCluster}=${route.params.cluster}`
]
}
selectors: [`${LabelCluster}=${route.params.cluster}`],
};
});
const openDocs = () => {
window.open("https://omni.siderolabs.com/docs/how-to-guides/how-to-create-etcd-backups/#s3-configuration", "_blank")?.focus();
}
window
.open(
"https://omni.siderolabs.com/how-to-guides/etcd-backups#s3-configuration",
"_blank"
)
?.focus();
};
</script>
<style scoped>