From 57ee45eaae260ab6bdc1f2fb610b3526d46d691a Mon Sep 17 00:00:00 2001 From: wazuhci <22834044+wazuhci@users.noreply.github.com> Date: Fri, 16 Jan 2026 14:17:01 +0000 Subject: [PATCH 1/3] feat: bump 4.14.4 --- .env | 6 +++--- .github/.goss.yaml | 2 +- .../workflows/Procedure_push_docker_images.yml | 4 ++-- CHANGELOG.md | 18 ++++++++++++++++++ README.md | 2 +- VERSION.json | 2 +- build-docker-images/README.md | 4 ++-- build-docker-images/build-images.sh | 4 ++-- docs/dev/build-image.md | 4 ++-- docs/dev/introduction.md | 2 +- docs/dev/setup.md | 6 +++--- docs/ref/Introduction/description.md | 6 +++--- docs/ref/Introduction/introduction.md | 4 ++-- docs/ref/configuration/configuration-files.md | 2 +- docs/ref/configuration/configuration.md | 2 +- .../getting-started/deployment/deployment.md | 6 +++--- docs/ref/getting-started/getting-started.md | 6 +++--- docs/ref/getting-started/requirements.md | 2 +- docs/ref/glossary.md | 6 +++--- multi-node/docker-compose.yml | 12 ++++++------ single-node/docker-compose.yml | 6 +++--- wazuh-agent/docker-compose.yml | 2 +- 22 files changed, 63 insertions(+), 45 deletions(-) diff --git a/.env b/.env index 5387a7af..11e36c30 100755 --- a/.env +++ b/.env @@ -1,6 +1,6 @@ -WAZUH_VERSION=4.14.3 -WAZUH_IMAGE_VERSION=4.14.3 +WAZUH_VERSION=4.14.4 +WAZUH_IMAGE_VERSION=4.14.4 WAZUH_TAG_REVISION=1 -FILEBEAT_TEMPLATE_BRANCH=4.14.3 +FILEBEAT_TEMPLATE_BRANCH=4.14.4 WAZUH_FILEBEAT_MODULE=wazuh-filebeat-0.5.tar.gz WAZUH_UI_REVISION=1 diff --git a/.github/.goss.yaml b/.github/.goss.yaml index eccb7521..f6685b98 100644 --- a/.github/.goss.yaml +++ b/.github/.goss.yaml @@ -56,7 +56,7 @@ package: wazuh-manager: installed: true versions: - - 4.14.3 + - 4.14.4 port: tcp:1514: listening: true diff --git a/.github/workflows/Procedure_push_docker_images.yml b/.github/workflows/Procedure_push_docker_images.yml index 1e227dd7..b287b7a3 100644 --- a/.github/workflows/Procedure_push_docker_images.yml +++ b/.github/workflows/Procedure_push_docker_images.yml @@ -6,7 +6,7 @@ on: inputs: image_tag: description: 'Docker image tag' - default: '4.14.3' + default: '4.14.4' required: true docker_reference: description: 'wazuh-docker reference' @@ -32,7 +32,7 @@ on: inputs: image_tag: description: 'Docker image tag' - default: '4.14.3' + default: '4.14.4' required: true type: string docker_reference: diff --git a/CHANGELOG.md b/CHANGELOG.md index 23a66071..24d7afaf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,24 @@ # Change Log All notable changes to this project will be documented in this file. +## [4.14.4] + +### Added + +- None + +### Changed + +- None + +### Fixed + +- None + +### Deleted + +- None + ## [4.14.3] ### Added diff --git a/README.md b/README.md index 37906a3c..4ce0e2e1 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ The `wazuh/wazuh-docker` repository provides resources to deploy the Wazuh cyber ## Branch Convention - `main`: Developing and testing of new features. -- `X.Y.Z`: Version-specific branches (e.g., `4.14.3`, `4.13.0`, etc.). +- `X.Y.Z`: Version-specific branches (e.g., `4.14.4`, `4.13.0`, etc.). ## Documentation diff --git a/VERSION.json b/VERSION.json index 0c100995..04478604 100644 --- a/VERSION.json +++ b/VERSION.json @@ -1,4 +1,4 @@ { - "version": "4.14.3", + "version": "4.14.4", "stage": "rc1" } diff --git a/build-docker-images/README.md b/build-docker-images/README.md index 8502b8c6..1300b436 100644 --- a/build-docker-images/README.md +++ b/build-docker-images/README.md @@ -19,7 +19,7 @@ Then execute: The script also allows to build images from other versions of Wazuh by using the `-v` or `--version` argument: ```bash -./build-images.sh -v 4.14.3 +./build-images.sh -v 4.14.4 ``` To get all the available script options use the -h or --help option: @@ -33,7 +33,7 @@ Usage: ./build-images.sh [OPTIONS] -f, --filebeat-module [Optional] Set Filebeat module version. By default 0.5. -r, --revision [Optional] Package revision. By default 1 -rg, --registry [Optional] Set the Docker registry to push the images. - -v, --version [Optional] Set the Wazuh version should be builded. By default, 4.14.3. + -v, --version [Optional] Set the Wazuh version should be builded. By default, 4.14.4. -m, --multiarch [Optional] Enable multi-architecture builds. -h, --help Show this help. diff --git a/build-docker-images/build-images.sh b/build-docker-images/build-images.sh index 914a2e7e..23648a4f 100755 --- a/build-docker-images/build-images.sh +++ b/build-docker-images/build-images.sh @@ -8,11 +8,11 @@ # License (version 2) as published by the FSF - Free Software # Foundation. -IMAGE_TAG=4.14.3 +IMAGE_TAG=4.14.4 WAZUH_CURRENT_VERSION=$(curl --silent https://api.github.com/repos/wazuh/wazuh/releases/latest | grep '["]tag_name["]:' | sed -E 's/.*\"([^\"]+)\".*/\1/' | cut -c 2- | sed -e 's/\.//g') WAZUH_REGISTRY=docker.io -WAZUH_IMAGE_VERSION="4.14.3" +WAZUH_IMAGE_VERSION="4.14.4" WAZUH_TAG_REVISION="1" WAZUH_DEV_STAGE="" FILEBEAT_MODULE_VERSION="0.5" diff --git a/docs/dev/build-image.md b/docs/dev/build-image.md index 3e565876..318e2fb6 100644 --- a/docs/dev/build-image.md +++ b/docs/dev/build-image.md @@ -13,7 +13,7 @@ This script initializes the environment variables needed to build each of the im The script allows you to build images from other versions of Wazuh, to do this you must use the -v or --version argument: ``` -$ build-docker-images/build-images.sh -v 4.14.3 +$ build-docker-images/build-images.sh -v 4.14.4 ``` To get all the available script options use the -h or --help option: @@ -26,7 +26,7 @@ Usage: build-docker-images/build-images.sh [OPTIONS] -d, --dev [Optional] Set the development stage you want to build, example rc4 or beta1, not used by default. -f, --filebeat-module [Optional] Set Filebeat module version. By default 0.5. -r, --revision [Optional] Package revision. By default 1 - -v, --version [Optional] Set the Wazuh version should be builded. By default, 4.14.3. + -v, --version [Optional] Set the Wazuh version should be builded. By default, 4.14.4. -h, --help Show this help. ``` \ No newline at end of file diff --git a/docs/dev/introduction.md b/docs/dev/introduction.md index f56b10b9..ef041663 100644 --- a/docs/dev/introduction.md +++ b/docs/dev/introduction.md @@ -1,6 +1,6 @@ # Development Guide - Introduction -Welcome to the Development Guide for Wazuh-docker version 4.14.3. This guide is intended for developers, contributors, and advanced users who wish to understand the development aspects of the Wazuh-Docker project, build custom Docker images, or contribute to its development. +Welcome to the Development Guide for Wazuh-docker version 4.14.4. This guide is intended for developers, contributors, and advanced users who wish to understand the development aspects of the Wazuh-Docker project, build custom Docker images, or contribute to its development. ## Purpose of This Guide diff --git a/docs/dev/setup.md b/docs/dev/setup.md index 7150031c..5d839981 100644 --- a/docs/dev/setup.md +++ b/docs/dev/setup.md @@ -1,6 +1,6 @@ # Development Guide - Setup Environment -This section outlines the steps required to set up your local development environment for working with the Wazuh-Docker project (version 4.14.3). A proper setup is crucial for building images, running tests, and contributing effectively. +This section outlines the steps required to set up your local development environment for working with the Wazuh-Docker project (version 4.14.4). A proper setup is crucial for building images, running tests, and contributing effectively. ## Prerequisites @@ -26,12 +26,12 @@ Before you begin, ensure your system meets the following requirements: Follow these steps to prepare your development environment: 1. **Clone the Repository**: - Clone the `wazuh-docker` repository from GitHub. It's important to check out the specific branch you intend to work with, in this case, `4.14.3`. + Clone the `wazuh-docker` repository from GitHub. It's important to check out the specific branch you intend to work with, in this case, `4.14.4`. ```bash git clone [https://github.com/wazuh/wazuh-docker.git](https://github.com/wazuh/wazuh-docker.git) cd wazuh-docker - git checkout v4.14.3 + git checkout v4.14.4 ``` 2. **Verify Docker Installation**: diff --git a/docs/ref/Introduction/description.md b/docs/ref/Introduction/description.md index 8bcc6def..66e7d3f5 100644 --- a/docs/ref/Introduction/description.md +++ b/docs/ref/Introduction/description.md @@ -1,6 +1,6 @@ # Reference Manual - Description -This section provides a detailed description of Wazuh-docker (version 4.14.3), its components, and its architecture when deployed using Docker containers. Understanding these aspects is key to effectively deploying and managing your Wazuh environment. +This section provides a detailed description of Wazuh-docker (version 4.14.4), its components, and its architecture when deployed using Docker containers. Understanding these aspects is key to effectively deploying and managing your Wazuh environment. ## What is Wazuh? @@ -18,7 +18,7 @@ Wazuh-docker is a project that provides Docker images and `docker compose` confi ## Core Components in Wazuh-Docker -The Wazuh-Docker project typically provides images for the following core Wazuh components, adapted for version 4.14.3: +The Wazuh-Docker project typically provides images for the following core Wazuh components, adapted for version 4.14.4: 1. **Wazuh Manager**: - The central component that collects and analyzes data from deployed Wazuh agents. @@ -28,7 +28,7 @@ The Wazuh-Docker project typically provides images for the following core Wazuh 2. **Wazuh Indexer**: - A highly scalable, full-text search and analytics engine. - Based on OpenSearch (or historically Elasticsearch), it stores and indexes alerts and monitoring data generated by the Wazuh manager. - - The Wazuh indexer container provides the data persistence layer for Wazuh alerts and events. For version 4.14.3, this is typically an OpenSearch-based component. + - The Wazuh indexer container provides the data persistence layer for Wazuh alerts and events. For version 4.14.4, this is typically an OpenSearch-based component. 3. **Wazuh Dashboard**: - A flexible visualization tool based on OpenSearch Dashboards (or historically Kibana). diff --git a/docs/ref/Introduction/introduction.md b/docs/ref/Introduction/introduction.md index 71e8ac15..881f92f9 100644 --- a/docs/ref/Introduction/introduction.md +++ b/docs/ref/Introduction/introduction.md @@ -1,6 +1,6 @@ # Reference Manual - Introduction -Welcome to the Reference Manual for Wazuh-Docker, version 4.14.3. This manual provides comprehensive information about deploying, configuring, and managing your Wazuh environment using Docker. +Welcome to the Reference Manual for Wazuh-Docker, version 4.14.4. This manual provides comprehensive information about deploying, configuring, and managing your Wazuh environment using Docker. ## Purpose of This Manual @@ -44,4 +44,4 @@ This manual is structured to help you find information efficiently: - If you need to customize your deployment, refer to the [Configuration](configuration/configuration.md) section. - For specific terms or concepts, consult the [Glossary](glossary.md). -This manual refers to version 4.14.3 of Wazuh-Docker. Ensure you are using the documentation that corresponds to your deployed version. +This manual refers to version 4.14.4 of Wazuh-Docker. Ensure you are using the documentation that corresponds to your deployed version. diff --git a/docs/ref/configuration/configuration-files.md b/docs/ref/configuration/configuration-files.md index 3359675e..f13fafab 100644 --- a/docs/ref/configuration/configuration-files.md +++ b/docs/ref/configuration/configuration-files.md @@ -29,4 +29,4 @@ ``` -Consult the official Wazuh documentation for version 4.14.3 for detailed information on all possible configuration parameters for each component. +Consult the official Wazuh documentation for version 4.14.4 for detailed information on all possible configuration parameters for each component. diff --git a/docs/ref/configuration/configuration.md b/docs/ref/configuration/configuration.md index a5ab3e5d..b7c7be4d 100644 --- a/docs/ref/configuration/configuration.md +++ b/docs/ref/configuration/configuration.md @@ -1,6 +1,6 @@ # Reference Manual - Configuration -This section details how to configure your Wazuh-Docker deployment (version 4.14.3). Proper configuration is key to tailoring the Wazuh stack to your specific needs, managing data persistence, and integrating with your environment. +This section details how to configure your Wazuh-Docker deployment (version 4.14.4). Proper configuration is key to tailoring the Wazuh stack to your specific needs, managing data persistence, and integrating with your environment. ## Overview of Configuration Methods diff --git a/docs/ref/getting-started/deployment/deployment.md b/docs/ref/getting-started/deployment/deployment.md index 5b6de839..b0efaedb 100644 --- a/docs/ref/getting-started/deployment/deployment.md +++ b/docs/ref/getting-started/deployment/deployment.md @@ -1,6 +1,6 @@ # Reference Manual - Deployment -This section provides detailed instructions for deploying Wazuh-Docker (version 4.14.3) in various configurations. Choose the deployment model that best suits your needs, from simple single-node setups for testing to more robust multi-node configurations for production environments. +This section provides detailed instructions for deploying Wazuh-Docker (version 4.14.4) in various configurations. Choose the deployment model that best suits your needs, from simple single-node setups for testing to more robust multi-node configurations for production environments. ## Overview of Deployment Options @@ -24,11 +24,11 @@ Ensure you have: - Met all the [System Requirements](ref/getting-started/requirements.md). - Installed Docker and Docker Compose on your host(s). -- Cloned the `wazuh-docker` repository (version `4.14.3`) or downloaded the necessary deployment files. +- Cloned the `wazuh-docker` repository (version `4.14.4`) or downloaded the necessary deployment files. ```bash git clone [https://github.com/wazuh/wazuh-docker.git](https://github.com/wazuh/wazuh-docker.git) cd wazuh-docker - git checkout v4.14.3 + git checkout v4.14.4 ``` - Made a backup of any existing Wazuh data if you are migrating or upgrading. diff --git a/docs/ref/getting-started/getting-started.md b/docs/ref/getting-started/getting-started.md index 41cfd4c3..33090967 100644 --- a/docs/ref/getting-started/getting-started.md +++ b/docs/ref/getting-started/getting-started.md @@ -1,6 +1,6 @@ # Reference Manual - Getting Started -This section guides you through the initial steps to get your Wazuh-docker (version 4.14.3) environment up and running. We will cover the prerequisites and point you to the deployment instructions. +This section guides you through the initial steps to get your Wazuh-docker (version 4.14.4) environment up and running. We will cover the prerequisites and point you to the deployment instructions. ## Overview @@ -27,11 +27,11 @@ Before diving into the deployment, please ensure you have reviewed: Verify that your host system has sufficient RAM, CPU, and disk space. Ensure Docker and Docker Compose are installed and functioning correctly. 2. **Obtain Wazuh-docker Configuration**: - You'll need the Docker Compose files and any associated configuration files from the `wazuh-docker` repository for version 4.14.3. + You'll need the Docker Compose files and any associated configuration files from the `wazuh-docker` repository for version 4.14.4. ```bash git clone [https://github.com/wazuh/wazuh-docker.git](https://github.com/wazuh/wazuh-docker.git) cd wazuh-docker - git checkout v4.14.3 + git checkout v4.14.4 # Navigate to the specific docker-compose directory, e.g., single-node or multi-node # cd docker-compose/single-node/ (example path) ``` diff --git a/docs/ref/getting-started/requirements.md b/docs/ref/getting-started/requirements.md index 7cb622f4..3cac41c5 100644 --- a/docs/ref/getting-started/requirements.md +++ b/docs/ref/getting-started/requirements.md @@ -1,6 +1,6 @@ # Reference Manual - Requirements -Before deploying Wazuh-Docker (version 4.14.3), it's essential to ensure your environment meets the necessary hardware and software requirements. Meeting these prerequisites will help ensure a stable and performant Wazuh deployment. +Before deploying Wazuh-Docker (version 4.14.4), it's essential to ensure your environment meets the necessary hardware and software requirements. Meeting these prerequisites will help ensure a stable and performant Wazuh deployment. ## Host System Requirements diff --git a/docs/ref/glossary.md b/docs/ref/glossary.md index 7121b47d..c7a6ba67 100644 --- a/docs/ref/glossary.md +++ b/docs/ref/glossary.md @@ -1,6 +1,6 @@ # Reference Manual - Glossary -This glossary defines key terms and concepts related to Wazuh, Docker, and their use together in the Wazuh-Docker project (version 4.14.3). +This glossary defines key terms and concepts related to Wazuh, Docker, and their use together in the Wazuh-Docker project (version 4.14.4). --- @@ -22,7 +22,7 @@ This glossary defines key terms and concepts related to Wazuh, Docker, and their **D** -- **Dashboard (Wazuh Dashboard / OpenSearch Dashboards / Kibana)**: A web-based visualization tool used to explore, analyze, and visualize data stored in the Wazuh Indexer. It provides dashboards, visualizations, and a query interface for security events and alerts. For Wazuh 4.14.3, this is typically OpenSearch Dashboards. +- **Dashboard (Wazuh Dashboard / OpenSearch Dashboards / Kibana)**: A web-based visualization tool used to explore, analyze, and visualize data stored in the Wazuh Indexer. It provides dashboards, visualizations, and a query interface for security events and alerts. For Wazuh 4.14.4, this is typically OpenSearch Dashboards. - **Decoder**: A component in the Wazuh Manager that parses and extracts relevant information (fields) from raw log messages or event data. - **Docker**: An open platform for developing, shipping, and running applications inside containers. - **Docker Compose**: A tool for defining and running multi-container Docker applications. It uses a YAML file (`docker-compose.yml`) to configure the application's services, networks, and volumes. @@ -42,7 +42,7 @@ This glossary defines key terms and concepts related to Wazuh, Docker, and their **I** -- **Indexer (Wazuh Indexer / OpenSearch / Elasticsearch)**: The component responsible for storing, indexing, and making searchable the alerts and event data generated by the Wazuh Manager. For Wazuh 4.14.3, this is typically OpenSearch. +- **Indexer (Wazuh Indexer / OpenSearch / Elasticsearch)**: The component responsible for storing, indexing, and making searchable the alerts and event data generated by the Wazuh Manager. For Wazuh 4.14.4, this is typically OpenSearch. **L** diff --git a/multi-node/docker-compose.yml b/multi-node/docker-compose.yml index efc45d8f..b58183dc 100644 --- a/multi-node/docker-compose.yml +++ b/multi-node/docker-compose.yml @@ -1,7 +1,7 @@ # Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2) services: wazuh.master: - image: wazuh/wazuh-manager:4.14.3 + image: wazuh/wazuh-manager:4.14.4 hostname: wazuh.master restart: always ulimits: @@ -43,7 +43,7 @@ services: - ./config/wazuh_cluster/wazuh_manager.conf:/wazuh-config-mount/etc/ossec.conf wazuh.worker: - image: wazuh/wazuh-manager:4.14.3 + image: wazuh/wazuh-manager:4.14.4 hostname: wazuh.worker restart: always ulimits: @@ -79,7 +79,7 @@ services: - ./config/wazuh_cluster/wazuh_worker.conf:/wazuh-config-mount/etc/ossec.conf wazuh1.indexer: - image: wazuh/wazuh-indexer:4.14.3 + image: wazuh/wazuh-indexer:4.14.4 hostname: wazuh1.indexer restart: always ports: @@ -105,7 +105,7 @@ services: - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/config/opensearch-security/internal_users.yml wazuh2.indexer: - image: wazuh/wazuh-indexer:4.14.3 + image: wazuh/wazuh-indexer:4.14.4 hostname: wazuh2.indexer restart: always environment: @@ -127,7 +127,7 @@ services: - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/config/opensearch-security/internal_users.yml wazuh3.indexer: - image: wazuh/wazuh-indexer:4.14.3 + image: wazuh/wazuh-indexer:4.14.4 hostname: wazuh3.indexer restart: always environment: @@ -149,7 +149,7 @@ services: - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/config/opensearch-security/internal_users.yml wazuh.dashboard: - image: wazuh/wazuh-dashboard:4.14.3 + image: wazuh/wazuh-dashboard:4.14.4 hostname: wazuh.dashboard restart: always ports: diff --git a/single-node/docker-compose.yml b/single-node/docker-compose.yml index 8af0c2f2..cdf7b1ec 100644 --- a/single-node/docker-compose.yml +++ b/single-node/docker-compose.yml @@ -1,7 +1,7 @@ # Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2) services: wazuh.manager: - image: wazuh/wazuh-manager:4.14.3 + image: wazuh/wazuh-manager:4.14.4 hostname: wazuh.manager restart: always ulimits: @@ -44,7 +44,7 @@ services: - ./config/wazuh_cluster/wazuh_manager.conf:/wazuh-config-mount/etc/ossec.conf wazuh.indexer: - image: wazuh/wazuh-indexer:4.14.3 + image: wazuh/wazuh-indexer:4.14.4 hostname: wazuh.indexer restart: always ports: @@ -69,7 +69,7 @@ services: - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/config/opensearch-security/internal_users.yml wazuh.dashboard: - image: wazuh/wazuh-dashboard:4.14.3 + image: wazuh/wazuh-dashboard:4.14.4 hostname: wazuh.dashboard restart: always ports: diff --git a/wazuh-agent/docker-compose.yml b/wazuh-agent/docker-compose.yml index 26b9a9d9..89585bb2 100644 --- a/wazuh-agent/docker-compose.yml +++ b/wazuh-agent/docker-compose.yml @@ -1,7 +1,7 @@ # Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2) services: wazuh.agent: - image: wazuh/wazuh-agent:4.14.3 + image: wazuh/wazuh-agent:4.14.4 restart: always environment: - WAZUH_MANAGER_SERVER= From 9a9a2539e551a229b71beb85a29c0cd060d03195 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gonzalo=20Acu=C3=B1a?= <33964202+teddytpc1@users.noreply.github.com> Date: Fri, 23 Jan 2026 06:25:16 -0300 Subject: [PATCH 2/3] Merge 4.14.3 into 4.14.4 (#2181) Co-authored-by: Victor Carlos Erenu --- CHANGELOG.md | 1 + build-docker-images/build-images.sh | 3 +++ 2 files changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 24d7afaf..5cdf4346 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,6 +27,7 @@ All notable changes to this project will be documented in this file. ### Changed +- Add IMAGE_TAG stage reference ([#2176](https://github.com/wazuh/wazuh-docker/pull/2176)) - Modify run_as parameter value - v4.14.3 ([#2157](https://github.com/wazuh/wazuh-docker/pull/2157)) - Adapt Wazuh Agent Dockerfile for multi-architecture support ([#2149](https://github.com/wazuh/wazuh-docker/pull/2149)) - Agent group parameter added ([#2127](https://github.com/wazuh/wazuh-docker/pull/2127)) diff --git a/build-docker-images/build-images.sh b/build-docker-images/build-images.sh index 23648a4f..ffdb29be 100755 --- a/build-docker-images/build-images.sh +++ b/build-docker-images/build-images.sh @@ -43,6 +43,7 @@ build() { if [ "${WAZUH_DEV_STAGE}" ];then FILEBEAT_TEMPLATE_BRANCH="v${FILEBEAT_TEMPLATE_BRANCH}-${WAZUH_DEV_STAGE,,}" + IMAGE_TAG="${WAZUH_IMAGE_VERSION}-${WAZUH_DEV_STAGE,,}" if ! curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/${FILEBEAT_TEMPLATE_BRANCH}"; then echo "The indicated branch does not exist in the wazuh/wazuh repository: ${FILEBEAT_TEMPLATE_BRANCH}" clean 1 @@ -50,8 +51,10 @@ build() { else if curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/v${FILEBEAT_TEMPLATE_BRANCH}"; then FILEBEAT_TEMPLATE_BRANCH="v${FILEBEAT_TEMPLATE_BRANCH}" + IMAGE_TAG="${WAZUH_IMAGE_VERSION}" elif curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/${FILEBEAT_TEMPLATE_BRANCH}"; then FILEBEAT_TEMPLATE_BRANCH="${FILEBEAT_TEMPLATE_BRANCH}" + IMAGE_TAG="${WAZUH_IMAGE_VERSION}" else echo "The indicated branch does not exist in the wazuh/wazuh repository: ${FILEBEAT_TEMPLATE_BRANCH}" clean 1 From 6565cf921261f8b08745c7915f2781b48109c44f Mon Sep 17 00:00:00 2001 From: Jesus Garcia Date: Mon, 26 Jan 2026 22:27:45 -0500 Subject: [PATCH 3/3] Backport from 5.0.0: Allow building separate targets #2177 --- .../Procedure_push_docker_images.yml | 61 ++++++++++++- CHANGELOG.md | 2 +- build-docker-images/build-images.sh | 86 ++++++++++++++++--- 3 files changed, 134 insertions(+), 15 deletions(-) diff --git a/.github/workflows/Procedure_push_docker_images.yml b/.github/workflows/Procedure_push_docker_images.yml index b287b7a3..37b41fcd 100644 --- a/.github/workflows/Procedure_push_docker_images.yml +++ b/.github/workflows/Procedure_push_docker_images.yml @@ -15,6 +15,12 @@ on: description: 'Filebeat module version' default: '0.5' required: true + type: string + products: + description: 'Comma-separated list of the image names to build and push' + default: 'wazuh-manager,wazuh-dashboard,wazuh-indexer,wazuh-agent' + required: false + type: string revision: description: 'Package revision' default: '1' @@ -44,6 +50,11 @@ on: default: '0.5' required: true type: string + products: + description: 'Comma-separated list of the image names to build and push' + default: 'wazuh-manager,wazuh-dashboard,wazuh-indexer,wazuh-agent' + required: false + type: string revision: description: 'Package revision' default: '1' @@ -60,7 +71,7 @@ on: required: false jobs: - build-and-push: + setup: runs-on: ubuntu-22.04 permissions: @@ -73,6 +84,9 @@ jobs: FILEBEAT_MODULE_VERSION: ${{ inputs.filebeat_module_version }} REVISION: ${{ inputs.revision }} + outputs: + WAZUH_COMPONENTS: ${{ steps.compute-outputs.outputs.WAZUH_COMPONENTS }} + steps: - name: Print inputs run: | @@ -88,10 +102,51 @@ jobs: echo "* image_tag: ${{ inputs.image_tag }}" echo "* docker_reference: ${{ inputs.docker_reference }}" echo "* filebeat_module_version: ${{ inputs.filebeat_module_version }}" + echo "* products: ${{ inputs.products }}" echo "* revision: ${{ inputs.revision }}" echo "* dev: ${{ inputs.dev }}" echo "---------------------------------------------" + - name: Set up variables + id: compute-outputs + run: | + if [[ "${{ inputs.products }}" != "null" && "${{ inputs.products }}" != "" ]]; then + # Convert comma-separated list to JSON array format + IFS=',' read -ra COMPONENTS <<< "${{ inputs.products }}" + JSON_ARRAY="[" + for i in "${!COMPONENTS[@]}"; do + if [ $i -gt 0 ]; then + JSON_ARRAY+="," + fi + JSON_ARRAY+="\"${COMPONENTS[$i]}\"" + done + JSON_ARRAY+="]" + echo "WAZUH_COMPONENTS=$JSON_ARRAY" >> $GITHUB_OUTPUT + else + echo "WAZUH_COMPONENTS=[\"wazuh-manager\",\"wazuh-dashboard\",\"wazuh-indexer\",\"wazuh-agent\"]" >> $GITHUB_OUTPUT + fi + + build-and-push: + runs-on: ubuntu-22.04 + + permissions: + id-token: write + contents: read + + needs: + - setup + + strategy: + fail-fast: false # all jobs will run even if one fails + matrix: + wazuh_component: ${{ fromJson(needs.setup.outputs.WAZUH_COMPONENTS) }} + + env: + IMAGE_REGISTRY: ${{ inputs.dev && vars.IMAGE_REGISTRY_DEV || vars.IMAGE_REGISTRY_PROD }} + IMAGE_TAG: ${{ inputs.image_tag }} + REVISION: ${{ inputs.revision }} + + steps: - name: Checkout repository uses: actions/checkout@v4 with: @@ -138,9 +193,9 @@ jobs: fi DEV_STAGE=${tokens[1]} WAZUH_VER=${tokens[0]} - ./build-images.sh -v $WAZUH_VER -r $REVISION -d $DEV_STAGE -f $FILEBEAT_MODULE_VERSION -rg $IMAGE_REGISTRY -m + ./build-images.sh -v $WAZUH_VER -r $REVISION -d $DEV_STAGE -f $FILEBEAT_MODULE_VERSION -rg $IMAGE_REGISTRY -m -c ${{ matrix.wazuh_component }} else - ./build-images.sh -v $IMAGE_TAG -r $REVISION -f $FILEBEAT_MODULE_VERSION -rg $IMAGE_REGISTRY -m + ./build-images.sh -v $IMAGE_TAG -r $REVISION -f $FILEBEAT_MODULE_VERSION -rg $IMAGE_REGISTRY -m -c ${{ matrix.wazuh_component }} fi # Save .env file (generated by build-images.sh) contents to $GITHUB_ENV diff --git a/CHANGELOG.md b/CHANGELOG.md index 5cdf4346..d7510e0e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ All notable changes to this project will be documented in this file. ### Changed -- None +- Backport from 5.0.0: Backport from 5.0.0: Allow building separate targets #2177 ([#2184](https://github.com/wazuh/wazuh-docker/pull/2184)) ### Fixed diff --git a/build-docker-images/build-images.sh b/build-docker-images/build-images.sh index ffdb29be..197dc8eb 100755 --- a/build-docker-images/build-images.sh +++ b/build-docker-images/build-images.sh @@ -61,7 +61,6 @@ build() { fi fi - echo WAZUH_VERSION=$WAZUH_IMAGE_VERSION > ../.env echo WAZUH_IMAGE_VERSION=$WAZUH_IMAGE_VERSION >> ../.env echo WAZUH_TAG_REVISION=$WAZUH_TAG_REVISION >> ../.env @@ -75,18 +74,74 @@ build() { source ../.env set +a - if [ "${MULTIARCH}" ];then - docker buildx bake \ - --file build-images.yml \ - --push \ - --set *.platform=linux/amd64,linux/arm64 \ - --no-cache || clean 1 + # Define all available components + local all_components=("wazuh-indexer" "wazuh-manager" "wazuh-dashboard" "wazuh-agent") + local components_to_build=() + + # Determine which components to build + if [ -z "${WAZUH_COMPONENT}" ]; then + echo "No component specified. Building all components..." + components_to_build=("${all_components[@]}") else - docker buildx bake \ - --file build-images.yml \ - --load \ - --no-cache || clean 1 + # Validate component + case "${WAZUH_COMPONENT}" in + wazuh-indexer|wazuh-manager|wazuh-dashboard|wazuh-agent) + components_to_build=("${WAZUH_COMPONENT}") + ;; + *) + echo "Error: Unknown component '${WAZUH_COMPONENT}'" >&2 + clean 1 + ;; + esac fi + + # Determine build command and base options + if [ "${MULTIARCH}" ]; then + build_cmd="docker buildx build --platform linux/amd64,linux/arm64 --push --no-cache" + else + build_cmd="docker build --no-cache" + fi + + # Build each component + for component in "${components_to_build[@]}"; do + echo "Building ${component} image..." + + # Build common args (used by all components) + build_args=( + -t "${WAZUH_REGISTRY}/wazuh/${component}:${IMAGE_TAG}" + --build-arg WAZUH_VERSION="${WAZUH_IMAGE_VERSION}" + --build-arg WAZUH_TAG_REVISION="${WAZUH_TAG_REVISION}" + ) + + # Add component-specific args + case "${component}" in + wazuh-indexer) + # No additional args for wazuh-indexer + ;; + wazuh-manager) + build_args+=( + --build-arg FILEBEAT_TEMPLATE_BRANCH="${FILEBEAT_TEMPLATE_BRANCH}" + --build-arg WAZUH_FILEBEAT_MODULE="${WAZUH_FILEBEAT_MODULE}" + ) + ;; + wazuh-dashboard) + build_args+=( + --build-arg WAZUH_UI_REVISION="${WAZUH_UI_REVISION}" + ) + ;; + wazuh-agent) + # No additional args for wazuh-agent + ;; + esac + + # Execute build + $build_cmd "${build_args[@]}" ${component}/ || clean 1 + echo "${component} image built successfully!" + done + + echo "" + echo "Image build process completed!" + return 0 } @@ -100,6 +155,7 @@ help() { echo " -f, --filebeat-module [Optional] Set Filebeat module version. By default ${FILEBEAT_MODULE_VERSION}." echo " -r, --revision [Optional] Package revision. By default ${WAZUH_TAG_REVISION}" echo " -rg, --registry [Optional] Set the Docker registry to push the images." + echo " -c, --component [Required] Set the Wazuh component to build. Accepted values: 'wazuh-indexer', 'wazuh-manager', 'wazuh-dashboard', 'wazuh-agent'." echo " -v, --version [Optional] Set the Wazuh version should be builded. By default, ${WAZUH_IMAGE_VERSION}." echo " -m, --multiarch [Optional] Enable multi-architecture builds." echo " -h, --help Show this help." @@ -160,6 +216,14 @@ main() { help 1 fi ;; + "-c"|"--component") + if [ -n "${2}" ]; then + WAZUH_COMPONENT="${2}" + shift 2 + else + help 1 + fi + ;; *) help 1 esac