subconverter/.travis.yml
2021-03-23 18:15:01 +08:00

152 lines
5.5 KiB
YAML

language: cpp
os: linux
stages:
- name: deploy
if: branch = master
- name: before_script
if: branch = master
jobs:
include:
- name: "macOS Build"
os: osx
compiler: clang
osx_image: xcode11.3
script:
- bash scripts/build.macos.release.sh
before_deploy:
- tar czf subconverter_darwin64.tar.gz subconverter
deploy:
provider: releases
token: "$GITHUB_OAUTH_TOKEN"
file: "subconverter_darwin64.tar.gz"
skip_cleanup: true
draft: true
on:
tags: true
- name: "Linux x86 Build"
services: docker
script:
- docker run --rm -v $TRAVIS_BUILD_DIR:/root/workdir multiarch/alpine:x86-latest-stable /bin/sh -c "apk add bash git && cd /root/workdir && chmod +x scripts/build.alpine.release.sh && bash scripts/build.alpine.release.sh"
before_deploy:
- tar czf subconverter_linux32.tar.gz subconverter/
deploy:
provider: releases
token: "$GITHUB_OAUTH_TOKEN"
file: "subconverter_linux32.tar.gz"
skip_cleanup: true
draft: true
on:
tags: true
- name: "Linux x86_64 Build"
services: docker
script:
- docker run -v $TRAVIS_BUILD_DIR:/root/workdir multiarch/alpine:amd64-latest-stable /bin/sh -c "apk add bash git && cd /root/workdir && chmod +x scripts/build.alpine.release.sh && bash scripts/build.alpine.release.sh"
before_deploy:
- tar czf subconverter_linux64.tar.gz subconverter/
deploy:
provider: releases
token: "$GITHUB_OAUTH_TOKEN"
file: "subconverter_linux64.tar.gz"
skip_cleanup: true
draft: true
on:
tags: true
- name: "Linux ARMHF Build"
services: docker
arch: arm64
script:
- docker run --rm -v $TRAVIS_BUILD_DIR:/root/workdir multiarch/alpine:armhf-latest-stable /bin/sh -c "apk add bash git && cd /root/workdir && chmod +x scripts/build.alpine.release.sh && bash scripts/build.alpine.release.sh"
before_deploy:
- tar czf subconverter_armhf.tar.gz subconverter/
deploy:
provider: releases
token: "$GITHUB_OAUTH_TOKEN"
file: "subconverter_armhf.tar.gz"
skip_cleanup: true
draft: true
on:
tags: true
- name: "Linux ARM64 Build"
services: docker
arch: arm64
script:
- docker run -v $TRAVIS_BUILD_DIR:/root/workdir multiarch/alpine:aarch64-latest-stable /bin/sh -c "apk add bash git && cd /root/workdir && chmod +x scripts/build.alpine.release.sh && bash scripts/build.alpine.release.sh"
before_deploy:
- tar czf subconverter_aarch64.tar.gz subconverter/
deploy:
provider: releases
token: "$GITHUB_OAUTH_TOKEN"
file: "subconverter_aarch64.tar.gz"
skip_cleanup: true
draft: true
on:
tags: true
- name: "Windows x86_64 Build"
os: windows
before_install:
- |-
[[ ! -f C:/tools/msys64/msys2_shell.cmd ]] && rm -rf C:/tools/msys64
choco uninstall -y mingw
choco upgrade --no-progress -y msys2 nodejs
export msys2='cmd //C RefreshEnv.cmd '
export msys2+='& set MSYS=winsymlinks:nativestrict '
export msys2+='& C:\\tools\\msys64\\msys2_shell.cmd -defterm -no-start'
export mingw64="$msys2 -mingw64 -full-path -here -c "\"\$@"\" --"
export msys2+=" -msys2 -c "\"\$@"\" --"
$msys2 pacman --sync --noconfirm --needed base-devel git mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-libevent mingw-w64-x86_64-pcre2 patch
taskkill //IM gpg-agent.exe //F
export PATH=/C/tools/msys64/mingw64/bin:$PATH
export MAKE=make
before_cache:
- |-
$msys2 pacman --sync --clean --noconfirm
cache:
directories:
- $HOME/AppData/Local/Temp/chocolatey
script:
- $mingw64 bash scripts/build.windows.release.sh
before_deploy:
- 7z a subconverter_win64.7z subconverter/
deploy:
provider: releases
token: "$GITHUB_OAUTH_TOKEN"
file: "subconverter_win64.7z"
skip_cleanup: true
draft: true
on:
tags: true
- name: "Windows x86 Build"
os: windows
before_install:
- |-
[[ ! -f C:/tools/msys64/msys2_shell.cmd ]] && rm -rf C:/tools/msys64
choco uninstall -y mingw
choco upgrade --no-progress -y msys2 nodejs
export msys2='cmd //C RefreshEnv.cmd '
export msys2+='& set MSYS=winsymlinks:nativestrict '
export msys2+='& C:\\tools\\msys64\\msys2_shell.cmd -defterm -no-start'
export mingw32="$msys2 -mingw32 -full-path -here -c "\"\$@"\" --"
export msys2+=" -msys2 -c "\"\$@"\" --"
$msys2 pacman --sync --noconfirm --needed base-devel git mingw-w64-i686-gcc mingw-w64-i686-cmake mingw-w64-i686-libevent mingw-w64-i686-pcre2 patch
taskkill //IM gpg-agent.exe //F
export PATH=/C/tools/msys64/mingw64/bin:$PATH
export MAKE=make
before_cache:
- |-
$msys2 pacman --sync --clean --noconfirm
cache:
directories:
- $HOME/AppData/Local/Temp/chocolatey
script:
- $mingw32 bash scripts/build.windows.release.sh
before_deploy:
- 7z a subconverter_win32.7z subconverter/
deploy:
provider: releases
token: "$GITHUB_OAUTH_TOKEN"
file: "subconverter_win32.7z"
skip_cleanup: true
draft: true
on:
tags: true