mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 05:00:16 +03:00

As preparation for druntime/Phobos CI, so that they can use this file too instead of having to duplicate these steps in their .cirrus.yml.
95 lines
2.3 KiB
YAML
95 lines
2.3 KiB
YAML
common_steps_template: &COMMON_STEPS_TEMPLATE
|
|
install_prerequisites_script: ./cirrusci.sh
|
|
install_host_compiler_script: |
|
|
set -uexo pipefail
|
|
# kludge for ci.sh
|
|
if [ "${DMD:0:4}" == "gdmd" ]; then export DMD="gdmd"; fi
|
|
compiler="$DMD"
|
|
if [ -n "${D_VERSION+x}" ]; then compiler="$DMD-$D_VERSION"; fi
|
|
./ci.sh install_d "$compiler"
|
|
setup_repos_script: |
|
|
set -uexo pipefail
|
|
ln -s $CIRRUS_WORKING_DIR ../dmd
|
|
BRANCH="${CIRRUS_BASE_BRANCH:-$CIRRUS_BRANCH}" ./ci.sh setup_repos
|
|
build_script: ./ci.sh build
|
|
test_dmd_script: ./ci.sh test_dmd
|
|
test_druntime_script: ./ci.sh test_druntime
|
|
test_phobos_script: ./ci.sh test_phobos
|
|
|
|
environment:
|
|
CIRRUS_CLONE_DEPTH: 50
|
|
# for ci.sh:
|
|
MODEL: 64
|
|
DMD: dmd
|
|
N: 4
|
|
OS_NAME: linux
|
|
FULL_BUILD: true
|
|
|
|
# Linux
|
|
task:
|
|
name: Ubuntu 16.04 $TASK_NAME_SUFFIX
|
|
container:
|
|
image: ubuntu:16.04
|
|
cpu: 4
|
|
memory: 8G
|
|
timeout_in: 60m
|
|
environment:
|
|
matrix:
|
|
- TASK_NAME_SUFFIX: x86, DMD (latest)
|
|
MODEL: 32
|
|
- TASK_NAME_SUFFIX: x86, DMD (bootstrap)
|
|
MODEL: 32
|
|
D_VERSION: 2.079.0
|
|
- TASK_NAME_SUFFIX: x64, DMD (latest)
|
|
- TASK_NAME_SUFFIX: x64, DMD (bootstrap)
|
|
D_VERSION: 2.079.0
|
|
- TASK_NAME_SUFFIX: x64, LDC
|
|
DMD: ldc
|
|
- TASK_NAME_SUFFIX: x64, GDC
|
|
GDC_VERSION: 9
|
|
DMD: gdmd-9
|
|
<< : *COMMON_STEPS_TEMPLATE
|
|
|
|
# Mac
|
|
task:
|
|
name: macOS 10.15 x64, $TASK_NAME_SUFFIX
|
|
osx_instance:
|
|
image: catalina-xcode
|
|
timeout_in: 60m
|
|
environment:
|
|
OS_NAME: darwin
|
|
# override Cirrus default OS (`darwin`)
|
|
OS: osx
|
|
matrix:
|
|
- TASK_NAME_SUFFIX: DMD (latest)
|
|
- TASK_NAME_SUFFIX: DMD (bootstrap)
|
|
# de-facto bootstrap version on OSX
|
|
# See: https://forum.dlang.org/post/qfsgt2$1goc$1@digitalmars.com
|
|
D_VERSION: 2.088.0
|
|
<< : *COMMON_STEPS_TEMPLATE
|
|
|
|
# FreeBSD
|
|
task:
|
|
name: FreeBSD 12.1 x64, DMD (latest)
|
|
freebsd_instance:
|
|
image_family: freebsd-12-1
|
|
cpu: 4
|
|
memory: 8G
|
|
timeout_in: 60m
|
|
environment:
|
|
OS_NAME: freebsd
|
|
install_bash_script: pkg install -y bash
|
|
<< : *COMMON_STEPS_TEMPLATE
|
|
|
|
task:
|
|
name: FreeBSD 11.4 x64, DMD (bootstrap)
|
|
freebsd_instance:
|
|
image_family: freebsd-11-4
|
|
cpu: 4
|
|
memory: 8G
|
|
timeout_in: 60m
|
|
environment:
|
|
OS_NAME: freebsd
|
|
D_VERSION: 2.079.0
|
|
install_bash_script: pkg install -y bash
|
|
<< : *COMMON_STEPS_TEMPLATE
|