Add revision tests

This commit is contained in:
fcaffieri
2026-05-27 18:21:07 -03:00
parent 47287f7ee3
commit 2698ef8c2c
2 changed files with 18 additions and 24 deletions
+17 -23
View File
@@ -26,11 +26,6 @@ on:
- single-node - single-node
- multi-node - multi-node
- both - both
patch_beta_images:
description: 'Patch image tags to use pre-release suffix (-beta1-latest). Disable once release images are published.'
required: false
default: true
type: boolean
permissions: permissions:
id-token: write id-token: write
@@ -200,6 +195,16 @@ jobs:
ref: ${{ needs.prepare.outputs.pr_head_ref }} ref: ${{ needs.prepare.outputs.pr_head_ref }}
path: wazuh-docker path: wazuh-docker
- name: Read version info from VERSION.json
run: |
VERSION=$(python3 -c "import json; d=json.load(open('wazuh-docker/VERSION.json')); print(d['version'])")
STAGE=$(python3 -c "import json; d=json.load(open('wazuh-docker/VERSION.json')); print(d.get('stage',''))")
REVISION="${STAGE:-1}"
echo "WAZUH_VERSION=${VERSION}" >> $GITHUB_ENV
echo "WAZUH_REVISION=${REVISION}" >> $GITHUB_ENV
echo "WAZUH_STAGE=${STAGE}" >> $GITHUB_ENV
echo "Version: ${VERSION} Revision: ${REVISION}"
- name: Set up Python 3.12 - name: Set up Python 3.12
uses: actions/setup-python@v5 uses: actions/setup-python@v5
with: with:
@@ -277,23 +282,12 @@ jobs:
- name: Patch image tags for pre-release - name: Patch image tags for pre-release
run: | run: |
DEPLOYMENT="${{ matrix.deployment_type }}" DEPLOYMENT="${{ matrix.deployment_type }}"
# Use input when available; hardcoded true otherwise (e.g. dispatched from main STAGE="${{ env.WAZUH_STAGE }}"
# which does not yet define patch_beta_images).
PATCH="${{ inputs.patch_beta_images }}"
[ -z "$PATCH" ] && PATCH=true
if [ "$PATCH" != "true" ]; then
echo "patch_beta_images=false — skipping image tag patching"
exit 0
fi
VERSION=$(python3 -c "import json; d=json.load(open('wazuh-docker/VERSION.json')); print(d['version'])")
STAGE=$(python3 -c "import json; d=json.load(open('wazuh-docker/VERSION.json')); print(d.get('stage',''))")
if [ -z "$STAGE" ]; then if [ -z "$STAGE" ]; then
echo "VERSION.json has no stage field — release image, no patching needed" echo "No stage in VERSION.json — release image, no patching needed"
exit 0 exit 0
fi fi
IMAGE_TAG="${{ env.WAZUH_VERSION }}-${STAGE}-latest"
IMAGE_TAG="${VERSION}-${STAGE}-latest"
COMPOSE="wazuh-docker/${DEPLOYMENT}/docker-compose.yml" COMPOSE="wazuh-docker/${DEPLOYMENT}/docker-compose.yml"
echo "Patching ${COMPOSE}: image tag → ${IMAGE_TAG}" echo "Patching ${COMPOSE}: image tag → ${IMAGE_TAG}"
sed -i -E "s|(image: wazuh/wazuh-[^:]+:)[^ ]+|\1${IMAGE_TAG}|g" "$COMPOSE" sed -i -E "s|(image: wazuh/wazuh-[^:]+:)[^ ]+|\1${IMAGE_TAG}|g" "$COMPOSE"
@@ -303,11 +297,11 @@ jobs:
- name: Prepare cert tool and config - name: Prepare cert tool and config
run: | run: |
DEPLOYMENT="${{ matrix.deployment_type }}" DEPLOYMENT="${{ matrix.deployment_type }}"
VERSION=$(python3 -c "import json; d=json.load(open('wazuh-docker/VERSION.json')); print(d['version'])") VERSION="${{ env.WAZUH_VERSION }}"
STAGE=$(python3 -c "import json; d=json.load(open('wazuh-docker/VERSION.json')); print(d.get('stage',''))") STAGE="${{ env.WAZUH_STAGE }}"
MAJOR=$(echo "$VERSION" | cut -d. -f1) MAJOR=$(echo "$VERSION" | cut -d. -f1)
echo "Version: $VERSION Stage: ${STAGE:-<release>}" echo "Version: ${VERSION} Revision: ${{ env.WAZUH_REVISION }}"
# Download cert tool once on the runner, copy to VM via the main SCP # Download cert tool once on the runner, copy to VM via the main SCP
if [ -n "$STAGE" ]; then if [ -n "$STAGE" ]; then
@@ -319,7 +313,6 @@ jobs:
curl -fsSL -o "wazuh-docker/${DEPLOYMENT}/wazuh-certs-tool.sh" "$CERT_TOOL_URL" curl -fsSL -o "wazuh-docker/${DEPLOYMENT}/wazuh-certs-tool.sh" "$CERT_TOOL_URL"
chmod +x "wazuh-docker/${DEPLOYMENT}/wazuh-certs-tool.sh" chmod +x "wazuh-docker/${DEPLOYMENT}/wazuh-certs-tool.sh"
echo "Downloaded OK" echo "Downloaded OK"
echo "WAZUH_VERSION=${VERSION}" >> $GITHUB_ENV
# Write config.yml directly into the deployment directory # Write config.yml directly into the deployment directory
if [ "$DEPLOYMENT" = "single-node" ]; then if [ "$DEPLOYMENT" = "single-node" ]; then
@@ -513,6 +506,7 @@ jobs:
--ssh-key-path "${{ env.SSH_KEY }}" \ --ssh-key-path "${{ env.SSH_KEY }}" \
--ssh-username "${{ env.SSH_USER }}" \ --ssh-username "${{ env.SSH_USER }}" \
--version "${{ env.WAZUH_VERSION }}" \ --version "${{ env.WAZUH_VERSION }}" \
--revision "${{ env.WAZUH_REVISION }}" \
--log-level INFO \ --log-level INFO \
--output github \ --output github \
--output-file "test-results-docker-${DEPLOYMENT}.github" --output-file "test-results-docker-${DEPLOYMENT}.github"
+1 -1
View File
@@ -1,4 +1,4 @@
{ {
"version": "5.0.0", "version": "5.0.0",
"stage": "beta1" "stage": "beta2"
} }