forked from wazuh/wazuh-docker
Merge pull request #2054 from wazuh/change/2697-image-workflow-rebuild
Image builder Workflow Rebuild
This commit is contained in:
@@ -11,10 +11,6 @@ on:
|
|||||||
docker_reference:
|
docker_reference:
|
||||||
description: 'wazuh-docker reference'
|
description: 'wazuh-docker reference'
|
||||||
required: true
|
required: true
|
||||||
products:
|
|
||||||
description: 'Comma-separated list of the image names to build and push'
|
|
||||||
default: 'wazuh-manager,wazuh-dashboard,wazuh-indexer,wazuh-agent'
|
|
||||||
required: true
|
|
||||||
filebeat_module_version:
|
filebeat_module_version:
|
||||||
description: 'Filebeat module version'
|
description: 'Filebeat module version'
|
||||||
default: '0.4'
|
default: '0.4'
|
||||||
@@ -23,11 +19,10 @@ on:
|
|||||||
description: 'Package revision'
|
description: 'Package revision'
|
||||||
default: '1'
|
default: '1'
|
||||||
required: true
|
required: true
|
||||||
push_images:
|
reference:
|
||||||
description: 'Push images'
|
description: 'Dev reference'
|
||||||
type: boolean
|
type: string
|
||||||
default: true
|
default: latest
|
||||||
required: true
|
|
||||||
id:
|
id:
|
||||||
description: "ID used to identify the workflow uniquely."
|
description: "ID used to identify the workflow uniquely."
|
||||||
type: string
|
type: string
|
||||||
@@ -48,11 +43,6 @@ on:
|
|||||||
description: 'wazuh-docker reference'
|
description: 'wazuh-docker reference'
|
||||||
required: false
|
required: false
|
||||||
type: string
|
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: true
|
|
||||||
type: string
|
|
||||||
filebeat_module_version:
|
filebeat_module_version:
|
||||||
description: 'Filebeat module version'
|
description: 'Filebeat module version'
|
||||||
default: '0.4'
|
default: '0.4'
|
||||||
@@ -63,11 +53,10 @@ on:
|
|||||||
default: '1'
|
default: '1'
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
push_images:
|
reference:
|
||||||
description: 'Push images'
|
description: 'Dev reference'
|
||||||
type: boolean
|
type: string
|
||||||
default: true
|
default: latest
|
||||||
required: true
|
|
||||||
id:
|
id:
|
||||||
description: "ID used to identify the workflow uniquely."
|
description: "ID used to identify the workflow uniquely."
|
||||||
type: string
|
type: string
|
||||||
@@ -82,6 +71,16 @@ jobs:
|
|||||||
build-and-push:
|
build-and-push:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
id-token: write
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
env:
|
||||||
|
IMAGE_REGISTRY: ${{ inputs.dev && vars.IMAGE_REGISTRY_DEV || vars.IMAGE_REGISTRY_PROD }}
|
||||||
|
IMAGE_TAG: ${{ inputs.image_tag }}
|
||||||
|
FILEBEAT_MODULE_VERSION: ${{ inputs.filebeat_module_version }}
|
||||||
|
REVISION: ${{ inputs.revision }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Print inputs
|
- name: Print inputs
|
||||||
run: |
|
run: |
|
||||||
@@ -96,11 +95,10 @@ jobs:
|
|||||||
echo "* id: ${{ inputs.id }}"
|
echo "* id: ${{ inputs.id }}"
|
||||||
echo "* image_tag: ${{ inputs.image_tag }}"
|
echo "* image_tag: ${{ inputs.image_tag }}"
|
||||||
echo "* docker_reference: ${{ inputs.docker_reference }}"
|
echo "* docker_reference: ${{ inputs.docker_reference }}"
|
||||||
echo "* products: ${{ inputs.products }}"
|
|
||||||
echo "* filebeat_module_version: ${{ inputs.filebeat_module_version }}"
|
echo "* filebeat_module_version: ${{ inputs.filebeat_module_version }}"
|
||||||
echo "* revision: ${{ inputs.revision }}"
|
echo "* revision: ${{ inputs.revision }}"
|
||||||
echo "* push_images: ${{ inputs.push_images }}"
|
|
||||||
echo "* dev: ${{ inputs.dev }}"
|
echo "* dev: ${{ inputs.dev }}"
|
||||||
|
echo "* dev reference: ${{ inputs.reference }}"
|
||||||
echo "---------------------------------------------"
|
echo "---------------------------------------------"
|
||||||
|
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
@@ -108,33 +106,77 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
ref: ${{ inputs.docker_reference }}
|
ref: ${{ inputs.docker_reference }}
|
||||||
|
|
||||||
|
- name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v3
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
|
- name: Configure aws credentials
|
||||||
|
if: ${{ inputs.dev == true }}
|
||||||
|
uses: aws-actions/configure-aws-credentials@v4
|
||||||
|
with:
|
||||||
|
role-to-assume: ${{ secrets.AWS_IAM_DOCKER_ROLE }}
|
||||||
|
aws-region: "${{ secrets.AWS_REGION }}"
|
||||||
|
|
||||||
|
- name: Log in to Amazon ECR
|
||||||
|
if: ${{ inputs.dev == true }}
|
||||||
|
uses: aws-actions/amazon-ecr-login@v2
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Docker Hub
|
||||||
|
if: ${{ inputs.dev == false }}
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
||||||
|
|
||||||
|
- name: Create packages-url.txt file
|
||||||
|
if : ${{ inputs.dev == true }}
|
||||||
|
run: |
|
||||||
|
cat << EOF > packages-url.txt
|
||||||
|
wazuh_manager_url_amd64_deb: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-manager_5.0.0-${{ inputs.reference }}_amd64.deb --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_manager_url_arm64_deb: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-manager_5.0.0-${{ inputs.reference }}_arm64.deb --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_manager_url_x86_64_rpm: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-manager-5.0.0-${{ inputs.reference }}.x86_64.rpm --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_manager_url_aarch64_rpm: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-manager-5.0.0-${{ inputs.reference }}.aarch64.rpm --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_indexer_url_amd64_deb: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-indexer_5.0.0-${{ inputs.reference }}_amd64.deb --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_indexer_url_arm64_deb: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-indexer_5.0.0-${{ inputs.reference }}_arm64.deb --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_indexer_url_x86_64_rpm: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-indexer-5.0.0-${{ inputs.reference }}.x86_64.rpm --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_indexer_url_aarch64_rpm: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-indexer-5.0.0-${{ inputs.reference }}.aarch64.rpm --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_dashboard_url_amd64_deb: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-dashboard_5.0.0-${{ inputs.reference }}_amd64.deb --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_dashboard_url_arm64_deb: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-dashboard_5.0.0-${{ inputs.reference }}_arm64.deb --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_dashboard_url_x86_64_rpm: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-dashboard-5.0.0-${{ inputs.reference }}.x86_64.rpm --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_dashboard_url_aarch64_rpm: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-dashboard-5.0.0-${{ inputs.reference }}.aarch64.rpm --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_agent_url_amd64_deb: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-agent_5.0.0-${{ inputs.reference }}_amd64.deb --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_agent_url_arm64_deb: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-agent_5.0.0-${{ inputs.reference }}_arm64.deb --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_agent_url_x86_64_rpm: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-agent-5.0.0-${{ inputs.reference }}.x86_64.rpm --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_agent_url_aarch64_rpm: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-agent-5.0.0-${{ inputs.reference }}.aarch64.rpm --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_agent_url_i386_msi: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-agent-5.0.0-${{ inputs.reference }}.i386.msi --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_agent_url_intel64_pkg: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-agent-5.0.0-${{ inputs.reference }}.intel64.pkg --expires-in 3600 --region us-west-1)
|
||||||
|
wazuh_agent_url_arm64_pkg: $(aws s3 presign s3://${{ vars.AWS_S3_BUCKET_DEV }}/development/wazuh/5.x/main/packages/wazuh-agent-5.0.0-${{ inputs.reference }}.arm64.pkg --expires-in 3600 --region us-west-1)
|
||||||
|
EOF
|
||||||
|
working-directory: ./build-docker-images
|
||||||
|
|
||||||
- name: Build Wazuh images
|
- name: Build Wazuh images
|
||||||
run: |
|
run: |
|
||||||
IMAGE_TAG=${{ inputs.image_tag }}
|
if [ "${{ inputs.dev }}" = true ]; then
|
||||||
FILEBEAT_MODULE_VERSION=${{ inputs.filebeat_module_version }}
|
IMAGE_TAG="${{ inputs.image_tag }}-${{ inputs.reference }}"
|
||||||
REVISION=${{ inputs.revision }}
|
./build-images.sh -v ${{ inputs.image_tag }} -r $REVISION -d "dev" -f $FILEBEAT_MODULE_VERSION -rg $IMAGE_REGISTRY -m -ref ${{ inputs.reference }}
|
||||||
|
|
||||||
if [[ "$IMAGE_TAG" == *"-"* ]]; then
|
|
||||||
IFS='-' read -r -a tokens <<< "$IMAGE_TAG"
|
|
||||||
if [ -z "${tokens[1]}" ]; then
|
|
||||||
echo "Invalid image tag: $IMAGE_TAG"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
DEV_STAGE=${tokens[1]}
|
|
||||||
WAZUH_VER=${tokens[0]}
|
|
||||||
./build-docker-images/build-images.sh -v $WAZUH_VER -r $REVISION -d $DEV_STAGE -f $FILEBEAT_MODULE_VERSION
|
|
||||||
else
|
else
|
||||||
./build-docker-images/build-images.sh -v $IMAGE_TAG -r $REVISION -f $FILEBEAT_MODULE_VERSION
|
if [[ "$IMAGE_TAG" == *"-"* ]]; then
|
||||||
|
IFS='-' read -r -a tokens <<< "$IMAGE_TAG"
|
||||||
|
if [ -z "${tokens[1]}" ]; then
|
||||||
|
echo "Invalid image tag: $IMAGE_TAG"
|
||||||
|
exit 1
|
||||||
|
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
|
||||||
|
else
|
||||||
|
./build-images.sh -v $IMAGE_TAG -r $REVISION -f $FILEBEAT_MODULE_VERSION -rg $IMAGE_REGISTRY -m
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Save .env file (generated by build-images.sh) contents to $GITHUB_ENV
|
# Save .env file (generated by build-images.sh) contents to $GITHUB_ENV
|
||||||
ENV_FILE_PATH=".env"
|
ENV_FILE_PATH="../.env"
|
||||||
|
|
||||||
if [ -f $ENV_FILE_PATH ]; then
|
if [ -f $ENV_FILE_PATH ]; then
|
||||||
while IFS= read -r line || [ -n "$line" ]; do
|
while IFS= read -r line || [ -n "$line" ]; do
|
||||||
@@ -144,16 +186,4 @@ jobs:
|
|||||||
echo "The environment file $ENV_FILE_PATH does not exist!"
|
echo "The environment file $ENV_FILE_PATH does not exist!"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
working-directory: ./build-docker-images
|
||||||
- name: Tag and Push Wazuh images
|
|
||||||
if: ${{ inputs.push_images }}
|
|
||||||
run: |
|
|
||||||
IMAGE_TAG="${{ inputs.image_tag }}$( [ "${{ inputs.dev }}" == "true" ] && echo '-dev' || true )"
|
|
||||||
IMAGE_NAMES=${{ inputs.products }}
|
|
||||||
IFS=',' read -r -a images <<< "$IMAGE_NAMES"
|
|
||||||
for image in "${images[@]}"; do
|
|
||||||
echo "Tagging and pushing wazuh/$image:${WAZUH_VERSION} to wazuh/$image:$IMAGE_TAG"
|
|
||||||
docker tag wazuh/$image:${WAZUH_VERSION} wazuh/$image:$IMAGE_TAG
|
|
||||||
echo "Pushing wazuh/$image:$IMAGE_TAG ..."
|
|
||||||
docker push wazuh/$image:$IMAGE_TAG
|
|
||||||
done
|
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ IMAGE_VERSION=${WAZUH_IMAGE_VERSION}
|
|||||||
WAZUH_IMAGE_VERSION="5.0.0"
|
WAZUH_IMAGE_VERSION="5.0.0"
|
||||||
WAZUH_TAG_REVISION="1"
|
WAZUH_TAG_REVISION="1"
|
||||||
WAZUH_DEV_STAGE=""
|
WAZUH_DEV_STAGE=""
|
||||||
|
WAZUH_TAG_REFERENCE=""
|
||||||
FILEBEAT_MODULE_VERSION="0.4"
|
FILEBEAT_MODULE_VERSION="0.4"
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
@@ -38,35 +39,65 @@ build() {
|
|||||||
|
|
||||||
WAZUH_VERSION="$(echo $WAZUH_IMAGE_VERSION | sed -e 's/\.//g')"
|
WAZUH_VERSION="$(echo $WAZUH_IMAGE_VERSION | sed -e 's/\.//g')"
|
||||||
FILEBEAT_TEMPLATE_BRANCH="${WAZUH_IMAGE_VERSION}"
|
FILEBEAT_TEMPLATE_BRANCH="${WAZUH_IMAGE_VERSION}"
|
||||||
|
WAZUH_MINOR_VERSION="${WAZUH_IMAGE_VERSION%.*}"
|
||||||
WAZUH_FILEBEAT_MODULE="wazuh-filebeat-${FILEBEAT_MODULE_VERSION}.tar.gz"
|
WAZUH_FILEBEAT_MODULE="wazuh-filebeat-${FILEBEAT_MODULE_VERSION}.tar.gz"
|
||||||
WAZUH_UI_REVISION="${WAZUH_TAG_REVISION}"
|
WAZUH_UI_REVISION="${WAZUH_TAG_REVISION}"
|
||||||
|
|
||||||
if [ "${WAZUH_DEV_STAGE}" ];then
|
if [ -z "${WAZUH_TAG_REFERENCE}" ]; then
|
||||||
FILEBEAT_TEMPLATE_BRANCH="v${FILEBEAT_TEMPLATE_BRANCH}-${WAZUH_DEV_STAGE,,}"
|
if [ "${WAZUH_DEV_STAGE}" ];then
|
||||||
if ! curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/${FILEBEAT_TEMPLATE_BRANCH}"; then
|
FILEBEAT_TEMPLATE_BRANCH="v${FILEBEAT_TEMPLATE_BRANCH}-${WAZUH_DEV_STAGE,,}"
|
||||||
echo "The indicated branch does not exist in the wazuh/wazuh repository: ${FILEBEAT_TEMPLATE_BRANCH}"
|
if ! curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/${FILEBEAT_TEMPLATE_BRANCH}"; then
|
||||||
clean 1
|
echo "The indicated branch does not exist in the wazuh/wazuh repository: ${FILEBEAT_TEMPLATE_BRANCH}"
|
||||||
fi
|
clean 1
|
||||||
else
|
fi
|
||||||
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}"
|
|
||||||
elif curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/${FILEBEAT_TEMPLATE_BRANCH}"; then
|
|
||||||
FILEBEAT_TEMPLATE_BRANCH="${FILEBEAT_TEMPLATE_BRANCH}"
|
|
||||||
else
|
else
|
||||||
echo "The indicated branch does not exist in the wazuh/wazuh repository: ${FILEBEAT_TEMPLATE_BRANCH}"
|
if curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/v${FILEBEAT_TEMPLATE_BRANCH}"; then
|
||||||
clean 1
|
FILEBEAT_TEMPLATE_BRANCH="v${FILEBEAT_TEMPLATE_BRANCH}"
|
||||||
|
elif curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/${FILEBEAT_TEMPLATE_BRANCH}"; then
|
||||||
|
FILEBEAT_TEMPLATE_BRANCH="${FILEBEAT_TEMPLATE_BRANCH}"
|
||||||
|
else
|
||||||
|
echo "The indicated branch does not exist in the wazuh/wazuh repository: ${FILEBEAT_TEMPLATE_BRANCH}"
|
||||||
|
clean 1
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
# Variables
|
||||||
|
FILE="packages_url.txt"
|
||||||
|
|
||||||
echo WAZUH_VERSION=$WAZUH_IMAGE_VERSION > .env
|
if [[ -f "$FILE" ]]; then
|
||||||
echo WAZUH_IMAGE_VERSION=$WAZUH_IMAGE_VERSION >> .env
|
echo "$FILE exists. Using existing file."
|
||||||
echo WAZUH_TAG_REVISION=$WAZUH_TAG_REVISION >> .env
|
else
|
||||||
echo FILEBEAT_TEMPLATE_BRANCH=$FILEBEAT_TEMPLATE_BRANCH >> .env
|
TAG="v${WAZUH_VERSION}"
|
||||||
echo WAZUH_FILEBEAT_MODULE=$WAZUH_FILEBEAT_MODULE >> .env
|
REPO="wazuh/wazuh-docker"
|
||||||
echo WAZUH_UI_REVISION=$WAZUH_UI_REVISION >> .env
|
GH_URL="https://api.github.com/repos/${REPO}/git/refs/tags/${TAG}"
|
||||||
|
|
||||||
docker compose -f build-docker-images/build-images.yml --env-file .env build --no-cache || clean 1
|
if curl -fsSL "$GH_URL" >/dev/null 2>&1; then
|
||||||
|
curl -fsSL -o "$FILE" "https://packages.wazuh.com/${WAZUH_MINOR_VERSION}/packages_url.txt"
|
||||||
|
else
|
||||||
|
curl -fsSL -o "$FILE" "https://packages-dev.wazuh.com/${WAZUH_MINOR_VERSION}/packages_url.txt"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
sed -Ei 's/^([^:]+):[[:space:]]+(https?:\/\/.*)$/\1=\2/' $FILE
|
||||||
|
sed 's/[-.]/_/g' $FILE > packages_env.txt
|
||||||
|
|
||||||
|
echo WAZUH_VERSION=$WAZUH_IMAGE_VERSION > ../.env
|
||||||
|
echo WAZUH_IMAGE_VERSION=$WAZUH_IMAGE_VERSION >> ../.env
|
||||||
|
echo WAZUH_TAG_REVISION=$WAZUH_TAG_REVISION >> ../.env
|
||||||
|
echo FILEBEAT_TEMPLATE_BRANCH=$FILEBEAT_TEMPLATE_BRANCH >> ../.env
|
||||||
|
echo WAZUH_FILEBEAT_MODULE=$WAZUH_FILEBEAT_MODULE >> ../.env
|
||||||
|
echo WAZUH_UI_REVISION=$WAZUH_UI_REVISION >> ../.env
|
||||||
|
echo WAZUH_REGISTRY=$WAZUH_REGISTRY >> ../.env
|
||||||
|
|
||||||
|
set -a
|
||||||
|
source ../.env
|
||||||
|
source packages_env.txt
|
||||||
|
set +a
|
||||||
|
|
||||||
|
if [ "${MULTIARCH}" ];then
|
||||||
|
docker buildx bake --file build-images.yml --push --set *.platform=linux/amd64,linux/arm64 --no-cache|| clean 1
|
||||||
|
else
|
||||||
|
docker buildx bake --file build-images.yml --no-cache|| clean 1
|
||||||
|
fi
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -79,7 +110,10 @@ help() {
|
|||||||
echo " -d, --dev <ref> [Optional] Set the development stage you want to build, example rc2 or beta1, not used by default."
|
echo " -d, --dev <ref> [Optional] Set the development stage you want to build, example rc2 or beta1, not used by default."
|
||||||
echo " -f, --filebeat-module <ref> [Optional] Set Filebeat module version. By default ${FILEBEAT_MODULE_VERSION}."
|
echo " -f, --filebeat-module <ref> [Optional] Set Filebeat module version. By default ${FILEBEAT_MODULE_VERSION}."
|
||||||
echo " -r, --revision <rev> [Optional] Package revision. By default ${WAZUH_TAG_REVISION}"
|
echo " -r, --revision <rev> [Optional] Package revision. By default ${WAZUH_TAG_REVISION}"
|
||||||
|
echo " -ref, --reference <ref> [Optional] Set the Wazuh reference to build development images. By default, the latest stable release."
|
||||||
|
echo " -rg, --registry <reg> [Optional] Set the Docker registry to push the images."
|
||||||
echo " -v, --version <ver> [Optional] Set the Wazuh version should be builded. By default, ${WAZUH_IMAGE_VERSION}."
|
echo " -v, --version <ver> [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."
|
echo " -h, --help Show this help."
|
||||||
echo
|
echo
|
||||||
exit $1
|
exit $1
|
||||||
@@ -110,6 +144,10 @@ main() {
|
|||||||
help 1
|
help 1
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
"-m"|"--multiarch")
|
||||||
|
MULTIARCH="true"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
"-r"|"--revision")
|
"-r"|"--revision")
|
||||||
if [ -n "${2}" ]; then
|
if [ -n "${2}" ]; then
|
||||||
WAZUH_TAG_REVISION="${2}"
|
WAZUH_TAG_REVISION="${2}"
|
||||||
@@ -118,6 +156,22 @@ main() {
|
|||||||
help 1
|
help 1
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
"-ref"|"--reference")
|
||||||
|
if [ -n "${2}" ]; then
|
||||||
|
WAZUH_TAG_REFERENCE="${2}"
|
||||||
|
shift 2
|
||||||
|
else
|
||||||
|
help 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"-rg"|"--registry")
|
||||||
|
if [ -n "${2}" ]; then
|
||||||
|
WAZUH_REGISTRY="${2}"
|
||||||
|
shift 2
|
||||||
|
else
|
||||||
|
help 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
"-v"|"--version")
|
"-v"|"--version")
|
||||||
if [ -n "$2" ]; then
|
if [ -n "$2" ]; then
|
||||||
WAZUH_IMAGE_VERSION="$2"
|
WAZUH_IMAGE_VERSION="$2"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ services:
|
|||||||
WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
|
WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
|
||||||
FILEBEAT_TEMPLATE_BRANCH: ${FILEBEAT_TEMPLATE_BRANCH}
|
FILEBEAT_TEMPLATE_BRANCH: ${FILEBEAT_TEMPLATE_BRANCH}
|
||||||
WAZUH_FILEBEAT_MODULE: ${WAZUH_FILEBEAT_MODULE}
|
WAZUH_FILEBEAT_MODULE: ${WAZUH_FILEBEAT_MODULE}
|
||||||
image: wazuh/wazuh-manager:${WAZUH_IMAGE_VERSION}
|
image: ${WAZUH_REGISTRY}/wazuh/wazuh-manager:${IMAGE_TAG}
|
||||||
hostname: wazuh.manager
|
hostname: wazuh.manager
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
@@ -38,7 +38,7 @@ services:
|
|||||||
args:
|
args:
|
||||||
WAZUH_VERSION: ${WAZUH_VERSION}
|
WAZUH_VERSION: ${WAZUH_VERSION}
|
||||||
WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
|
WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
|
||||||
image: wazuh/wazuh-agent:${WAZUH_IMAGE_VERSION}
|
image: ${WAZUH_REGISTRY}/wazuh/wazuh-agent:${IMAGE_TAG}
|
||||||
hostname: wazuh.agent
|
hostname: wazuh.agent
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@ services:
|
|||||||
args:
|
args:
|
||||||
WAZUH_VERSION: ${WAZUH_VERSION}
|
WAZUH_VERSION: ${WAZUH_VERSION}
|
||||||
WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
|
WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
|
||||||
image: wazuh/wazuh-indexer:${WAZUH_IMAGE_VERSION}
|
image: ${WAZUH_REGISTRY}/wazuh/wazuh-indexer:${IMAGE_TAG}
|
||||||
hostname: wazuh.indexer
|
hostname: wazuh.indexer
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
@@ -70,7 +70,7 @@ services:
|
|||||||
WAZUH_VERSION: ${WAZUH_VERSION}
|
WAZUH_VERSION: ${WAZUH_VERSION}
|
||||||
WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
|
WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
|
||||||
WAZUH_UI_REVISION: ${WAZUH_UI_REVISION}
|
WAZUH_UI_REVISION: ${WAZUH_UI_REVISION}
|
||||||
image: wazuh/wazuh-dashboard:${WAZUH_IMAGE_VERSION}
|
image: ${WAZUH_REGISTRY}/wazuh/wazuh-dashboard:${IMAGE_TAG}
|
||||||
hostname: wazuh.dashboard
|
hostname: wazuh.dashboard
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
|
|||||||
Reference in New Issue
Block a user