forked from CleverRaven/Cataclysm-DDA
-
Notifications
You must be signed in to change notification settings - Fork 0
72 lines (69 loc) · 1.99 KB
/
basic-build.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
name: Basic Build
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
skip-duplicates:
continue-on-error: true
runs-on: ubuntu-latest
# Map a step output to a job output
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/skip-duplicate-actions@master
with:
cancel_others: 'true'
paths_ignore: '["android/**", "build-data/osx/**", "doc/**", "doxygen_doc/**", "lgtm/**", "msvc-**", "object_creator/**", "tools/**", "utilities/**"]'
basic-build:
needs: skip-duplicates
if: ${{ needs.skip-duplicates.outputs.should_skip != 'true' }}
name: Basic Build and Test (GCC 9, Curses, LTO)
runs-on: ubuntu-latest
env:
COMPILER: g++-9
TEST_STAGE: 1
EXTRA_TEST_OPTS: --error-format=github-action
NATIVE: linux64
GOLD: 1
LTO: 1
RELEASE: 1
steps:
- name: checkout repository
uses: actions/checkout@v1
with:
fetch-depth: 1
- name: install dependencies (ubuntu)
if: runner.os == 'Linux'
run: |
sudo apt-get update
sudo apt-get install libncursesw5-dev ccache gettext parallel
- name: prepare
run: bash ./build-scripts/requirements.sh
- name: Get Date
id: get-date
run: |
echo "::set-output name=date::$(/bin/date -u "+%Y%m%d%H%M")"
shell: bash
- name: ccache cache files (ubuntu)
if: runner.os == 'Linux'
uses: actions/cache@v2
with:
path: ~/.ccache
key: ccache-linux-g++-9-${{ steps.get-date.outputs.date }}
restore-keys: |
ccache-linux-g++-9-
- uses: ammaraskar/gcc-problem-matcher@master
- name: build and test
run: bash ./build-scripts/build.sh
- name: upload artifacts if failed
uses: actions/upload-artifact@v2
if: failure()
with:
name: cata_test
path: tests/cata_test
if-no-files-found: ignore