116 lines
3.0 KiB
YAML
116 lines
3.0 KiB
YAML
os: linux
|
|
dist: xenial
|
|
language: c
|
|
git:
|
|
submodules: false
|
|
if: tag != edge
|
|
stages:
|
|
- test
|
|
- name: clean
|
|
if: (NOT type IN (pull_request)) AND (branch = master)
|
|
- name: deploy
|
|
if: (NOT type IN (pull_request)) AND (branch = master OR tag IS present)
|
|
jobs:
|
|
include:
|
|
- stage: clean
|
|
name: Remove Github Release
|
|
os: linux
|
|
dist: bionic
|
|
script: .travis/remove-edge.sh
|
|
- stage: test
|
|
name: macOS
|
|
os: osx
|
|
osx_image: xcode12.2
|
|
install: ".travis/install-macos.sh"
|
|
script: ".travis/build-macos.sh"
|
|
- stage: deploy
|
|
name: macOS
|
|
os: osx
|
|
osx_image: xcode12.2
|
|
install: ".travis/install-macos.sh"
|
|
script: ".travis/build-macos.sh release && .travis/sign-macos.sh"
|
|
before_deploy: source .travis/tag-edge.sh
|
|
deploy:
|
|
provider: releases
|
|
skip_cleanup: true
|
|
prerelease: true
|
|
overwrite: true
|
|
edge: true
|
|
name: ${TRAVIS_TAG:-edge}
|
|
release_notes: $TRAVIS_COMMIT_MESSAGE
|
|
file: build/bin/SolveSpace.dmg
|
|
on:
|
|
all_branches: true
|
|
- stage: test
|
|
name: "Ubuntu"
|
|
os: linux
|
|
dist: bionic
|
|
install: .travis/install-ubuntu.sh
|
|
script: .travis/build-ubuntu.sh
|
|
- stage: test
|
|
name: "Windows"
|
|
os: windows
|
|
install: .travis/install-windows.sh
|
|
script: .travis/build-windows.sh
|
|
- stage: deploy
|
|
name: "Windows"
|
|
os: windows
|
|
install: .travis/install-windows.sh
|
|
script: .travis/build-windows.sh release
|
|
before_deploy: source .travis/tag-edge.sh
|
|
deploy:
|
|
provider: releases
|
|
skip_cleanup: true
|
|
prerelease: true
|
|
overwrite: true
|
|
edge: true
|
|
name: ${TRAVIS_TAG:-edge}
|
|
release_notes: $TRAVIS_COMMIT_MESSAGE
|
|
file: build/bin/RelWithDebInfo/solvespace.exe
|
|
on:
|
|
all_branches: true
|
|
- stage: deploy
|
|
name: "Windows with OpenMP"
|
|
os: windows
|
|
install: .travis/install-windows.sh
|
|
script: .travis/build-windows.sh release openmp
|
|
before_deploy: source .travis/tag-edge.sh
|
|
deploy:
|
|
provider: releases
|
|
skip_cleanup: true
|
|
prerelease: true
|
|
overwrite: true
|
|
edge: true
|
|
name: ${TRAVIS_TAG:-edge}
|
|
release_notes: $TRAVIS_COMMIT_MESSAGE
|
|
file: build/bin/RelWithDebInfo/solvespace-openmp.exe
|
|
on:
|
|
all_branches: true
|
|
- &deploy-snap
|
|
stage: deploy
|
|
name: Snap amd64
|
|
os: linux
|
|
arch: amd64
|
|
dist: focal
|
|
addons:
|
|
snaps:
|
|
- name: snapcraft
|
|
confinement: classic
|
|
- name: lxd
|
|
install: .travis/install-snap.sh
|
|
script: .travis/build-snap.sh
|
|
deploy:
|
|
- provider: script
|
|
script: .travis/deploy-snap.sh edge
|
|
skip_cleanup: true
|
|
- provider: script
|
|
script: .travis/deploy-snap.sh edge,beta
|
|
skip_cleanup: true
|
|
on:
|
|
tags: true
|
|
- <<: *deploy-snap
|
|
name: Snap arm64
|
|
arch: arm64-graviton2
|
|
group: edge
|
|
virt: vm
|