Skip to content

Commit

Permalink
Merge remote-tracking branch 'apache/0.3.x' into feature/log4j-codegen
Browse files Browse the repository at this point in the history
  • Loading branch information
ppkarwasz committed Oct 16, 2024
2 parents 2a09e99 + a3f0886 commit 4b2e24c
Show file tree
Hide file tree
Showing 56 changed files with 672 additions and 553 deletions.
20 changes: 18 additions & 2 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,18 +15,34 @@
# limitations under the License.
#

# `.asf.yaml` documentation: https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features
# `.asf.yaml` is a branch-specific YAML configuration file for Git repositories to control features such as notifications, GitHub settings, etc.
# See its documentation for details: https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features

# Bare minimum `notifications` to
#
# 1. Forward GitHub _activity_ to `notifications@`
# 2. Forward commits to `commits@`
# 3. Forward `dependabot` PRs to `robots@`
#
# Note that `notifications` are merged with the defaults accessible from: https://gitbox.apache.org/schemes.cgi?logging-log4j-transform
notifications:
commits: [email protected]
issues: [email protected]
pullrequests: [email protected]
pullrequests_bot_dependabot: [email protected]

github:
description: "Tools for binary post-processing of projects using Apache Log4j."
homepage: https://logging.apache.org/log4j/2.x/
homepage: https://logging.apache.org/log4j/transform
labels:
- apache
- java
- log4j
- log4j2
- logging

del_branch_on_merge: true

features:
issues: true

Expand Down
9 changes: 7 additions & 2 deletions .github/dependabot.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@

version: 2

# Add Maven Central explicitly to work around:
# https://github.com/dependabot/dependabot-core/issues/8329
# Fix the Maven Central to the ASF repository to work around: https://github.com/dependabot/dependabot-core/issues/8329
registries:
maven-central:
type: maven-repository
url: https://repo.maven.apache.org/maven2

updates:

- package-ecosystem: maven
directory: "/"
schedule:
Expand All @@ -41,3 +41,8 @@ updates:
directory: "/"
schedule:
interval: weekly

- package-ecosystem: npm
directory: "/"
schedule:
interval: daily
21 changes: 10 additions & 11 deletions .github/generate-email.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ PROJECT_VERSION="$2"
COMMIT_ID="$3"

