mirror of
https://github.com/wangdage12/Snap.Hutao.git
synced 2026-02-17 15:06:39 +08:00
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/cache dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
98 lines
3.2 KiB
YAML
98 lines
3.2 KiB
YAML
name: Snap Hutao Canary
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches-ignore:
|
|
- l10n_develop
|
|
- main
|
|
- release
|
|
- dependabot/**
|
|
paths-ignore:
|
|
- '.gitattributes'
|
|
- '.github/**'
|
|
- '.gitignore'
|
|
- '.gitmodules'
|
|
- '**.md'
|
|
- 'LICENSE'
|
|
- '**.yml'
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: windows-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v6
|
|
with:
|
|
ref: develop
|
|
fetch-depth: 0
|
|
|
|
- name: Merge all branches into develop locally
|
|
id: merge
|
|
run: |
|
|
$continue = $true
|
|
|
|
git config user.name "github-actions[bot]"
|
|
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
|
git fetch origin '+refs/heads/*:refs/remotes/origin/*'
|
|
git checkout origin/develop
|
|
$response = curl -s https://api.github.com/repos/DGP-Studio/Snap.Hutao/pulls?state=open
|
|
$refs = $response | ConvertFrom-Json | Where-Object { $_.draft -eq $false } | ForEach-Object { $_.head.ref }
|
|
if ($refs.Count -eq 0 -or ($refs.Count -eq 1 -and $refs -eq "l10n_develop")) {
|
|
echo "No PRs to merge"
|
|
$continue = $false
|
|
echo "continue=$continue" >> $Env:GITHUB_OUTPUT
|
|
exit
|
|
}
|
|
|
|
foreach ($ref in $refs) {
|
|
echo "Merging $ref into develop"
|
|
git merge "origin/$ref" --strategy=ort --allow-unrelated-histories -m "Merge $ref into develop"
|
|
}
|
|
|
|
echo "continue=$continue" >> $Env:GITHUB_OUTPUT
|
|
|
|
- name: Setup .NET
|
|
if: ${{ steps.merge.outputs.continue == 'true' }}
|
|
uses: actions/setup-dotnet@v5
|
|
with:
|
|
dotnet-version: 10.0
|
|
|
|
- name: Cache NuGet packages
|
|
if: ${{ steps.merge.outputs.continue == 'true' }}
|
|
uses: actions/cache@v5
|
|
with:
|
|
path: ~/.nuget/packages
|
|
key: ${{ runner.os }}-nuget-${{ hashFiles('**/Snap.Hutao.csproj') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-nuget-
|
|
|
|
- name: Cake
|
|
if: ${{ steps.merge.outputs.continue == 'true' }}
|
|
id: cake
|
|
shell: pwsh
|
|
run: dotnet tool restore && dotnet cake
|
|
env:
|
|
CERTIFICATE: ${{ secrets.CERTIFICATE }}
|
|
PW: ${{ secrets.PW }}
|
|
|
|
- name: Upload signed msix
|
|
if: ${{ success() && steps.merge.outputs.continue == 'true' }}
|
|
uses: actions/upload-artifact@v5
|
|
with:
|
|
name: Snap.Hutao.Canary-${{ steps.cake.outputs.version }}
|
|
path: ${{ github.workspace }}/src/output/Snap.Hutao.Canary-${{ steps.cake.outputs.version }}.msix
|
|
|
|
- name: Add summary
|
|
if: ${{ success() && steps.merge.outputs.continue == 'true' }}
|
|
shell: pwsh
|
|
run: |
|
|
$summary = "
|
|
> [!WARNING]
|
|
> 该版本是由 CI 程序自动打包生成的 `Canary` 测试版本,包含新功能原型及问题修复
|
|
|
|
> [!IMPORTANT]
|
|
> 请先安装 **[DGP_Studio_CA.crt](https://github.com/DGP-Automation/Hutao-Auto-Release/releases/download/certificate-ca/DGP_Studio_CA.crt)** 到 **受信任的根证书颁发机构** 以安装测试版安装包
|
|
"
|
|
|
|
echo $summary >> $Env:GITHUB_STEP_SUMMARY
|