From 37bbcfad3d84cc608cd74097ee6d9d60b284c310 Mon Sep 17 00:00:00 2001 From: Kataick <24969684+Kataick@users.noreply.github.com> Date: Mon, 12 Aug 2024 22:34:14 +0800 Subject: [PATCH] =?UTF-8?q?flx(build):=20=E4=BF=AE=E5=A4=8D#1025=20npm?= =?UTF-8?q?=E4=BC=9A=E7=BC=96=E8=AF=91=E5=A4=B1=E8=B4=A5=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=20(#1031)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * flx(build): #1025 * 优化 * flx(build): 修复构建时只会从主库中获取文件 (#1034) * Update page.tsx --------- Co-authored-by: ForgQi <34411314+ForgQi@users.noreply.github.com> --- .github/workflows/docker-publish.yml | 27 +++++++++++++++++++++++++-- Dockerfile | 11 ++++++----- app/history/page.tsx | 11 ++++++----- app/job/page.tsx | 8 ++++---- 4 files changed, 41 insertions(+), 16 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index aee4b74..2a1afb6 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -22,15 +22,34 @@ jobs: steps: - uses: actions/checkout@v2 + - name: Get PR number, repo URL, and branch name + run: | + if [ "$GITHUB_EVENT_NAME" = "pull_request" ]; then + pr_number=$(jq -r .number < "$GITHUB_EVENT_PATH") + repo_url=$(jq -r .pull_request.head.repo.clone_url < "$GITHUB_EVENT_PATH") + branch_name=$GITHUB_HEAD_REF + else + pr_number="" + repo_url=$GITHUB_SERVER_URL/$GITHUB_REPOSITORY + branch_name=$(git rev-parse --abbrev-ref HEAD) + fi + echo "PR_NUMBER=$pr_number" >> $GITHUB_ENV + echo "REPO_URL=$repo_url" >> $GITHUB_ENV + echo "BRANCH_NAME=$branch_name" >> $GITHUB_ENV + - name: Run tests run: | if [ -f docker-compose.test.yml ]; then docker-compose --file docker-compose.test.yml build docker-compose --file docker-compose.test.yml run sut else - docker build --build-arg repo_url=$GITHUB_SERVER_URL/$GITHUB_REPOSITORY . --file Dockerfile + docker build \ + --build-arg repo_url=$REPO_URL \ + --build-arg branch_name=$BRANCH_NAME \ + . --file Dockerfile fi + # Push image to GitHub Packages. # See also https://docs.docker.com/docker-hub/builds/ push: @@ -43,6 +62,7 @@ jobs: steps: - name: Checkout uses: actions/checkout@v3 + - name: Docker meta id: meta uses: docker/metadata-action@v4 @@ -52,14 +72,17 @@ jobs: ghcr.io/biliup/caution - name: Set up QEMU uses: docker/setup-qemu-action@v2 + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 + - name: Login to DockerHub uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} + - name: Build and push uses: docker/build-push-action@v3 with: @@ -67,4 +90,4 @@ jobs: platforms: linux/amd64,linux/arm64 push: true tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} \ No newline at end of file + labels: ${{ steps.meta.outputs.labels }} diff --git a/Dockerfile b/Dockerfile index 90528a8..d70a9cb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,16 +1,17 @@ # Build biliup's web-ui FROM node:lts as webui -ARG repo_url=https://github.com/ForgQi/biliup - +ARG repo_url=https://github.com/biliup/biliup +ARG branch_name=master RUN set -eux; \ - git clone --depth 1 $repo_url; \ + git clone --depth 1 --branch "$branch_name" "$repo_url"; \ cd biliup; \ npm install; \ npm run build # Deploy Biliup FROM python:3.12-slim as biliup -ARG repo_url=https://github.com/ForgQi/biliup +ARG repo_url=https://github.com/biliup/biliup +ARG branch_name=master ENV TZ=Asia/Shanghai EXPOSE 19159/tcp VOLUME /opt @@ -72,7 +73,7 @@ RUN set -eux; \ savedAptMark="$(apt-mark showmanual)"; \ apt-get update; \ apt-get install -y --no-install-recommends git g++; \ - git clone --depth 1 $repo_url && \ + git clone --depth 1 --branch "$branch_name" "$repo_url"; \ cd biliup && \ pip3 install --no-cache-dir quickjs && \ pip3 install -e . && \ diff --git a/app/history/page.tsx b/app/history/page.tsx index d26cbd7..30d69ad 100644 --- a/app/history/page.tsx +++ b/app/history/page.tsx @@ -10,16 +10,17 @@ import { import TemplateModal from "../ui/TemplateModal"; import { Table, Avatar } from '@douyinfe/semi-ui'; import { IconMore } from '@douyinfe/semi-icons'; -import {ColumnProps} from "@douyinfe/semi-ui/lib/es/table/interface"; +import { ColumnProps } from "@douyinfe/semi-ui/lib/es/table/interface"; +import { SortOrder } from "@douyinfe/semi-ui/lib/es/table"; import useSWR from "swr"; -import {fetcher, FileList, StudioEntity} from "@/app/lib/api-streamer"; -import {useState} from "react"; +import { fetcher, FileList, StudioEntity } from "@/app/lib/api-streamer"; +import { useState } from "react"; import Player from 'xgplayer'; import 'xgplayer/dist/index.min.css'; import FlvPlugin from "xgplayer-flv"; import FlvJsPlugin from 'xgplayer-flv.js' import Players from "@/app/ui/Player"; -import {humDate} from "@/app/lib/utils"; +import { humDate } from "@/app/lib/utils"; export default function Home() { const { Header, Footer, Sider, Content } = Layout; @@ -45,7 +46,7 @@ export default function Home() { { title: '更新日期', dataIndex: 'updateTime', - defaultSortOrder: 'descend', + defaultSortOrder: 'descend' as SortOrder, sorter: (a: any, b: any) => (a.updateTime - b.updateTime > 0 ? 1 : -1), render: (time: number) => humDate(time), }, diff --git a/app/job/page.tsx b/app/job/page.tsx index dde6a5c..c8fa272 100644 --- a/app/job/page.tsx +++ b/app/job/page.tsx @@ -3,13 +3,13 @@ import { AutoComplete, Layout, Nav, Spin, Table, Typography } from "@douyinfe/semi-ui"; import { SortOrder } from "@douyinfe/semi-ui/lib/es/table"; import useSWR from "swr"; -import {fetcher, FileList} from "@/app/lib/api-streamer"; +import { fetcher, FileList } from "@/app/lib/api-streamer"; import { JSXElementConstructor, Key, ReactElement, ReactNode, ReactPortal, useRef, useState } from "react"; -import {IconCustomerSupport, IconSearch, IconVideoListStroked} from "@douyinfe/semi-icons"; -import {humDate} from "@/app/lib/utils"; +import { IconCustomerSupport, IconSearch, IconVideoListStroked } from "@douyinfe/semi-icons"; +import { humDate } from "@/app/lib/utils"; import Filter from "@/app/job/Filter"; export default function Home() { @@ -48,7 +48,7 @@ export default function Home() { { title: '更新日期', dataIndex: 'date', - defaultSortOrder: 'descend', + defaultSortOrder: 'descend' as SortOrder, sorter: (a: any, b: any) => ( a.date - b.date > 0 ? 1 : -1), render: (time: number) => humDate(time), },