1
+ #! /bin/bash
2
+
3
+ # Define the default repository
1
4
REPOSITORY=" packages.wazuh.com/4.x"
5
+
6
+ # Fetch the latest Wazuh version from GitHub
2
7
WAZUH_CURRENT_VERSION=$( curl --silent https://api.github.com/repos/wazuh/wazuh/releases/latest | grep ' \"tag_name\":' | sed -E ' s/.*\"([^\"]+)\".*/\1/' | cut -c 2-)
3
- MAJOR_BUILD=$( echo $WAZUH_VERSION | cut -d. -f1)
4
- MID_BUILD=$( echo $WAZUH_VERSION | cut -d. -f2)
5
- MINOR_BUILD=$( echo $WAZUH_VERSION | cut -d. -f3)
6
- MAJOR_CURRENT=$( echo $WAZUH_CURRENT_VERSION | cut -d. -f1)
7
- MID_CURRENT=$( echo $WAZUH_CURRENT_VERSION | cut -d. -f2)
8
- MINOR_CURRENT=$( echo $WAZUH_CURRENT_VERSION | cut -d. -f3)
9
-
10
- # # check version to use the correct repository
8
+
9
+ # Extract version components
10
+ MAJOR_BUILD=$( echo " $WAZUH_VERSION " | cut -d. -f1)
11
+ MID_BUILD=$( echo " $WAZUH_VERSION " | cut -d. -f2)
12
+ MINOR_BUILD=$( echo " $WAZUH_VERSION " | cut -d. -f3)
13
+ MAJOR_CURRENT=$( echo " $WAZUH_CURRENT_VERSION " | cut -d. -f1)
14
+ MID_CURRENT=$( echo " $WAZUH_CURRENT_VERSION " | cut -d. -f2)
15
+ MINOR_CURRENT=$( echo " $WAZUH_CURRENT_VERSION " | cut -d. -f3)
16
+
17
+ # Select repository based on version comparison
11
18
if [ " $MAJOR_BUILD " -gt " $MAJOR_CURRENT " ]; then
12
19
REPOSITORY=" packages-dev.wazuh.com/pre-release"
13
20
elif [ " $MAJOR_BUILD " -eq " $MAJOR_CURRENT " ]; then
@@ -20,8 +27,25 @@ elif [ "$MAJOR_BUILD" -eq "$MAJOR_CURRENT" ]; then
20
27
fi
21
28
fi
22
29
23
- curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/${FILEBEAT_CHANNEL} -${FILEBEAT_VERSION} -amd64.deb && \
24
- dpkg -i ${FILEBEAT_CHANNEL} -${FILEBEAT_VERSION} -amd64.deb && rm -f ${FILEBEAT_CHANNEL} -${FILEBEAT_VERSION} -amd64.deb && \
30
+ # Detect system architecture (amd64 or arm64)
31
+ ARCH=$( dpkg --print-architecture)
32
+ if [ " $ARCH " == " arm64" ]; then
33
+ FILEBEAT_ARCH=" arm64"
34
+ else
35
+ FILEBEAT_ARCH=" amd64"
36
+ fi
37
+
38
+ # Download and install the correct Filebeat package
39
+ curl -L -O " https://artifacts.elastic.co/downloads/beats/filebeat/${FILEBEAT_CHANNEL} -${FILEBEAT_VERSION} -${FILEBEAT_ARCH} .deb"
40
+ dpkg -i " ${FILEBEAT_CHANNEL} -${FILEBEAT_VERSION} -${FILEBEAT_ARCH} .deb"
41
+ rm -f " ${FILEBEAT_CHANNEL} -${FILEBEAT_VERSION} -${FILEBEAT_ARCH} .deb"
42
+
43
+ # Ensure the Filebeat module directory exists before extraction
44
+ mkdir -p /usr/share/filebeat/module
45
+
46
+ # Extract Filebeat modules
25
47
curl -s https://duplo-wazuh.s3.us-west-2.amazonaws.com/duplo-wazuh-filebeat.tar.gz | tar -xvz -C /usr/share/filebeat/module
48
+
49
+ # Set correct ownership and permissions
26
50
chown -R root:root /usr/share/filebeat/module
27
- chmod -R go-w /usr/share/filebeat/module/
51
+ chmod -R go-w /usr/share/filebeat/module
0 commit comments