aboutsummaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 4ef4ccdc5694146b9ae63015c23a43bfa81f0ccf (plain)
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
stages:
  - Package
  - Build
  - Test

Tarball:
  stage: Package
  image: alpine:latest
  before_script:
    - apk add --no-cache coreutils git make perl
  script:
    - git submodule sync
    - git submodule update --init --recursive
    - bin/mkrelease.sh "$CI_COMMIT_REF_NAME"
    - bin/mkchecksum.sh "work/release/rakudo-star-$CI_COMMIT_REF_NAME.tar.gz"
  artifacts:
    paths:
      - work/release

Rakudo Star:
  stage: Build
  image: alpine:latest
  before_script:
    - apk add --no-cache coreutils bash build-base git perl
    - cd -- "$CI_PROJECT_DIR/work/build"
    - bin/mkchecksum.sh "work/release/rakudo-star-$CI_COMMIT_REF_NAME.tar.gz"
    - tar xzf "$CI_PROJECT_DIR/work/release/rakudo-star-$CI_COMMIT_REF_NAME.tar.gz"
  script:
    - cd -- "rakudo-star-$CI_COMMIT_REF_NAME"
    - perl Configure.pl --prefix="$CI_PROJECT_DIR/work/install" --backend=moar --gen-moar --make-install
  artifacts:
    paths:
      - work/build

Rakudo Test:
  stage: Test
  image: alpine:latest
  before_script:
    - apk add --no-cache make
  script:
    - make rakudo-test

Rakudo Spectest:
  stage: Test
  image: alpine:latest
  before_script:
    - apk add --no-cache make
  script:
    - make rakudo-spectest

Community Modules:
  stage: Test
  image: alpine:latest
  before_script:
    - apk add --no-cache build-base
  script:
    - make modules-test

# TODO: Release an updated Docker container
# TODO: Release the tarball to some Raku server