diff options
| author | Yong He <yonghe@outlook.com> | 2020-12-04 10:44:03 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-12-04 10:44:03 -0800 |
| commit | e98c32f5eb1c6e880ed69a135e798b3c43f77d93 (patch) | |
| tree | 270a0008420b668207cf209b4ac3d4f3c18b3c06 /.github/workflows | |
| parent | 47ed0f68602a8ed0c425d2a4666969ad0db04ca6 (diff) | |
add windows release script (#1627)
Co-authored-by: Tim Foley <tfoleyNV@users.noreply.github.com>
Diffstat (limited to '.github/workflows')
| -rw-r--r-- | .github/workflows/release-linux.yml | 34 | ||||
| -rw-r--r-- | .github/workflows/release-windows.yml | 89 |
2 files changed, 95 insertions, 28 deletions
diff --git a/.github/workflows/release-linux.yml b/.github/workflows/release-linux.yml index 54cbd8c26..d07100721 100644 --- a/.github/workflows/release-linux.yml +++ b/.github/workflows/release-linux.yml @@ -39,33 +39,11 @@ jobs: tar -czf ${SLANG_BINARY_ARCHIVE_TAR} bin/*/*/slangc bin/*/*/libslang.so bin/*/*/libslang-glslang.so docs/*.md README.md LICENSE slang.h slang-com-helper.h slang-com-ptr.h slang-tag-version.h prelude/*.h echo "::set-output name=SLANG_BINARY_ARCHIVE::${SLANG_BINARY_ARCHIVE}" echo "::set-output name=SLANG_BINARY_ARCHIVE_TAR::${SLANG_BINARY_ARCHIVE_TAR}" - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ github.ref }} - release_name: Release ${{ github.ref }} - draft: false - prerelease: false - - name: Upload Release Asset (zip) - id: upload-release-asset-zip - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: UploadBinary + uses: softprops/action-gh-release@v1 with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: ./${{ steps.build.outputs.SLANG_BINARY_ARCHIVE }} - asset_name: ${{ steps.build.outputs.SLANG_BINARY_ARCHIVE }} - asset_content_type: application/zip - - name: Upload Release Asset (tar) - id: upload-release-asset-tar - uses: actions/upload-release-asset@v1 + files: | + ${{ steps.build.outputs.SLANG_BINARY_ARCHIVE }} + ${{ steps.build.outputs.SLANG_BINARY_ARCHIVE_TAR }} env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: ./${{ steps.build.outputs.SLANG_BINARY_ARCHIVE_TAR }} - asset_name: ${{ steps.build.outputs.SLANG_BINARY_ARCHIVE_TAR }} - asset_content_type: application/zip
\ No newline at end of file + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
\ No newline at end of file diff --git a/.github/workflows/release-windows.yml b/.github/workflows/release-windows.yml new file mode 100644 index 000000000..15b164efc --- /dev/null +++ b/.github/workflows/release-windows.yml @@ -0,0 +1,89 @@ +on: + push: + # Sequence of patterns matched against refs/tags + tags: + - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 + +name: Upload Release Asset - Windows + +jobs: + build: + name: Upload Release Asset - Windows + runs-on: windows-latest + strategy: + matrix: + configuration: ['Release'] + platform: ['Win32', 'x64'] + steps: + - uses: actions/checkout@v2.3.4 + with: + submodules: 'true' + fetch-depth: '0' + - name: setup-msbuild + uses: microsoft/setup-msbuild@v1 + - name: premake + run: + .\premake.bat vs2017 + - name: msbuild + run: + MSBuild.exe slang.sln -v:m -m -property:Configuration=${{matrix.configuration}} -property:Platform=${{matrix.platform}} -property:WindowsTargetPlatformVersion=10.0.19041.0 + - name: archive + id: archive + run: | + echo "achiving files..." + if ("${{matrix.platform}}" -eq "x64") + { + $slangDeployPlatform = "win64" + } + else + { + $slangDeployPlatform = "win32" + } + $tagName = & git describe --tags + $slangVersion = $tagName.TrimStart("v") + $binArchive = "slang-$slangVersion-$slangDeployPlatform.zip" + + echo "name=SLANG_BINARY_ARCHIVE::$binArchive" + echo "::set-output name=SLANG_WIN32_BINARY_ARCHIVE::$binArchive" + + 7z a "$binArchive" slang.h + 7z a "$binArchive" slang-com-helper.h + 7z a "$binArchive" slang-com-ptr.h + 7z a "$binArchive" slang-tag-version.h + 7z a "$binArchive" prelude\*.h + 7z a "$binArchive" bin\*\*\slang.dll + 7z a "$binArchive" bin\*\*\slang.lib + 7z a "$binArchive" bin\*\*\slang-glslang.dll + 7z a "$binArchive" bin\*\*\slangc.exe + 7z a "$binArchive" docs\*.md + + $srcArchive = "slang-$slangVersion-source.zip" + echo "::set-output name=SLANG_SOURCE_ARCHIVE::$srcArchive" + + 7z a "$srcArchive" slang.h + 7z a "$srcArchive" slang-com-helper.h + 7z a "$srcArchive" slang-com-ptr.h + 7z a "$srcArchive" slang-tag-version.h + 7z a "$srcArchive" prelude\*.h + 7z a "$srcArchive" source\*\*.h + 7z a "$srcArchive" source\*\*.cpp + 7z a "$srcArchive" docs\*.md + 7z a "$srcArchive" README.md + 7z a "$srcArchive" LICENSE + - name: Check outputs + shell: pwsh + run: echo "binary is ${{ steps.archive.outputs.SLANG_WIN32_BINARY_ARCHIVE }}" + - name: UploadBinary + uses: softprops/action-gh-release@v1 + with: + files: | + ${{ steps.archive.outputs.SLANG_WIN32_BINARY_ARCHIVE }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: UploadSource + uses: softprops/action-gh-release@v1 + if: ${{ matrix.platform == 'x64' }} + with: + files: ${{ steps.archive.outputs.SLANG_SOURCE_ARCHIVE }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
\ No newline at end of file |
