Files
fk-wazuh/docs/dev/workflow-usage.md
T
Jesus Garcia f04ed6e608 Update documentation for Wazuh Docker image builder and workflow usage
---
- All relevant content of README.md files was migrated to docs/ section in their respective section.
- These README files has been deleted (4 files)
- All README.md files (additional to the project's root and docs/) have been edited.
---
- Both files build-docker-images/README.md and docs/dev/build-image.md have almost same content, so it was discarded the README file
- As the directory and docker image are going to be disused, the certs-gen documentation contents of indexer-certs-creator/README.md was not mig>
- The 'bash' command added to the docs/dev/build-image.md was removed
- Added workflow usage docs file to the the SUMMARY.md file
---
- Removed '$' parameter and added 'bash' to all markdown code blocks headings (```)
---
2025-12-22 08:36:09 -05:00

2.1 KiB

Workflow usage

The Procedure_push_docker_images.yml workflow builds and pushes multi-architecture Docker images (amd64/arm64) of Wazuh core components (Indexer, Manager, Dashboard, and Agent) to container registries.

Input Parameters

Parameter Description Default Required
image_tag Docker image version tag 5.0.0 Yes
docker_reference Branch/tag to build from - Yes
revision Package revision number 1 Yes
reference Dev reference (for pre-release builds) latest No
id Workflow run identifier - No
dev Enable development mode (adds -dev suffix) false/true No

Development vs Production Mode

Development Mode (dev: true):

  • Pushes to AWS ECR (Elastic Container Registry)
  • Uses pre-signed S3 URLs for packages
  • Generates dynamic artifact_urls.yml from S3 bucket
  • Adds development reference to image tags
  • Authenticates via AWS IAM role

Production Mode (dev: false):

  • Pushes to Docker Hub
  • Uses public package repositories
  • Authenticates with Docker Hub credentials
  • Supports version stages (rc, beta, etc.)

Build Process

  1. Artifact Resolution:

    • Dev mode: Creates pre-signed URLs for all Wazuh packages from S3
    • Prod mode: Uses packages from public repositories
  2. Multi-architecture Build:

    • Uses Docker Buildx with QEMU for cross-platform builds
    • Builds for linux/amd64 and linux/arm64
    • Leverages build-images.yml for build configuration
  3. Image Publishing:

    • Tags images appropriately based on mode
    • Pushes to the configured registry
    • Generates .env file with build metadata

Log Collection Feature

When tests fail, the workflows automatically collect and display relevant logs to help diagnose issues quickly.

This is implemented via two scripts, executed depending on the test setup: Single-node: single-node-log-check.sh Multi-node: multi-node-log-check.sh

Capabilities include:

  • Collects ERROR, WARNING, and CRITICAL messages from all nodes.
  • Automatically gathers logs on test failures for faster debugging.