Skip to content

Commit 75a3b93

Browse files
authored
Merge branch '2.x' into backport-13903-to-2.x
Signed-off-by: Heemin Kim <[email protected]>
2 parents dc76830 + ac93f08 commit 75a3b93

File tree

2,022 files changed

+83242
-10151
lines changed

Some content is hidden

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

2,022 files changed

+83242
-10151
lines changed

.ci/bwcVersions

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ BWC_VERSION:
5252
- "1.3.13"
5353
- "1.3.14"
5454
- "1.3.15"
55+
- "1.3.16"
56+
- "1.3.17"
5557
- "2.0.0"
5658
- "2.0.1"
5759
- "2.0.2"
@@ -80,3 +82,9 @@ BWC_VERSION:
8082
- "2.11.0"
8183
- "2.11.1"
8284
- "2.11.2"
85+
- "2.12.0"
86+
- "2.12.1"
87+
- "2.13.0"
88+
- "2.13.1"
89+
- "2.14.0"
90+
- "2.14.1"

.github/CODEOWNERS

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# CODEOWNERS manages notifications, not PR approvals
2-
# For PR approvals see /.github/workflows/maintainer-approval.yml
2+
# For PR approvals see /.github/workflows/maintainer-approval.yml
33

44
# Files have a single rule applied, the last match decides the owner
55
# If you would like to more specifically apply ownership, include existing owner in new sub fields
@@ -11,7 +11,7 @@
1111
# 3. Use the command palette to run the CODEOWNERS: Show owners of current file command, which will display all code owners for the current file.
1212

1313
# Default ownership for all repo files
14-
* @abbashus @adnapibar @anasalkouz @andrross @Bukhtawar @CEHENKLE @dblock @dbwiddis @dreamer-89 @gbbafna @kartg @kotwanikunal @mch2 @msfroh @nknize @owaiskazi19 @reta @Rishikesh1159 @ryanbogan @sachinpkale @saratvemulapalli @setiah @shwetathareja @sohami @tlfeng @VachaShah
14+
* @anasalkouz @andrross @Bukhtawar @CEHENKLE @dblock @dbwiddis @dreamer-89 @gbbafna @kotwanikunal @mch2 @msfroh @nknize @owaiskazi19 @reta @Rishikesh1159 @sachinpkale @saratvemulapalli @shwetathareja @sohami @tlfeng @VachaShah
1515

1616
/modules/transport-netty4/ @peternied
1717

@@ -24,4 +24,4 @@
2424

2525
/.github/ @peternied
2626

27-
/MAINTAINERS.md @abbashus @adnapibar @anasalkouz @andrross @Bukhtawar @CEHENKLE @dblock @dbwiddis @dreamer-89 @gbbafna @kartg @kotwanikunal @mch2 @msfroh @nknize @owaiskazi19 @peternied @reta @Rishikesh1159 @ryanbogan @sachinpkale @saratvemulapalli @setiah @shwetathareja @sohami @tlfeng @VachaShah
27+
/MAINTAINERS.md @anasalkouz @andrross @Bukhtawar @CEHENKLE @dblock @dbwiddis @dreamer-89 @gbbafna @jed326 @kotwanikunal @mch2 @msfroh @nknize @owaiskazi19 @peternied @reta @Rishikesh1159 @sachinpkale @saratvemulapalli @shwetathareja @sohami @tlfeng @VachaShah

.github/workflows/assemble.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
strategy:
99
matrix:
1010
java: [ 11, 17, 21 ]
11-
os: [ubuntu-latest, windows-latest, macos-latest]
11+
os: [ubuntu-latest, windows-latest, macos-13]
1212
steps:
1313
- uses: actions/checkout@v4
1414
- name: Set up JDK ${{ matrix.java }}
@@ -18,10 +18,9 @@ jobs:
1818
distribution: temurin
1919
- name: Setup docker (missing on MacOS)
2020
if: runner.os == 'macos'
21-
run: |
22-
brew install docker
23-
colima start
24-
sudo ln -sf $HOME/.colima/default/docker.sock /var/run/docker.sock
21+
uses: douglascamata/setup-docker-macos-action@main
22+
with:
23+
upgrade-qemu: true
2524
- name: Run Gradle (assemble)
2625
run: |
2726
./gradlew assemble --parallel --no-build-cache -PDISABLE_BUILD_CACHE

.github/workflows/changelog_verifier.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: "Changelog Verifier"
22
on:
33
pull_request:
4-
types: [opened, edited, review_requested, synchronize, reopened, ready_for_review, labeled, unlabeled]
4+
types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]
55

66
jobs:
77
# Enforces the update of a changelog file on every pull request
@@ -13,7 +13,8 @@ jobs:
1313
with:
1414
token: ${{ secrets.GITHUB_TOKEN }}
1515
ref: ${{ github.event.pull_request.head.sha }}
16-
1716
- uses: dangoslen/changelog-enforcer@v3
17+
id: verify-changelog
1818
with:
1919
skipLabels: "autocut, skip-changelog"
20+
changeLogPath: 'CHANGELOG.md'

