solvespace/.travis.yml

123 lines
3.4 KiB
YAML

os: linux
dist: xenial
language: c
git:
submodules: false
if: tag != edge
stages:
- test
- name: deploy
if: (NOT type IN (pull_request)) AND (branch = master)
jobs:
include:
- 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:
- git config --local user.name "solvespace-cd"
- git config --local user.email "no-reply@solvespace.com"
- export TRAVIS_TAG=${TRAVIS_TAG:-edge}
- git tag $TRAVIS_TAG
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:
repo: solvespace/solvespace
- 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:
- git config --local user.name "solvespace-cd"
- git config --local user.email "no-reply@solvespace.com"
- export TRAVIS_TAG=${TRAVIS_TAG:-edge}
- git tag $TRAVIS_TAG
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:
repo: solvespace/solvespace
- stage: deploy
name: "Windows with OpenMP"
os: windows
install: .travis/install-windows.sh
script: .travis/build-windows.sh release openmp
before_deploy:
- git config --local user.name "solvespace-cd"
- git config --local user.email "no-reply@solvespace.com"
- export TRAVIS_TAG=${TRAVIS_TAG:-edge}
- git tag $TRAVIS_TAG
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:
repo: solvespace/solvespace
- &deploy-snap
stage: deploy
name: Snap amd64
os: linux
arch: amd64
dist: bionic
addons:
snaps:
- name: snapcraft
confinement: classic
script: .travis/build-snap.sh
deploy:
- provider: script
script: sudo .travis/deploy-snap.sh edge
skip_cleanup: true
on:
branch: master
tags: false
- provider: script
script: sudo .travis/deploy-snap.sh edge,beta
skip_cleanup: true
on:
branch: master
tags: true
- <<: *deploy-snap
name: Snap arm64
arch: arm64-graviton2
group: edge
virt: lxd