Skip to content

Commit 62b295a

Browse files
committed
Merge branch 'main' of github.com:newrelic/newrelic-java-agent into NR-186271-remove-aws-wrap-instrumentation
2 parents 0a9e4e9 + 25046bc commit 62b295a

File tree

1,868 files changed

+104175
-6201
lines changed

Some content is hidden

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

1,868 files changed

+104175
-6201
lines changed

.github/actions/setup-environment/action.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,11 @@ runs:
1414

1515
steps:
1616
- name: Set up Javas
17-
uses: actions/setup-java@v3
17+
uses: actions/setup-java@v4
1818
with:
1919
distribution: 'temurin'
2020
java-version: |
21+
25
2122
21
2223
17
2324
11
@@ -29,17 +30,18 @@ runs:
2930
sed -i -e "s|jdk8=8|jdk8=${JAVA_HOME_8_X64}|
3031
s|jdk11=11|jdk11=${JAVA_HOME_11_X64}|
3132
s|jdk17=17|jdk17=${JAVA_HOME_17_X64}|
32-
s|jdk21=21|jdk21=${JAVA_HOME_21_X64}|" gradle.properties.gha
33+
s|jdk21=21|jdk21=${JAVA_HOME_21_X64}|
34+
s|jdk25=25|jdk25=${JAVA_HOME_25_X64}|" gradle.properties.gha
3335
cat gradle.properties.gha >> gradle.properties
3436
3537
- name: Setup Gradle
36-
uses: gradle/gradle-build-action@v2
38+
uses: gradle/actions/setup-gradle@v3
3739
with:
3840
cache-read-only: ${{ inputs.gradle-cache-read-only }}
3941

4042
- name: Setup Gradle options
4143
shell: bash
42-
run: echo "GRADLE_OPTIONS=--console=plain --parallel -Porg.gradle.java.installations.auto-detect=false -Porg.gradle.java.installations.fromEnv=JAVA_HOME_8_X64,JAVA_HOME_11_X64,JAVA_HOME_17_X64,JAVA_HOME_21_X64" >> $GITHUB_ENV
44+
run: echo "GRADLE_OPTIONS=--console=plain --parallel -Porg.gradle.java.installations.auto-detect=false -Porg.gradle.java.installations.fromEnv=JAVA_HOME_8_X64,JAVA_HOME_11_X64,JAVA_HOME_17_X64,JAVA_HOME_21_X64,JAVA_HOME_25_X64" >> $GITHUB_ENV
4345

4446
- name: Download S3 instrumentation jar zip
4547
shell: bash

.github/dependabot.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Dependabot Configuration
2+
#
3+
# This configuration file specifies the settings for Dependabot Scanning.
4+
# It monitors the Gradle dependencies in the specified subproject and runs checks
5+
# on a weekly basis. This will not create pull requests for version updates, but
6+
# can be updated to create pull requests.
7+
8+
version: 2
9+
updates:
10+
- package-ecosystem: "gradle"
11+
directories:
12+
- "/newrelic-agent"
13+
schedule:
14+
interval: "weekly"
15+
open-pull-requests-limit: 0

.github/workflows/Create-Custom-Jar.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,20 @@ on:
1414
jobs:
1515
create_custom_jar:
1616
name: Create jar
17-
runs-on: ubuntu-20.04
17+
runs-on: ubuntu-24.04
1818
env:
1919
# we use this in env var for conditionals (secrets can't be used in conditionals)
2020
AWS_KEY: ${{ secrets.AWS_ACCESS_KEY_ID }}
2121
steps:
2222

2323
- name: Checkout Java agent
24-
uses: actions/checkout@v3
24+
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # pin@v4
2525
with:
2626
ref: ${{ inputs.agent-ref }}
2727

