Update README with important video source notice #4
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release | |
| on: | |
| push: | |
| tags: | |
| - 'v*' | |
| jobs: | |
| release: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| packages: write | |
| discussions: write | |
| issues: write | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '18' | |
| # 修改这里:改为 pnpm 或者移除 cache 配置 | |
| # cache: 'npm' # 删除这行,因为使用的是 pnpm | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| with: | |
| version: 8 | |
| # 添加 pnpm 缓存配置 | |
| run_install: false | |
| - name: Get pnpm store directory | |
| shell: bash | |
| run: | | |
| echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV | |
| - name: Setup pnpm cache | |
| uses: actions/cache@v3 | |
| with: | |
| path: ${{ env.STORE_PATH }} | |
| key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
| restore-keys: | | |
| ${{ runner.os }}-pnpm-store- | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Build project | |
| run: pnpm run build | |
| env: | |
| PASSWORD: ${{ secrets.PASSWORD }} | |
| - name: Create Release | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| files: | | |
| .next/**/* | |
| public/**/* | |
| package.json | |
| README.md | |
| CHANGELOG.md | |
| LICENSE | |
| config.json | |
| next.config.js | |
| tailwind.config.ts | |
| tsconfig.json | |
| Dockerfile | |
| vercel.json | |
| generate_release_notes: true | |
| draft: false | |
| prerelease: false | |
| title: '🎉 Release ${{ github.ref_name }}' | |
| body: | | |
| ## 🎉 新版本发布 | |
| **版本号**: ${{ github.ref_name }} | |
| **发布日期**: ${{ github.event.head_commit.timestamp }} | |
| ### 🚀 快速开始 | |
| #### Docker 部署(推荐) | |
| ```bash | |
| docker pull ghcr.io/senshinya/moontv:${{ github.ref_name }} | |
| docker run -d --name moontv -p 3000:3000 --env PASSWORD=your_password ghcr.io/senshinya/moontv:${{ github.ref_name }} | |
| ``` | |
| #### Vercel 部署 | |
| - Fork 本仓库 | |
| - 在 Vercel 中导入项目 | |
| - 设置环境变量 PASSWORD | |
| - 自动部署完成 | |
| #### Cloudflare Pages 部署 | |
| - Fork 本仓库 | |
| - 在 Cloudflare Pages 中导入项目 | |
| - 设置构建命令:`pnpm run pages:build` | |
| - 配置环境变量 | |
| ### 📋 环境变量 | |
| | 变量 | 说明 | 默认值 | | |
| |------|------|--------| | |
| | PASSWORD | 访问密码 | 必填 | | |
| | NEXT_PUBLIC_STORAGE_TYPE | 存储类型 | localstorage | | |
| | USERNAME | 管理员账号 | 空 | | |
| 更多环境变量请查看 [README.md](README.md) | |
| ### 🔗 相关资源 | |
| - [项目文档](https://github.com/senshinya/moontv#readme) | |
| - [问题反馈](https://github.com/senshinya/moontv/issues) | |
| - [功能讨论](https://github.com/senshinya/moontv/discussions) | |
| - [贡献指南](https://github.com/senshinya/moontv/blob/main/CONTRIBUTING.md) | |
| ### 📝 更新日志 | |
| 查看 [CHANGELOG.md](CHANGELOG.md) 了解详细的更新历史。 | |
| --- | |
| **注意**: 本项目仅供学习和个人使用,请遵守当地法律法规。 | |
| - name: Build and Push Docker Image | |
| uses: docker/build-push-action@v5 | |
| with: | |
| context: . | |
| push: true | |
| tags: | | |
| ghcr.io/senshinya/moontv:${{ github.ref_name }} | |
| ghcr.io/senshinya/moontv:latest | |
| cache-from: type=gha | |
| cache-to: type=gha,mode=max | |
| platforms: linux/amd64,linux/arm64 | |
| - name: Update Release with Docker Info | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| body: | | |
| ## 🎉 新版本发布 | |
| **版本号**: ${{ github.ref_name }} | |
| **发布日期**: ${{ github.event.head_commit.timestamp }} | |
| ### 🐳 Docker 镜像 | |
| Docker 镜像已自动构建并推送到 GitHub Container Registry: | |
| ```bash | |
| # 拉取指定版本 | |
| docker pull ghcr.io/senshinya/moontv:${{ github.ref_name }} | |
| # 拉取最新版本 | |
| docker pull ghcr.io/senshinya/moontv:latest | |
| # 运行容器 | |
| docker run -d --name moontv -p 3000:3000 --env PASSWORD=your_password ghcr.io/senshinya/moontv:${{ github.ref_name }} | |
| ``` | |
| ### 🚀 其他部署方式 | |
| #### Vercel 部署 | |
| - Fork 本仓库 | |
| - 在 Vercel 中导入项目 | |
| - 设置环境变量 PASSWORD | |
| - 自动部署完成 | |
| #### Cloudflare Pages 部署 | |
| - Fork 本仓库 | |
| - 在 Cloudflare Pages 中导入项目 | |
| - 设置构建命令:`pnpm run pages:build` | |
| - 配置环境变量 | |
| ### 📋 环境变量 | |
| | 变量 | 说明 | 默认值 | | |
| |------|------|--------| | |
| | PASSWORD | 访问密码 | 必填 | | |
| | NEXT_PUBLIC_STORAGE_TYPE | 存储类型 | localstorage | | |
| | USERNAME | 管理员账号 | 空 | | |
| 更多环境变量请查看 [README.md](README.md) | |
| ### 🔗 相关资源 | |
| - [项目文档](https://github.com/senshinya/moontv#readme) | |
| - [问题反馈](https://github.com/senshinya/moontv/issues) | |
| - [功能讨论](https://github.com/senshinya/moontv/discussions) | |
| - [贡献指南](https://github.com/senshinya/moontv/blob/main/CONTRIBUTING.md) | |
| ### 📝 更新日志 | |
| 查看 [CHANGELOG.md](CHANGELOG.md) 了解详细的更新历史。 | |
| --- | |
| **注意**: 本项目仅供学习和个人使用,请遵守当地法律法规。 | |
| update_existing_release: true | |
| - name: Create Discussion | |
| uses: actions/github-script@v7 | |
| with: | |
| script: | | |
| const { data: discussions } = await github.rest.discussions.create({ | |
| owner: context.repo.owner, | |
| repo: context.repo.repo, | |
| title: `🎉 ${context.ref_name} 版本发布讨论`, | |
| body: `## 🎉 ${context.ref_name} 版本发布成功! | |
| 新版本已成功发布,包含以下更新: | |
| ### 🚀 主要特性 | |
| - 观看历史记录功能 | |
| - 多源聚合搜索 | |
| - PWA 支持 | |
| - 深色模式 | |
| - 多用户系统 | |
| ### 🐳 Docker 部署 | |
| \`\`\`bash | |
| docker pull ghcr.io/senshinya/moontv:${context.ref_name} | |
| docker run -d --name moontv -p 3000:3000 --env PASSWORD=your_password ghcr.io/senshinya/moontv:${context.ref_name} | |
| \`\`\` | |
| ### 📋 环境变量 | |
| | 变量 | 说明 | 默认值 | | |
| |------|------|--------| | |
| | PASSWORD | 访问密码 | 必填 | | |
| | NEXT_PUBLIC_STORAGE_TYPE | 存储类型 | localstorage | | |
| | USERNAME | 管理员账号 | 空 | | |
| ### 🔗 相关链接 | |
| - [Release 页面](https://github.com/${context.repo.owner}/${context.repo.repo}/releases/tag/${context.ref_name}) | |
| - [项目文档](https://github.com/${context.repo.owner}/${context.repo.repo}#readme) | |
| - [问题反馈](https://github.com/${context.repo.owner}/${context.repo.repo}/issues) | |
| --- | |
| 欢迎在此讨论新版本的使用体验、问题反馈和功能建议! | |
| **注意**: 本项目仅供学习和个人使用,请遵守当地法律法规。`, | |
| category: 'ANNOUNCEMENT' | |
| }); | |
| console.log(`Discussion created: ${discussions.html_url}`); | |
| - name: Comment on Issues | |
| uses: actions/github-script@v7 | |
| with: | |
| script: | | |
| // 查找与当前版本相关的 issue | |
| const { data: issues } = await github.rest.issues.listForRepo({ | |
| owner: context.repo.owner, | |
| repo: context.repo.repo, | |
| state: 'open', | |
| labels: ['enhancement', 'bug', 'feature'] | |
| }); | |
| // 在相关 issue 下添加评论 | |
| for (const issue of issues) { | |
| if (issue.title.toLowerCase().includes('release') || | |
| issue.title.toLowerCase().includes('version') || | |
| issue.body?.toLowerCase().includes('release') || | |
| issue.body?.toLowerCase().includes('version')) { | |
| await github.rest.issues.createComment({ | |
| owner: context.repo.owner, | |
| repo: context.repo.repo, | |
| issue_number: issue.number, | |
| body: `🎉 好消息!${context.ref_name} 版本已经发布,可能解决了您提到的问题。 | |
| 请查看 [Release 页面](https://github.com/${context.repo.owner}/${context.repo.repo}/releases/tag/${context.ref_name}) 了解详细更新内容。 | |
| 如果问题仍然存在,请提供更多详细信息,我们会继续关注。` | |
| }); | |
| console.log(`Commented on issue #${issue.number}`); | |
| } | |
| } | |
| - name: Notify Success | |
| run: | | |
| echo "🎉 Release ${{ github.ref_name }} 发布成功!" | |
| echo "📦 Docker 镜像: ghcr.io/senshinya/moontv:${{ github.ref_name }}" | |
| echo "🔗 Release 页面: https://github.com/${{ github.repository }}/releases/tag/${{ github.ref_name }}" | |
| echo "📝 更新日志: https://github.com/${{ github.repository }}/blob/main/CHANGELOG.md" |