summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: a8b937486c08c7064b9404226ca25d631bacb1de (plain) (blame)
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# Copied in from Moubootaur Legends's Hercules .gitlab-ci.yml
stages:
  - build
  - test

variables: &base_vars
  DEBIAN_COMMON_PACKAGES: make git gcc g++
  # Depth of clone. If no tag is made after this many commits, then
  # the git describe call and version header generation will fail.
  GIT_DEPTH: 100 # Will break again eventually.

.prerequisites: &prerequisites
  before_script:
    - uname -a
    - apt-get update
    - apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES

# Active server OS?
re:ubuntu1804-attoconf:build:
  <<: *prerequisites
  stage: build
  image: ubuntu:18.04
  variables:
    <<: *base_vars
    INSTALL_PACKAGES: python3
  script:
    - echo "Building TMW Athena $CI_BUILD_NAME"
    - git submodule update --init
    - git fetch -t
    - printf "Building TMW Athena version %s\n" "$(git  describe --tags HEAD)"
    - mkdir build
    - cd build
    - ../configure --user
    - make
    - whoami
    - make install
  artifacts: # required for test stage
    untracked: true
    expire_in: 30 mins

# Next server OS?
re:ubuntu2204-attoconf:build:
  <<: *prerequisites
  stage: build
  image: ubuntu:22.04
  variables:
    <<: *base_vars
    INSTALL_PACKAGES: python3
  script:
    - git submodule update --init
    - git fetch -t
    - printf "Building TMW Athena version %s\n" "$(git  describe --tags HEAD)"
    - mkdir build
    - cd build
    - ../configure --user
    - make
    - whoami
    - make install
  artifacts: # required for test stage
    untracked: true
    expire_in: 30 mins

# Next server OS, with cmake
re:ubuntu2204:build:
  <<: *prerequisites
  stage: build
  image: ubuntu:22.04
  variables:
    <<: *base_vars
    INSTALL_PACKAGES: python3 cmake
  script:
    - git submodule update --init
    - git fetch -t
    - printf "Building TMW Athena version %s\n" "$(git  describe --tags HEAD)"
    - mkdir build
    - cd build
    - cmake -DCMAKE_INSTALL_PREFIX=$HOME/.local ..
    - make
    - whoami
    - make install
  artifacts: # required for test stage
    untracked: true
    expire_in: 30 mins


# Disabled. fails with:
# (1) GDB failing to resolve a type
# (2) /usr/bin/ld: Dwarf Error: Can't find .debug_ranges section.
.re:ubuntu1804-attoconf:test:
  <<: *prerequisites
  stage: test
  image: ubuntu:18.04
  variables:
    <<: *base_vars
    INSTALL_PACKAGES: python3 gdb
  script:
    - printf "Testing TMW Athena version %s\n" "$(git  describe --tags HEAD)"
    - cd build
    - make test

re:ubuntu2204-attoconf:test:
  <<: *prerequisites
  stage: test
  image: ubuntu:22.04
  variables:
    <<: *base_vars
    INSTALL_PACKAGES: python3 gdb
  script:
    - printf "Testing TMW Athena version %s\n" "$(git  describe --tags HEAD)"
    - cd build
    - make test

re:ubuntu2204:test:
  <<: *prerequisites
  stage: test
  image: ubuntu:22.04
  variables:
    <<: *base_vars
    INSTALL_PACKAGES: python3 gdb
  script:
    - printf "Testing TMW Athena version %s\n" "$(git  describe --tags HEAD)"
    - cd build
    - make test