2828
- name: Configure AWS Credentials
2929
if: ${{ env.AWS_KEY != '' }}
30-
uses: aws-actions/configure-aws-credentials@v1-node16
30+
uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # pin@v4
3131
with:
3232
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
3333
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
@@ -42,10 +42,10 @@ jobs:
4242
- name: Set summary
4343
run: |
4444
echo "${{ inputs.description }}" >> $GITHUB_STEP_SUMMARY
45-
echo "This jar was built from the ref (branch/tag/hash): ${{ inputs.ref }}." >> $GITHUB_STEP_SUMMARY
45+
echo "This jar was built from the ref (branch/tag/hash): ${{ inputs.agent-ref }}." >> $GITHUB_STEP_SUMMARY
4646
4747
- name: Capture custom jar
48-
uses: actions/upload-artifact@v3
48+
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # pin@v4
4949
with:
5050
name: custom-newrelic-jar
5151
path: |
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Create init-container release tags
2+
on:
3+
workflow_dispatch: # Allow manual trigger
4+
inputs:
5+
agent-version:
6+
description: 'The release tag to create init containers for, including the v. Eg v8.12.0’. '
7+
required: true
8+
type: string
9+
jobs:
10+
create_release_tags:
11+
runs-on: ubuntu-24.04
12+
steps:
13+
- name: Create release tags for K8s Init Container
14+
run: |
15+
RELEASE_TITLE="New Relic Java Agent ${{ inputs.agent-version }}.0"
16+
RELEASE_TAG="${{ inputs.agent-version }}.0_java"
17+
RELEASE_NOTES="Automated release for [Java Agent ${{ inputs.agent-version }}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${{ inputs.agent-version }})"
18+
gh auth login --with-token <<< $GH_RELEASE_TOKEN
19+
echo "newrelic/newrelic-agent-init-container - Releasing \"${RELEASE_TITLE}\" with tag ${RELEASE_TAG}"
20+
gh release create "${RELEASE_TAG}" --title="${RELEASE_TITLE}" --repo=newrelic/newrelic-agent-init-container --notes="${RELEASE_NOTES}"
21+
env:
22+
GH_RELEASE_TOKEN: ${{ secrets.GH_RELEASE_TOKEN }}

.github/workflows/GHA-Functional-Tests.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,23 @@ jobs:
2121
java-functional-tests:
2222
name: Java ${{ matrix.java-version }}
2323
timeout-minutes: 150
24-
runs-on: ubuntu-20.04
24+
runs-on: ubuntu-24.04
2525
env:
2626
default-branch: "main"
2727
strategy:
2828
##max-parallel: 1 ## used to force sequential
2929
fail-fast: false
3030
matrix:
31-
java-version: [8, 11, 17, 21]
31+
java-version: [ 8, 11, 17, 21, 25 ]
3232
steps:
3333
- name: Checkout Java agent
34-
uses: actions/checkout@v3
34+
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # pin@v4
3535
with:
3636
ref: ${{ inputs.agent-ref || github.ref || 'main' }}
3737

3838
- name: Configure AWS Credentials
3939
if: ${{ env.AWS_KEY != '' }}
40-
uses: aws-actions/configure-aws-credentials@v1-node16
40+
uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # pin@v4
4141
with:
4242
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
4343
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
@@ -69,11 +69,11 @@ jobs:
6969

7070
- name: Capture build reports
7171
if: ${{ failure() }}
72-
uses: actions/upload-artifact@v3
72+
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # pin@v4
7373
with:
7474
name: functional-tests-results-java-${{ matrix.java-version }}
7575
# The regex for the path below will capture functional test HTML reports generated by gradle for all
76-
# related modules: (functional_test, newrelic-scala-api, newrelic-scala-cats-api, :newrelic-cats-effect3-api, newrelic-scala-zio-api).
76+
# related modules: (functional_test, newrelic-scala-api, newrelic-scala-cats-api, :newrelic-cats-effect3-api, newrelic-scala-zio-api, newrelic-scala-zio2-api).
7777
# However, it's critical that the previous build step does a ./gradlew clean or the regex will capture test reports
7878
# that were leftover in unrelated modules for unit and instrumentation tests.
7979
path: |

