Skip to content

Commit c8c212f

Browse files
committed
Merge release/2.21.0 into 2.x
# Conflicts: # .github/generate-email.sh # .github/workflows/build.yml # README.md # pom.xml # src/changelog/.2.x.x/1783_spring_arbiter_without_environment.xml # src/changelog/.2.x.x/UpdateSurefireRelease.xml # src/changelog/2.21.0/PreventResourceLeak.xml # src/site/_release-notes.adoc # src/site/_release-notes/_2.0-alpha1.adoc # src/site/_release-notes/_2.0-alpha2.adoc # src/site/_release-notes/_2.0-beta1.adoc # src/site/_release-notes/_2.0-beta2.adoc # src/site/_release-notes/_2.0-beta3.adoc # src/site/_release-notes/_2.0-beta4.adoc # src/site/_release-notes/_2.0-beta5.adoc # src/site/_release-notes/_2.0-beta6.adoc # src/site/_release-notes/_2.0-beta7.adoc # src/site/_release-notes/_2.0-beta8.adoc # src/site/_release-notes/_2.0-beta9.adoc # src/site/_release-notes/_2.0-rc1.adoc # src/site/_release-notes/_2.0-rc2.adoc # src/site/_release-notes/_2.0.1.adoc # src/site/_release-notes/_2.0.2.adoc # src/site/_release-notes/_2.0.adoc # src/site/_release-notes/_2.1.adoc # src/site/_release-notes/_2.10.0.adoc # src/site/_release-notes/_2.11.0.adoc # src/site/_release-notes/_2.11.1.adoc # src/site/_release-notes/_2.11.2.adoc # src/site/_release-notes/_2.12.0.adoc # src/site/_release-notes/_2.12.1.adoc # src/site/_release-notes/_2.13.0.adoc # src/site/_release-notes/_2.13.1.adoc # src/site/_release-notes/_2.13.2.adoc # src/site/_release-notes/_2.13.3.adoc # src/site/_release-notes/_2.14.0.adoc # src/site/_release-notes/_2.14.1.adoc # src/site/_release-notes/_2.15.0.adoc # src/site/_release-notes/_2.16.0.adoc # src/site/_release-notes/_2.17.0.adoc # src/site/_release-notes/_2.17.1.adoc # src/site/_release-notes/_2.17.2.adoc # src/site/_release-notes/_2.18.0.adoc # src/site/_release-notes/_2.19.0.adoc # src/site/_release-notes/_2.2.adoc # src/site/_release-notes/_2.20.0.adoc # src/site/_release-notes/_2.3.adoc # src/site/_release-notes/_2.4.1.adoc # src/site/_release-notes/_2.4.adoc # src/site/_release-notes/_2.5.adoc # src/site/_release-notes/_2.6.1.adoc # src/site/_release-notes/_2.6.2.adoc # src/site/_release-notes/_2.6.adoc # src/site/_release-notes/_2.7.adoc # src/site/_release-notes/_2.8.1.adoc # src/site/_release-notes/_2.8.2.adoc # src/site/_release-notes/_2.8.adoc # src/site/_release-notes/_2.9.0.adoc # src/site/_release-notes/_2.9.1.adoc # src/site/_release-notes/_2.x.x.adoc
2 parents 7f8a664 + d6563e3 commit c8c212f

File tree

531 files changed

+12764
-5715
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

531 files changed

+12764
-5715
lines changed

.github/generate-email.sh

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,15 @@ PROJECT_VERSION="$2"
4141
COMMIT_ID="$3"
4242

4343
# Check release notes file
44-
RELEASE_NOTES_FILE="$SCRIPT_DIR/../target/generated-sources/site/asciidoc/release-notes/$PROJECT_VERSION.adoc"
44+
RELEASE_NOTES_FILE="$SCRIPT_DIR/../src/site/_release-notes/_$PROJECT_VERSION.adoc"
4545
[ -f "$RELEASE_NOTES_FILE" ] || {
4646
stderr "Couldn't find release notes file: $RELEASE_NOTES_FILE"
4747
exit 1
4848
}
4949

5050
dump_release_notes() {
51-
awk "f{print} /^Release date::/{f=1}" "$RELEASE_NOTES_FILE"
51+
awk "f{print} /^Release date::/{f=1}" "$RELEASE_NOTES_FILE" \
52+
| sed -r 's!'$PROJECT_REPO'/(issues|pull)/[0-9]+\[([0-9]+)\]!#\2!g'
5253
}
5354

5455
case $1 in
@@ -77,7 +78,7 @@ net negative vote count. All votes are welcome and we encourage
7778
everyone to test the release, but only the Logging Services PMC
7879
votes are officially counted.
7980
80-
=== Release Notes
81+
== Release Notes
8182
EOF
8283
dump_release_notes
8384
;;
@@ -96,7 +97,7 @@ website[1].
9697
9798
[1] $PROJECT_SITE
9899
99-
=== Release Notes
100+
== Release Notes
100101
EOF
101102
dump_release_notes
102103
;;

.github/workflows/build.yml