.github/workflows/check-compatibility.yml

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

.github/workflows/create-documentation-issue.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
3030
- name: Create Issue From File
3131
id: create-issue
32-
uses: peter-evans/create-issue-from-file@v4
32+
uses: peter-evans/create-issue-from-file@v5
3333
with:
3434
title: Add documentation related to new feature
3535
content-filepath: ./ci/documentation/issue.md
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: "Detect Breaking Changes"
2+
on:
3+
pull_request
4+
5+
jobs:
6+
detect-breaking-change:
7+
runs-on: ubuntu-latest
8+
steps:
9+
- uses: actions/checkout@v4
10+
- uses: actions/setup-java@v4
11+
with:
12+
distribution: temurin # Temurin is a distribution of adoptium
13+
java-version: 21
14+
- uses: gradle/gradle-build-action@v3
15+
with:
16+
cache-disabled: true
17+
arguments: japicmp
18+
gradle-version: 8.7
19+
build-root-directory: server
20+
- if: failure()
21+
run: cat server/build/reports/java-compatibility/report.txt
22+
- if: failure()
23+
uses: actions/upload-artifact@v4
24+
with:
25+
name: java-compatibility-report.html
26+
path: ${{ github.workspace }}/server/build/reports/java-compatibility/report.html
27+

.github/workflows/gradle-check.yml

Lines changed: 55 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,28 @@ permissions:
1212
contents: read # to fetch code (actions/checkout)
1313