.github/workflows/GHA-Scala-Functional-Tests.yaml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,21 +20,21 @@ jobs:
2020
scala-functional-tests:
2121
name: Java ${{ matrix.java-version }}
2222
timeout-minutes: 120
23-
runs-on: ubuntu-20.04
23+
runs-on: ubuntu-24.04
2424
strategy:
2525
##max-parallel: 1 ## used to force sequential
2626
fail-fast: false
2727
matrix:
28-
java-version: [8, 11]
28+
java-version: [ 8, 11 ]
2929
steps:
3030
- name: Checkout Java agent
31-
uses: actions/checkout@v3
31+
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # pin@v4
3232
with:
3333
ref: ${{ inputs.agent-ref || github.ref || 'main' }}
3434

3535
- name: Configure AWS Credentials
3636
if: ${{ env.AWS_KEY != '' }}
37-
uses: aws-actions/configure-aws-credentials@v1-node16
37+
uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # pin@v4
3838
with:
3939
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
4040
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
@@ -52,7 +52,7 @@ jobs:
5252
timeout-minutes: 25
5353
run: |
5454
# Removed ":newrelic-cats-effect3-api:test" temporarily
55-
./gradlew $GRADLE_OPTIONS :newrelic-scala-api:test :newrelic-scala-cats-api:test :newrelic-scala-zio-api:test :newrelic-scala-monix-api:test -PincludeScala -Ptest${{ matrix.java-version }} --continue
55+
./gradlew $GRADLE_OPTIONS :newrelic-scala3-api:test :newrelic-scala-api:test :newrelic-scala-cats-api:test :newrelic-scala-zio-api:test :newrelic-scala-zio2-api:test :newrelic-scala-monix-api:test -PincludeScala -Ptest${{ matrix.java-version }} --continue
5656
5757
- name: Run functional tests against version defined in ${{ matrix.java-version }} (attempt 2)
5858
id: run_tests_2
@@ -61,18 +61,18 @@ jobs:
6161
timeout-minutes: 25
6262
run: |
6363
# Removed ":newrelic-cats-effect3-api:test" temporarily
64-
./gradlew $GRADLE_OPTIONS :newrelic-scala-api:test :newrelic-scala-cats-api:test :newrelic-scala-zio-api:test :newrelic-scala-monix-api:test -PincludeScala -Ptest${{ matrix.java-version }} --continue
64+
./gradlew $GRADLE_OPTIONS :newrelic-scala3-api:test :newrelic-scala-api:test :newrelic-scala-cats-api:test :newrelic-scala-zio-api:test :newrelic-scala-zio2-api:test :newrelic-scala-monix-api:test -PincludeScala -Ptest${{ matrix.java-version }} --continue
6565
6666
- name: Run functional tests against version defined in ${{ matrix.java-version }} (attempt 3)
6767
if: steps.run_tests_2.outcome == 'failure'
6868
timeout-minutes: 25
6969
run: |
7070
# Removed ":newrelic-cats-effect3-api:test" temporarily
71-
./gradlew $GRADLE_OPTIONS :newrelic-scala-api:test :newrelic-scala-cats-api:test :newrelic-scala-zio-api:test :newrelic-scala-monix-api:test -PincludeScala -Ptest${{ matrix.java-version }} --continue
71+
./gradlew $GRADLE_OPTIONS :newrelic-scala3-api:test :newrelic-scala-api:test :newrelic-scala-cats-api:test :newrelic-scala-zio-api:test :newrelic-scala-zio2-api:test :newrelic-scala-monix-api:test -PincludeScala -Ptest${{ matrix.java-version }} --continue
7272
7373
- name: Capture Jacoco reports
7474
if: matrix.java-version == '11'
75-
uses: actions/upload-artifact@v3
75+
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # pin@v4
7676
with:
7777
name: jacoco-reports-java-${{ matrix.java-version }}
7878
path: |
@@ -81,11 +81,11 @@ jobs:
8181
# Capture HTML build result in artifacts
8282
- name: Capture build reports
8383
if: ${{ failure() }}
84-
uses: actions/upload-artifact@v3
84+
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # pin@v4
8585
with:
8686
name: functional-tests-results-java-${{ matrix.java-version }}
8787
# The regex for the path below will capture functional test HTML reports generated by gradle for all
88-
# related modules: (functional_test, newrelic-scala-api, newrelic-scala-cats-api, :newrelic-cats-effect3-api, newrelic-scala-zio-api).
88+
# related modules: (functional_test, newrelic-scala-api, newrelic-scala-cats-api, :newrelic-cats-effect3-api, newrelic-scala-zio-api, newrelic-scala-zio2-api).
8989
# However, it's critical that the previous build step does a ./gradlew clean or the regex will capture test reports
9090
# that were leftover in unrelated modules for unit and instrumentation tests.
9191
path: |

