Skip to content

Add button for synchronizing custom modules #4103

Add button for synchronizing custom modules

Add button for synchronizing custom modules #4103

Workflow file for this run

name: Build Ezra Bible App packages
on:
push:
release:
types:
- published
jobs:
build-win32:
name: Build Windows installer
runs-on: windows-2019
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '14'
- name: Remove docs folder
run: Remove-Item -Recurse -Force docs
shell: pwsh
- name: Build
uses: nick-fields/retry@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
timeout_minutes: 10
max_attempts: 3
command: powershell .\build_scripts\win32\build_win32.bat
- name: Build installer
run: powershell .\build_scripts\win32\build_installer_win32.bat
- name: Upload symbols
run: powershell .\build_scripts\win32\upload_symbols_to_sentry.bat
env:
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Rename installer
run: Get-ChildItem release\packages\*Setup.exe | rename-item -NewName { "ezra-bible-app_win32_setup_latest.exe" }
shell: pwsh
- name: Upload installer
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_win32_latest
path: release\packages\ezra-bible-app_win32_setup_latest.exe
# build-mac:
# name: Build macOS DMG file
# runs-on: macos-latest
# steps:
# - uses: actions/checkout@v4
# - name: Install pkg-config
# run: brew install pkg-config
# - name: Build
# run: npm run build-mac
# - name: Generate dmg
# run: npm install electron-installer-dmg macos-alias ds-store && npm run dmg-mac
# - name: Upload dmg
# uses: actions/upload-artifact@v1.0.0
# with:
# name: ezra-bible-app_macos_latest
# path: release/ezra-bible-app.dmg
build-ubuntu-1804:
name: Build Ubuntu 18.04 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_ubuntu1804
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload deb file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_ubuntu1804_latest
path: ezra-bible-app_latest.deb
build-ubuntu-2004:
name: Build Ubuntu 20.04 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_ubuntu2004
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload deb file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_ubuntu2004_latest
path: ezra-bible-app_latest.deb
build-ubuntu-2204:
name: Build Ubuntu 22.04 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_ubuntu2204
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload deb file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_ubuntu2204_latest
path: ezra-bible-app_latest.deb
build-mint18:
name: Build Mint 18 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_mint18
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload deb file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_mint18_latest
path: ezra-bible-app_latest.deb
build-buster:
name: Build Debian 10 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_buster
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload deb file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_debian10_latest
path: ezra-bible-app_latest.deb
build-bullseye:
name: Build Debian 11 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_bullseye
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload deb file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_debian11_latest
path: ezra-bible-app_latest.deb
build-bookworm:
name: Build Debian 12 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_bookworm
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload deb file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_debian12_latest
path: ezra-bible-app_latest.deb
build-fedora31:
name: Build Fedora 31 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_fedora31
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload rpm file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_fedora31_latest
path: ezra-bible-app_latest.rpm
build-fedora33:
name: Build Fedora 33 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_fedora33
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
# Create package and rename package are separate steps for Fedora 33,
# because for some reason electron-installer-redhat is not properly
# working on Fedora 33!
- name: Fix permissions
run: sudo chown -R 1001:1001 $GITHUB_WORKSPACE
- name: Create package
run: npm install electron-installer-redhat && npm run rpm_fedora
- name: Rename package
run: mv release/packages/*.rpm $GITHUB_WORKSPACE/ezra-bible-app_latest.rpm
- name: Upload rpm file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_fedora33_latest
path: ezra-bible-app_latest.rpm
build-fedora35:
name: Build Fedora 35 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_fedora35
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
# Create package and rename package are separate steps for Fedora 35,
# because for some reason electron-installer-redhat is not properly
# working on Fedora 35!
- name: Fix permissions
run: sudo chown -R 1001:1001 $GITHUB_WORKSPACE
- name: Create package
run: npm install electron-installer-redhat && npm run rpm_fedora35
- name: Rename package
run: mv release/packages/*.rpm $GITHUB_WORKSPACE/ezra-bible-app_latest.rpm
- name: Upload rpm file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_fedora35_latest
path: ezra-bible-app_latest.rpm
build-fedora37:
name: Build Fedora 37 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_fedora37
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
# Create package and rename package are separate steps for Fedora 35,
# because for some reason electron-installer-redhat is not properly
# working on Fedora 35!
- name: Fix permissions
run: sudo chown -R 1001:1001 $GITHUB_WORKSPACE
- name: Create package
run: npm install electron-installer-redhat && npm run rpm_fedora37
- name: Rename package
run: mv release/packages/*.rpm $GITHUB_WORKSPACE/ezra-bible-app_latest.rpm
- name: Upload rpm file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_fedora37_latest
path: ezra-bible-app_latest.rpm
build-centos8:
name: Build CentOS 8 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_centos8
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload rpm file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_centos8_latest
path: ezra-bible-app_latest.rpm
build-opensuse-leap:
name: Build OpenSuse Leap 15.2 package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/build_opensuseleap
env:
SENTRY_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Upload rpm file
uses: actions/upload-artifact@v1.0.0
with:
name: ezra-bible-app_opensuse_leap_15.2_latest
path: ezra-bible-app_latest.rpm
release:
if: "github.event.release"
name: Publish release artifacts
runs-on: ubuntu-latest
needs: [ build-win32, build-ubuntu-1804,
build-ubuntu-2004, build-ubuntu-2204,
build-mint18, build-buster,
build-bullseye, build-bookworm, build-fedora31,
build-fedora33, build-fedora35, build-fedora37,
build-centos8, build-opensuse-leap ]
steps:
- name: Download win32 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_win32_latest
- name: Download ubuntu-1804 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_ubuntu1804_latest
- name: Download ubuntu-2004 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_ubuntu2004_latest
- name: Download ubuntu-2204 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_ubuntu2204_latest
- name: Download mint18 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_mint18_latest
- name: Download debian10 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_debian10_latest
- name: Download debian11 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_debian11_latest
- name: Download debian12 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_debian12_latest
- name: Download fedora31 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_fedora31_latest
- name: Download fedora33 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_fedora33_latest
- name: Download fedora35 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_fedora35_latest
- name: Download fedora37 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_fedora37_latest
- name: Download centos8 package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_centos8_latest
- name: Download opensuse leap package
uses: actions/download-artifact@v1.0.0
with:
name: ezra-bible-app_opensuse_leap_15.2_latest
- name: Rename artifacts for publishing
shell: bash
run: |
mkdir packages
mv ezra-bible-app_win32_latest/ezra-bible-app_win32_setup_latest.exe packages/ezra-bible-app_win32_setup-${GITHUB_REF##*/}.exe
mv ezra-bible-app_ubuntu1804_latest/ezra-bible-app_latest.deb packages/ezra-bible-app_ubuntu1804-${GITHUB_REF##*/}.deb
mv ezra-bible-app_ubuntu2004_latest/ezra-bible-app_latest.deb packages/ezra-bible-app_ubuntu2004-${GITHUB_REF##*/}.deb
mv ezra-bible-app_ubuntu2204_latest/ezra-bible-app_latest.deb packages/ezra-bible-app_ubuntu2204-${GITHUB_REF##*/}.deb
mv ezra-bible-app_mint18_latest/ezra-bible-app_latest.deb packages/ezra-bible-app_mint18-${GITHUB_REF##*/}.deb
mv ezra-bible-app_debian10_latest/ezra-bible-app_latest.deb packages/ezra-bible-app_debian10-${GITHUB_REF##*/}.deb
mv ezra-bible-app_debian11_latest/ezra-bible-app_latest.deb packages/ezra-bible-app_debian11-${GITHUB_REF##*/}.deb
mv ezra-bible-app_debian12_latest/ezra-bible-app_latest.deb packages/ezra-bible-app_debian12-${GITHUB_REF##*/}.deb
mv ezra-bible-app_centos8_latest/ezra-bible-app_latest.rpm packages/ezra-bible-app_centos8-${GITHUB_REF##*/}.rpm
mv ezra-bible-app_fedora31_latest/ezra-bible-app_latest.rpm packages/ezra-bible-app_fedora31-${GITHUB_REF##*/}.rpm
mv ezra-bible-app_opensuse_leap_15.2_latest/ezra-bible-app_latest.rpm packages/ezra-bible-app_opensuse_leap_15.2-${GITHUB_REF##*/}.rpm
mv ezra-bible-app_fedora33_latest/ezra-bible-app_latest.rpm packages/ezra-bible-app_fedora33-${GITHUB_REF##*/}.rpm
mv ezra-bible-app_fedora35_latest/ezra-bible-app_latest.rpm packages/ezra-bible-app_fedora35-${GITHUB_REF##*/}.rpm
mv ezra-bible-app_fedora37_latest/ezra-bible-app_latest.rpm packages/ezra-bible-app_fedora37-${GITHUB_REF##*/}.rpm
- name: Publish artifacts
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: packages/*.*