1414
jobs:
15+
check-files:
16+
runs-on: ubuntu-latest
17+
outputs:
18+
RUN_GRADLE_CHECK: ${{ steps.changed-files-specific.outputs.any_changed }}
19+
steps:
20+
- uses: actions/checkout@v3
21+
- name: Get changed files
22+
id: changed-files-specific
23+
uses: tj-actions/changed-files@v44
24+
with:
25+
files_ignore: |
26+
release-notes/*.md
27+
.github/**
28+
*.md
29+
1530
gradle-check:
16-
if: github.repository == 'opensearch-project/OpenSearch'
31+
needs: check-files
32+
if: github.repository == 'opensearch-project/OpenSearch' && needs.check-files.outputs.RUN_GRADLE_CHECK == 'true'
1733
permissions:
1834
contents: read # to fetch code (actions/checkout)
1935
pull-requests: write # to create or update comment (peter-evans/create-or-update-comment)
2036
issues: write # To create an issue if check fails on push.
21-
2237
runs-on: ubuntu-latest
2338
timeout-minutes: 130
2439
steps:
@@ -30,11 +45,31 @@ jobs:
3045
- name: Setup environment variables (PR)
3146
if: github.event_name == 'pull_request_target'
3247
run: |
48+
echo "event_name=pull_request_target" >> $GITHUB_ENV
49+
echo "branch_name=$(jq --raw-output .pull_request.base.ref $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
3350
echo "pr_from_sha=$(jq --raw-output .pull_request.head.sha $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
3451
echo "pr_from_clone_url=$(jq --raw-output .pull_request.head.repo.clone_url $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
3552
echo "pr_to_clone_url=$(jq --raw-output .pull_request.base.repo.clone_url $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
3653
echo "pr_title=$(jq --raw-output .pull_request.title $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
3754
echo "pr_number=$(jq --raw-output .pull_request.number $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
55+
echo "pr_owner=$(jq --raw-output .pull_request.user.login $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
56+
echo "pr_or_commit_description=$(jq --ascii-output .pull_request.body $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
57+
echo "post_merge_action=false" >> $GITHUB_ENV
58+
59+
# to get the PR data that can be used for post merge actions
60+
- uses: actions/github-script@v7
61+
if: github.event_name == 'push'
62+
id: get_pr_data
63+
with:
64+
github-token: ${{secrets.GITHUB_TOKEN}}
65+
script: |
66+
return (
67+
await github.rest.repos.listPullRequestsAssociatedWithCommit({
68+
commit_sha: context.sha,
69+
owner: context.repo.owner,
70+
repo: context.repo.repo,
71+
})
72+
).data[0];
3873
3974
- name: Setup environment variables (Push)
4075
if: github.event_name == 'push'
@@ -43,11 +78,15 @@ jobs:
4378
ref_id=$(git rev-parse HEAD)
4479
branch_name=$(git rev-parse --abbrev-ref HEAD)
4580
echo "branch_name=$branch_name" >> $GITHUB_ENV
81+
echo "event_name=push" >> $GITHUB_ENV
4682
echo "pr_from_sha=$ref_id" >> $GITHUB_ENV
4783
echo "pr_from_clone_url=$repo_url" >> $GITHUB_ENV
4884
echo "pr_to_clone_url=$repo_url" >> $GITHUB_ENV
4985
echo "pr_title=Push trigger $branch_name $ref_id $repo_url" >> $GITHUB_ENV
50-
echo "pr_number=Null" >> $GITHUB_ENV
86+
echo "pr_owner=$(jq --raw-output '.commits[0].author.username' $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
87+
echo 'pr_number=${{ fromJson(steps.get_pr_data.outputs.result).number }}' >> $GITHUB_ENV
88+
echo "pr_or_commit_description=$(jq --ascii-output .head_commit.message $GITHUB_EVENT_PATH)" >> $GITHUB_ENV
89+
echo "post_merge_action=true" >> $GITHUB_ENV
5190
5291
- name: Checkout opensearch-build repo
5392
uses: actions/checkout@v4
@@ -72,13 +111,13 @@ jobs:
72111
73112
- name: Upload Coverage Report
74113
if: success()
75-
uses: codecov/codecov-action@v3
114+
uses: codecov/codecov-action@v4
76115
with:
77116
files: ./codeCoverage.xml
78117

79118
- name: Create Comment Success
80119
if: ${{ github.event_name == 'pull_request_target' && success() && env.result == 'SUCCESS' }}
81-
uses: peter-evans/create-or-update-comment@v3
120+
uses: peter-evans/create-or-update-comment@v4
82121
with:
83122
issue-number: ${{ env.pr_number }}
84123
body: |
@@ -101,7 +140,7 @@ jobs:
101140
102141
- name: Create Comment Flaky
103142
if: ${{ github.event_name == 'pull_request_target' && success() && env.result != 'SUCCESS' }}
104-
uses: peter-evans/create-or-update-comment@v3
143+
uses: peter-evans/create-or-update-comment@v4
105144
with:
106145
issue-number: ${{ env.pr_number }}
107146
body: |
@@ -111,7 +150,7 @@ jobs:
111150
112151
- name: Create Comment Failure
113152
if: ${{ github.event_name == 'pull_request_target' && failure() }}
114-
uses: peter-evans/create-or-update-comment@v3
153+
uses: peter-evans/create-or-update-comment@v4
115154
with:
116155
issue-number: ${{ env.pr_number }}
117156
body: |
@@ -127,3 +166,12 @@ jobs:
127166
with:
128167
assignees: ${{ github.event.head_commit.author.username }}, ${{ github.triggering_actor }}
129168
filename: .github/ISSUE_TEMPLATE/failed_check.md
169+
170+
check-result:
171+
needs: [check-files, gradle-check]
172+
if: always()
173+
runs-on: ubuntu-latest
174+
steps:
175+
- name: Fail if gradle-check fails
176+
if: ${{ needs.check-files.outputs.RUN_GRADLE_CHECK && needs.gradle-check.result == 'failure' }}
177+
run: exit 1

.github/workflows/links.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
- uses: actions/checkout@v4
1414
- name: lychee Link Checker
1515
id: lychee
16-
uses: lycheeverse/lychee-action@v1.9.1
16+
uses: lycheeverse/lychee-action@v1.10.0
1717
with:
1818
args: --accept=200,403,429 --exclude-mail **/*.html **/*.md **/*.txt **/*.json --exclude-file .lychee.excludes
1919
fail: true
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Add comment
2+
on:
3+
issues:
4+
types:
5+
- labeled
6+
jobs:
7+
add-comment:
8+
if: github.event.label.name == 'poc'
9+
runs-on: ubuntu-latest
10+
permissions:
11+
issues: write
12+
steps:
13+
- name: Add comment
14+
uses: peter-evans/create-or-update-comment@v4
15+
with:
16+
issue-number: ${{ github.event.issue.number }}
17+
body: |
18+
### POC Checklist:
19+
20+
Please go through the following checklist to ensure these items are taken into account while designing the POC.
21+
22+
- [ ] Supports safe upgrade paths from all supported BWC versions to the current version
23+
- [ ] Supports compatibility with all plugins
24+
- [ ] opensearch-alerting
25+
- [ ] opensearch-anomaly-detection
26+
- [ ] opensearch-asynchronous-search
27+
- [ ] opensearch-cross-cluster-replication
28+
- [ ] opensearch-geospatial
29+
- [ ] opensearch-index-management
30+
- [ ] opensearch-job-scheduler
31+
- [ ] opensearch-knn
32+
- [ ] opensearch-ml
33+
- [ ] opensearch-notifications
34+
- [ ] opensearch-notifications-core
35+
- [ ] opensearch-observability
36+
- [ ] opensearch-performance-analyzer
37+
- [ ] opensearch-reports-scheduler
38+
- [ ] opensearch-security
39+
- [ ] opensearch-sql
40+
- [ ] Supports lucene upgrades across minor lucene versions
41+
- [ ] Supports lucene upgrades across major lucene versions
42+
- [ ] Supports lucene upgrades across underlying lucene codec bumps (Eg: Lucene95Codec -> Lucene96Codec)
43+
- [ ] Supports wire compatibility of OpenSearch
44+
- [ ] Plan to measure performance degradation/improvement (if any)
45+
- [ ] Plan to document any user facing changes introduced by this feature
46+
- [ ] Ensure working and passing CI
47+
48+
Thank you for your contribution!
49+

0 commit comments

Comments
 (0)