.github/workflows/GHA-Scala-Instrumentation-Tests.yaml

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,30 +20,30 @@ jobs:
2020
scala-instrumentation-tests:
2121
name: Scala ${{ matrix.scala }} on Java ${{ matrix.java-version }}
2222
timeout-minutes: 120
23-
runs-on: ubuntu-20.04
23+
runs-on: ubuntu-24.04
2424
env:
2525
# we use this in env var for conditionals (secrets can't be used in conditionals)
2626
AWS_KEY: ${{ secrets.AWS_ACCESS_KEY_ID }}
2727
strategy:
2828
##max-parallel: 1 ## used to force sequential
2929
fail-fast: false
3030
matrix:
31-
java-version: [8, 11]
32-
scala: ['2.11', '2.12', '2.13']
31+
java-version: [ 8, 11 ]
32+
scala: [ '2.11', '2.12', '2.13' ]
3333
exclude:
3434
- java-version: 11
3535
scala: 2.10
3636
- java-version: 11
3737
scala: 2.11
3838
steps:
3939
- name: Checkout Java agent
40-
uses: actions/checkout@v3
40+
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # pin@v4
4141
with:
4242
ref: ${{ inputs.agent-ref || github.ref || 'main' }}
4343

4444
- name: Configure AWS Credentials
4545
if: ${{ env.AWS_KEY != '' }}
46-
uses: aws-actions/configure-aws-credentials@v1-node16
46+
uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # pin@v4
4747
with:
4848
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
4949
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
@@ -55,6 +55,15 @@ jobs:
5555
- name: Build newrelicJar
5656
run: ./gradlew $GRADLE_OPTIONS clean jar --parallel
5757

58+
- name: Fix the /etc/hosts/ file (since it's been messed up before)
59+
run: |
60+
echo "Old /etc/hosts/ file"
61+
cat /etc/hosts
62+
echo "Overwriting /etc/hosts file"
63+
sudo echo "127.0.0.1 localhost $HOSTNAME" | sudo tee /etc/hosts
64+
echo "New /etc/hosts file"
65+
cat /etc/hosts
66+
5867
- name: Run instrumentation tests for Java ${{ matrix.java-version }} and scala ${{ matrix.scala }} (attempt 1)
5968
id: run_tests_1
6069
continue-on-error: true
@@ -75,7 +84,7 @@ jobs:
7584

7685
- name: Capture build reports
7786
if: ${{ failure() }}
78-
uses: actions/upload-artifact@v3
87+
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # pin@v4
7988
with:
8089
name: instrumentation-results-java-${{ matrix.java-version }}-scala-${{ matrix.scala }}
8190
# The regex for the path below will capture instrumentation test HTML reports generated by gradle for all

0 commit comments

Comments
 (0)