aboutsummaryrefslogtreecommitdiff
path: root/jdk11-update-src-tree.yaml
blob: ae3956687522fb8c579f00e633e9b9f3aa16c900 (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
- scm:
    name: jdk11u
    scm:
        - hg:
            url: https://hg.openjdk.java.net/jdk-updates/jdk11u
            clean: true
            subdir: jdk11u
- job:
    name: jdk11-update-src-tree
    project-type: freestyle
    defaults: global
    description: |
        This job polls upstream Mercurial servers for changes and,<br>
        if there are any, triggers "jdk11-build-and-test".<br>
        Note: this job archives the src which is later required by the jtreg<br>
        report and publish job. The build-date.sh artefact contains shell<br>
        variables for the day and day-of-year the source was archived.
    properties:
        - authorization:
            anonymous:
                - job-read
                - job-extended-read
            openjdk-members:
                - job-build
                - job-cancel
        - build-discarder:
            days-to-keep: 30
            num-to-keep: 10
            artifact-num-to-keep: 5
        - build-blocker:
            use-build-blocker: true
            blocking-jobs:
                - "jdk12-.*"
                - "jdk8-.*"
                - "jdkX-.*"
            block-level: 'GLOBAL'
    disabled: false
    node: j12-qrep-01
    display-name: 'OpenJDK 11u - Update jdk11 source tree'
    scm:
        - jdk11u
    triggers:
        - pollscm:
            cron: '0 7 * * 2,4,6'
    wrappers:
        - timestamps
    builders:
        - shell: |
            #!/bin/bash

            set -eu

            rm -rf out
            mkdir out

            pushd jdk11u
            #find . -name BOM -exec rm {} \;
            #commit_id=$(hg identify | awk '{print $1}')
            #echo "jdk11-${commit_id}" | tee -a BOM

            #for i in corba jaxp jaxws langtools jdk hotspot nashorn; do
            #  pushd $i
            #  commit_id=$(hg identify | awk '{print $1}')
            #  dir=$(basename $PWD)
            #  echo "${dir}-${commit_id}" | tee -a ../BOM
            #  popd
            #done

            ## Pull out subdirectory HG versions
            echo BOM for $(hg paths default) > BOM
            echo -e Subdir\\tHash\\t\\tTag\\tTag hash >> BOM
            echo -e .\\t$(hg head --template '{node|short}\t' tip; hg tags --template="{tag}\t{node|short}\n" | grep -ve '^tip' | head -n1) >>BOM

            cp BOM $WORKSPACE/out

            popd

            : ${YEAR:=$(date +%Y)}
            : ${DAY_OF_YEAR:=$(date +%j)}

            : ${YEAR_YESTERDAY:=$YEAR}
            : ${DAY_OF_YEAR_YESTERDAY:=$((10#$DAY_OF_YEAR - 1))}

            echo "YEAR=${YEAR}" >dates.prop
            echo "DAY_OF_YEAR=${DAY_OF_YEAR}" >>dates.prop

            echo "export YEAR=${YEAR}" > out/build-date.sh
            echo "export DAY_OF_YEAR=${DAY_OF_YEAR}" >> out/build-date.sh

            tar --exclude=.hg -acf out/jdk11u.tar.gz jdk11u
    publishers:
        - archive:
            artifacts: 'out/jdk11u.tar.gz, out/build-date.sh, out/BOM'
        - fingerprint:
            files: 'out/*'
            record-artifacts: true
        - trigger-parameterized-builds:
            - project: jdk11-build-and-test
              condition: SUCCESS
              property-file: dates.prop