diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 67c5bb2b..f3f10943 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -6,8 +6,9 @@ on: - 'v*.*.*' jobs: + create-binaries-windows: - runs-on: windows-latest + strategy: matrix: conf: @@ -18,52 +19,75 @@ jobs: target: x86_64-pc-windows-msvc - conf: i686-pc-windows-msvc target: i686-pc-windows-msvc + + runs-on: windows-latest + steps: - uses: actions/checkout@v2 - - uses: olegtarasov/get-tag@v2 - id: tagName + - name: Install Rust uses: actions-rs/toolchain@v1 with: - target: ${{ matrix.target }} profile: minimal toolchain: stable + target: ${{ matrix.target }} override: true + - name: Build oxipng run: | cargo build --release --target ${{ matrix.target }} + + - name: Get the version + shell: bash + id: tagName + run: | + VERSION=$(cargo pkgid | cut -d# -f2 | cut -d: -f2) + echo "::set-output name=tag::$VERSION" + - name: Create zip run: | $OXIPNG_PATH="$Env:GITHUB_WORKSPACE\target\${{ matrix.target }}\release" strip "$OXIPNG_PATH\oxipng.exe" - 7z a oxipng-${{ steps.tagName.outputs.tag }}-${{ matrix.target }}.zip "$OXIPNG_PATH\oxipng.exe" + 7z a oxipng-${{ steps.tagName.outputs.tag }}-${{ matrix.target }}.zip ` + "$OXIPNG_PATH\oxipng.exe" + - name: Upload artifacts - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v2 with: name: oxipng-${{ steps.tagName.outputs.tag }}-${{ matrix.target }} path: oxipng-${{ steps.tagName.outputs.tag }}-${{ matrix.target }}.zip deploy: + needs: create-binaries-windows + runs-on: ubuntu-latest + steps: - uses: actions/checkout@v2 - - uses: olegtarasov/get-tag@v2 + + - name: Get the version id: tagName - - name: Download x86_64 Windows - uses: actions/download-artifact@v1 + run: | + VERSION=$(cargo pkgid | cut -d# -f2 | cut -d: -f2) + echo "::set-output name=tag::$VERSION" + + - name: Download x86_64 Windows artifact + uses: actions/download-artifact@v2 with: name: oxipng-${{ steps.tagName.outputs.tag }}-x86_64-pc-windows-msvc - - name: Download i686 Windows - uses: actions/download-artifact@v1 + + - name: Download i686 Windows artifact + uses: actions/download-artifact@v2 with: name: oxipng-${{ steps.tagName.outputs.tag }}-i686-pc-windows-msvc + - name: Create a release uses: softprops/action-gh-release@v1 with: name: ${{ steps.tagName.outputs.tag }} files: | - oxipng-${{ steps.tagName.outputs.tag }}-x86_64-pc-windows-msvc/oxipng-${{ steps.tagName.outputs.tag }}-x86_64-pc-windows-msvc.zip - oxipng-${{ steps.tagName.outputs.tag }}-i686-pc-windows-msvc/oxipng-${{ steps.tagName.outputs.tag }}-i686-pc-windows-msvc.zip + oxipng-${{ steps.tagName.outputs.tag }}-x86_64-pc-windows-msvc.zip + oxipng-${{ steps.tagName.outputs.tag }}-i686-pc-windows-msvc.zip env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}