.gitlab-ci.yml 2.29 KB
Newer Older
Eric Timmons's avatar
Eric Timmons committed
1
2
variables:
  GIT_SUBMODULE_STRATEGY: recursive
Eric Timmons's avatar
Fix CI    
Eric Timmons committed
3
  ALPINE_VERSION: "3.13"
Eric Timmons's avatar
Eric Timmons committed
4
5
6
  SBCL_VERSION: 2.1.1
  DOCKER_HUB_CI_REPO: daewok/clpm-ci

Eric Timmons's avatar
Eric Timmons committed
7
8
9
include:
  - template: 'Workflows/Branch-Pipelines.gitlab-ci.yml'

Eric Timmons's avatar
Eric Timmons committed
10
11
stages:
  - prep
Eric Timmons's avatar
Eric Timmons committed
12
  - build
Eric Timmons's avatar
Eric Timmons committed
13

14
##############################################################################
15
# Build static releases
16
17
##############################################################################

18
.static-release:
19
  stage: build
20
  image: $DOCKER_HUB_CI_REPO:$SBCL_VERSION-alpine$ALPINE_VERSION-$ARCH
Eric Timmons's avatar
Eric Timmons committed
21
  before_script:
22
    - git checkout -B $CI_COMMIT_BRANCH $CI_COMMIT_SHA
23
  script:
24
    - sbcl --script scripts/build-release.lisp --static
25
26
  artifacts:
    paths:
27
      - releases/
Eric Timmons's avatar
Eric Timmons committed
28
  needs: []
29
30
  rules:
    - if: '$CI_COMMIT_BRANCH'
31

32
33
static-release:linux:amd64:
  extends: .static-release
34
35
36
  variables:
    ARCH: amd64

Eric Timmons's avatar
Eric Timmons committed
37
38
39
40
41
42
43
static-release:linux:arm64:
  extends: .static-release
  variables:
    ARCH: arm64
  tags:
    - arm64v8

44
##############################################################################
45
# Build dynamic releases
46
##############################################################################
Eric Timmons's avatar
Eric Timmons committed
47

48
.dynamic-release:
49
  stage: build
Eric Timmons's avatar
Eric Timmons committed
50
  image: $DOCKER_HUB_CI_REPO:$SBCL_VERSION-alpine$ALPINE_VERSION-$ARCH
Eric Timmons's avatar
Eric Timmons committed
51
  before_script:
52
    - git checkout -B $CI_COMMIT_BRANCH $CI_COMMIT_SHA
53
  script:
54
    - sbcl --script scripts/build-release.lisp
55
56
57
  artifacts:
    paths:
      - build/bin/
58
59
  rules:
    - if: '$CI_COMMIT_BRANCH'
Eric Timmons's avatar
Eric Timmons committed
60

61
62
dynamic-release:linux:amd64:
  extends: .dynamic-release
Eric Timmons's avatar
Eric Timmons committed
63
64
65
  variables:
    ARCH: amd64

66
67
dynamic-release:linux:arm64:
  extends: .dynamic-release
Eric Timmons's avatar
Eric Timmons committed
68
69
70
71
  variables:
    ARCH: arm64
  tags:
    - arm64v8
Eric Timmons's avatar
Eric Timmons committed
72

73
74
# dynamic-release:linux:armv7:
#   extends: .dynamic-release
75
76
77
78
#   variables:
#     ARCH: armhf
#   tags:
#     - armv7
Eric Timmons's avatar
Eric Timmons committed
79

80
dynamic-release:macos:amd64:
Eric Timmons's avatar
Eric Timmons committed
81
  stage: build
82
  extends: .dynamic-release
Eric Timmons's avatar
Eric Timmons committed
83
84
  tags:
    - macos-0.4-amd64
Eric Timmons's avatar
Eric Timmons committed
85

86
87
dynamic-release:windows:amd64:
  extends: .dynamic-release
Eric Timmons's avatar
Eric Timmons committed
88
  image: $DOCKER_HUB_CI_REPO:$SBCL_VERSION-windowsservercore
Eric Timmons's avatar
Eric Timmons committed
89
90
91
92
93
94
95
96
  variables:
    GIT_STRATEGY: clone
    GIT_SUBMODULE_STRATEGY: none
    GIT_CHECKOUT: "false"
  before_script:
    - git checkout -B $CI_COMMIT_BRANCH $CI_COMMIT_SHA
    - git submodule init
    - git submodule update
97
98
99
100
  script:
    - $env:WIX = "C:\wix"
    - sbcl --script scripts/build-release.lisp
    - sbcl --script scripts/build-msi.lisp
Eric Timmons's avatar
Eric Timmons committed
101
102
  tags:
    - windows-amd64