Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop GitHub Actions Workflows for Building Wazuh Agent Packages #129

Open
3 of 6 tasks
Tracked by #126
vikman90 opened this issue Sep 11, 2024 · 0 comments
Open
3 of 6 tasks
Tracked by #126

Develop GitHub Actions Workflows for Building Wazuh Agent Packages #129

vikman90 opened this issue Sep 11, 2024 · 0 comments
Labels
level/task Task issue module/packages Agent packages type/enhancement Enhancement issue

Comments

@vikman90
Copy link
Member

vikman90 commented Sep 11, 2024

Parent Issue:

Description

The goal of this issue is to create automated workflows using GitHub Actions to build installation packages for the Wazuh agent across multiple platforms. These workflows will automate the package-building process, ensuring consistency and reproducibility for Linux, Windows, and macOS. Specifically, the workflows will generate RPM packages (on CentOS 7 or a similar RHEL-based distribution), DEB packages (on Debian 7), MSI packages (for Windows), and PKG packages (for macOS).

The target architectures will be amd64 and aarch64 for Linux, amd64 for Windows, and both Intel and Apple Silicon for macOS.

Functional Requirements

  • Linux RPM Workflow:
    • Build RPM packages for the Wazuh agent on CentOS 7 or a compatible RHEL-based distribution.
    • Target architectures: amd64 and aarch64.
  • Linux DEB Workflow:
    • Build DEB packages for the Wazuh agent on Debian 7 or a similar Debian-based distribution.
    • Target architectures: amd64 and aarch64.
  • Windows MSI Workflow:
    • Build MSI packages for the Wazuh agent targeting amd64.
    • Ensure compatibility with Windows Server 2008 R2+.
  • macOS PKG Workflow:
    • Build PKG packages for macOS 14+.
    • Target architectures: Intel and Apple Silicon.
  • All workflows should trigger on relevant GitHub events (e.g., pull requests, merges to the main branch, or manual runs).

Subtasks

  • Setup RPM Build Workflow for Wazuh Agent #136
    • Configure a GitHub Actions workflow to build RPM packages using CentOS 7.
    • Set up the build environment by installing required dependencies (rpm-build, mock, etc.).
    • Build the Wazuh agent targeting amd64 and aarch64 architectures.
    • Ensure the workflow generates .rpm files and stores them as artifacts for download.
  • Setup DEB Build Workflow for Wazuh Agent #138
    • Configure a GitHub Actions workflow to build DEB packages using Debian 7.
    • Set up the necessary environment for DEB package generation (dpkg-buildpackage, debhelper, etc.).
    • Build the Wazuh agent targeting amd64 and aarch64.
    • Ensure the workflow produces .deb files and stores them as artifacts.
  • Setup MSI Build Workflow for Windows #139
    • Configure a GitHub Actions workflow to build MSI packages for Windows (amd64).
    • Set up the environment using tools like WiX Toolset to generate the installer.
    • Ensure the MSI installer correctly registers the Wazuh agent as a Windows Service.
    • Store the .msi files as artifacts for download.
  • Setup PKG Build Workflow for macOS #137
    • Configure a GitHub Actions workflow to build PKG packages for macOS 14+.
    • Set up the environment to build PKG installers using pkgbuild or a similar tool.
    • Target both Intel and Apple Silicon architectures.
    • Ensure the PKG installer sets up the Wazuh agent as a launch daemon.
    • Store the .pkg files as artifacts for download.
  • Configure the packages build workflows to trigger automatically on GitHub events like pull requests or merges to the main branch. #460
  • Documentation:
    • Document the setup of the GitHub Actions workflows, including details on how to trigger builds and access generated packages.
    • Provide instructions for downloading and installing the generated RPM, DEB, MSI, and PKG packages from the GitHub Actions artifacts.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
level/task Task issue module/packages Agent packages type/enhancement Enhancement issue
Projects
None yet
Development

No branches or pull requests

1 participant