Skip to content

Commit b70cf5e

Browse files
Merge remote-tracking branch 'upstream/main' into smoke-test-workflow
2 parents 34730d2 + 806873d commit b70cf5e

24 files changed

+1880
-512
lines changed

.github/workflows/get-ci-image-tag.yml

+23-3
Original file line numberDiff line numberDiff line change
@@ -25,25 +25,33 @@ on:
2525
ci-image-version-linux:
2626
description: The ci image version for linux build
2727
value: ${{ jobs.Get-CI-Image-Tag.outputs.output-ci-image-version-linux }}
28+
ci-image-start-options:
29+
description: The ci image start options to set when starting the container
30+
value: ${{ jobs.Get-CI-Image-Tag.outputs.output-ci-image-start-options }}
31+
ci-image-start-command:
32+
description: The ci image start commands to run after initialization
33+
value: ${{ jobs.Get-CI-Image-Tag.outputs.output-ci-image-start-command }}
2834

2935
jobs:
3036
Get-CI-Image-Tag:
3137
runs-on: ubuntu-latest
3238
outputs:
33-
output-ci-image-version-linux: ${{ steps.step-ci-image-version-linux.outputs.ci-image-version-linux }}
39+
output-ci-image-version-linux: ${{ steps.step-ci-image-setups.outputs.ci-image-version-linux }}
40+
output-ci-image-start-command: ${{ steps.step-ci-image-setups.outputs.ci-image-start-command }}
41+
output-ci-image-start-options: ${{ steps.step-ci-image-setups.outputs.ci-image-start-options }}
3442
steps:
3543
- name: Install crane
3644
uses: iarekylew00t/crane-installer@v1
3745
with:
3846
crane-release: v0.15.2
3947
- name: Checkout opensearch-build repository
40-
uses: actions/checkout@v3
48+
uses: actions/checkout@v4
4149
with:
4250
repository: 'opensearch-project/opensearch-build'
4351
ref: ${{ inputs.build_ref }}
4452
path: 'opensearch-build'
4553
- name: Get ci image version from opensearch-build repository scripts
46-
id: step-ci-image-version-linux
54+
id: step-ci-image-setups
4755
run: |
4856
PRODUCT=${{ inputs.product }}
4957
PLATFORM=${{ inputs.platform }}
@@ -55,6 +63,18 @@ jobs:
5563
PLATFORM="almalinux8"
5664
fi
5765
fi
66+
67+
if [[ "$PLATFORM" = "al2" ]]; then
68+
CI_IMAGE_CMD="cp -a /node_al2/* /node && /node/bin/node -v"
69+
echo "ci-image-start-command=$CI_IMAGE_CMD" >> $GITHUB_OUTPUT
70+
CI_IMAGE_OPTIONS="--user root -v /node:/node:rw,rshared -v /node:/__e/node20:ro,rshared"
71+
echo "ci-image-start-options=$CI_IMAGE_OPTIONS" >> $GITHUB_OUTPUT
72+
else
73+
CI_IMAGE_CMD="echo pass"
74+
echo "ci-image-start-command=$CI_IMAGE_CMD" >> $GITHUB_OUTPUT
75+
CI_IMAGE_OPTIONS="--user root"
76+
echo "ci-image-start-options=$CI_IMAGE_OPTIONS" >> $GITHUB_OUTPUT
77+
fi
5878
crane version
5979
echo $PRODUCT $PLATFORM
6080
CI_IMAGE_VERSION=`opensearch-build/docker/ci/get-ci-images.sh -p $PLATFORM -u $PRODUCT -t $TYPE | head -1`

config/opensearch_dashboards-2.x.yml

+8-1
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@
201201
# Set the value of this setting to true to enable the ml commons dashboards
202202
# ml_commons_dashboards.enabled: false
203203

204-
# 2.12 New experimental Assistant Dashboards Feature
204+
# 2.12 New Experimental Assistant Dashboards Feature
205205
# Set the value of this setting to true to enable the assistant dashboards
206206
# assistant.chat.enabled: false
207207

@@ -213,6 +213,13 @@
213213
# Set the value of this setting to true to enable UI Metric collections
214214
# usageCollection.uiMetric.enabled: false
215215