Lines changed: 51 additions & 147 deletions
Original file line numberDiff line numberDiff line change
@@ -20,160 +20,64 @@ name: build
2020
on:
2121
push:
2222
branches:
23-
- 2.x
23+
- "2.x"
24+
- "release/*"
25+
paths-ignore:
26+
- "**.adoc"
27+
- "**.md"
28+
- "**.txt"
2429
pull_request:
25-
26-
env:
27-
# Maven JVM arguments
28-
MAVEN_OPTS: -XX:InitialRAMPercentage=50.0
29-
# Common Maven arguments since Maven 3.9.0
30-
MAVEN_ARGS: --show-version --batch-mode --errors --no-transfer-progress
30+
paths-ignore:
31+
- "**.adoc"
32+
- "**.md"
33+
- "**.txt"
3134

3235
permissions: read-all
3336

3437
jobs:
3538

3639
build:
37-
38-
runs-on: ${{ matrix.os }}
39-
# Based on: https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
40-
strategy:
41-
fail-fast: false
42-
matrix:
43-
os: [ ubuntu-latest, windows-latest, macos-latest ]
44-
45-
steps:
46-
47-
- name: Checkout repository
48-
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # 4.1.0
49-
with:
50-
fetch-depth: 32
51-
52-
# JDK 11 is used for the build.
53-
# JDK 8 is used for the tests.
54-
# Search `maven-toolchains-plugin` usages for details.
55-
- name: Setup JDK
56-
uses: actions/setup-java@0ab4596768b603586c0de567f2430c30f5b0d2b0 # 3.13.0
57-
with:
58-
distribution: temurin
59-
# The last provided Java version will be used and available globally.
60-
# Other Java versions can be accessed through environment variables: `JAVA_HOME_<majorVersion>_<architecture>`
61-
java-version: |
62-
8
63-
11
64-
architecture: x64
65-
cache: maven
66-
67-
# We could have used `verify`, but `clean install` is required for the following:
68-
# 1. The build reproducibility report
69-
# For details, see: https://maven.apache.org/guides/mini/guide-reproducible-builds.html#how-to-test-my-maven-build-reproducibility
70-
# 2. `javadoc:javadoc-no-fork`, which is attached to the `site` goal
71-
- name: Build
72-
timeout-minutes: 60
73-
shell: bash
74-
run: |
75-
./mvnw \
76-
clean install
77-
78-
- name: Upload Surefire Reports
79-
if: failure()
80-
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # 3.1.3
81-
with:
82-
name: surefire-reports-${{matrix.os}}
83-
path: "**/target/surefire-reports/*"
84-
85-
# `clean verify artifact:compare` is required to generate the build reproducibility report.
86-
# For details, see: https://maven.apache.org/guides/mini/guide-reproducible-builds.html#how-to-test-my-maven-build-reproducibility
87-
- name: Report build reproducibility
88-
id: report-reproducible
89-
timeout-minutes: 10
90-
shell: bash
91-
run: |
92-
./mvnw \
93-
-DskipTests=true \
94-
clean package artifact:compare
95-
96-
- name: Upload reproducibility failure context artifacts
97-
if: failure()
98-
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # 3.1.3
99-
with:
100-
name: reproducibility-failure-context-${{matrix.os}}
101-
path: |
102-
**/target/*.buildcompare
103-
**/target/*.jar
104-
**/target/reference/*.jar
105-
106-
- name: Build site
107-
timeout-minutes: 10
108-
shell: bash
109-
run: ./mvnw site
110-
111-
merge:
112-
113-
runs-on: ubuntu-latest
114-
if: github.event_name == 'pull_request' && github.actor == 'dependabot[bot]'
40+
if: github.actor != 'dependabot[bot]'
41+
uses: apache/logging-parent/.github/workflows/build-reusable.yaml@main
42+
with:
43+
java-version: |
44+
8
45+
11
46+
site-enabled: true
47+
48+
deploy-snapshot:
49+
needs: build
50+
if: github.repository == 'apache/logging-log4j2' && github.ref_name == '2.x'
51+
uses: apache/logging-parent/.github/workflows/deploy-snapshot-reusable.yaml@main
52+
# Secrets for deployments
53+
secrets:
54+
NEXUS_USER: ${{ secrets.NEXUS_USER }}
55+
NEXUS_PW: ${{ secrets.NEXUS_PW }}
56+
with:
57+
java-version: |
58+
8
59+
11
60+
61+
deploy-release:
11562
needs: build
63+
if: github.repository == 'apache/logging-log4j2' && startsWith(github.ref_name, 'release/')
64+
uses: apache/logging-parent/.github/workflows/deploy-release-reusable.yaml@main
65+
# Secrets for deployments
66+
secrets:
67+
GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }}
68+
LOGGING_STAGE_DEPLOYER_USER: ${{ secrets.LOGGING_STAGE_DEPLOYER_USER }}
69+
LOGGING_STAGE_DEPLOYER_PW: ${{ secrets.LOGGING_STAGE_DEPLOYER_PW }}
70+
SVN_USERNAME: ${{ secrets.LOGGING_SVN_DEV_USERNAME }}
71+
SVN_PASSWORD: ${{ secrets.LOGGING_SVN_DEV_PASSWORD }}
72+
# Write permissions to allow the Maven `revision` property update, changelog release, etc.
11673
permissions:
11774
contents: write
118-
pull-requests: write
119-
120-
steps:
121-
- name: "[dependabot] Auto-merge the PR"
122-
run: gh pr merge --auto --squash "$PR_URL"
123-
env:
124-
PR_URL: ${{ github.event.pull_request.html_url }}
125-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
126-
127-
deploy:
128-
129-
runs-on: ubuntu-latest
130-
needs: build
131-
if: github.repository == 'apache/logging-log4j2' && github.ref == 'refs/heads/2.x'
132-
133-
steps:
134-
135-
- name: Checkout repository
136-
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # 4.1.0
137-
with:
138-
fetch-depth: 32
139-
140-
# JDK 11 is used for the build.
141-
# JDK 8 is used for the tests.
142-
# Search `maven-toolchains-plugin` usages for details.
143-
- name: Setup JDK
144-
uses: actions/setup-java@0ab4596768b603586c0de567f2430c30f5b0d2b0 # 3.13.0
145-
with:
146-
distribution: temurin
147-
# The last provided Java version will be used and available globally.
148-
# Other Java versions can be accessed through environment variables: `JAVA_HOME_<majorVersion>_<architecture>`
149-
java-version: |
150-
8
151-
11
152-
architecture: x64
153-
cache: maven
154-
155-
- name: Inspect project version
156-
env:
157-
# Overrides defaults
158-
MAVEN_ARGS: -q -N
159-
run: |
160-
VERSION=$(./mvnw help:evaluate -DforceStdout=true -Dexpression=project.version)
161-
echo $VERSION
162-
echo "project_version=$VERSION" >> $GITHUB_ENV
163-
164-
- name: Deploy artifacts
165-
# Do not deploy release versions
166-
if: ${{ endsWith(env.project_version, '-SNAPSHOT') }}
167-
timeout-minutes: 15
168-
shell: bash
169-
# `package install:install deploy:deploy` goal is needed to deploy without configuring the plugin in the POM.
170-
# For details, see: https://maven.apache.org/plugins/maven-gpg-plugin/examples/deploy-signed-artifacts.html
171-
run: |
172-
./mvnw \
173-
--settings .github/workflows/maven-settings.xml \
174-
-Dgpg.skip=true \
175-
-DskipTests=true \
176-
package install:install deploy:deploy
177-
env:
178-
NEXUS_USER: ${{ secrets.NEXUS_USER }}
179-
NEXUS_PW: ${{ secrets.NEXUS_PW }}
75+
with:
76+
java-version: |
77+
8
78+
11
79+
project-id: log4j
80+
distribution-attachment-filepath-pattern: |-
81+
'^.*/target/log4j-(1\\.2-api|api(-test)?|appserver|cassandra|core(-test)?|couchdb|docker|flume-ng|iostreams|jakarta-(smtp|web)|jcl|jdbc-dbcp2|jpa|jpl|jul|kubernetes|layout-template-json|mongodb[34]|slf4j2?-impl|spring-(boot|cloud-config-client)|taglib|to-(jul|slf4j)|web)-'${PROJECT_VERSION}'\\.jar$'
82+
distribution-attachment-count: 30
83+
site-enabled: true

