-
Notifications
You must be signed in to change notification settings - Fork 5k
83 lines (78 loc) · 2.63 KB
/
pr-build-main.yml
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
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name: PR Build (Camel 4)
on:
pull_request:
branches:
- camel-4.8.x
paths-ignore:
- .github/**
- README.md
- SECURITY.md
- Jenkinsfile
- Jenkinsfile.*
- NOTICE.txt
permissions:
contents: read
jobs:
build:
if: github.repository == 'apache/camel'
permissions:
issues: write
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.experimental }}
strategy:
matrix:
java: ['17']
experimental: [ false ]
include:
- java: '21'
experimental: true
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
persist-credentials: false
- id: install-packages
uses: ./.github/actions/install-packages
- id: install-mvnd
uses: ./.github/actions/install-mvnd
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@6a0805fcefea3d4657a47ac4c165951e33482018 # v4.2.2
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
cache: 'maven'
- name: maven build
run: ./etc/scripts/regen.sh
- name: archive logs
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
if: always()
with:
name: build-${{ matrix.java }}.log
path: build.log
- name: Fail if there are uncommitted changes
shell: bash
run: |
[[ -z $(git status --porcelain) ]] || { echo 'There are uncommitted changes'; git status; echo; echo; git diff; exit 1; }
- name: mvn test
uses: ./.github/actions/incremental-build
with:
mode: test
pr-id: ${{ github.event.number }}
github-token: ${{ secrets.GITHUB_TOKEN }}
skip-mvnd-install: 'true'
artifact-upload-suffix: java-${{ matrix.java }}