# Check release notes file
RELEASE_NOTES_FILE="$SCRIPT_DIR/../src/site/_release-notes/_$PROJECT_VERSION.adoc"
RELEASE_NOTES_FILE="$SCRIPT_DIR/../target/generated-site/antora/modules/ROOT/pages/_release-notes/$PROJECT_VERSION.adoc"
[ -f "$RELEASE_NOTES_FILE" ] || {
stderr "Couldn't find release notes file: $RELEASE_NOTES_FILE"
exit 1
Expand All @@ -69,11 +69,11 @@ case $1 in
vote)
cat <<EOF
To: [email protected]
Title: [VOTE] Release $PROJECT_NAME $PROJECT_VERSION
Title: [VOTE] Release $PROJECT_NAME \`$PROJECT_VERSION\`
This is a vote to release the $PROJECT_NAME $PROJECT_VERSION.
This is a vote to release the $PROJECT_NAME \`$PROJECT_VERSION\`.
Website: $PROJECT_STAGING_SITE
Website: $PROJECT_STAGING_SITE-$PROJECT_VERSION
GitHub: $PROJECT_REPO
Commit: $COMMIT_ID
Distribution: $PROJECT_DIST_DIR
Expand All @@ -91,32 +91,31 @@ everyone to test the release, but only the Logging Services PMC
votes are officially counted. At least 3 +1 votes and more
positive than negative votes are required.
=== Review kit
== Review kit
The minimum set of steps needed to review the uploaded distribution
files in the Subversion repository can be summarized as follows:
$(dump_review_kit)
# Release notes
$(dump_release_notes)
== Release Notes
EOF
dump_release_notes
;;

announce)
cat <<EOF
To: [email protected], [email protected]
Title: [ANNOUNCE] $PROJECT_NAME $PROJECT_VERSION released
Title: [ANNOUNCE] $PROJECT_NAME \`$PROJECT_VERSION\` released
${PROJECT_NAME} team is pleased to announce the $PROJECT_VERSION
${PROJECT_NAME} team is pleased to announce the \`$PROJECT_VERSION\`
release. This project contains tools for binary postprocessing of
projects that use the Apache Log4j API. For further information
(support, download, etc.) see the project website[1].
[1] $PROJECT_SITE
=== Release Notes
== Release Notes
EOF
dump_release_notes
;;
Expand Down
15 changes: 7 additions & 8 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,33 +38,32 @@ jobs:

build:
if: github.actor != 'dependabot[bot]'
uses: apache/logging-parent/.github/workflows/build-reusable.yaml@rel/10.6.0
uses: apache/logging-parent/.github/workflows/build-reusable.yaml@rel/11.0.0
with:
site-enabled: true

deploy-snapshot:
needs: build
if: github.repository == 'apache/logging-log4j-transform' && github.ref_name == 'main'
uses: apache/logging-parent/.github/workflows/deploy-snapshot-reusable.yaml@rel/10.6.0
uses: apache/logging-parent/.github/workflows/deploy-snapshot-reusable.yaml@rel/11.0.0
# Secrets for deployments
secrets:
NEXUS_USER: ${{ secrets.NEXUS_USER }}
NEXUS_PW: ${{ secrets.NEXUS_PW }}
NEXUS_USERNAME: ${{ secrets.NEXUS_USER }}
NEXUS_PASSWORD: ${{ secrets.NEXUS_PW }}

deploy-release:
needs: build
if: github.repository == 'apache/logging-log4j-transform' && startsWith(github.ref_name, 'release/')
uses: apache/logging-parent/.github/workflows/deploy-release-reusable.yaml@rel/10.6.0
uses: apache/logging-parent/.github/workflows/deploy-release-reusable.yaml@rel/11.0.0
# Secrets for deployments
secrets:
GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }}
LOGGING_STAGE_DEPLOYER_USER: ${{ secrets.LOGGING_STAGE_DEPLOYER_USER }}
LOGGING_STAGE_DEPLOYER_PW: ${{ secrets.LOGGING_STAGE_DEPLOYER_PW }}
NEXUS_USERNAME: ${{ secrets.LOGGING_STAGE_DEPLOYER_USER }}
NEXUS_PASSWORD: ${{ secrets.LOGGING_STAGE_DEPLOYER_PW }}
SVN_USERNAME: ${{ secrets.LOGGING_SVN_DEV_USERNAME }}
SVN_PASSWORD: ${{ secrets.LOGGING_SVN_DEV_PASSWORD }}
# Write permissions to allow the Maven `revision` property update, changelog release, etc.
permissions:
contents: write
with:
project-id: log4j-transform
site-enabled: true
39 changes: 39 additions & 0 deletions .github/workflows/codeql-analysis.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#
# 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: codeql-analysis

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
schedule:
# At 06:00 on Monday
- cron: "00 06 * * 1"

permissions: read-all

jobs:

analyze:
uses: apache/logging-parent/.github/workflows/codeql-analysis-reusable.yaml@rel/11.0.0
# Permissions required to publish Security Alerts
permissions:
actions: read
contents: read
security-events: write
95 changes: 95 additions & 0 deletions .github/workflows/deploy-site.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
#
# 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: deploy-site

on:
push:
branches:
- "main"
- "main-site-pro"
- "release/*"
paths-ignore:
- "**.md"
- "**.txt"

permissions: read-all

jobs:

deploy-site-stg:
if: github.repository == 'apache/logging-log4j-transform' && github.ref_name == 'main'
uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/11.0.0
# Secrets for committing the generated site
secrets:
GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }}
# Write permissions for committing the generated site
permissions:
contents: write
with:
asf-yaml-content: |
staging:
profile: ~
whoami: ${{ github.ref_name }}-site-stg-out
subdir: content/log4j/transform
target-branch: ${{ github.ref_name }}-site-stg-out

deploy-site-pro:
if: github.repository == 'apache/logging-log4j-transform' && github.ref_name == 'main-site-pro'
uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/11.0.0
# Secrets for committing the generated site
secrets:
GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }}
# Write permissions for committing the generated site
permissions:
contents: write
with:
asf-yaml-content: |
publish:
profile: ~
whoami: ${{ github.ref_name }}-out
subdir: content/log4j/transform
target-branch: ${{ github.ref_name }}-out

export-version:
if: github.repository == 'apache/logging-log4j-transform' && startsWith(github.ref_name, 'release/')
runs-on: ubuntu-latest
outputs:
version: ${{ steps.export-version.outputs.version }}
steps:
- name: Export version
id: export-version
run: |
version=$(echo "${{ github.ref_name }}" | sed 's/^release\///')
echo "version=$version" >> "$GITHUB_OUTPUT"
deploy-site-rel:
needs: export-version
uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/11.0.0
# Secrets for committing the generated site
secrets:
GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }}
# Write permissions for committing the generated site
permissions:
contents: write
with:
asf-yaml-content: |
staging:
profile: ~
whoami: ${{ github.ref_name }}-site-stg-out
subdir: content/log4j/transform-${{ needs.export-version.outputs.version }}
target-branch: ${{ github.ref_name }}-site-stg-out
6 changes: 4 additions & 2 deletions .github/workflows/merge-dependabot.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,13 @@ jobs:

build:
if: github.repository == 'apache/logging-log4j-transform' && github.event_name == 'pull_request_target' && github.actor == 'dependabot[bot]'
uses: apache/logging-parent/.github/workflows/build-reusable.yaml@rel/10.6.0
uses: apache/logging-parent/.github/workflows/build-reusable.yaml@rel/11.0.0
with:
site-enabled: true

merge-dependabot:
needs: build
uses: apache/logging-parent/.github/workflows/merge-dependabot-reusable.yaml@rel/10.6.0
uses: apache/logging-parent/.github/workflows/merge-dependabot-reusable.yaml@rel/11.0.0
permissions:
contents: write # to push changelog commits
pull-requests: write # to close the PR
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,7 @@
dependency-reduced-pom.xml
/.mvn/wrapper/maven-wrapper.jar
target/
# Node
node
node_modules
package-lock.json
Loading

0 comments on commit 4b2e24c

Please sign in to comment.