.github/workflows/maven-settings.xml

Lines changed: 0 additions & 28 deletions
This file was deleted.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one or more
3+
# contributor license agreements. See the NOTICE file distributed with
4+
# this work for additional information regarding copyright ownership.
5+
# The ASF licenses this file to you under the Apache License, Version 2.0
6+
# (the "License"); you may not use this file except in compliance with
7+
# the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
#
17+
18+
name: merge-dependabot
19+
20+
on:
21+
pull_request_target:
22+
paths-ignore:
23+
- "**.adoc"
24+
- "**.md"
25+
- "**.txt"
26+
27+
permissions: read-all
28+
29+
jobs:
30+
31+
build:
32+
if: github.repository == 'apache/logging-log4j2' && github.event_name == 'pull_request_target' && github.actor == 'dependabot[bot]'
33+
uses: apache/logging-parent/.github/workflows/build-reusable.yaml@main
34+
35+
merge-dependabot:
36+
needs: build
37+
uses: apache/logging-parent/.github/workflows/merge-dependabot-reusable.yaml@main
38+
permissions:
39+
contents: write # to push changelog commits
40+
pull-requests: write # to close the PR
41+
secrets:
42+
GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }} # to sign commits

.mvn/wrapper/maven-wrapper.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@
1414
# KIND, either express or implied. See the License for the
1515
# specific language governing permissions and limitations
1616
# under the License.
17-
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.7/apache-maven-3.8.7-bin.zip
18-
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar
17+
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.4/apache-maven-3.9.4-bin.zip
18+
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar

CHANGELOG.adoc

Lines changed: 0 additions & 34 deletions
This file was deleted.

0 commit comments

Comments
 (0)