216+
# 2.18 New Experimental Settings
217+
# Set the value to true to enable
218+
# assistant.alertInsight.enabled: false
219+
# assistant.smartAnomalyDetector.enabled: false
220+
# assistant.text2viz.enabled: false
221+
# queryEnhancements.queryAssist.summary.enabled: false
222+
216223
opensearch.hosts: [https://localhost:9200]
217224
opensearch.ssl.verificationMode: none
218225
opensearch.username: kibanaserver

config/opensearch_dashboards-default.x.yml

+8-1
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@
201201
# Set the value of this setting to true to enable the ml commons dashboards
202202
# ml_commons_dashboards.enabled: false
203203

204-
# 2.12 New experimental Assistant Dashboards Feature
204+
# 2.12 New Experimental Assistant Dashboards Feature
205205
# Set the value of this setting to true to enable the assistant dashboards
206206
# assistant.chat.enabled: false
207207

@@ -213,6 +213,13 @@
213213
# Set the value of this setting to true to enable UI Metric collections
214214
# usageCollection.uiMetric.enabled: false
215215

216+
# 2.18 New Experimental Settings
217+
# Set the value to true to enable
218+
# assistant.alertInsight.enabled: false
219+
# assistant.smartAnomalyDetector.enabled: false
220+
# assistant.text2viz.enabled: false
221+
# queryEnhancements.queryAssist.summary.enabled: false
222+
216223
opensearch.hosts: [https://localhost:9200]
217224
opensearch.ssl.verificationMode: none
218225
opensearch.username: kibanaserver

docker/ci/dockerfiles/current/build.al2.opensearch.x64.arm64.dockerfile

+27-2
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,21 @@ ENV GEM_HOME=$CONTAINER_USER_HOME/.gem
7676
ENV GEM_PATH=$GEM_HOME
7777
ENV PATH=$RUBY_HOME:$RVM_HOME:$PATH
7878

79+
# Installing openssl1.1.1
80+
# Support requests >= 2.28.1 version
81+
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/lib64:/usr/lib
82+
RUN yum install -y curl libcurl-devel libfaketime perl-core pcre-devel && yum remove -y openssl-devel && yum clean all && \
83+
mkdir -p /tmp/openssl && cd /tmp/openssl && \
84+
curl -sSL -o- https://www.openssl.org/source/openssl-1.1.1g.tar.gz | tar -xz --strip-components 1 && \
85+
./config --prefix=/usr --openssldir=/etc/ssl --libdir=lib shared zlib-dynamic && make && make install && \
86+
echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/lib64:/usr/lib" > /etc/profile.d/openssl.sh && openssl version
87+
7988
# Install Python binary
8089
RUN curl https://www.python.org/ftp/python/3.9.7/Python-3.9.7.tgz | tar xzvf - && \
8190
cd Python-3.9.7 && \
82-
./configure --enable-optimizations && \
83-
make altinstall
91+
env LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/lib64:/usr/lib ./configure --enable-optimizations --with-openssl=/usr --prefix=/usr/local && \
92+
make altinstall && cd ../ && rm -rf Python-3.9.7.tgz Python-3.9.7 && \
93+
cp -v /etc/ssl/certs/ca-bundle.crt /etc/ssl/cert.pem
8494

8595
# Setup Python links
8696
RUN ln -sfn /usr/local/bin/python3.9 /usr/bin/python3 && \
@@ -114,6 +124,21 @@ RUN git clone -b v0.3.27 --single-branch https://github.com/xianyi/OpenBLAS.git
114124
ENV LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"
115125
RUN pip3 install cmake==3.26.4
116126

127+
# NodeJS Unofficial Builds
128+
# https://github.com/opensearch-project/opensearch-build/issues/5178
129+
# https://github.com/actions/runner/issues/2906
130+
# https://github.com/actions/runner/issues/3475
131+
# GitHub enforce nodejs 20 official build in runner 2.317.0 of their actions and CentOS7/AL2 would fail due to having older glibc versions
132+
# Until https://github.com/actions/runner/pull/3128 is merged or AL2 is deprecated (2025/06) this is a quick fix with unofficial builds support glibc 2.17
133+
# With changes done similar to this PR (https://github.com/opensearch-project/job-scheduler/pull/702) alongside the image here
134+
# Only linux x64 is supported in unofficial build until https://github.com/nodejs/unofficial-builds/pull/91 is merged
135+
RUN if [ `uname -m` = "x86_64" ]; then \
136+
curl -SL https://unofficial-builds.nodejs.org/download/release/v20.10.0/node-v20.10.0-linux-x64-glibc-217.tar.xz -o /node20.tar.xz; \
137+
mkdir /node_al2; \
138+
tar -xf /node20.tar.xz --strip-components 1 -C /node_al2; \
139+
rm -v /node20.tar.xz; \
140+
fi
141+
117142
# Change User
118143
USER $CONTAINER_USER
119144
WORKDIR $CONTAINER_USER_HOME

docker/release/config/opensearch-dashboards/opensearch-dashboards-docker-entrypoint-2.x.sh

+5-1
Original file line numberDiff line numberDiff line change
@@ -167,10 +167,14 @@ opensearch_dashboards_vars=(
167167
data_source.audit.appender.layout.highlight
168168
data_source.audit.appender.layout.pattern
169169
ml_commons_dashboards.enabled
170-
assistant.chat.enabled
171170
observability.query_assist.enabled
172171
usageCollection.uiMetric.enabled
173172
workspace.enabled
173+
assistant.chat.enabled
174+
assistant.alertInsight.enabled
175+
assistant.smartAnomalyDetector.enabled
176+
assistant.text2viz.enabled
177+
queryEnhancements.queryAssist.summary.enabled
174178
)
175179

176180
function setupSecurityDashboardsPlugin {

docker/release/config/opensearch-dashboards/opensearch-dashboards-docker-entrypoint-default.x.sh

+5-1
Original file line numberDiff line numberDiff line change
@@ -167,10 +167,14 @@ opensearch_dashboards_vars=(
167167
data_source.audit.appender.layout.highlight
168168
data_source.audit.appender.layout.pattern
169169
ml_commons_dashboards.enabled
170-
assistant.chat.enabled
171170
observability.query_assist.enabled
172171
usageCollection.uiMetric.enabled
173172
workspace.enabled
173+
assistant.chat.enabled
174+
assistant.alertInsight.enabled
175+
assistant.smartAnomalyDetector.enabled
176+
assistant.text2viz.enabled
177+
queryEnhancements.queryAssist.summary.enabled
174178
)
175179

176180
function setupSecurityDashboardsPlugin {

jenkins/check-for-build.jenkinsfile

+2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ pipeline {
2323
}
2424
triggers {
2525
parameterizedCron '''
26+
H 1 * * * %INPUT_MANIFEST=2.18.1/opensearch-2.18.1.yml;TARGET_JOB_NAME=distribution-build-opensearch;BUILD_PLATFORM=linux windows;BUILD_DISTRIBUTION=tar rpm deb zip;TEST_MANIFEST=2.18.1/opensearch-2.18.1-test.yml;TEST_PLATFORM=linux;TEST_DISTRIBUTION=tar
27+
H 1 * * * %INPUT_MANIFEST=1.3.20/opensearch-dashboards-1.3.20.yml;TARGET_JOB_NAME=distribution-build-opensearch-dashboards;BUILD_PLATFORM=linux windows;BUILD_DISTRIBUTION=tar rpm deb zip;TEST_MANIFEST=1.3.20/opensearch-dashboards-1.3.20-test.yml;TEST_PLATFORM=linux;TEST_DISTRIBUTION=tar
2628
H 1 * * * %INPUT_MANIFEST=2.19.0/opensearch-2.19.0.yml;TARGET_JOB_NAME=distribution-build-opensearch;BUILD_PLATFORM=linux windows;BUILD_DISTRIBUTION=tar rpm deb zip;TEST_MANIFEST=2.19.0/opensearch-2.19.0-test.yml;TEST_PLATFORM=linux;TEST_DISTRIBUTION=tar
2729
H 4 * * * %INPUT_MANIFEST=1.3.20/opensearch-1.3.20.yml;TARGET_JOB_NAME=distribution-build-opensearch;BUILD_PLATFORM=linux windows;BUILD_DISTRIBUTION=tar rpm deb zip;TEST_MANIFEST=1.3.20/opensearch-1.3.20-test.yml;TEST_PLATFORM=linux;TEST_DISTRIBUTION=tar
2830
H 4 * * * %INPUT_MANIFEST=3.0.0/opensearch-3.0.0.yml;TARGET_JOB_NAME=distribution-build-opensearch;BUILD_PLATFORM=linux windows;BUILD_DISTRIBUTION=tar rpm deb zip

jenkins/docker/docker-scan.jenkinsfile

+4
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,10 @@ pipeline {
1717
timeout(time: 30)
1818
}
1919
agent none
20+
environment {
21+
TRIVY_DB_REPOSITORY = 'public.ecr.aws/aquasecurity/trivy-db'
22+
TRIVY_JAVA_DB_REPOSITORY = 'public.ecr.aws/aquasecurity/trivy-java-db'
23+
}
2024
parameters {
2125
string(
2226
name: 'IMAGE_FULL_NAME',

jenkins/gradle/gradle-check.jenkinsfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* compatible open source license.
88
*/
99

10-
lib = library(identifier: 'jenkins@7.2.0', retriever: modernSCM([
10+
lib = library(identifier: 'jenkins@7.3.2', retriever: modernSCM([
1111
$class: 'GitSCMSource',
1212
remote: 'https://github.com/opensearch-project/opensearch-build-libraries.git',
1313
]))

jenkins/integ-test-notification.jenkinsfile

+2
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ pipeline {
2828
}
2929
triggers {
3030
parameterizedCron('''
31+
H */6 * * * %INPUT_MANIFEST=2.18.1/opensearch-2.18.1.yml
32+
H */6 * * * %INPUT_MANIFEST=1.3.20/opensearch-dashboards-1.3.20.yml
3133
H */6 * * * %INPUT_MANIFEST=2.19.0/opensearch-2.19.0.yml
3234
H */6 * * * %INPUT_MANIFEST=2.18.0/opensearch-2.18.0.yml
3335
H */6 * * * %INPUT_MANIFEST=2.18.0/opensearch-dashboards-2.18.0.yml

0 commit comments

Comments
 (0)