Compare commits

..
Author SHA1 Message Date
Wazuh CI 276dfb532a Merge pull request #2300 from wazuh/enhancement/wqa2276-bump-test_bump_main_with_set-as-main_false
Bump test_bump_main_with_set-as-main_false branch
2026-04-14 22:17:34 +02:00
wazuhci 3b91fd7dcd feat: bump test_bump_main_with_set-as-main_false 2026-04-14 20:17:30 +00:00
27 changed files with 119 additions and 259 deletions
+2 -2
View File
@@ -1,3 +1,3 @@
WAZUH_VERSION=5.0.0
WAZUH_IMAGE_VERSION=5.0.0
WAZUH_VERSION=5.1.0
WAZUH_IMAGE_VERSION=5.1.0
WAZUH_REGISTRY=docker.io
+6 -74
View File
@@ -32,11 +32,7 @@ on:
description: 'Optional identifier for the run'
required: false
type: string
revert:
description: 'Set to true to revert the bump changes applied for this issue'
default: false
required: false
type: boolean
jobs:
bump:
name: Repository bumper 5.x
@@ -111,14 +107,7 @@ jobs:
fi
issue_number=$(echo "${{ inputs.issue-link }}" | awk -F'/' '{print $NF}')
if [[ "${{ inputs.revert }}" == "true" ]]; then
BRANCH_NAME="enhancement/wqa${issue_number}-revert-bump-${{ github.ref_name }}"
echo "pr_title=Revert bump ${{ github.ref_name }} branch" >> $GITHUB_OUTPUT
else
BRANCH_NAME="enhancement/wqa${issue_number}-bump-${{ github.ref_name }}"
echo "pr_title=Bump ${{ github.ref_name }} branch" >> $GITHUB_OUTPUT
fi
BRANCH_NAME="enhancement/wqa${issue_number}-bump-${{ github.ref_name }}"
echo "branch_name=$BRANCH_NAME" >> $GITHUB_OUTPUT
echo "script_params=${script_params}" >> $GITHUB_OUTPUT
@@ -127,68 +116,22 @@ jobs:
git checkout -b ${{ steps.vars.outputs.branch_name }}
- name: Make version bump changes
if: inputs.revert != true
run: |
echo "Running bump script"
bash ${{ env.BUMP_SCRIPT_PATH }} ${{ steps.vars.outputs.script_params }}
- name: Commit changes (Bump)
if: inputs.revert != true
- name: Commit and push changes
run: |
git add .
git commit -m "feat: bump ${{ github.ref_name }}"
- name: Fetch full history (Revert)
if: inputs.revert == true
run: git fetch --unshallow
- name: Revert references (Revert)
id: revert_step
if: inputs.revert == true
run: |
ISSUE_NUMBER=$(echo "${{ inputs.issue-link }}" | awk -F'/' '{print $NF}')
BUMP_BRANCH="enhancement/wqa${ISSUE_NUMBER}-bump-${{ github.ref_name }}"
PR_NUMBER=$(gh pr list --head "$BUMP_BRANCH" --base "${{ github.ref_name }}" --state merged --json number --jq '.[0].number')
if [ -z "$PR_NUMBER" ] || [ "$PR_NUMBER" == "null" ]; then
echo "Error: The original PR for the bump was not found"
echo "Searching merged PR from: $BUMP_BRANCH to ${{ github.ref_name }}"
exit 1
fi
echo "Original PR found: #$PR_NUMBER"
MERGE_COMMIT=$(gh pr view $PR_NUMBER --json mergeCommit --jq '.mergeCommit.oid')
git revert -m 1 $MERGE_COMMIT --no-commit
# Remove the files to prevent them from being included in the revert commit
git checkout HEAD -- VERSION.json 2>/dev/null || true
git checkout HEAD -- CHANGELOG.md 2>/dev/null || true
# Add any other repository-specific version files here
if git diff --staged --quiet; then
echo "No references to revert. Skipping commit."
echo "has_changes=false" >> $GITHUB_OUTPUT
else
git commit -m "feat: revert ${{ github.ref_name }} references"
echo "has_changes=true" >> $GITHUB_OUTPUT
fi
- name: Push changes
if: inputs.revert != true || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true')
run: |
git push origin ${{ steps.vars.outputs.branch_name }}
- name: Create pull request
id: create_pr
if: inputs.revert != true || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true')
run: |
gh auth setup-git
PR_URL=$(gh pr create \
--title "${{ steps.vars.outputs.pr_title }}" \
--title "Bump ${{ github.ref_name }} branch" \
--body "Issue: ${{ inputs.issue-link }}" \
--base ${{ github.ref_name }} \
--head ${{ steps.vars.outputs.branch_name }})
@@ -197,25 +140,14 @@ jobs:
echo "pull_request_url=${PR_URL}" >> $GITHUB_OUTPUT
- name: Merge pull request
if: inputs.revert != true || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true')
run: |
# Any checks for the PR are bypassed since the branch is expected to be functional
# Any checks for the PR are bypassed since the branch is expected to be functional (i.e. the bump process does not introduce any bugs)
gh pr merge "${{ steps.create_pr.outputs.pull_request_url }}" --merge --admin
- name: Show logs
if: inputs.revert != true
run: |
echo "Bump complete."
echo "Branch: ${{ steps.vars.outputs.branch_name }}"
echo "PR: ${{ steps.create_pr.outputs.pull_request_url }}"
echo "Bumper scripts logs:"
cat ${BUMP_LOG_PATH}/repository_bumper*log
- name: Show revert logs
if: inputs.revert == true
run: |
echo "Revert bump complete."
echo "Branch: ${{ steps.vars.outputs.branch_name }}"
echo "PR: ${{ steps.create_pr.outputs.pull_request_url }}"
echo "Revert bumper scripts logs:"
cat ${BUMP_LOG_PATH}/repository_bumper*log || true
cat ${BUMP_LOG_PATH}/repository_bumper*log
+1 -1
View File
@@ -44,7 +44,7 @@ jobs:
with:
image_tag: ${{ needs.prepare-variables.outputs.WAZUH_IMAGE_VERSION }}
docker_reference: ${{ github.head_ref || inputs.docker_reference }}
wazuh_automation_reference: 'main'
wazuh_automation_reference: '5.1.0'
commit_list: '["latest", "latest", "latest", "latest"]'
assistant_revision: 'latest'
id: ${{ github.run_id }}
@@ -6,7 +6,7 @@ on:
inputs:
image_tag:
description: 'Docker image tag'
default: '5.0.0'
default: '5.1.0'
required: true
docker_reference:
description: 'wazuh-docker reference'
@@ -14,7 +14,7 @@ on:
wazuh_automation_reference:
description: 'Branch or tag of the wazuh-automation repository'
required: false
default: 'main'
default: '5.1.0'
products:
description: 'Comma-separated list of the image names to build and push'
default: 'wazuh-manager,wazuh-dashboard,wazuh-indexer,wazuh-agent'
@@ -42,7 +42,7 @@ on:
inputs:
image_tag:
description: 'Docker image tag'
default: '5.0.0'
default: '5.1.0'
required: true
type: string
docker_reference:
@@ -52,7 +52,7 @@ on:
wazuh_automation_reference:
description: 'Branch or tag of the wazuh-automation repository'
required: false
default: 'main'
default: '5.1.0'
type: string
products:
description: 'Comma-separated list of the image names to build and push'
@@ -90,7 +90,6 @@ jobs:
outputs:
WAZUH_COMPONENTS: ${{ steps.compute-outputs.outputs.WAZUH_COMPONENTS }}
COMMIT_LIST: ${{ steps.compute-outputs.outputs.COMMIT_LIST }}
ALL_PRODUCTS_SELECTED: ${{ steps.compute-outputs.outputs.ALL_PRODUCTS_SELECTED }}
steps:
- name: Print inputs
@@ -116,22 +115,24 @@ jobs:
- name: Set up variables
id: compute-outputs
run: |
# Use the default list if products is empty
PRODUCTS="${{ inputs.products }}"
if [[ -z "$PRODUCTS" || "$PRODUCTS" == "null" ]]; then
PRODUCTS="wazuh-manager,wazuh-dashboard,wazuh-indexer,wazuh-agent"
fi
# Check if all 4 core components are present in the string
if [[ "$PRODUCTS" == *"wazuh-manager"* && "$PRODUCTS" == *"wazuh-dashboard"* && "$PRODUCTS" == *"wazuh-indexer"* && "$PRODUCTS" == *"wazuh-agent"* ]]; then
echo "ALL_PRODUCTS_SELECTED=true" >> $GITHUB_OUTPUT
else
echo "ALL_PRODUCTS_SELECTED=false" >> $GITHUB_OUTPUT
fi
# Set WAZUH_COMPONENTS
# Convert to JSON for the matrix (Your existing logic)
IFS=',' read -ra COMPONENTS <<< "$PRODUCTS"
JSON_ARRAY=$(printf '%s\n' "${COMPONENTS[@]}" | jq -R . | jq -s -c .)
echo "WAZUH_COMPONENTS=$JSON_ARRAY" >> $GITHUB_OUTPUT
WC_JSON_ARRAY=""
if [[ "${{ inputs.products }}" != "null" && "${{ inputs.products }}" != "" ]]; then
# Convert comma-separated list to JSON array format
IFS=',' read -ra COMPONENTS <<< "${{ inputs.products }}"
WC_JSON_ARRAY="["
for i in "${!COMPONENTS[@]}"; do
if [ $i -gt 0 ]; then
WC_JSON_ARRAY+=","
fi
WC_JSON_ARRAY+="\"${COMPONENTS[$i]}\""
done
WC_JSON_ARRAY+="]"
else
WC_JSON_ARRAY='["wazuh-manager","wazuh-dashboard","wazuh-indexer","wazuh-agent"]'
fi
echo "Products to build: $WC_JSON_ARRAY"
echo "WAZUH_COMPONENTS=$WC_JSON_ARRAY" >> $GITHUB_OUTPUT
# Set COMMIT_LIST
WC_COMMIT_LIST=""
@@ -365,7 +366,6 @@ jobs:
-d $DEV_STAGE \
-rg $IMAGE_REGISTRY \
-m \
--dev \
-refs "$COMPONENT_REFS_JSON" \
-c ${{ matrix.wazuh_component }}
else
@@ -382,7 +382,6 @@ jobs:
-v $IMAGE_TAG \
-rg $IMAGE_REGISTRY \
-m \
--dev \
-refs "$COMPONENT_REFS_JSON" \
-c ${{ matrix.wazuh_component }}
else
@@ -406,19 +405,11 @@ jobs:
fi
working-directory: ./build-docker-images
notify:
runs-on: ubuntu-22.04
needs: [setup, build-and-push]
# Only run if NOT dev AND all products were selected
if: ${{ inputs.dev == false && needs.setup.outputs.ALL_PRODUCTS_SELECTED == 'true' }}
steps:
- name: Image exists validation
if: ${{ inputs.dev == false }}
id: validation
run: |
IMAGE_TAG=${{ inputs.image_tag }}
IMAGE_REGISTRY="${{ vars.IMAGE_REGISTRY_PROD }}"
PURPOSE=""
if [[ "$IMAGE_TAG" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
@@ -440,15 +431,12 @@ jobs:
echo "purpose=$PURPOSE" >> $GITHUB_OUTPUT
- name: GH issue notification
if: ${{ steps.validation.outputs.purpose != '' }}
env:
GH_TOKEN: ${{ secrets.NOTIFICATION_GH_ARTIFACT_TOKEN }}
if: ${{ inputs.dev == false && steps.validation.outputs.purpose != '' }}
run: |
IMAGE_TAG=${{ inputs.image_tag }}
PURPOSE="${{ steps.validation.outputs.purpose }}"
GH_TITLE=""
GH_MESSAGE=""
PURPOSE="${{ steps.validation.outputs.purpose }}"
## Setting GH issue title
GH_TITLE="Artifactory vulnerabilities update \`v$IMAGE_TAG\`"
@@ -499,3 +487,6 @@ jobs:
gh project item-edit --id $PROJECT_ITEM_ID --project-id ${{ secrets.NOTIFICATION_PROJECT_ID }} --field-id ${{ secrets.NOTIFICATION_PROJECT_SIZE_ID }} --single-select-option-id ${{ secrets.NOTIFICATION_PROJECT_SIZE_OPTION_ID }}
## Setting Subteam
gh project item-edit --id $PROJECT_ITEM_ID --project-id ${{ secrets.NOTIFICATION_PROJECT_ID }} --field-id ${{ secrets.NOTIFICATION_PROJECT_SUBTEAM_ID }} --single-select-option-id ${{ secrets.NOTIFICATION_PROJECT_SUBTEAM_OPTION_ID }}
env:
GH_TOKEN: ${{ secrets.NOTIFICATION_GH_ARTIFACT_TOKEN }}
-21
View File
@@ -27,7 +27,6 @@ All notable changes to this project will be documented in this file.
### Changed
- Add checks for artifact_urls.yaml download ([#2315](https://github.com/wazuh/wazuh-docker/pull/2315))
- Add set_as_main option ([#2293](https://github.com/wazuh/wazuh-docker/pull/2293))
- Adapt bumper workflows to change main branch ([#2294](https://github.com/wazuh/wazuh-docker/pull/2294))
- Delete all API user and password references and Wazuh agent references ([#2289](https://github.com/wazuh/wazuh-docker/pull/2289))
@@ -67,8 +66,6 @@ All notable changes to this project will be documented in this file.
### Fixed
- Modify the choice of a correct tag ([#2313](https://github.com/wazuh/wazuh-docker/pull/2313))
- Artifact URL download fix ([#2306](https://github.com/wazuh/wazuh-docker/pull/2306))
- Change API query method. ([#2275](https://github.com/wazuh/wazuh-docker/pull/2275))
- Change Wazuh manager Healthcheck. ([#2272](https://github.com/wazuh/wazuh-docker/pull/2272))
- Delete WAZUH_AGENT_GROUP variable. ([#2263](https://github.com/wazuh/wazuh-docker/pull/2263))
@@ -78,24 +75,6 @@ All notable changes to this project will be documented in this file.
- None
## [4.14.6]
### Added
- None
### Changed
- None
### Fixed
- GH issue notification fix ([#2312](https://github.com/wazuh/wazuh-docker/pull/2312))
### Deleted
- None
## [4.14.5]
### Added
+1 -1
View File
@@ -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., `5.0.0`, `4.14.0`, etc.).
- `X.Y.Z`: Version-specific branches (e.g., `5.1.0`, `4.14.0`, etc.).
## Documentation
+1 -1
View File
@@ -1,4 +1,4 @@
{
"version": "5.1.0",
"stage": "alpha0"
}
}
+29 -71
View File
@@ -8,16 +8,15 @@
# License (version 2) as published by the FSF - Free Software
# Foundation.
WAZUH_IMAGE_VERSION=5.0.0
IMAGE_TAG=5.0.0
WAZUH_IMAGE_VERSION=5.1.0
IMAGE_TAG=5.1.0
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')
IMAGE_VERSION=${WAZUH_IMAGE_VERSION}
WAZUH_REGISTRY=docker.io
WAZUH_IMAGE_VERSION="5.0.0"
WAZUH_IMAGE_VERSION="5.1.0"
WAZUH_DEV_STAGE=""
WAZUH_COMPONENTS_COMMIT_LIST=''
IS_DEV_BUILD=""
# -----------------------------------------------------------------------------
@@ -38,9 +37,9 @@ ctrl_c() {
build() {
# WAZUH_MINOR_VERSION: Extracts major and minor version only (e.g., 5.0.0 -> 5.0)
# WAZUH_MINOR_VERSION: Extracts major and minor version only (e.g., 5.1.0 -> 5.0)
WAZUH_MINOR_VERSION="${WAZUH_IMAGE_VERSION%.*}"
# WAZUH_MAJOR_VERSION: Extracts major version only (e.g., 5.0.0 -> 5)
# WAZUH_MAJOR_VERSION: Extracts major version only (e.g., 5.1.0 -> 5)
WAZUH_MAJOR_VERSION="${WAZUH_IMAGE_VERSION%%.*}"
# WAZUH_STAGE: Extract the 'stage' (e.g., alpha0, beta1, rc2) from the local JSON metadata file.
# Note: This is primarily used for pre-release package naming.
@@ -52,63 +51,36 @@ build() {
if [[ -f "$ARTIFACT_URLS_FILE" ]]; then
echo "$ARTIFACT_URLS_FILE exists. Using existing file."
else
# GitHub URL for exact Release Tag lookup
# Prepare logic to fetch the artifact from Wazuh's infrastructure
TAG="v${WAZUH_IMAGE_VERSION}"
REPO="wazuh/wazuh-docker"
GH_URL="https://api.github.com/repos/${REPO}/releases/tags/${TAG}"
GH_URL="https://api.github.com/repos/${REPO}/git/refs/tags/${TAG}"
# Fetch the HTTP status code to determine release environment.
# Using -L to follow redirects (GitHub may return 301/302 for some endpoints).
HTTP_STATUS=$(curl -sL -o /dev/null -w "%{http_code}" "$GH_URL")
if [ "$HTTP_STATUS" -eq 200 ]; then
# CASE: Production (Tag and Release exist)
echo "Release $TAG found. Setting Production environment."
ARTIFACT_URLS_DOWNLOAD="artifact_urls_${WAZUH_IMAGE_VERSION}.yaml"
PACKAGE_URL="packages.wazuh.com"
RELEASE_STAGE="production"
elif [ "$HTTP_STATUS" -eq 403 ]; then
# CASE: GitHub API rate limit hit — fall back to pre-release to avoid
# incorrectly skipping staging artifacts.
echo "Warning: GitHub API rate limit reached (403). Assuming pre-release environment." >&2
PACKAGE_URL="packages-staging.xdrsiem.wazuh.info"
RELEASE_STAGE="pre-release"
if [ -n "$WAZUH_STAGE" ] && [ "$WAZUH_STAGE" != "null" ]; then
ARTIFACT_URLS_DOWNLOAD="artifact_urls_${WAZUH_IMAGE_VERSION}-${WAZUH_STAGE}.yaml"
else
ARTIFACT_URLS_DOWNLOAD="artifact_urls_${WAZUH_IMAGE_VERSION}.yaml"
fi
# Use GitHub API to check if the tag exists publicly.
# This determines if we should look for production or staging artifacts.
if curl -fsSL "$GH_URL" >/dev/null 2>&1; then
# CASE: Production (Tag exists in the official repository)
ARTIFACT_URLS_DOWNLOAD=artifact_urls_${WAZUH_IMAGE_VERSION}.yaml
PACKAGE_URL=packages.wazuh.com
RELEASE_STAGE=production
else
# CASE: Pre-release/Staging (404 Not Found or any other non-200 status)
echo "Release $TAG not found (HTTP status: $HTTP_STATUS). Setting Pre-release environment."
PACKAGE_URL="packages-staging.xdrsiem.wazuh.info"
RELEASE_STAGE="pre-release"
if [ -n "$WAZUH_STAGE" ] && [ "$WAZUH_STAGE" != "null" ]; then
ARTIFACT_URLS_DOWNLOAD="artifact_urls_${WAZUH_IMAGE_VERSION}-${WAZUH_STAGE}.yaml"
else
ARTIFACT_URLS_DOWNLOAD="artifact_urls_${WAZUH_IMAGE_VERSION}.yaml"
fi
# CASE: Pre-release/Staging (Tag not found, fall back to staging environment)
# Includes the WAZUH_STAGE suffix (e.g., artifact_urls_5.0.0-alpha0.yaml)
ARTIFACT_URLS_DOWNLOAD=artifact_urls_${WAZUH_IMAGE_VERSION}-${WAZUH_STAGE}.yaml
PACKAGE_URL=packages-staging.xdrsiem.wazuh.info
RELEASE_STAGE=pre-release
fi
# Final download using dynamic variables based on the release type.
# Pattern: server / stage / major_version.x / filename
FULL_URL="https://${PACKAGE_URL}/${RELEASE_STAGE}/${WAZUH_MAJOR_VERSION}.x/${ARTIFACT_URLS_DOWNLOAD}"
echo "Attempting to download: $FULL_URL"
curl -fsSL -o "$ARTIFACT_URLS_FILE" "$FULL_URL" || {
echo "Error: Failed to download artifact URLs from $FULL_URL" >&2
clean 1
}
curl -fsSL -o "$ARTIFACT_URLS_FILE" "https://${PACKAGE_URL}/${RELEASE_STAGE}/${WAZUH_MAJOR_VERSION}.x/${ARTIFACT_URLS_DOWNLOAD}"
fi
awk -F':' '!/^#/ && NF>1 {name=$1; val=substr($0,length(name)+3); gsub(/[-.]/,"_",name); print name "=\"" val "\""}' $ARTIFACT_URLS_FILE > artifacts_env.txt
# Set component commit references for development builds.
# Commits are only resolved (and later appended to the image tag) when --dev is
# explicitly passed. Production and stage builds (dev=false) never include a
# commit suffix even if -refs is provided. Manual local builds also omit it.
if [ -n "${IS_DEV_BUILD}" ]; then
# Set component commit references for development builds
if [ -n "${WAZUH_DEV_STAGE}" ]; then
if [ -z "${WAZUH_COMPONENTS_COMMIT_LIST}" ]; then
# Default to 'latest' for all components if no specific references are provided
# Set default to 'latest' for all components if no specific references are provided
INDEXER_COMMIT="latest"
MANAGER_COMMIT="latest"
DASHBOARD_COMMIT="latest"
@@ -129,6 +101,7 @@ build() {
fi
# Set all component commits
INDEXER_COMMIT="$(printf '%s' "${WAZUH_COMPONENTS_COMMIT_LIST}" | jq -r '.[0]')"
MANAGER_COMMIT="$(printf '%s' "${WAZUH_COMPONENTS_COMMIT_LIST}" | jq -r '.[1]')"
DASHBOARD_COMMIT="$(printf '%s' "${WAZUH_COMPONENTS_COMMIT_LIST}" | jq -r '.[2]')"
@@ -231,18 +204,8 @@ build() {
# Get component-specific commit reference
COMPONENT_COMMIT=$(get_component_commit "${component}")
# Generate component-specific IMAGE_TAG.
# The commit suffix is only appended when --dev was passed, which maps
# directly to inputs.dev=true in the workflow. This ensures:
# dev=false, tag=5.0.0 → 5.0.0
# dev=false, tag=5.0.0-beta1 → 5.0.0-beta1
# dev=true, tag=5.0.0 → 5.0.0-latest
# dev=true, tag=5.0.0-beta1 → 5.0.0-beta1-latest
if [ -n "${IS_DEV_BUILD}" ]; then
IMAGE_TAG="${WAZUH_IMAGE_VERSION}${WAZUH_DEV_STAGE:+-${WAZUH_DEV_STAGE,,}}-${COMPONENT_COMMIT}"
else
IMAGE_TAG="${WAZUH_IMAGE_VERSION}${WAZUH_DEV_STAGE:+-${WAZUH_DEV_STAGE,,}}"
fi
# Generate component-specific IMAGE_TAG
IMAGE_TAG="${WAZUH_IMAGE_VERSION}${WAZUH_DEV_STAGE:+-${WAZUH_DEV_STAGE,,}-${COMPONENT_COMMIT}}"
echo "Using IMAGE_TAG: ${IMAGE_TAG} for ${component}"
export IMAGE_TAG="$IMAGE_TAG"
@@ -301,9 +264,8 @@ help() {
echo
echo "Usage: $0 [OPTIONS]"
echo
echo " -d, --dev-stage <ref> [Optional] Set the pre-release stage suffix (e.g. beta1, rc2). Not used by default."
echo " --dev [Optional] Mark as a development build: appends the commit ref to the image tag. Controlled by inputs.dev in the workflow."
echo " -refs, --references <refs> [Optional] [Only with --dev] JSON array of commit refs for components (indexer, manager, dashboard, agent) in order. Defaults to 'latest'."
echo " -d, --dev <ref> [Optional] Set the development stage you want to build, example rc2 or beta1, not used by default."
echo " -refs, --references <refs> [Optional] [Only for Dev] JSON array of commit refs for components to be build (indexer, manager, dashboard, agent) in order. Defaults to latest."
echo " -rg, --registry <reg> [Optional] Set the Docker registry to push the images."
echo " -c, --component <comp> [Required] Set the Wazuh component to build. Accepted values: 'wazuh-indexer', 'wazuh-manager', 'wazuh-dashboard', 'wazuh-agent'."
echo " -v, --version <ver> [Optional] Set the Wazuh version should be builded. By default, ${WAZUH_IMAGE_VERSION}."
@@ -322,7 +284,7 @@ main() {
"-h"|"--help")
help 0
;;
"-d"|"--dev-stage")
"-d"|"--dev")
if [ -n "${2}" ]; then
WAZUH_DEV_STAGE="${2}"
shift 2
@@ -330,10 +292,6 @@ main() {
help 1
fi
;;
"--dev")
IS_DEV_BUILD="true"
shift
;;
"-m"|"--multiarch")
MULTIARCH="true"
shift
+2 -2
View File
@@ -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 5.0.0
./build-images.sh -v 5.1.0
```
To get all the available script options use the `-h` or `--help` option:
@@ -32,7 +32,7 @@ Usage: build-images.sh [OPTIONS]
-d, --dev <ref> [Optional] Set the development stage you want to build, example rc2 or beta1, not used by default.
-refs, --references <ref> [Optional] Set each Wazuh component reference to be build (indexer, manager, dasboard and agent). By default, using the latest release: ['latest', 'latest', 'latest', 'latest']
-rg, --registry <reg> [Optional] Set the Docker registry to push the images.
-v, --version <ver> [Optional] Set the Wazuh version should be builded. By default, 5.0.0.
-v, --version <ver> [Optional] Set the Wazuh version should be builded. By default, 5.1.0.
-m, --multiarch [Optional] Enable multi-architecture builds.
-h, --help Show this help.
+1 -1
View File
@@ -1,6 +1,6 @@
# Development Guide - Introduction
Welcome to the Development Guide for Wazuh-docker version 5.0.0 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 5.1.0 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
+3 -3
View File
@@ -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 5.0.0). 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 5.1.0). 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, `5.0.0`.
Clone the `wazuh-docker` repository from GitHub. It's important to check out the specific branch you intend to work with, in this case, `5.1.0`.
```bash
git clone [https://github.com/wazuh/wazuh-docker.git](https://github.com/wazuh/wazuh-docker.git)
cd wazuh-docker
git checkout v5.0.0
git checkout v5.1.0
```
2. **Verify Docker Installation**:
+1 -1
View File
@@ -6,7 +6,7 @@ The Procedure_push_docker_images.yml workflow builds and pushes multi-architectu
| Parameter | Description | Default | Required |
|-----------|-------------|---------|----------|
| `image_tag` | Docker image version tag | `5.0.0` | Yes |
| `image_tag` | Docker image version tag | `5.1.0` | Yes |
| `docker_reference` | Branch/tag to build from | - | Yes |
| `reference` | Dev reference (for pre-release builds) | `latest` | No |
| `id` | Workflow run identifier | - | No |
+2 -2
View File
@@ -2,5 +2,5 @@
For backup and restore, refer to the documentation for each component:
- [Wazuh manager](https://github.com/wazuh/wazuh/blob/v5.0.0/docs/ref/backup-restore.md)
- [Wazuh agent](https://github.com/wazuh/wazuh-agent/blob/v5.0.0/docs/ref/backup-restore.md)
- [Wazuh manager](https://github.com/wazuh/wazuh/blob/v5.1.0/docs/ref/backup-restore.md)
- [Wazuh agent](https://github.com/wazuh/wazuh-agent/blob/v5.1.0/docs/ref/backup-restore.md)
@@ -28,7 +28,7 @@
docker compose up -d
```
Consult the official Wazuh documentation for version 5.0.0 for detailed information on all possible configuration parameters for each component.
Consult the official Wazuh documentation for version 5.1.0 for detailed information on all possible configuration parameters for each component.
## Persistence configuration
+1 -1
View File
@@ -1,6 +1,6 @@
# Reference Manual - Configuration
This section details how to configure your Wazuh-Docker deployment (version 5.0.0). 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 5.1.0). 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
@@ -1,6 +1,6 @@
# Reference Manual - Deployment
This section provides detailed instructions for deploying Wazuh-Docker (version 5.0.0) 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 5.1.0) 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](../requirements.md).
- Installed Docker and Docker Compose on your host(s).
- Cloned the `wazuh-docker` repository (version `5.0.0`) or downloaded the necessary deployment files.
- Cloned the `wazuh-docker` repository (version `5.1.0`) or downloaded the necessary deployment files.
```bash
git clone https://github.com/wazuh/wazuh-docker.git
cd wazuh-docker
git checkout v5.0.0
git checkout v5.1.0
```
- Made a backup of any existing Wazuh data if you are migrating or upgrading.
@@ -21,8 +21,8 @@ This deployment utilizes the `multi-node/docker-compose.yml` file, which defines
3. Download the certificate creation script and config.yml file:
```bash
curl -o wazuh-certs-tool.sh https://packages.wazuh.com/5.0/wazuh-certs-tool-5.0.0-1.sh
curl -o config.yml https://packages.wazuh.com/5.0/config-5.0.0-1.yml
curl -o wazuh-certs-tool.sh https://packages.wazuh.com/5.0/wazuh-certs-tool-5.1.0-1.sh
curl -o config.yml https://packages.wazuh.com/5.0/config-5.1.0-1.yml
```
4. Edit the `config.yml` file with the configuration of the Wazuh components to be deployed
@@ -21,8 +21,8 @@ This deployment uses the `single-node/docker-compose.yml` file, which defines a
3. Download the certificate creation script and `config.yml` file:
```bash
curl -o wazuh-certs-tool.sh https://packages.wazuh.com/5.0/wazuh-certs-tool-5.0.0-1.sh
curl -o config.yml https://packages.wazuh.com/5.0/config-5.0.0-1.yml
curl -o wazuh-certs-tool.sh https://packages.wazuh.com/5.0/wazuh-certs-tool-5.1.0-1.sh
curl -o config.yml https://packages.wazuh.com/5.0/config-5.1.0-1.yml
```
4. Edit the config.yml file with the configuration of the Wazuh components to be deployed
+3 -3
View File
@@ -1,6 +1,6 @@
# Reference Manual - Getting Started
This section guides you through the initial steps to get your Wazuh-docker (version 5.0.0) 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 5.1.0) 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 5.0.0.
You'll need the Docker Compose files and any associated configuration files from the `wazuh-docker` repository for version 5.1.0.
```bash
git clone [https://github.com/wazuh/wazuh-docker.git](https://github.com/wazuh/wazuh-docker.git)
cd wazuh-docker
git checkout v5.0.0
git checkout v5.1.0
# Navigate to the specific docker-compose directory, e.g., single-node or multi-node
# cd docker-compose/single-node/ (example path)
```
+2 -2
View File
@@ -1,6 +1,6 @@
# Reference Manual - Requirements
Before deploying Wazuh-Docker (version 5.0.0), 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 5.1.0), 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
@@ -53,7 +53,7 @@ These are general recommendations. Actual needs may vary based on the number of
* **Docker Desktop**
* Install Docker Desktop by following the official instructions: [Install Docker Desktop](https://docs.docker.com/desktop/setup/install/windows-install/).
* **WSL Linux distribution**
* Install Ubuntu or other compatible Linux distribution (bash in Alpine is not compatible with wazuh-certs-tool-5.0.0-1.sh): [Install Ubuntu on WSL](https://documentation.ubuntu.com/wsl/stable/howto/install-ubuntu-wsl2/)
* Install Ubuntu or other compatible Linux distribution (bash in Alpine is not compatible with wazuh-certs-tool-5.1.0-1.sh): [Install Ubuntu on WSL](https://documentation.ubuntu.com/wsl/stable/howto/install-ubuntu-wsl2/)
* **Git Client**:
* Required for cloning the `wazuh-docker` repository.
* **Web Browser**:
+3 -3
View File
@@ -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 5.0.0).
This glossary defines key terms and concepts related to Wazuh, Docker, and their use together in the Wazuh-Docker project (version 5.1.0).
---
@@ -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 5.0.0, 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 5.1.0, 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 5.0.0, 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 5.1.0, this is typically OpenSearch.
**L**
+3 -3
View File
@@ -1,6 +1,6 @@
# Reference Manual - Description
This section provides a detailed description of Wazuh-docker (version 5.0.0), 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 5.1.0), 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 5.0.0:
The Wazuh-Docker project typically provides images for the following core Wazuh components, adapted for version 5.1.0:
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 5.0.0, this is typically an OpenSearch-based component.
- The Wazuh indexer container provides the data persistence layer for Wazuh alerts and events. For version 5.1.0, this is typically an OpenSearch-based component.
3. **Wazuh Dashboard**:
- A flexible visualization tool based on OpenSearch Dashboards (or historically Kibana).
+2 -2
View File
@@ -1,6 +1,6 @@
# Reference Manual - Introduction
Welcome to the Reference Manual for Wazuh-Docker, version 5.0.0. This manual provides comprehensive information about deploying, configuring, and managing your Wazuh environment using Docker.
Welcome to the Reference Manual for Wazuh-Docker, version 5.1.0. 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 5.0.0 of Wazuh-Docker. Ensure you are using the documentation that corresponds to your deployed version.
This manual refers to version 5.1.0 of Wazuh-Docker. Ensure you are using the documentation that corresponds to your deployed version.
+11 -11
View File
@@ -19,20 +19,20 @@ Below is a step-by-step example of how to perform this update:
- `wazuh.indexer`
- `wazuh.dashboard`
Example (update to 5.0.0):
Example (update to 5.1.0):
```yaml
services:
wazuh.manager:
image: wazuh/wazuh-manager:5.0.0
image: wazuh/wazuh-manager:5.1.0
...
wazuh.indexer:
image: wazuh/wazuh-indexer:5.0.0
image: wazuh/wazuh-indexer:5.1.0
...
wazuh.dashboard:
image: wazuh/wazuh-dashboard:5.0.0
image: wazuh/wazuh-dashboard:5.1.0
...
```
@@ -43,32 +43,32 @@ Below is a step-by-step example of how to perform this update:
- `wazuh1.indexer`, `wazuh2.indexer`, and `wazuh3.indexer`
- `wazuh.dashboard`
Example (update to 5.0.0):
Example (update to 5.1.0):
```yaml
services:
wazuh.master:
image: wazuh/wazuh-manager:5.0.0
image: wazuh/wazuh-manager:5.1.0
...
wazuh.worker:
image: wazuh/wazuh-manager:5.0.0
image: wazuh/wazuh-manager:5.1.0
...
wazuh1.indexer:
image: wazuh/wazuh-indexer:5.0.0
image: wazuh/wazuh-indexer:5.1.0
...
wazuh2.indexer:
image: wazuh/wazuh-indexer:5.0.0
image: wazuh/wazuh-indexer:5.1.0
...
wazuh3.indexer:
image: wazuh/wazuh-indexer:5.0.0
image: wazuh/wazuh-indexer:5.1.0
...
wazuh.dashboard:
image: wazuh/wazuh-dashboard:5.0.0
image: wazuh/wazuh-dashboard:5.1.0
...
```
+6 -6
View File
@@ -1,7 +1,7 @@
# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
services:
wazuh.master:
image: wazuh/wazuh-manager:5.0.0
image: wazuh/wazuh-manager:5.1.0
hostname: wazuh.master
container_name: multi-node-wazuh.master
restart: always
@@ -43,7 +43,7 @@ services:
- ./config/wazuh_master/certs/wazuh.master-key.pem:/var/wazuh-manager/etc/certs/manager-key.pem
wazuh.worker:
image: wazuh/wazuh-manager:5.0.0
image: wazuh/wazuh-manager:5.1.0
hostname: wazuh.worker
container_name: multi-node-wazuh.worker
restart: always
@@ -82,7 +82,7 @@ services:
- ./config/wazuh_worker/certs/wazuh.worker-key.pem:/var/wazuh-manager/etc/certs/manager-key.pem
wazuh1.indexer:
image: wazuh/wazuh-indexer:5.0.0
image: wazuh/wazuh-indexer:5.1.0
hostname: wazuh1.indexer
container_name: multi-node-wazuh1.indexer
restart: always
@@ -120,7 +120,7 @@ services:
- ./config/wazuh1_indexer/certs/admin-key.pem:/usr/share/wazuh-indexer/config/certs/admin-key.pem
wazuh2.indexer:
image: wazuh/wazuh-indexer:5.0.0
image: wazuh/wazuh-indexer:5.1.0
hostname: wazuh2.indexer
container_name: multi-node-wazuh2.indexer
restart: always
@@ -158,7 +158,7 @@ services:
- ./config/wazuh2_indexer/certs/wazuh2.indexer.pem:/usr/share/wazuh-indexer/config/certs/indexer.pem
wazuh3.indexer:
image: wazuh/wazuh-indexer:5.0.0
image: wazuh/wazuh-indexer:5.1.0
hostname: wazuh3.indexer
container_name: multi-node-wazuh3.indexer
restart: always
@@ -196,7 +196,7 @@ services:
- ./config/wazuh3_indexer/certs/wazuh3.indexer.pem:/usr/share/wazuh-indexer/config/certs/indexer.pem
wazuh.dashboard:
image: wazuh/wazuh-dashboard:5.0.0
image: wazuh/wazuh-dashboard:5.1.0
hostname: wazuh.dashboard
container_name: multi-node-wazuh.dashboard
restart: always
+3 -3
View File
@@ -1,7 +1,7 @@
# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
services:
wazuh.manager:
image: wazuh/wazuh-manager:5.0.0
image: wazuh/wazuh-manager:5.1.0
hostname: wazuh.manager
container_name: single-node-wazuh.manager
restart: always
@@ -43,7 +43,7 @@ services:
- ./config/wazuh_manager/certs/wazuh.manager-key.pem:/var/wazuh-manager/etc/certs/manager-key.pem
wazuh.indexer:
image: wazuh/wazuh-indexer:5.0.0
image: wazuh/wazuh-indexer:5.1.0
hostname: wazuh.indexer
container_name: single-node-wazuh.indexer
restart: always
@@ -80,7 +80,7 @@ services:
- ./config/wazuh_indexer/certs/admin-key.pem:/usr/share/wazuh-indexer/config/certs/admin-key.pem
wazuh.dashboard:
image: wazuh/wazuh-dashboard:5.0.0
image: wazuh/wazuh-dashboard:5.1.0
hostname: wazuh.dashboard
container_name: single-node-wazuh.dashboard
restart: always
+1 -1
View File
@@ -1,7 +1,7 @@
# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
services:
wazuh.agent:
image: wazuh/wazuh-agent:5.0.0
image: wazuh/wazuh-agent:5.1.0
restart: always
environment:
- WAZUH_MANAGER_SERVER=<WAZUH_MANAGER_IP>