aboutsummaryrefslogtreecommitdiffstats
path: root/jobs/ttcn3-testsuites-kernel-git.yml
blob: 90cdae274d03dcf84e0123177ed0727265cf682e (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
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
# TTCN-3 testsuite jobs with parameters to build a kernel from source (OS#3208)
---
- project:
    name: 'ttcn3-testsuites-kernel-git'
    concurrent: false
    disabled: false
    description: ""
    timer: "@midnight"
    node: ttcn3
    blocking: "^{job-name}.*"
    wipe_workspace: false
    jobs:
      - "{job-name}"
    # Folders from docker-playground.git
    job-name:
      - ttcn3-ggsn-test-kernel-git:
          blocking: "^(ttcn3|TTCN3-.*)-ggsn-test.*"
          timer: 30 04 * * *
          # Cache the linux source tree in the workspace of one node
          node: ttcn3-ggsn-test-kernel-git
          description: |
            Test osmo-ggsn master with a kernel built from source (see build
            parameters, by default: net-next.git from kernel.org).

- job-template:
    name: '{job-name}'
    project-type: freestyle
    disabled: '{obj:disabled}'
    defaults: global
    description: '{obj:description}'
    node: '{obj:node}'
    parameters:
      - string:
          name: BRANCH
          description: |
                Branch of <code>docker-playground.git</code>.
                Only modify if you are hacking on the docker-playground scripts.
          default: '*/master'
      - string:
          name: KERNEL_URL
          description: |
                Remote URL of git repository, from which the kernel will be
                built.
          default: 'https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git'
      - string:
          name: KERNEL_REMOTE_NAME
          description: |
                Short name for the remote URL, which will be used to add it to
                the local git checkout with <code>git remote add</code>.
          default: 'net-next'
      - string:
          name: KERNEL_BRANCH
          description: |
                Branch to check out from the remote with
                <code>KERNEL_URL</code> and <code>KERNEL_REMOTE_NAME</code>
                before building the kernel.
          default: 'master'

    builders:
      - shell: |-
          export REGISTRY_HOST="registry.osmocom.org"

          # Translate job name to docker-playground dir and relevant
          # environment variables
          case "{job-name}" in
              ttcn3-ggsn-test-kernel-git)
                  DIR="ttcn3-ggsn-test"
                  export IMAGE_SUFFIX="master"
                  export KERNEL_TEST=1
                  export KERNEL_BUILD=1
                  ;;
              *)
                  echo "Can't handle job: {job-name}"
                  exit 1
                  ;;
          esac

          cd "$DIR"
          ./jenkins.sh
    scm:
      - git:
          branches:
            - '$BRANCH'
          url: git://git.osmocom.org/docker-playground
          git-config-name: 'Jenkins Builder'
          git-config-email: 'jenkins@osmocom.org'
          wipe-workspace: "{obj:wipe_workspace}"
    triggers:
      - timed: "{obj:timer}"
    publishers:
      - junit:
          results: '**/junit-xml-*.log'
          allow-empty-results: false
      - email:
          notify-every-unstable-build: true
          recipients: laforge@gnumonks.org
          send-to-individuals: false
      - archive:
          allow-empty: false
          artifacts: logs/**/*
          case-sensitive: true
          default-excludes: true
          fingerprint: false
          only-if-success: false
    properties:
    - build-blocker:
        use-build-blocker: true
        blocking-jobs:
          - "{obj:blocking}"
    - build-discarder:
        days-to-keep: 30
        num-to-keep: 120
        artifact-days-to-keep: -1
        artifact-num-to-keep: -1

# vim: expandtab tabstop=2 shiftwidth=2