1.14 - Rename to Komodo - Docker Management (#56)

* setup network page

* add Network, Image, Container

* Docker ListItems and Inspects

* frontend build

* dev0

* network info working

* fix cargo lock

* dev1

* pages for the things

* implement Active in dashboard

* RunBuild update trigger list refresh

* rename deployment executions to StartDeployment etc

* add server level container control

* dev2

* add Config field to Image

* can get image labels from Config.Labels

* mount container page

* server show resource count

* add GetContainerLog api

* add _AllContainers api

* dev3

* move ResourceTarget to entities mod

* GetResourceMatchingContainer api

* connect container to resource

* dev4 add volume names to container list items

* ts types

* volume / image / network unused management

* add image history to image page

* fix PruneContainers incorret Operation

* update cache for server for server after server actions

* dev5

* add singapore to Hetzner

* implement delete single network / image / volume api

* dev6

* include "in use" on Docker Lists

* add docker resource delete buttons

* is nice

* fix volume all in use

* remove google font dependency

* use host networking in test compose

* implement Secret Variables (hidden in logs)

* remove unneeded borrow

* interpolate variables / secrets into extra args / onclone / onpull / command etc

* validate empty strings before SelectItem

* rename everything to Komodo

* rename workspace to komodo

* rc1
This commit is contained in:
Maxwell Becker
2024-09-02 01:38:40 +03:00
committed by GitHub
parent 2463ed3879
commit 5fc0a87dea
429 changed files with 14351 additions and 7077 deletions

View File

@@ -1,6 +1,6 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
import { useRead } from "@lib/hooks";
import { Types } from "@monitor/client";
import { Types } from "@komodo/client";
import {
Select,
SelectTrigger,
@@ -310,11 +310,13 @@ export const ProviderSelector = ({
<SelectValue placeholder="Select Provider" />
</SelectTrigger>
<SelectContent>
{providers?.map((provider) => (
<SelectItem key={provider} value={provider}>
{provider}
</SelectItem>
))}
{providers
?.filter((provider) => provider)
.map((provider) => (
<SelectItem key={provider} value={provider}>
{provider}
</SelectItem>
))}
{providers !== undefined &&
selected &&
!providers.includes(selected) && (
@@ -420,11 +422,13 @@ export const AccountSelector = ({
</SelectTrigger>
<SelectContent>
<SelectItem value={"Empty"}>None</SelectItem>
{accounts?.map((account) => (
<SelectItem key={account} value={account}>
{account}
</SelectItem>
))}
{accounts
?.filter((account) => account)
.map((account) => (
<SelectItem key={account} value={account}>
{account}
</SelectItem>
))}
</SelectContent>
</Select>
);
@@ -476,11 +480,13 @@ export const AwsEcrLabelSelector = ({
</SelectTrigger>
<SelectContent>
<SelectItem value={"Empty"}>None</SelectItem>
{labels?.map((label: string) => (
<SelectItem key={label} value={label}>
{label}
</SelectItem>
))}
{labels
?.filter((label) => label)
.map((label: string) => (
<SelectItem key={label} value={label}>
{label}
</SelectItem>
))}
</SelectContent>
</Select>
);
@@ -934,11 +940,13 @@ const OrganizationSelector = ({
</SelectTrigger>
<SelectContent>
<SelectItem value={"Empty"}>None</SelectItem>
{orgs?.map((org) => (
<SelectItem key={org} value={org}>
{org}
</SelectItem>
))}
{orgs
?.filter((org) => org)
.map((org) => (
<SelectItem key={org} value={org}>
{org}
</SelectItem>
))}
<SelectItem value={"Custom"}>Custom</SelectItem>
</SelectContent>
</Select>