diff --git a/src/App.tsx b/src/App.tsx
index 225c509..02e17f0 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -6,7 +6,6 @@ import {
ChevronRight,
CircleHelp,
ExternalLink,
- GitBranch,
LogOut,
Search,
SlidersHorizontal
@@ -1050,16 +1049,10 @@ function CommonAppsPanel({ pipelines, loading }: { pipelines: CommonAppPipeline[
- {pipeline.url ? (
-
-
-
- ) : null}
{pipeline.status}
diff --git a/src/pages/common-apps/CommonAppBuildPage.tsx b/src/pages/common-apps/CommonAppBuildPage.tsx
index 4afdee0..1247123 100644
--- a/src/pages/common-apps/CommonAppBuildPage.tsx
+++ b/src/pages/common-apps/CommonAppBuildPage.tsx
@@ -1,4 +1,4 @@
-import { ExternalLink, GitBranch, Loader2, RotateCcw } from 'lucide-react';
+import { Loader2, RotateCcw } from 'lucide-react';
import { useEffect, useMemo, useState } from 'react';
import { Badge, Button, Card, CardHeader } from '../../components/ui';
import { useToast } from '../../components/toast';
@@ -82,7 +82,6 @@ export function CommonAppBuildPage() {
-
{formatRepositoryName(pipeline.repository)}
{isActivePipelineStatus(pipeline.status) ? (
@@ -100,11 +99,6 @@ export function CommonAppBuildPage() {
{formatPipelineRelativeTime(pipeline.createdAt)}
- {pipeline.url ? (
-
-
-
- ) : null}
))}
diff --git a/src/pages/common-apps/CommonAppSourcePage.tsx b/src/pages/common-apps/CommonAppSourcePage.tsx
index 3b9c3c8..63bb784 100644
--- a/src/pages/common-apps/CommonAppSourcePage.tsx
+++ b/src/pages/common-apps/CommonAppSourcePage.tsx
@@ -1,4 +1,4 @@
-import { ExternalLink, FileText, GitBranch, RotateCcw } from 'lucide-react';
+import { FileText, RotateCcw } from 'lucide-react';
import { useEffect, useMemo, useState } from 'react';
import { Badge, Button, Card, CardHeader, Modal } from '../../components/ui';
import { useToast } from '../../components/toast';
@@ -25,6 +25,7 @@ const commitRangeLabels: Record = {
const commitPageSize = 5;
const branchOptions = ['develop', 'release', 'main'];
+const defaultCicdBaseUrl = 'http://192.168.0.20:8010';
function repoFullName(repo: GiteaRepo) {
return (repo as GiteaRepo & { fullName?: string }).fullName ?? repo.full_name ?? repo.name;
@@ -36,6 +37,17 @@ function splitRepository(repository: string) {
return owner && repo ? { owner, repo } : null;
}
+function cicdLabel(pipeline?: CommonAppPipeline) {
+ if (!pipeline) return '-';
+ try {
+ const origin = pipeline.url ? new URL(pipeline.url).origin : '';
+ const baseUrl = origin && !origin.includes(':3000') ? origin : defaultCicdBaseUrl;
+ return `Woodpecker / ${baseUrl}`;
+ } catch {
+ return `Woodpecker / ${defaultCicdBaseUrl}`;
+ }
+}
+
function commitAuthor(commit: GiteaCommit) {
return commit.author?.login
|| commit.author?.username
@@ -136,6 +148,7 @@ export function CommonAppSourcePage() {
});
}, [knownCommonRepos, repos]);
const selectedRepo = useMemo(() => repos.find((repo) => repoFullName(repo) === selectedRepository), [repos, selectedRepository]);
+ const selectedPipeline = pipelineByRepo.get(selectedRepository);
const repositoryParts = useMemo(() => splitRepository(selectedRepository), [selectedRepository]);
const totalCommitPages = totalCommits === null ? null : Math.max(1, Math.ceil(totalCommits / commitPageSize));
@@ -240,7 +253,6 @@ export function CommonAppSourcePage() {
{sortedRepos.map((repo) => {
const fullName = repoFullName(repo);
- const pipeline = pipelineByRepo.get(fullName);
const selected = fullName === selectedRepository;
return (
);
@@ -274,10 +282,8 @@ export function CommonAppSourcePage() {
{selectedRepository ? formatRepositoryName(selectedRepository) : '-'}
-
Woodpecker
-
- {pipelineByRepo.has(selectedRepository) ? '연결됨' : '미연결'}
-
+
CI/CD
+
{cicdLabel(selectedPipeline)}
조회 브랜치
@@ -295,11 +301,6 @@ export function CommonAppSourcePage() {
Gitea URL
{selectedRepo?.html_url ?? '-'}
- {selectedRepo?.html_url ? (
-
- ) : null}
diff --git a/src/pages/dashboard/DashboardPage.tsx b/src/pages/dashboard/DashboardPage.tsx
index b1a8613..de5bbf1 100644
--- a/src/pages/dashboard/DashboardPage.tsx
+++ b/src/pages/dashboard/DashboardPage.tsx
@@ -1,4 +1,4 @@
-import { Activity, Boxes, ExternalLink, FileKey, GitBranch, RefreshCw } from 'lucide-react';
+import { Activity, Boxes, FileKey, RefreshCw } from 'lucide-react';
import { useEffect, useMemo, useState } from 'react';
import { Badge, Button, Card, CardHeader } from '../../components/ui';
import { PageTitle } from '../../layout/AppLayout';
@@ -132,16 +132,10 @@ export function DashboardPage() {
- {pipeline.url ? (
-
-
-
- ) : null}
{pipeline.status}