|
4 | 4 | workflow_dispatch: |
5 | 5 |
|
6 | 6 | jobs: |
7 | | - Publish: |
| 7 | + Prepare: |
8 | 8 | runs-on: ubuntu-24.04 |
9 | 9 |
|
10 | 10 | steps: |
@@ -104,6 +104,54 @@ jobs: |
104 | 104 | dotnet run --project tool/OpenCvSharp.NupkgBetaRemover --configuration Release -- "$f" |
105 | 105 | done |
106 | 106 |
|
| 107 | + - name: Verify no beta versions remain |
| 108 | + run: | |
| 109 | + if find . -maxdepth 1 -name "*-beta*" -type f | grep -q .; then |
| 110 | + echo "ERROR: beta packages still exist after rename" |
| 111 | + find . -maxdepth 1 -name "*-beta*" -type f |
| 112 | + exit 1 |
| 113 | + fi |
| 114 | +
|
| 115 | + - name: List packages to publish |
| 116 | + run: | |
| 117 | + echo "=== Packages ready for publishing ===" |
| 118 | + ls -lh *.nupkg *.snupkg 2>/dev/null || true |
| 119 | +
|
| 120 | + echo "## NuGet Packages to Publish" >> $GITHUB_STEP_SUMMARY |
| 121 | + echo "" >> $GITHUB_STEP_SUMMARY |
| 122 | + echo "| Package | Size |" >> $GITHUB_STEP_SUMMARY |
| 123 | + echo "|---------|------|" >> $GITHUB_STEP_SUMMARY |
| 124 | + for f in *.nupkg; do |
| 125 | + [ -f "$f" ] || continue |
| 126 | + size=$(du -h "$f" | cut -f1) |
| 127 | + echo "| \`${f}\` | ${size} |" >> $GITHUB_STEP_SUMMARY |
| 128 | + done |
| 129 | + echo "" >> $GITHUB_STEP_SUMMARY |
| 130 | + echo "**Total:** $(find . -maxdepth 1 -name '*.nupkg' | wc -l) nupkg, $(find . -maxdepth 1 -name '*.snupkg' | wc -l) snupkg" >> $GITHUB_STEP_SUMMARY |
| 131 | +
|
| 132 | + - name: Upload release packages |
| 133 | + uses: actions/upload-artifact@v6 |
| 134 | + with: |
| 135 | + name: release-packages |
| 136 | + path: | |
| 137 | + *.nupkg |
| 138 | + *.snupkg |
| 139 | + retention-days: 7 |
| 140 | + |
| 141 | + Publish: |
| 142 | + needs: Prepare |
| 143 | + runs-on: ubuntu-24.04 |
| 144 | + environment: nuget-production |
| 145 | + |
| 146 | + steps: |
| 147 | + - name: Download release packages |
| 148 | + uses: actions/download-artifact@v6 |
| 149 | + with: |
| 150 | + name: release-packages |
| 151 | + |
| 152 | + - name: List packages |
| 153 | + run: ls -lh *.nupkg *.snupkg 2>/dev/null || true |
| 154 | + |
107 | 155 | - name: Push to nuget.org |
108 | 156 | run: | |
109 | 157 | dotnet nuget push "*.nupkg" -k ${{secrets.NUGET_ORG_API_KEY}} -s https://api.nuget.org/v3/index.json --skip-duplicate |
|
0 commit comments