winpkg.yml 2.75 KB
---
name: WinPKG
on:
  pull_request:
    branches:
      - master
  push:
    branches:
      - winpkg
jobs:
  msys2-mingw64:
    name: Publish for Windows 64
    runs-on: windows-latest
    defaults:
      run:
        shell: msys2 {0}
    steps:
      - uses: actions/checkout@v3
      - uses: oprypin/find-latest-tag@v1
        id: gettag
        with:
          repository: PerryWerneck/pw3270
          releases-only: true
      - uses: msys2/setup-msys2@v2
        with:
          msystem: mingw64
          update: true
          install: xz mingw-w64-x86_64-gcc automake autoconf make git pkgconf
            mingw-w64-x86_64-gettext gettext-devel mingw-w64-x86_64-openssl
            libtool mingw-w64-x86_64-gtk3 mingw-w64-x86_64-librsvg mingw-w64-x86_64-gdk-pixbuf2
            mingw-w64-x86_64-nsis 
      - uses: robinraju/release-downloader@v1.7
        with:
          repository: PerryWerneck/lib3270
          latest: true
          fileName: mingw-w64-x86_64-lib3270.tar.xz
      - uses: robinraju/release-downloader@v1.7
        with:
          repository: PerryWerneck/libv3270
          latest: true
          fileName: mingw-w64-x86_64-libv3270.tar.xz
      - name: BuildApp
        run: ./win/ci-build.sh
      - name: Install pw3270
        run: make DESTDIR=${PWD}/.build install
      - uses: robinraju/release-downloader@v1.7
        with:
          repository: PerryWerneck/libipc3270
          latest: true
          fileName: mingw-w64-x86_64-libipc3270.tar.xz
      - uses: robinraju/release-downloader@v1.7
        with:
          repository: PerryWerneck/libhllapi
          latest: true
          fileName: mingw-hllapi.tar.xz
      - uses: robinraju/release-downloader@v1.7
        with:
          repository: PerryWerneck/pw3270-plugin-ipc
          latest: true
          fileName: mingw-w64-x86_64-pw3270-plugin-ipc.tar.xz
      - name: Unpack lib3270
        run: tar -C ./.build -Jxvf mingw-w64-x86_64-lib3270.tar.xz
      - name: Unpack libv3270
        run: tar -C ./.build -Jxvf mingw-w64-x86_64-libv3270.tar.xz
      - name: Unpack ipcplugin
        run: tar -C ./.build -Jxvf mingw-w64-x86_64-plugin-ipc.tar.xz
      - name: Unpack ipc3270
        run: tar -C ./.build -Jxvf mingw-w64-x86_64-libipc3270.tar.xz
      - name: Unpack hllapi
        run: tar -C ./.build -Jxvf mingw-hllapi.tar.xz
      - name: Make Runtime
        run: /bin/bash ./win/bundle
      - name: Make Package
        run: tar -C ./.build -Jcvf mingw-w64-x86_64-pw3270.tar.xz .
      - uses: ncipollo/release-action@v1
        with:
          tag: ${{ steps.gettag.outputs.tag }}
          artifacts: "*-pw3270.tar.xz"
          allowUpdates: true
          draft: false
          makeLatest: true
          omitBody: true
          omitPrereleaseDuringUpdate: true
          replacesArtifacts: true