Compare commits
67 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b651d0e546 | ||
|
|
78ce5093c7 | ||
|
|
20b7c3f566 | ||
|
|
ea2a43e692 | ||
|
|
7f122c4fa1 | ||
|
|
1cfc72ebad | ||
|
|
8820908b86 | ||
|
|
5823311888 | ||
|
|
339cc8bdb0 | ||
|
|
3a5abe4617 | ||
|
|
7e1a96eb00 | ||
|
|
44c1992be6 | ||
|
|
d5e70bbc31 | ||
|
|
863b1628bb | ||
|
|
186d29fc77 | ||
|
|
8d75f9d356 | ||
|
|
801a741d50 | ||
|
|
89cb6bdc66 | ||
|
|
005be07c63 | ||
|
|
eafb5340ff | ||
|
|
8d14b04c58 | ||
|
|
4c52d38506 | ||
|
|
a75b0c69d7 | ||
|
|
1a584b5a23 | ||
|
|
50b027269f | ||
|
|
2d0e60d57f | ||
|
|
2989ded3c1 | ||
|
|
53886b1e56 | ||
|
|
ef94106497 | ||
|
|
b3d5beabaa | ||
|
|
750c9d982e | ||
|
|
e7d4568afb | ||
|
|
a333b4c03a | ||
|
|
13dd4cf567 | ||
|
|
739f83c427 | ||
|
|
6b11be7b10 | ||
|
|
866aa4e53c | ||
|
|
1ab0f7910a | ||
|
|
70ebd63b52 | ||
|
|
47c3305a6c | ||
|
|
dcf2cda1a1 | ||
|
|
540346db0a | ||
|
|
f0af7685c7 | ||
|
|
c2dee31637 | ||
|
|
2043ea4f18 | ||
|
|
5d90a063b8 | ||
|
|
9890c36327 | ||
|
|
c826638d38 | ||
|
|
9a7ba6dbbe | ||
|
|
bb9c218771 | ||
|
|
f76b8d285a | ||
|
|
3551587082 | ||
|
|
ad100c80ee | ||
|
|
4e182dedf1 | ||
|
|
17d5ed8d33 | ||
|
|
846cd21c3d | ||
|
|
407291fa27 | ||
|
|
69342d9c63 | ||
|
|
b5cd390fec | ||
|
|
f9d4a03f85 | ||
|
|
30b3b669fb | ||
|
|
808c6da0e6 | ||
|
|
724a95d843 | ||
|
|
e670510045 | ||
|
|
f8ab63edab | ||
|
|
b8688e438c | ||
|
|
3ef7c9131c |
4
.env
4
.env
@ -78,11 +78,11 @@ ENV_VARS_DIRECTORY=./env_vars
|
||||
RESTART_POLICY=unless-stopped
|
||||
|
||||
# Cache base images
|
||||
ALPINE_BASE_IMAGE=alpine:3.22
|
||||
ALPINE_BASE_IMAGE=alpine:3.23
|
||||
CENTOS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
OL_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
UBUNTU_BASE_IMAGE=ubuntu:noble
|
||||
RHEL_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
RHEL_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
|
||||
# Base images
|
||||
BUILD_BASE_IMAGE=zabbix-build-base
|
||||
|
||||
6
.github/workflows/dependency-review.yml
vendored
6
.github/workflows/dependency-review.yml
vendored
@ -18,7 +18,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Harden Runner
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
@ -27,6 +27,6 @@ jobs:
|
||||
github.com:443
|
||||
|
||||
- name: 'Checkout Repository'
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
- name: 'Dependency Review'
|
||||
uses: actions/dependency-review-action@72eb03d02c7872a771aacd928f3123ac62ad6d3a # v4.3.3
|
||||
uses: actions/dependency-review-action@3c4e3dcb1aa7874d2c16be7d79418e9b7efd6261 # v4.8.2
|
||||
|
||||
6
.github/workflows/dockerhub_description.yml
vendored
6
.github/workflows/dockerhub_description.yml
vendored
@ -48,7 +48,7 @@ jobs:
|
||||
- web-service
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
@ -57,12 +57,12 @@ jobs:
|
||||
hub.docker.com:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
|
||||
- name: Update DockerHub repo description (zabbix-${{ matrix.component }})
|
||||
uses: peter-evans/dockerhub-description@e98e4d1628a5f3be2be7c231e50981aee98723ae # v4.0.0
|
||||
uses: peter-evans/dockerhub-description@1b9a80c056b620d92cedb9d9b5a223409c68ddfa # v5.0.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
75
.github/workflows/images_build.yml
vendored
75
.github/workflows/images_build.yml
vendored
@ -64,7 +64,7 @@ jobs:
|
||||
sha_short: ${{ steps.branch_info.outputs.sha_short }}
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
@ -72,9 +72,10 @@ jobs:
|
||||
api.github.com:443
|
||||
github.com:443
|
||||
objects.githubusercontent.com:443
|
||||
release-assets.githubusercontent.com:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
ref: ${{ env.TRUNK_ONLY_EVENT == 'true' && env.TRUNK_GIT_BRANCH || '' }}
|
||||
fetch-depth: 1
|
||||
@ -175,12 +176,13 @@ jobs:
|
||||
attestations: write
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: audit
|
||||
allowed-endpoints: >
|
||||
api.github.com:443
|
||||
release-assets.githubusercontent.com:443
|
||||
archive.ubuntu.com:80
|
||||
atl.mirrors.knownhost.com:443
|
||||
atl.mirrors.knownhost.com:80
|
||||
@ -266,25 +268,26 @@ jobs:
|
||||
ziply.mm.fcix.net:443
|
||||
pkg-containers.githubusercontent.com:443
|
||||
raw.githubusercontent.com:443
|
||||
timestamp.sigstore.dev:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
ref: ${{ env.TRUNK_ONLY_EVENT == 'true' && env.TRUNK_GIT_BRANCH || '' }}
|
||||
fetch-depth: 1
|
||||
|
||||
- name: Install cosign
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159
|
||||
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad
|
||||
|
||||
- name: Check cosign version
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
run: cosign version
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0
|
||||
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
||||
with:
|
||||
image: tonistiigi/binfmt:qemu-v8.1.5
|
||||
image: tonistiigi/binfmt:qemu-v10.0.4
|
||||
platforms: all
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
@ -309,7 +312,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: |
|
||||
${{ format('{0}/{1}/{2}{3}', env.DOCKER_REGISTRY_TEST, env.DOCKER_REPOSITORY_TEST, env.IMAGES_PREFIX, env.BASE_BUILD_NAME ) }},enable=${{ env.AUTO_PUSH_IMAGES != 'true' }}
|
||||
@ -360,14 +363,14 @@ jobs:
|
||||
|
||||
- name: Login to DockerHub
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Login to ${{ env.DOCKER_REGISTRY_TEST }}
|
||||
if: ${{ env.AUTO_PUSH_IMAGES != 'true' }}
|
||||
uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
registry: ${{ env.DOCKER_REGISTRY_TEST }}
|
||||
username: ${{ github.actor }}
|
||||
@ -389,10 +392,12 @@ jobs:
|
||||
org.opencontainers.image.created=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.created'] }}
|
||||
|
||||
- name: Scan for vulnerabilities
|
||||
if: ${{ matrix.os != 'centos' }}
|
||||
uses: crazy-max/ghaction-container-scan@v3
|
||||
with:
|
||||
image: ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
|
||||
annotations: true
|
||||
dockerfile: ${{ format('{0}/{1}/{2}/Dockerfile', env.DOCKERFILES_DIRECTORY, env.BASE_BUILD_NAME, matrix.os) }}
|
||||
|
||||
- name: Sign the images with GitHub OIDC Token
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
@ -417,7 +422,7 @@ jobs:
|
||||
- name: Attest images
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
id: attest
|
||||
uses: actions/attest-build-provenance@v2
|
||||
uses: actions/attest-build-provenance@v3
|
||||
with:
|
||||
subject-name: ${{ format('{0}/{1}/{2}{3}', env.DOCKER_REGISTRY, env.DOCKER_REPOSITORY, env.IMAGES_PREFIX, env.BASE_BUILD_NAME ) }}
|
||||
subject-digest: ${{ steps.docker_build.outputs.digest }}
|
||||
@ -438,7 +443,7 @@ jobs:
|
||||
echo "${METADATA}" > "$CACHE_FILE_NAME"
|
||||
|
||||
- name: Cache image metadata
|
||||
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: ${{ env.BASE_CACHE_FILE_NAME }}
|
||||
key: ${{ env.BASE_BUILD_NAME }}-${{ matrix.os }}-${{ github.run_id }}
|
||||
@ -460,12 +465,13 @@ jobs:
|
||||
attestations: write
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
allowed-endpoints: >
|
||||
api.github.com:443
|
||||
release-assets.githubusercontent.com:443
|
||||
auth.docker.io:443
|
||||
git.zabbix.com:443
|
||||
github.com:443
|
||||
@ -473,7 +479,9 @@ jobs:
|
||||
go.mongodb.org:443
|
||||
golang.org:443
|
||||
google.golang.org:443
|
||||
sum.golang.org:443
|
||||
golang.zabbix.com:443
|
||||
sum.golang.org:443
|
||||
gopkg.in:443
|
||||
ghcr.io:443
|
||||
index.docker.io:443
|
||||
@ -489,25 +497,26 @@ jobs:
|
||||
rekor.sigstore.dev:443
|
||||
pkg-containers.githubusercontent.com:443
|
||||
raw.githubusercontent.com:443
|
||||
timestamp.sigstore.dev:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
ref: ${{ env.TRUNK_ONLY_EVENT == 'true' && env.TRUNK_GIT_BRANCH || '' }}
|
||||
fetch-depth: 1
|
||||
|
||||
- name: Install cosign
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159
|
||||
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad
|
||||
|
||||
- name: Check cosign version
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
run: cosign version
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0
|
||||
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
||||
with:
|
||||
image: tonistiigi/binfmt:qemu-v8.1.5
|
||||
image: tonistiigi/binfmt:qemu-v10.0.4
|
||||
platforms: all
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
@ -532,7 +541,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: |
|
||||
${{ format('{0}/{1}/{2}{3}', env.DOCKER_REGISTRY_TEST, env.DOCKER_REPOSITORY_TEST, env.IMAGES_PREFIX, matrix.build ) }},enable=${{ env.AUTO_PUSH_IMAGES != 'true' }}
|
||||
@ -550,7 +559,7 @@ jobs:
|
||||
latest=${{ (matrix.os == 'alpine') && (!contains(fromJSON('["workflow_dispatch"]'), github.event_name)) && ( needs.init_build.outputs.is_default_branch == 'true' ) }}
|
||||
|
||||
- name: Download metadata of ${{ env.BASE_BUILD_NAME }}:${{ matrix.os }}
|
||||
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: ${{ env.BASE_CACHE_FILE_NAME }}
|
||||
key: ${{ env.BASE_BUILD_NAME }}-${{ matrix.os }}-${{ github.run_id }}
|
||||
@ -626,14 +635,14 @@ jobs:
|
||||
|
||||
- name: Login to DockerHub
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Login to ${{ env.DOCKER_REGISTRY_TEST }}
|
||||
if: ${{ env.AUTO_PUSH_IMAGES != 'true' }}
|
||||
uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
registry: ${{ env.DOCKER_REGISTRY_TEST }}
|
||||
username: ${{ github.actor }}
|
||||
@ -681,7 +690,7 @@ jobs:
|
||||
- name: Attest images
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
id: attest
|
||||
uses: actions/attest-build-provenance@v2
|
||||
uses: actions/attest-build-provenance@v3
|
||||
with:
|
||||
subject-name: ${{ format('{0}/{1}/{2}{3}', env.DOCKER_REGISTRY, env.DOCKER_REPOSITORY, env.IMAGES_PREFIX, matrix.build ) }}
|
||||
subject-digest: ${{ steps.docker_build.outputs.digest }}
|
||||
@ -702,7 +711,7 @@ jobs:
|
||||
echo "${METADATA}" > "$CACHE_FILE_NAME"
|
||||
|
||||
- name: Cache image metadata
|
||||
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: ${{ env.BUILD_CACHE_FILE_NAME }}
|
||||
key: ${{ matrix.build }}-${{ matrix.os }}-${{ github.run_id }}
|
||||
@ -725,12 +734,13 @@ jobs:
|
||||
attestations: write
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
allowed-endpoints: >
|
||||
api.github.com:443
|
||||
release-assets.githubusercontent.com:443
|
||||
apt.postgresql.org:80
|
||||
auth.docker.io:443
|
||||
dl-cdn.alpinelinux.org:443
|
||||
@ -849,25 +859,26 @@ jobs:
|
||||
rekor.sigstore.dev:443
|
||||
pkg-containers.githubusercontent.com:443
|
||||
raw.githubusercontent.com:443
|
||||
timestamp.sigstore.dev:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
ref: ${{ env.TRUNK_ONLY_EVENT == 'true' && env.TRUNK_GIT_BRANCH || '' }}
|
||||
fetch-depth: 1
|
||||
|
||||
- name: Install cosign
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159
|
||||
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad
|
||||
|
||||
- name: Check cosign version
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
run: cosign version
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0
|
||||
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
||||
with:
|
||||
image: tonistiigi/binfmt:qemu-v8.1.5
|
||||
image: tonistiigi/binfmt:qemu-v10.0.4
|
||||
platforms: all
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
@ -924,7 +935,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: |
|
||||
${{ format('{0}/{1}/{2}{3}', env.DOCKER_REGISTRY_TEST, env.DOCKER_REPOSITORY_TEST, env.IMAGES_PREFIX, matrix.build ) }},enable=${{ env.AUTO_PUSH_IMAGES != 'true' }}
|
||||
@ -942,7 +953,7 @@ jobs:
|
||||
latest=${{ (matrix.os == 'alpine') && (!contains(fromJSON('["workflow_dispatch"]'), github.event_name)) && ( needs.init_build.outputs.is_default_branch == 'true' ) }}
|
||||
|
||||
- name: Download metadata of ${{ steps.build_base_image.outputs.build_base }}:${{ matrix.os }}
|
||||
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
if: ${{ matrix.build != 'snmptraps' }}
|
||||
with:
|
||||
path: ${{ env.BUILD_CACHE_FILE_NAME }}
|
||||
@ -1006,7 +1017,7 @@ jobs:
|
||||
|
||||
- name: Login to DockerHub
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
@ -1050,7 +1061,7 @@ jobs:
|
||||
- name: Attest images
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
id: attest
|
||||
uses: actions/attest-build-provenance@v2
|
||||
uses: actions/attest-build-provenance@v3
|
||||
with:
|
||||
subject-name: ${{ format('{0}/{1}/{2}{3}', env.DOCKER_REGISTRY, env.DOCKER_REPOSITORY, env.IMAGES_PREFIX, matrix.build ) }}
|
||||
subject-digest: ${{ steps.docker_build.outputs.digest }}
|
||||
|
||||
38
.github/workflows/images_build_rhel.yml
vendored
38
.github/workflows/images_build_rhel.yml
vendored
@ -72,7 +72,7 @@ jobs:
|
||||
secret_prefix: ${{ steps.branch_info.outputs.secret_prefix }}
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
@ -80,9 +80,10 @@ jobs:
|
||||
api.github.com:443
|
||||
github.com:443
|
||||
objects.githubusercontent.com:443
|
||||
release-assets.githubusercontent.com:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
sparse-checkout: ${{ env.MATRIX_FILE }}
|
||||
@ -213,13 +214,13 @@ jobs:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
|
||||
- name: Install cosign
|
||||
if: ${{ env.AUTO_PUSH_IMAGES == 'true' }}
|
||||
uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159
|
||||
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad
|
||||
with:
|
||||
cosign-release: 'v2.4.0'
|
||||
|
||||
@ -236,7 +237,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: ${{ env.IMAGES_PREFIX }}${{ matrix.build }}
|
||||
tags: |
|
||||
@ -281,7 +282,7 @@ jobs:
|
||||
echo "image_tag=${IMAGE_TAG}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Cache image metadata
|
||||
uses: actions/cache/save@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache/save@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: |
|
||||
${{ env.BASE_BUILD_NAME }}_${{ matrix.arch }}_tag_id
|
||||
@ -344,7 +345,7 @@ jobs:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
|
||||
@ -356,7 +357,7 @@ jobs:
|
||||
echo "arch=${ARCH,,}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Download metadata of ${{ env.BASE_BUILD_NAME }}:${{ matrix.arch }}
|
||||
uses: actions/cache/restore@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache/restore@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: |
|
||||
${{ env.BASE_BUILD_NAME }}_${{ matrix.arch }}_tag_id
|
||||
@ -394,7 +395,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: ${{ env.IMAGES_PREFIX }}${{ matrix.build }}
|
||||
tags: |
|
||||
@ -409,7 +410,7 @@ jobs:
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
containerfiles: |
|
||||
${{ env.DOCKERFILES_DIRECTORY }}/${{ matrix.build }}/rhel/Dockerfile
|
||||
build-args: BUILD_BASE_IMAGE=${{ steps.base_build.outputs.base_build_image }}
|
||||
build-args: BUILD_BASE_IMAGE=localhost/${{ steps.base_build.outputs.base_build_image }}
|
||||
extra-args: |
|
||||
--iidfile=${{ github.workspace }}/iidfile
|
||||
--build-context sources=./sources/
|
||||
@ -441,7 +442,7 @@ jobs:
|
||||
echo "image_tag=${IMAGE_TAG}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Cache image metadata
|
||||
uses: actions/cache/save@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache/save@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: |
|
||||
${{ matrix.build }}_${{ matrix.arch }}_tag_id
|
||||
@ -504,7 +505,7 @@ jobs:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
|
||||
@ -538,7 +539,7 @@ jobs:
|
||||
|
||||
- name: Download metadata of ${{ steps.build_base_image.outputs.build_base }}:${{ matrix.arch }}
|
||||
if: ${{ matrix.build != 'snmptraps' }}
|
||||
uses: actions/cache/restore@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache/restore@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: |
|
||||
${{ steps.build_base_image.outputs.build_base }}_${{ matrix.arch }}_tag_id
|
||||
@ -583,7 +584,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: ${{ env.REGISTRY }}/${{ env.REGISTRY_NAMESPACE }}/${{ secrets[format('{0}_{1}_PROJECT', needs.init_build.outputs.secret_prefix, steps.var_format.outputs.matrix_build)] || matrix.build }}
|
||||
tags: |
|
||||
@ -606,9 +607,8 @@ jobs:
|
||||
containerfiles: |
|
||||
${{ env.DOCKERFILES_DIRECTORY }}/${{ matrix.build }}/rhel/Dockerfile
|
||||
extra-args: |
|
||||
--pull
|
||||
--iidfile=${{ github.workspace }}/iidfile
|
||||
build-args: BUILD_BASE_IMAGE=${{ steps.base_build.outputs.base_build_image }}
|
||||
build-args: BUILD_BASE_IMAGE=localhost/${{ steps.base_build.outputs.base_build_image }}
|
||||
|
||||
- name: Log in to ${{ env.REGISTRY }}
|
||||
uses: redhat-actions/podman-login@9184318aae1ee5034fbfbacc0388acf12669171f # v1.6
|
||||
@ -650,7 +650,7 @@ jobs:
|
||||
--env PFLT_LOGLEVEL=$PFLT_LOGLEVEL \
|
||||
--env PFLT_ARTIFACTS=/artifacts \
|
||||
--env PFLT_LOGFILE=/artifacts/preflight.log \
|
||||
--env PFLT_CERTIFICATION_PROJECT_ID=$PFLT_CERTIFICATION_PROJECT_ID \
|
||||
--env PFLT_CERTIFICATION_COMPONENT_ID=$PFLT_CERTIFICATION_PROJECT_ID \
|
||||
--env PFLT_PYXIS_API_TOKEN=$PFLT_PYXIS_API_TOKEN \
|
||||
--env PFLT_DOCKERCONFIG=/temp-authfile.json \
|
||||
-v $PFLT_ARTIFACTS:/artifacts \
|
||||
@ -720,7 +720,7 @@ jobs:
|
||||
permissions: {}
|
||||
steps:
|
||||
- name: Download metadata of ${{ matrix.build }}:${{ matrix.arch }}
|
||||
uses: actions/cache/restore@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache/restore@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: |
|
||||
${{ matrix.build }}_${{ matrix.arch }}_tag_id
|
||||
@ -741,7 +741,7 @@ jobs:
|
||||
echo "::endgroup::"
|
||||
|
||||
- name: Download metadata of ${{ env.BASE_BUILD_NAME }}:${{ matrix.arch }}
|
||||
uses: actions/cache/restore@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache/restore@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: |
|
||||
${{ env.BASE_BUILD_NAME }}_${{ matrix.arch }}_tag_id
|
||||
|
||||
37
.github/workflows/images_build_windows.yml
vendored
37
.github/workflows/images_build_windows.yml
vendored
@ -60,15 +60,16 @@ jobs:
|
||||
sha_short: ${{ steps.branch_info.outputs.sha_short }}
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
allowed-endpoints: >
|
||||
github.com:443
|
||||
release-assets.githubusercontent.com:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
ref: ${{ env.TRUNK_ONLY_EVENT == 'true' && env.TRUNK_GIT_BRANCH || '' }}
|
||||
fetch-depth: 1
|
||||
@ -157,13 +158,13 @@ jobs:
|
||||
component: ${{ fromJson(needs.init_build.outputs.components) }}
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
ref: ${{ env.TRUNK_ONLY_EVENT == 'true' && env.TRUNK_GIT_BRANCH || '' }}
|
||||
fetch-depth: 1
|
||||
|
||||
- name: Install cosign
|
||||
uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159
|
||||
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad
|
||||
with:
|
||||
cosign-release: 'v2.4.0'
|
||||
|
||||
@ -171,7 +172,7 @@ jobs:
|
||||
run: cosign version
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
@ -192,7 +193,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: ${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_REPOSITORY }}/${{ env.IMAGES_PREFIX }}${{ env.BASE_IMAGE_NAME }}
|
||||
context: ${{ env.TRUNK_ONLY_EVENT == 'true' && 'git' || '' }}
|
||||
@ -326,7 +327,7 @@ jobs:
|
||||
$Env:DIGEST | Set-Content -Path $Env:CACHE_FILE_NAME
|
||||
|
||||
- name: Cache image digest
|
||||
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: ${{ env.BASE_IMAGE_NAME }}_${{ matrix.os }}_${{ matrix.component }}
|
||||
key: ${{ env.BASE_IMAGE_NAME }}-${{ matrix.os }}-${{ github.run_id }}
|
||||
@ -347,13 +348,13 @@ jobs:
|
||||
component: ${{ fromJson(needs.init_build.outputs.components) }}
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
ref: ${{ env.TRUNK_ONLY_EVENT == 'true' && env.TRUNK_GIT_BRANCH || '' }}
|
||||
fetch-depth: 1
|
||||
|
||||
- name: Install cosign
|
||||
uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159
|
||||
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad
|
||||
with:
|
||||
cosign-release: 'v2.4.0'
|
||||
|
||||
@ -361,7 +362,7 @@ jobs:
|
||||
run: cosign version
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
@ -382,7 +383,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: ${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_REPOSITORY }}/${{ env.IMAGES_PREFIX }}${{ env.BASE_BUILD_IMAGE_NAME }}
|
||||
context: ${{ env.TRUNK_ONLY_EVENT == 'true' && 'git' || '' }}
|
||||
@ -398,7 +399,7 @@ jobs:
|
||||
latest=false
|
||||
|
||||
- name: Download SHA256 tag of ${{ env.BASE_IMAGE_NAME }}:${{ matrix.os }}
|
||||
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: ${{ env.BASE_IMAGE_NAME }}_${{ matrix.os }}_${{ matrix.component }}
|
||||
key: ${{ env.BASE_IMAGE_NAME }}-${{ matrix.os }}-${{ github.run_id }}
|
||||
@ -554,7 +555,7 @@ jobs:
|
||||
$Env:DIGEST | Set-Content -Path $Env:CACHE_FILE_NAME
|
||||
|
||||
- name: Cache image digest
|
||||
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: ${{ env.BASE_BUILD_IMAGE_NAME }}_${{ matrix.os }}_${{ matrix.component }}
|
||||
key: ${{ env.BASE_BUILD_IMAGE_NAME }}-${{ matrix.os }}-${{ github.run_id }}
|
||||
@ -575,13 +576,13 @@ jobs:
|
||||
component: ${{ fromJson(needs.init_build.outputs.components) }}
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
ref: ${{ env.TRUNK_ONLY_EVENT == 'true' && env.TRUNK_GIT_BRANCH || '' }}
|
||||
fetch-depth: 1
|
||||
|
||||
- name: Install cosign
|
||||
uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159
|
||||
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad
|
||||
with:
|
||||
cosign-release: 'v2.4.0'
|
||||
|
||||
@ -589,7 +590,7 @@ jobs:
|
||||
run: cosign version
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
@ -610,7 +611,7 @@ jobs:
|
||||
|
||||
- name: Generate tags
|
||||
id: meta
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
images: ${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_REPOSITORY }}/${{ env.IMAGES_PREFIX }}${{ matrix.component }}
|
||||
context: ${{ env.TRUNK_ONLY_EVENT == 'true' && 'git' || '' }}
|
||||
@ -626,7 +627,7 @@ jobs:
|
||||
latest=false
|
||||
|
||||
- name: Download SHA256 tag of ${{ env.BASE_BUILD_IMAGE_NAME }}:${{ matrix.os }}
|
||||
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
|
||||
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
||||
with:
|
||||
path: ${{ env.BASE_BUILD_IMAGE_NAME }}_${{ matrix.os }}_${{ matrix.component }}
|
||||
key: ${{ env.BASE_BUILD_IMAGE_NAME }}-${{ matrix.os }}-${{ github.run_id }}
|
||||
|
||||
10
.github/workflows/rhel_registry_description.yml
vendored
10
.github/workflows/rhel_registry_description.yml
vendored
@ -34,7 +34,7 @@ jobs:
|
||||
zabbix_release: ${{ steps.branch_info.outputs.zabbix_release }}
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
@ -42,7 +42,7 @@ jobs:
|
||||
github.com:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
sparse-checkout: ${{ env.MATRIX_FILE }}
|
||||
@ -98,7 +98,7 @@ jobs:
|
||||
component: ${{ fromJson(needs.init.outputs.components) }}
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
disable-sudo: true
|
||||
egress-policy: block
|
||||
@ -109,7 +109,7 @@ jobs:
|
||||
pypi.org:443
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
|
||||
@ -127,7 +127,7 @@ jobs:
|
||||
echo "matrix_build=${MATRIX_BUILD}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Setup Python 3.x
|
||||
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
with:
|
||||
python-version: '3.x'
|
||||
|
||||
|
||||
10
.github/workflows/scorecard.yml
vendored
10
.github/workflows/scorecard.yml
vendored
@ -33,17 +33,17 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Harden Runner
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
egress-policy: audit
|
||||
|
||||
- name: "Checkout code"
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: "Run analysis"
|
||||
uses: ossf/scorecard-action@f49aabe0b5af0936a0987cfb85d86b75731b0186 # v2.4.1
|
||||
uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3
|
||||
with:
|
||||
results_file: results.sarif
|
||||
results_format: sarif
|
||||
@ -65,7 +65,7 @@ jobs:
|
||||
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
|
||||
# format to the repository Actions tab.
|
||||
- name: "Upload artifact"
|
||||
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
|
||||
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
|
||||
with:
|
||||
name: SARIF file
|
||||
path: results.sarif
|
||||
@ -73,6 +73,6 @@ jobs:
|
||||
|
||||
# Upload the results to GitHub's code scanning dashboard.
|
||||
- name: "Upload to code-scanning"
|
||||
uses: github/codeql-action/upload-sarif@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
|
||||
uses: github/codeql-action/upload-sarif@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.8
|
||||
with:
|
||||
sarif_file: results.sarif
|
||||
|
||||
6
.github/workflows/sonarcloud.yml
vendored
6
.github/workflows/sonarcloud.yml
vendored
@ -44,18 +44,18 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Block egress traffic
|
||||
uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
|
||||
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
|
||||
with:
|
||||
egress-policy: audit
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
with:
|
||||
# Disabling shallow clone is recommended for improving relevancy of reporting
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Analyze with SonarCloud
|
||||
uses: SonarSource/sonarqube-scan-action@v6.0.0
|
||||
uses: SonarSource/sonarqube-scan-action@v7.0.0
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information
|
||||
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} # Generate a token on Sonarcloud.io, add it to the secrets of this repo with the name SONAR_TOKEN (Settings > Secrets > Actions > add new repository secret)
|
||||
|
||||
@ -14,7 +14,7 @@ Zabbix agent is deployed on a monitoring target to actively monitor local resour
|
||||
|
||||
# Zabbix agent images
|
||||
|
||||
These are the only official Zabbix agent Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10, Oracle Linux 10, Windows 10 LTSC 2019 and Windows 11 LTSC 2022 images. The available versions of Zabbix agent are:
|
||||
These are the only official Zabbix agent Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10, Oracle Linux 10, Windows 10 LTSC 2019 and Windows 11 LTSC 2022 images. The available versions of Zabbix agent are:
|
||||
|
||||
Zabbix agent 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix agent 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*, ltsc2019-6.0.*, ltsc2022-6.0.*)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
ARG OS_BASE_IMAGE=mcr.microsoft.com/windows/nanoserver:ltsc2022
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-agent:ltsc2022-agent-${ZBX_VERSION}
|
||||
|
||||
|
||||
@ -14,7 +14,7 @@ Zabbix agent 2 is deployed on a monitoring target to actively monitor local reso
|
||||
|
||||
# Zabbix agent 2 images
|
||||
|
||||
These are the only official Zabbix agent 2 Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10, Oracle Linux 10, Windows 10 LTSC 2019 and Windows 11 LTSC 2022 images. The available versions of Zabbix agent 2 are:
|
||||
These are the only official Zabbix agent 2 Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10, Oracle Linux 10, Windows 10 LTSC 2019 and Windows 11 LTSC 2022 images. The available versions of Zabbix agent 2 are:
|
||||
|
||||
Zabbix agent 2 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix agent 2 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*, ltsc2019-6.0.*, ltsc2022-6.0.*)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
ARG OS_BASE_IMAGE=mcr.microsoft.com/windows/nanoserver:ltsc2022
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-agent:ltsc2022-agent2-${ZBX_VERSION}
|
||||
|
||||
|
||||
@ -14,7 +14,7 @@ Zabbix build base image is prepared build environment for building Zabbix compon
|
||||
|
||||
# Zabbix build base images
|
||||
|
||||
These are the only official Zabbix build base Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of the image are:
|
||||
These are the only official Zabbix build base Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of the image are:
|
||||
|
||||
Zabbix build base 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix build base 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
ENV TERM=xterm \
|
||||
ZBX_VERSION=${ZBX_VERSION} \
|
||||
|
||||
@ -3,7 +3,7 @@ ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
ENV TERM=xterm \
|
||||
ZBX_VERSION=${ZBX_VERSION} \
|
||||
|
||||
@ -3,7 +3,7 @@ ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
ENV TERM=xterm \
|
||||
ZBX_VERSION=${ZBX_VERSION} \
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
ENV TERM=xterm \
|
||||
ZBX_VERSION=${ZBX_VERSION} \
|
||||
|
||||
@ -3,7 +3,7 @@ ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
ENV TERM=xterm \
|
||||
ZBX_VERSION=${ZBX_VERSION} \
|
||||
|
||||
148
Dockerfiles/build-base/windows/CMakeLists.txt
Normal file
148
Dockerfiles/build-base/windows/CMakeLists.txt
Normal file
@ -0,0 +1,148 @@
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
project(libmodbus_win C)
|
||||
|
||||
option(MODBUS_ENABLE_RTU "Build RTU backend (modbus-rtu.c)" ON)
|
||||
option(MODBUS_ENABLE_TCP "Build TCP backend (modbus-tcp.c)" ON)
|
||||
option(MODBUS_FIX_MSVC_SOCKOPT_WARNINGS "Fix MSVC winsock C4133 warnings" ON)
|
||||
|
||||
set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
|
||||
# --- 1) Prepare shim include dir (build-only includes live here) ---
|
||||
set(SHIM_INC_DIR "${CMAKE_CURRENT_BINARY_DIR}/include")
|
||||
file(MAKE_DIRECTORY "${SHIM_INC_DIR}")
|
||||
|
||||
# We expect config.h to exist in ${SRC_DIR}/config.h (you generate it via src/win32/configure.js)
|
||||
if(NOT EXISTS "${SRC_DIR}/win32/config.h")
|
||||
message(FATAL_ERROR
|
||||
"config.h not found at ${SRC_DIR}/win32/config.h. "
|
||||
"Run src/win32/configure.js and copy config.h into src/ before configuring with CMake.")
|
||||
endif()
|
||||
|
||||
# --- 2) Generate shim modbus.h (static-friendly MODBUS_API) ---
|
||||
file(READ "${SRC_DIR}/modbus.h" MODBUS_H_TXT)
|
||||
|
||||
set(MODBUS_API_BLOCK
|
||||
"#if defined(_MSC_VER)
|
||||
# if defined(DLLBUILD)
|
||||
/* define DLLBUILD when building the DLL */
|
||||
# define MODBUS_API __declspec(dllexport)
|
||||
# else
|
||||
# define MODBUS_API __declspec(dllimport)
|
||||
# endif
|
||||
#else
|
||||
# define MODBUS_API
|
||||
#endif")
|
||||
|
||||
set(MODBUS_API_BLOCK_REPL
|
||||
"#if defined(_MSC_VER)
|
||||
/* Static library: do NOT use dllimport/dllexport in public headers */
|
||||
# if defined(DLLBUILD)
|
||||
# define MODBUS_API __declspec(dllexport)
|
||||
# else
|
||||
# define MODBUS_API
|
||||
# endif
|
||||
#else
|
||||
# define MODBUS_API
|
||||
#endif")
|
||||
|
||||
string(REPLACE "${MODBUS_API_BLOCK}" "${MODBUS_API_BLOCK_REPL}" MODBUS_H_TXT "${MODBUS_H_TXT}")
|
||||
file(WRITE "${SHIM_INC_DIR}/modbus.h" "${MODBUS_H_TXT}")
|
||||
|
||||
# Copy remaining headers needed to compile (build-only set includes private/config)
|
||||
file(COPY "${SRC_DIR}/modbus-tcp.h" DESTINATION "${SHIM_INC_DIR}")
|
||||
file(COPY "${SRC_DIR}/modbus-rtu.h" DESTINATION "${SHIM_INC_DIR}")
|
||||
file(COPY "${SRC_DIR}/modbus-version.h" DESTINATION "${SHIM_INC_DIR}")
|
||||
|
||||
# Build-only headers required by .c files
|
||||
file(COPY "${SRC_DIR}/win32/config.h" DESTINATION "${SHIM_INC_DIR}")
|
||||
file(COPY "${SRC_DIR}/modbus-private.h" DESTINATION "${SHIM_INC_DIR}")
|
||||
file(COPY "${SRC_DIR}/modbus-tcp-private.h" DESTINATION "${SHIM_INC_DIR}")
|
||||
file(COPY "${SRC_DIR}/modbus-rtu-private.h" DESTINATION "${SHIM_INC_DIR}")
|
||||
|
||||
# --- 3) Generate shim sources (do not modify upstream sources on disk) ---
|
||||
set(SHIM_SRC_DIR "${CMAKE_CURRENT_BINARY_DIR}/shim_src")
|
||||
file(MAKE_DIRECTORY "${SHIM_SRC_DIR}")
|
||||
|
||||
function(make_shim_source in_file out_file)
|
||||
file(READ "${in_file}" TXT)
|
||||
|
||||
# Force includes via include paths (so our shim headers win)
|
||||
string(REPLACE "#include \"modbus.h\"" "#include <modbus.h>" TXT "${TXT}")
|
||||
string(REPLACE "#include \"modbus-tcp.h\"" "#include <modbus-tcp.h>" TXT "${TXT}")
|
||||
string(REPLACE "#include \"modbus-rtu.h\"" "#include <modbus-rtu.h>" TXT "${TXT}")
|
||||
string(REPLACE "#include \"modbus-version.h\"" "#include <modbus-version.h>" TXT "${TXT}")
|
||||
|
||||
# Some files include private/config with quotes; route those too
|
||||
string(REPLACE "#include \"config.h\"" "#include <config.h>" TXT "${TXT}")
|
||||
string(REPLACE "#include \"modbus-private.h\"" "#include <modbus-private.h>" TXT "${TXT}")
|
||||
string(REPLACE "#include \"modbus-tcp-private.h\"" "#include <modbus-tcp-private.h>" TXT "${TXT}")
|
||||
string(REPLACE "#include \"modbus-rtu-private.h\"" "#include <modbus-rtu-private.h>" TXT "${TXT}")
|
||||
|
||||
# Optional: silence MSVC winsock setsockopt warnings (C4133)
|
||||
# On Windows setsockopt expects const char* optval; libmodbus passes &int.
|
||||
if (MSVC AND MODBUS_FIX_MSVC_SOCKOPT_WARNINGS)
|
||||
string(REPLACE ", &option, sizeof(int))" ", (const char*)&option, sizeof(int))" TXT "${TXT}")
|
||||
endif()
|
||||
|
||||
file(WRITE "${out_file}" "${TXT}")
|
||||
endfunction()
|
||||
|
||||
# Base sources
|
||||
make_shim_source("${SRC_DIR}/modbus.c" "${SHIM_SRC_DIR}/modbus.c")
|
||||
make_shim_source("${SRC_DIR}/modbus-data.c" "${SHIM_SRC_DIR}/modbus-data.c")
|
||||
|
||||
set(MODBUS_SOURCES
|
||||
"${SHIM_SRC_DIR}/modbus.c"
|
||||
"${SHIM_SRC_DIR}/modbus-data.c"
|
||||
)
|
||||
|
||||
if(MODBUS_ENABLE_TCP)
|
||||
make_shim_source("${SRC_DIR}/modbus-tcp.c" "${SHIM_SRC_DIR}/modbus-tcp.c")
|
||||
list(APPEND MODBUS_SOURCES "${SHIM_SRC_DIR}/modbus-tcp.c")
|
||||
endif()
|
||||
|
||||
if(MODBUS_ENABLE_RTU)
|
||||
make_shim_source("${SRC_DIR}/modbus-rtu.c" "${SHIM_SRC_DIR}/modbus-rtu.c")
|
||||
list(APPEND MODBUS_SOURCES "${SHIM_SRC_DIR}/modbus-rtu.c")
|
||||
endif()
|
||||
|
||||
add_library(modbus STATIC ${MODBUS_SOURCES})
|
||||
|
||||
# --- MSVC: silence WinSock signature warning (setsockopt wants const char*) ---
|
||||
if (MSVC)
|
||||
target_compile_options(modbus PRIVATE /wd4133)
|
||||
endif()
|
||||
|
||||
# Use shim headers for build + consumers (PUBLIC), but we will INSTALL only public headers explicitly
|
||||
target_include_directories(modbus
|
||||
PUBLIC
|
||||
"${SHIM_INC_DIR}"
|
||||
)
|
||||
|
||||
if (WIN32)
|
||||
target_link_libraries(modbus PUBLIC ws2_32)
|
||||
endif()
|
||||
|
||||
# --- Install: only public headers (no config.h, no *-private.h) ---
|
||||
include(GNUInstallDirs)
|
||||
|
||||
install(TARGETS modbus
|
||||
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
|
||||
)
|
||||
|
||||
set(PUBLIC_HEADERS
|
||||
"${SHIM_INC_DIR}/modbus.h"
|
||||
"${SHIM_INC_DIR}/modbus-version.h"
|
||||
)
|
||||
|
||||
if(MODBUS_ENABLE_TCP)
|
||||
list(APPEND PUBLIC_HEADERS "${SHIM_INC_DIR}/modbus-tcp.h")
|
||||
endif()
|
||||
|
||||
if(MODBUS_ENABLE_RTU)
|
||||
list(APPEND PUBLIC_HEADERS "${SHIM_INC_DIR}/modbus-rtu.h")
|
||||
endif()
|
||||
|
||||
install(FILES ${PUBLIC_HEADERS}
|
||||
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
|
||||
)
|
||||
@ -2,21 +2,19 @@
|
||||
# escape=`
|
||||
ARG OS_BASE_IMAGE=mcr.microsoft.com/windows/servercore:ltsc2022
|
||||
|
||||
ARG GIT_VERSION=2.47.1
|
||||
ARG NASM_VERSION=2.16.03
|
||||
ARG GIT_VERSION=2.52.0
|
||||
ARG NASM_VERSION=3.01
|
||||
ARG VS_BUILDTOOLS_VERSION=17
|
||||
ARG PWSH_VERSION=7.5.1
|
||||
ARG PWSH_VERSION=7.5.4
|
||||
|
||||
ARG PCRE2_VERSION=10.44
|
||||
ARG OPENSSL_VERSION=3.4.1
|
||||
ARG PCRE2_VERSION=10.47
|
||||
ARG OPENSSL_VERSION=3.5.4
|
||||
ARG LIBMODBUS_VERSION=3.1.11
|
||||
ARG ZLIB_VERSION=1.3.1
|
||||
ARG CURL_VERSION=8.11.1
|
||||
|
||||
ARG BUILD_ARCH=x64
|
||||
ARG CURL_VERSION=8.17.0
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
FROM ${OS_BASE_IMAGE} AS src
|
||||
|
||||
@ -31,15 +29,13 @@ ARG LIBMODBUS_VERSION
|
||||
ARG ZLIB_VERSION
|
||||
ARG CURL_VERSION
|
||||
|
||||
ARG BUILD_ARCH
|
||||
|
||||
ARG GIT_URL=https://github.com/git-for-windows/git/releases/download/v$GIT_VERSION.windows.1/MinGit-$GIT_VERSION-64-bit.zip
|
||||
ARG PERL_URL=https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_54001_64bit_UCRT/strawberry-perl-5.40.0.1-64bit-portable.zip
|
||||
ARG PERL_URL=https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_54201_64bit/strawberry-perl-5.42.0.1-64bit-portable.zip
|
||||
|
||||
ARG VS_BUILDTOOLS_URL=https://aka.ms/vs/$VS_BUILDTOOLS_VERSION/release/vs_buildtools.exe
|
||||
ARG NASM_URL=https://www.nasm.us/pub/nasm/releasebuilds/$NASM_VERSION/win64/nasm-$NASM_VERSION-win64.zip
|
||||
|
||||
ARG PCRE2_URL=https://github.com/PhilipHazel/pcre2/releases/download/pcre2-$PCRE2_VERSION/pcre2-$PCRE2_VERSION.zip
|
||||
ARG PCRE2_URL=https://github.com/PCRE2Project/pcre2/releases/download/pcre2-$PCRE2_VERSION/pcre2-$PCRE2_VERSION.zip
|
||||
ARG OPENSSL_URL=https://github.com/openssl/openssl/releases/download/openssl-$OPENSSL_VERSION/openssl-$OPENSSL_VERSION.tar.gz
|
||||
ARG LIBMODBUS_URL=https://github.com/stephane/libmodbus/archive/refs/tags/v$LIBMODBUS_VERSION.tar.gz
|
||||
ARG ZLIB_URL=https://zlib.net/zlib-$ZLIB_VERSION.tar.gz
|
||||
@ -47,29 +43,31 @@ ARG CURL_URL=https://curl.se/download/curl-$CURL_VERSION.tar.gz
|
||||
|
||||
ARG PWSH_URL=https://github.com/PowerShell/PowerShell/releases/download/v$PWSH_VERSION/PowerShell-$PWSH_VERSION-win-x64.zip
|
||||
|
||||
ADD --checksum=sha256:21c6f0523abfd37a2f5cc85879d0ff32723ab496347f0d20793df888ecec3957 $PCRE2_URL build_src\pcre2.zip
|
||||
ADD --checksum=sha256:002a2d6b30b58bf4bea46c43bdd96365aaf8daa6c428782aa4feee06da197df3 $OPENSSL_URL build_src\openssl.tar.gz
|
||||
ADD --checksum=sha256:d74c183c86c77248ad50017c7f45bae8f88106a6cca5d87ad09917e1c6fb0784 $PCRE2_URL build_src\pcre2.zip
|
||||
ADD --checksum=sha256:967311f84955316969bdb1d8d4b983718ef42338639c621ec4c34fddef355e99 $OPENSSL_URL build_src\openssl.tar.gz
|
||||
ADD --checksum=sha256:15b4b2e0f68122c2da9b195de5c330489a9c97d40b4a95d2822378dc14d780e7 $LIBMODBUS_URL build_src\libmodbus.tar.gz
|
||||
ADD --checksum=sha256:9A93B2B7DFDAC77CEBA5A558A580E74667DD6FEDE4585B91EEFB60F03B72DF23 $ZLIB_URL build_src\zlib.tar.gz
|
||||
ADD --checksum=sha256:a889ac9dbba3644271bd9d1302b5c22a088893719b72be3487bc3d401e5c4e80 $CURL_URL build_src\curl.tar.gz
|
||||
ADD --checksum=sha256:e8e74cdeefe5fb78b3ae6e90cd542babf788fa9480029cfcee6fd9ced42b7910 $CURL_URL build_src\curl.tar.gz
|
||||
|
||||
ADD --checksum=sha256:4d3028da81170f8d1cd226614582f0a95d3dd5592127cf87a09e3a3568e51a08 $PWSH_URL build_deps\pwsh.zip
|
||||
ADD --checksum=sha256:50b04b55425b5c465d076cdb184f63a0cd0f86f6ec8bb4d5860114a713d2c29a $GIT_URL build_deps\git.zip
|
||||
ADD --checksum=sha256:754f3e2a8e473dc68d1540c7802fb166a025f35ef18960c4564a31f8b5933907 $PERL_URL build_deps\perl.zip
|
||||
ADD --checksum=sha256:3ee4782247bcb874378d02f7eab4e294a84d3d15f3f6ee2de2f47a46aa7226e6 $NASM_URL build_deps\nasm.zip
|
||||
ADD --checksum=sha256:b40d192ae95ba6ccc4cc362ff4e1b18ca6fb5055bebbcd3920684e12701fa8f6 $PWSH_URL build_deps\pwsh.zip
|
||||
ADD --checksum=sha256:f42a561840627747ad48e6ece05a14093292d31f3393a401a7f7c780ee7695c2 $GIT_URL build_deps\git.zip
|
||||
ADD --checksum=sha256:a1cde185656cf307b51670eed69f648b9eff15b5c518cb136e027c628e650b71 $PERL_URL build_deps\perl.zip
|
||||
ADD --checksum=sha256:e0ba5157007abc7b1a65118a96657a961ddf55f7e3f632ee035366dfce039ca4 $NASM_URL build_deps\nasm.zip
|
||||
ADD $VS_BUILDTOOLS_URL build_deps\vs_buildtools.exe
|
||||
|
||||
COPY modbus.vs16.* build_src\libmodbus_project\
|
||||
COPY CMakeLists.txt build_src\libmodbus_project\
|
||||
|
||||
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
|
||||
|
||||
RUN $env:BUILD_SRC = [string]::Format('{0}\build_src', $env:SystemDrive); `
|
||||
RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
`
|
||||
$env:BUILD_SRC = [string]::Format('{0}\build_src', $env:SystemDrive); `
|
||||
[Environment]::SetEnvironmentVariable('BUILD_SRC', $env:BUILD_SRC, [EnvironmentVariableTarget]::Machine); `
|
||||
$env:BUILD_DEPS = [string]::Format('{0}\build_deps', $env:SystemDrive); `
|
||||
[Environment]::SetEnvironmentVariable('BUILD_DEPS', $env:BUILD_DEPS, [EnvironmentVariableTarget]::Machine); `
|
||||
`
|
||||
Set-Location -Path $env:BUILD_DEPS; `
|
||||
Write-Host 'Installing PowerShell...'; `
|
||||
`
|
||||
Set-Location -Path $env:BUILD_DEPS; `
|
||||
Write-Host 'Installing PowerShell...'; `
|
||||
Expand-Archive `
|
||||
-Path $env:BUILD_DEPS\pwsh.zip `
|
||||
-DestinationPath $env:BUILD_DEPS\pwsh\.; `
|
||||
@ -83,7 +81,7 @@ RUN $env:BUILD_SRC = [string]::Format('{0}\build_src', $env:SystemDrive); `
|
||||
Expand-Archive `
|
||||
-Path $env:BUILD_DEPS\nasm.zip `
|
||||
-DestinationPath $env:BUILD_DEPS\.; `
|
||||
Rename-Item -Path $env:BUILD_DEPS\nasm-$env:NASM_VERSION -NewName $env:BUILD_DEPS\nasm; `
|
||||
Rename-Item -Path $env:BUILD_DEPS\nasm-$env:NASM_VERSION -NewName $env:BUILD_DEPS\NASM; `
|
||||
`
|
||||
Write-Host 'Installing GIT...'; `
|
||||
Expand-Archive `
|
||||
@ -93,8 +91,8 @@ RUN $env:BUILD_SRC = [string]::Format('{0}\build_src', $env:SystemDrive); `
|
||||
Write-Host 'Installing Perl...'; `
|
||||
Expand-Archive -Path $env:BUILD_DEPS\perl.zip -DestinationPath $env:BUILD_DEPS\perl\; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\perl\c\; `
|
||||
`
|
||||
Set-Location -Path $env:BUILD_SRC; `
|
||||
`
|
||||
Set-Location -Path $env:BUILD_SRC; `
|
||||
`
|
||||
Write-Host 'Extracting PCRE2 archive ...'; `
|
||||
Expand-Archive -Path $env:BUILD_SRC\pcre2.zip -DestinationPath $env:BUILD_SRC; `
|
||||
@ -108,8 +106,8 @@ RUN $env:BUILD_SRC = [string]::Format('{0}\build_src', $env:SystemDrive); `
|
||||
Write-Host 'Extracting Libmodbus archive ...'; `
|
||||
tar -zxf $env:BUILD_SRC\libmodbus.tar.gz; `
|
||||
Move-Item -Path $env:BUILD_SRC\libmodbus-$env:LIBMODBUS_VERSION\ -Destination $env:BUILD_SRC\libmodbus; `
|
||||
Move-Item -Path $env:BUILD_SRC\libmodbus_project\* -Destination $env:BUILD_SRC\libmodbus\src\win32; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_SRC\libmodbus_project\; `
|
||||
Copy-Item $env:BUILD_SRC\libmodbus_project\CMakeLists.txt -Destination $env:BUILD_SRC\libmodbus\CMakeLists.txt; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_SRC\libmodbus_project\; `
|
||||
`
|
||||
Write-Host 'Extracting Zlib archive ...'; `
|
||||
tar -zxf $env:BUILD_SRC\zlib.tar.gz; `
|
||||
@ -118,12 +116,12 @@ RUN $env:BUILD_SRC = [string]::Format('{0}\build_src', $env:SystemDrive); `
|
||||
Write-Host 'Extracting CURL archive ...'; `
|
||||
tar -zxf $env:BUILD_SRC\curl.tar.gz; `
|
||||
Move-Item -Path $env:BUILD_SRC\curl-$env:CURL_VERSION\ -Destination $env:BUILD_SRC\curl; `
|
||||
`
|
||||
`
|
||||
Write-Host 'Removing downloaded...'; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_SRC\*.tar.gz; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_SRC\*.zip; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_SRC\*.zip; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\*.tar.gz; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\*.zip;
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\*.zip;
|
||||
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
@ -137,18 +135,12 @@ ARG LIBMODBUS_VERSION
|
||||
ARG ZLIB_VERSION
|
||||
ARG CURL_VERSION
|
||||
|
||||
ARG BUILD_ARCH
|
||||
|
||||
ARG MAJOR_VERSION
|
||||
ARG ZBX_VERSION
|
||||
|
||||
ENV ZBX_VERSION=$ZBX_VERSION `
|
||||
BUILD_ARCH=$BUILD_ARCH `
|
||||
GIT_URL=$GIT_URL PERL_URL=$PERL_URL NASM_URL=$NASM_URL `
|
||||
VS_BUILDTOOLS_URL=$VS_BUILDTOOLS_URL VS_BUILDTOOLS_VERSION=$VS_BUILDTOOLS_VERSION `
|
||||
PCRE2_VERSION=$PCRE2_VERSION OPENSSL_VERSION=$OPENSSL_VERSION LIBMODBUS_VERSION=$LIBMODBUS_VERSION `
|
||||
PCRE2_URL=$PCRE2_URL OPENSSL_URL=$OPENSSL_URL LIBMODBUS_URL=$LIBMODBUS_URL `
|
||||
ZLIB_URL=$ZLIB_URL CURL_URL=$CURL_URL
|
||||
VS_BUILDTOOLS_VERSION=$VS_BUILDTOOLS_VERSION `
|
||||
PCRE2_VERSION=$PCRE2_VERSION OPENSSL_VERSION=$OPENSSL_VERSION LIBMODBUS_VERSION=$LIBMODBUS_VERSION
|
||||
|
||||
LABEL org.opencontainers.image.title="Zabbix agent build base for Windows" `
|
||||
org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zabbix.com>" `
|
||||
@ -165,7 +157,6 @@ COPY --from=src build_deps build_deps
|
||||
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
|
||||
|
||||
RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; `
|
||||
`
|
||||
$env:BUILD_OUTPUT = [string]::Format('{0}\build_output', $env:SystemDrive); `
|
||||
[Environment]::SetEnvironmentVariable('BUILD_OUTPUT', $env:BUILD_OUTPUT, [EnvironmentVariableTarget]::Machine); `
|
||||
@ -174,12 +165,12 @@ RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
$env:BUILD_DEPS = [string]::Format('{0}\build_deps', $env:SystemDrive); `
|
||||
[Environment]::SetEnvironmentVariable('BUILD_DEPS', $env:BUILD_DEPS, [EnvironmentVariableTarget]::Machine); `
|
||||
`
|
||||
$env:PATH = [string]::Format('{0}\perl\perl\bin;{0}\NASM;{0}\git\cmd;{0}\git\mingw64\bin;{0}\git\usr\bin;', $env:BUILD_DEPS) + $env:PATH; `
|
||||
$env:PATH = [string]::Format('{0}\perl\perl\bin;{0}\NASM;{0}\git\cmd;{0}\git\mingw64\bin;{0}\git\usr\bin;', $env:BUILD_DEPS) + $env:PATH; `
|
||||
[Environment]::SetEnvironmentVariable('PATH', $env:PATH, [EnvironmentVariableTarget]::Machine); `
|
||||
`
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT -Force | Out-Null; `
|
||||
Write-Host 'Verifying install ("git version") ...'; `
|
||||
Write-Host $env:VS_BUILDTOOLS_VERSION; `
|
||||
Write-Host 'Verifying install ("git version") ...'; `
|
||||
Write-Host $env:VS_BUILDTOOLS_VERSION; `
|
||||
git version; `
|
||||
`
|
||||
Write-Host 'Verifying install ("nasm -v") ...'; `
|
||||
@ -213,112 +204,124 @@ RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
Write-Host 'Visual Studio components installation cleanup'; `
|
||||
Get-ChildItem -Path """${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer""" -Directory -Recurse | Remove-Item -Force -Recurse; `
|
||||
`
|
||||
Write-Host 'Build environment is ready...'; `
|
||||
Set-Location -Path $env:SystemDrive\.; `
|
||||
`
|
||||
Import-Module (Get-ChildItem $env:VS_PATH -Recurse -File -Filter Microsoft.VisualStudio.DevShell.dll).FullName; `
|
||||
Write-Host 'Build environment is ready...';
|
||||
|
||||
RUN Import-Module (Get-ChildItem $env:VS_PATH -Recurse -File -Filter Microsoft.VisualStudio.DevShell.dll).FullName; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=$env:BUILD_ARCH"""; `
|
||||
`
|
||||
Write-Host 'Building Zlib library...'; `
|
||||
Set-Location -Path $env:BUILD_SRC\zlib; `
|
||||
(Get-Content .\win32\Makefile.msc).replace('-MD', '-MT') | Set-Content .\win32\Makefile.msc; `
|
||||
set CL=/MP; `
|
||||
nmake /S -f .\win32\Makefile.msc; `
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\zlib | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\zlib\include | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\zlib\lib | Out-Null; `
|
||||
Copy-Item $env:BUILD_SRC\zlib\*.h -Destination $env:BUILD_OUTPUT\zlib\include; `
|
||||
Copy-Item $env:BUILD_SRC\zlib\zlib.lib -Destination $env:BUILD_OUTPUT\zlib\lib; `
|
||||
Copy-Item $env:BUILD_SRC\zlib\zlib.pdb -Destination $env:BUILD_OUTPUT\zlib\lib; `
|
||||
nmake /S -f .\win32\Makefile.msc clean | Out-Null; `
|
||||
Write-Host 'Zlib is ready...'; `
|
||||
Set-Location -Path $env:SystemDrive\.; `
|
||||
$env:CL = """$env:CL /MP"""; `
|
||||
cmake -S $env:BUILD_SRC\zlib -B $env:BUILD_SRC\zlib\build `
|
||||
-G """Visual Studio 17 2022""" `
|
||||
-A x64 `
|
||||
-DBUILD_SHARED_LIBS=OFF `
|
||||
-DCMAKE_MSVC_RUNTIME_LIBRARY="""MultiThreaded$<$<CONFIG:Debug>:Debug>""" `
|
||||
-DCMAKE_INSTALL_PREFIX="""$env:BUILD_OUTPUT\zlib"""; `
|
||||
cmake --build $env:BUILD_SRC\zlib\build --config Release --parallel; `
|
||||
cmake --install $env:BUILD_SRC\zlib\build --config Release; `
|
||||
Remove-Item -Path $env:BUILD_SRC\zlib\build -Force -Recurse; `
|
||||
Write-Host 'Zlib is ready...';
|
||||
|
||||
RUN Import-Module (Get-ChildItem $env:VS_PATH -Recurse -File -Filter Microsoft.VisualStudio.DevShell.dll).FullName; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=x64"""; `
|
||||
`
|
||||
Write-Host 'Building OpenSSL library...'; `
|
||||
Set-Location -Path $env:BUILD_SRC\openssl; `
|
||||
$env:CL = """$env:CL /nologo /MP /MT /wd4267 /wd4244"""; `
|
||||
$env:NMAKEFLAGS = """/nologo"""; `
|
||||
perl $env:BUILD_SRC\openssl\Configure `
|
||||
VC-WIN64A `
|
||||
no-shared `
|
||||
no-ui-console `
|
||||
no-tests `
|
||||
no-unit-test `
|
||||
no-capieng `
|
||||
no-winstore `
|
||||
no-srp `
|
||||
no-gost `
|
||||
no-docs `
|
||||
no-dgram `
|
||||
no-dtls1-method `
|
||||
no-dtls1_2-method `
|
||||
no-gost `
|
||||
no-shared `
|
||||
no-srp `
|
||||
no-tests `
|
||||
no-ui-console `
|
||||
no-winstore `
|
||||
--api=1.1.0 `
|
||||
--prefix=$env:BUILD_OUTPUT\openssl `
|
||||
--openssldir=$env:BUILD_OUTPUT\openssl_ssl; `
|
||||
set CL=/MP; `
|
||||
nmake /S build_sw; `
|
||||
nmake /S install_dev; `
|
||||
nmake /S build_libs; `
|
||||
nmake /S INSTALLDOCS=0 INSTALLHTML=0 install_dev; `
|
||||
nmake /S clean | Out-Null; `
|
||||
Write-Host 'OpenSSL is ready...'; `
|
||||
Write-Host 'OpenSSL is ready...';
|
||||
|
||||
RUN Import-Module (Get-ChildItem $env:VS_PATH -Recurse -File -Filter Microsoft.VisualStudio.DevShell.dll).FullName; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=x64"""; `
|
||||
`
|
||||
Write-Host 'Building PCRE2 library ...'; `
|
||||
Set-Location -Path $env:BUILD_SRC\pcre2\build; `
|
||||
cmake --log-level=ERROR `
|
||||
-G 'Visual Studio 17 2022' `
|
||||
-A $env:BUILD_ARCH `
|
||||
Set-Location -Path $env:BUILD_SRC\pcre2; `
|
||||
$env:CL = """$env:CL /MP"""; `
|
||||
cmake -S $env:BUILD_SRC\pcre2 -B $env:BUILD_SRC\pcre2\build `
|
||||
-G """Visual Studio 17 2022""" `
|
||||
-A x64 `
|
||||
-DBUILD_SHARED_LIBS=OFF `
|
||||
-DPCRE2_BUILD_TESTS=OFF `
|
||||
-DCMAKE_C_FLAGS_RELEASE:string="""/MT""" ..; `
|
||||
msbuild PCRE2.sln `
|
||||
-maxcpucount:"""$env:NUMBER_OF_PROCESSORS""" `
|
||||
/verbosity:quiet `
|
||||
/property:Configuration=Release `
|
||||
/property:Platform=$env:BUILD_ARCH `
|
||||
/target:pcre2-8-static; `
|
||||
-DPCRE2_BUILD_PCRE2GREP=OFF `
|
||||
-DPCRE2_SUPPORT_JIT=OFF `
|
||||
-DCMAKE_MSVC_RUNTIME_LIBRARY="""MultiThreaded$<$<CONFIG:Debug>:Debug>""" `
|
||||
-DCMAKE_INSTALL_PREFIX="""$env:BUILD_OUTPUT\pcre2"""; `
|
||||
`
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\pcre2 | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\pcre2\include | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\pcre2\lib | Out-Null; `
|
||||
Copy-Item $env:BUILD_SRC\pcre2\build\*.h -Destination $env:BUILD_OUTPUT\pcre2\include; `
|
||||
Copy-Item $env:BUILD_SRC\pcre2\build\Release\* -Destination $env:BUILD_OUTPUT\pcre2\lib; `
|
||||
Remove-Item -Path $env:BUILD_SRC\pcre2\build\* -Force -Recurse; `
|
||||
Write-Host 'PCRE2 is ready...'; `
|
||||
cmake --build $env:BUILD_SRC\pcre2\build --config Release --parallel; `
|
||||
cmake --install $env:BUILD_SRC\pcre2\build --config Release; `
|
||||
`
|
||||
Write-Host 'Building Libmodbus library...'; `
|
||||
Remove-Item -Recurse -Force -Path $env:BUILD_OUTPUT\pcre2\share -ErrorAction SilentlyContinue; `
|
||||
Remove-Item -Recurse -Force $env:BUILD_SRC\pcre2\build; `
|
||||
Write-Host 'PCRE2 is ready...';
|
||||
|
||||
RUN Import-Module (Get-ChildItem $env:VS_PATH -Recurse -File -Filter Microsoft.VisualStudio.DevShell.dll).FullName; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=x64"""; `
|
||||
`
|
||||
Write-Host 'Building Libmodbus library ...'; `
|
||||
$env:CL = """$env:CL /MP"""; `
|
||||
Set-Location -Path $env:BUILD_SRC\libmodbus\src\win32; `
|
||||
cscript .\configure.js; `
|
||||
msbuild modbus.vs16.sln `
|
||||
-maxcpucount:"""$env:NUMBER_OF_PROCESSORS""" `
|
||||
/verbosity:quiet `
|
||||
/property:Configuration=Release `
|
||||
/property:Platform=$env:BUILD_ARCH; `
|
||||
`
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\libmodbus | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\libmodbus\include | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:BUILD_OUTPUT\libmodbus\lib | Out-Null; `
|
||||
Copy-Item $env:BUILD_SRC\libmodbus\src\*.h -Destination $env:BUILD_OUTPUT\libmodbus\include; `
|
||||
Copy-Item $env:BUILD_SRC\libmodbus\src\win32\$env:BUILD_ARCH\Release\*.lib -Destination $env:BUILD_OUTPUT\libmodbus\lib; `
|
||||
Copy-Item $env:BUILD_SRC\libmodbus\src\win32\$env:BUILD_ARCH\Release\*.pdb -Destination $env:BUILD_OUTPUT\libmodbus\lib; `
|
||||
Remove-Item -Path $env:BUILD_SRC\libmodbus\src\win32\$env:BUILD_ARCH -Force -Recurse; `
|
||||
Write-Host 'Libmodbus is ready...'; `
|
||||
cscript //nologo .\configure.js; `
|
||||
Set-Location -Path $env:BUILD_SRC\libmodbus; `
|
||||
cmake -S $env:BUILD_SRC\libmodbus -B $env:BUILD_SRC\libmodbus\build `
|
||||
-G """"Visual Studio 17 2022""" `
|
||||
-A x64 `
|
||||
-DBUILD_SHARED_LIBS=OFF `
|
||||
-DCMAKE_MSVC_RUNTIME_LIBRARY="""MultiThreaded$<$<CONFIG:Debug>:Debug>""" `
|
||||
-DCMAKE_INSTALL_PREFIX="""$env:BUILD_OUTPUT\libmodbus"""; `
|
||||
`
|
||||
cmake --build $env:BUILD_SRC\libmodbus\build --config Release --parallel; `
|
||||
cmake --install $env:BUILD_SRC\libmodbus\build --config Release; `
|
||||
Remove-Item -Recurse -Force $env:BUILD_SRC\libmodbus\build; `
|
||||
Write-Host 'Libmodbus is ready...';
|
||||
|
||||
RUN Import-Module (Get-ChildItem $env:VS_PATH -Recurse -File -Filter Microsoft.VisualStudio.DevShell.dll).FullName; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=x64"""; `
|
||||
Write-Host 'Building Curl library...'; `
|
||||
Set-Location -Path $env:BUILD_SRC\curl\winbuild; `
|
||||
(Get-Content MakefileBuild.vc).replace(' wldap32.lib', '') | Set-Content MakefileBuild.vc; `
|
||||
set CL=/MP; `
|
||||
nmake /S -f Makefile.vc `
|
||||
mode=static `
|
||||
VC=$env:VS_BUILDTOOLS_VERSION `
|
||||
DEBUG=no `
|
||||
CC="""cl.exe /DCURL_DISABLE_LDAP /DCURL_DISABLE_LDAPS""" `
|
||||
MACHINE=$env:BUILD_ARCH `
|
||||
USE_IPV6=yes `
|
||||
ENABLE_UNICODE=yes `
|
||||
USE_IDN=no `
|
||||
GEN_PDB=no `
|
||||
WITH_SSL=static `
|
||||
SSL_PATH=$env:BUILD_OUTPUT\openssl `
|
||||
WITH_ZLIB=static `
|
||||
ZLIB_PATH=$env:BUILD_OUTPUT\zlib `
|
||||
RTLIBCFG=static; `
|
||||
`
|
||||
Move-Item -Path $env:BUILD_SRC\curl\builds\libcurl-vc$env:VS_BUILDTOOLS_VERSION-$env:BUILD_ARCH-release-static-ssl-static-zlib-static-sspi\ -Destination $env:BUILD_OUTPUT\curl; `
|
||||
Remove-Item -Path $env:BUILD_SRC\curl\builds\* -Force -Recurse; `
|
||||
Write-Host 'Curl is ready...';
|
||||
Set-Location -Path $env:BUILD_SRC\curl; `
|
||||
$env:CL = """$env:CL /MP"""; `
|
||||
cmake -S $env:BUILD_SRC\curl -B $env:BUILD_SRC\curl\build `
|
||||
-G """Visual Studio 17 2022""" `
|
||||
-A x64 `
|
||||
-DCMAKE_MSVC_RUNTIME_LIBRARY="""MultiThreaded$<$<CONFIG:Debug>:Debug>""" `
|
||||
-DBUILD_CURL_EXE=OFF `
|
||||
-DBUILD_EXAMPLES=OFF `
|
||||
-DBUILD_LIBCURL_DOCS=OFF `
|
||||
-DBUILD_SHARED_LIBS=OFF `
|
||||
-DBUILD_STATIC_LIBS=ON `
|
||||
-DCURL_DISABLE_LDAP=ON `
|
||||
-DCURL_DISABLE_LDAPS=ON `
|
||||
-DCURL_STATIC_CRT=ON `
|
||||
-DCURL_USE_LIBPSL=OFF `
|
||||
-DCURL_USE_OPENSSL=ON `
|
||||
-DCURL_ZLIB=ON `
|
||||
-DENABLE_UNICODE=ON `
|
||||
-DOPENSSL_ROOT_DIR="""$env:BUILD_OUTPUT\openssl""" `
|
||||
-DOPENSSL_USE_STATIC_LIBS=ON `
|
||||
-DUSE_WIN32_IDN=OFF `
|
||||
-DZLIB_INCLUDE_DIR="""$env:BUILD_OUTPUT\zlib\include""" `
|
||||
-DZLIB_LIBRARY="""$env:BUILD_OUTPUT\zlib\lib\zlibstatic.lib""" `
|
||||
-DZLIB_USE_STATIC_LIBS=ON `
|
||||
-DCMAKE_INSTALL_PREFIX="""$env:BUILD_OUTPUT\curl"""; `
|
||||
cmake --build $env:BUILD_SRC\curl\build --config Release --parallel; `
|
||||
cmake --install $env:BUILD_SRC\curl\build --config Release; `
|
||||
Remove-Item -Path $env:BUILD_SRC\curl\build\ -Force -Recurse;
|
||||
|
||||
@ -2,18 +2,16 @@
|
||||
# escape=`
|
||||
ARG OS_BASE_IMAGE=mcr.microsoft.com/windows/servercore:ltsc2022
|
||||
|
||||
ARG PCRE2_VERSION=10.45
|
||||
ARG OPENSSL_VERSION=3.4.1
|
||||
ARG GOLANG_VERSION=1.25.0
|
||||
ARG PCRE2_VERSION=10.47
|
||||
ARG OPENSSL_VERSION=3.5.4
|
||||
ARG GOLANG_VERSION=1.25.5
|
||||
ARG VS_BUILDTOOLS_VERSION=17
|
||||
ARG PWSH_VERSION=7.5.1
|
||||
ARG PWSH_VERSION=7.5.4
|
||||
|
||||
ARG MSYSTEM=UCRT64
|
||||
|
||||
ARG BUILD_ARCH=x64
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
FROM ${OS_BASE_IMAGE} as src
|
||||
|
||||
@ -25,24 +23,25 @@ ARG PWSH_VERSION
|
||||
|
||||
ARG MSYSTEM
|
||||
|
||||
ARG MINGW_URL=https://github.com/niXman/mingw-builds-binaries/releases/download/14.2.0-rt_v12-rev0/x86_64-14.2.0-release-win32-seh-ucrt-rt_v12-rev0.7z
|
||||
ARG MINGW_URL=https://github.com/niXman/mingw-builds-binaries/releases/download/15.2.0-rt_v13-rev0/x86_64-15.2.0-release-win32-seh-ucrt-rt_v13-rev0.7z
|
||||
ARG VS_BUILDTOOLS_URL=https://aka.ms/vs/$VS_BUILDTOOLS_VERSION/release/vs_buildtools.exe
|
||||
ARG GOLANG_URL=https://go.dev/dl/go$GOLANG_VERSION.windows-amd64.zip
|
||||
ARG MSYS2_URL=https://github.com/msys2/msys2-installer/releases/download/2025-02-21/msys2-base-x86_64-20250221.sfx.exe
|
||||
ARG MSYS2_URL=https://github.com/msys2/msys2-installer/releases/download/2025-12-13/msys2-base-x86_64-20251213.sfx.exe
|
||||
|
||||
ARG PCRE2_URL=https://github.com/PhilipHazel/pcre2/releases/download/pcre2-$PCRE2_VERSION/pcre2-$PCRE2_VERSION.zip
|
||||
ARG PCRE2_URL=https://github.com/PCRE2Project/pcre2/releases/download/pcre2-$PCRE2_VERSION/pcre2-$PCRE2_VERSION.zip
|
||||
ARG OPENSSL_URL=https://github.com/openssl/openssl/releases/download/openssl-$OPENSSL_VERSION/openssl-$OPENSSL_VERSION.tar.gz
|
||||
|
||||
ARG PWSH_URL=https://github.com/PowerShell/PowerShell/releases/download/v$PWSH_VERSION/PowerShell-$PWSH_VERSION-win-x64.zip
|
||||
|
||||
ADD --checksum=sha256:4d3028da81170f8d1cd226614582f0a95d3dd5592127cf87a09e3a3568e51a08 $PWSH_URL build_deps\pwsh.zip
|
||||
ADD --checksum=sha256:89efb4f9b30812eee083cc1770fdd2913c14d301064f6454851428f9707d190b $GOLANG_URL build_deps\go_lang.zip
|
||||
ADD --checksum=sha256:d7270f76483aefe0c88f45284b374e27648dec59fb6f89ee2f5cb62f6a060082 $MINGW_URL build_deps\mingw.7z
|
||||
ADD --checksum=sha256:6d4952fd65d1924c56620355c3c7d5a1b40e3c7d7be358f6eb1017363d2dbbb1 $MSYS2_URL build_deps\msys2.sfx.exe
|
||||
ADD --checksum=sha256:b40d192ae95ba6ccc4cc362ff4e1b18ca6fb5055bebbcd3920684e12701fa8f6 $PWSH_URL build_deps\pwsh.zip
|
||||
ADD --checksum=sha256:ae756cce1cb80c819b4fe01b0353807178f532211b47f72d7fa77949de054ebb $GOLANG_URL build_deps\go_lang.zip
|
||||
ADD --checksum=sha256:9e9f0b912a59d2cfb3ce5a01bae4e7a05e4be4f8ff89e36e0f57606ec525525d $MINGW_URL build_deps\mingw.7z
|
||||
ADD --checksum=sha256:99f2fee9a7b1c344600ac97347e7be23a1f802d8d843b339ec7473a8ed8d49a6 $MSYS2_URL build_deps\msys2.sfx.exe
|
||||
|
||||
ADD $VS_BUILDTOOLS_URL build_deps\vs_buildtools.exe
|
||||
|
||||
ADD --checksum=sha256:0e138387df7835d7403b8351e2226c1377da804e0737db0e071b48f07c9d12ee $PCRE2_URL build_src\pcre2.zip
|
||||
ADD --checksum=sha256:002a2d6b30b58bf4bea46c43bdd96365aaf8daa6c428782aa4feee06da197df3 $OPENSSL_URL build_src\openssl.tar.gz
|
||||
ADD --checksum=sha256:d74c183c86c77248ad50017c7f45bae8f88106a6cca5d87ad09917e1c6fb0784 $PCRE2_URL build_src\pcre2.zip
|
||||
ADD --checksum=sha256:967311f84955316969bdb1d8d4b983718ef42338639c621ec4c34fddef355e99 $OPENSSL_URL build_src\openssl.tar.gz
|
||||
|
||||
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
|
||||
|
||||
@ -101,8 +100,8 @@ RUN $env:BUILD_SRC = [string]::Format('{0}\build_src', $env:SystemDrive); `
|
||||
Remove-Item -Force -Recurse $env:BUILD_SRC\*.zip; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\*.tar.gz; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\*.zip; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\msys2.sfx.exe; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\*.7z;
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\msys2.sfx.exe; `
|
||||
Remove-Item -Force -Recurse $env:BUILD_DEPS\*.7z;
|
||||
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
@ -113,16 +112,12 @@ ARG VS_BUILDTOOLS_VERSION
|
||||
|
||||
ARG MSYSTEM
|
||||
|
||||
ARG BUILD_ARCH
|
||||
|
||||
ARG MAJOR_VERSION
|
||||
ARG ZBX_VERSION
|
||||
|
||||
ENV ZBX_VERSION=$ZBX_VERSION `
|
||||
BUILD_ARCH=$BUILD_ARCH `
|
||||
MINGW_URL=$MINGW_URL VS_BUILDTOOLS_URL=$VS_BUILDTOOLS_URL VS_BUILDTOOLS_VERSION=$VS_BUILDTOOLS_VERSION GOLANG_VERSION=$GOLANG_VERSION MSYS2_URL=$MSYS2_URL `
|
||||
VS_BUILDTOOLS_VERSION=$VS_BUILDTOOLS_VERSION GOLANG_VERSION=$GOLANG_VERSION `
|
||||
PCRE2_VERSION=$PCRE2_VERSION OPENSSL_VERSION=$OPENSSL_VERSION `
|
||||
PCRE2_URL=$PCRE2_URL OPENSSL_URL=$OPENSSL_URL `
|
||||
CHERE_INVOKING=yes MSYSTEM=$MSYSTEM
|
||||
|
||||
LABEL org.opencontainers.image.title="Zabbix agent 2 build base for Windows" `
|
||||
@ -140,7 +135,6 @@ COPY --from=src build_deps build_deps
|
||||
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
|
||||
|
||||
RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; `
|
||||
`
|
||||
$env:BUILD_OUTPUT = [string]::Format('{0}\build_output', $env:SystemDrive); `
|
||||
[Environment]::SetEnvironmentVariable('BUILD_OUTPUT', $env:BUILD_OUTPUT, [EnvironmentVariableTarget]::Machine); `
|
||||
@ -187,47 +181,50 @@ RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
Write-Host 'Visual Studio components installation cleanup'; `
|
||||
Get-ChildItem -Path """${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer""" -Directory -Recurse | Remove-Item -Force -Recurse; `
|
||||
`
|
||||
Write-Host 'Build environment is ready...'; `
|
||||
`
|
||||
Write-Host 'Building PCRE2 library ...'; `
|
||||
Write-Host 'Build environment is ready...';
|
||||
|
||||
RUN Write-Host 'Building PCRE2 library ...'; `
|
||||
Set-Location -Path $env:BUILD_SRC\pcre2; `
|
||||
cmake --log-level=ERROR `
|
||||
cmake -S $env:BUILD_SRC\pcre2 -B $env:BUILD_SRC\pcre2\build `
|
||||
-G 'MinGW Makefiles' `
|
||||
-DBUILD_SHARED_LIBS=OFF `
|
||||
-DBUILD_STATIC_LIBS=ON `
|
||||
-DPCRE2_DEBUG=OFF `
|
||||
-DPCRE2_BUILD_TESTS=OFF `
|
||||
-DPCRE2_BUILD_PCRE2GREP=OFF `
|
||||
-DPCRE2_SUPPORT_JIT=OFF `
|
||||
-DINSTALL_MSVC_PDB=OFF `
|
||||
-DCMAKE_C_COMPILER=gcc `
|
||||
-DCMAKE_C_FLAGS='-O2 -g' `
|
||||
-DCMAKE_INSTALL_PREFIX="""$env:BUILD_OUTPUT\pcre2""" . ; `
|
||||
Set-Location -Path $env:BUILD_SRC\pcre2\build; `
|
||||
mingw32-make -s -j"""$env:NUMBER_OF_PROCESSORS"""; `
|
||||
mingw32-make -s -j"""$env:NUMBER_OF_PROCESSORS""" install; `
|
||||
mingw32-make -s clean | Out-Null; `
|
||||
Remove-Item -Path $env:BUILD_OUTPUT\pcre2\share -Force -Recurse; `
|
||||
Write-Host 'PCRE2 is ready...'; `
|
||||
`
|
||||
Write-Host 'Building OpenSSL library...'; `
|
||||
Remove-Item -Recurse -Force -Path $env:BUILD_OUTPUT\pcre2\share -ErrorAction SilentlyContinue; `
|
||||
Write-Host 'PCRE2 is ready...';
|
||||
|
||||
RUN Write-Host 'Building OpenSSL library...'; `
|
||||
Set-Location -Path $env:BUILD_SRC\openssl; `
|
||||
perl Configure `
|
||||
mingw64 `
|
||||
no-shared `
|
||||
no-ui-console `
|
||||
no-tests `
|
||||
no-unit-test `
|
||||
no-capieng `
|
||||
no-winstore `
|
||||
no-srp `
|
||||
no-gost `
|
||||
no-docs `
|
||||
no-dgram `
|
||||
no-dtls1-method `
|
||||
no-dtls1_2-method `
|
||||
no-gost `
|
||||
no-shared `
|
||||
no-srp `
|
||||
no-tests `
|
||||
no-ui-console `
|
||||
no-winstore `
|
||||
thread_scheme=winthreads `
|
||||
--api=1.1.0 `
|
||||
--libdir=lib `
|
||||
--prefix=$env:BUILD_OUTPUT/openssl `
|
||||
--openssldir=$env:BUILD_OUTPUT/openssl_ssl; `
|
||||
mingw32-make -s -j"""$env:NUMBER_OF_PROCESSORS""" build_sw; `
|
||||
mingw32-make -s -j"""$env:NUMBER_OF_PROCESSORS""" build_libs; `
|
||||
mingw32-make -s -j"""$env:NUMBER_OF_PROCESSORS""" install_dev; `
|
||||
mingw32-make -s clean | Out-Null; `
|
||||
Write-Host 'OpenSSL is ready...'; `
|
||||
|
||||
@ -1,31 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.29613.14
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "modbus", "modbus.vs16.vcxproj", "{498E0845-C7F4-438B-8EDE-EF7FC9A74430}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x64 = Debug|x64
|
||||
Debug|x86 = Debug|x86
|
||||
Release|x64 = Release|x64
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{498E0845-C7F4-438B-8EDE-EF7FC9A74430}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{498E0845-C7F4-438B-8EDE-EF7FC9A74430}.Debug|x64.Build.0 = Debug|x64
|
||||
{498E0845-C7F4-438B-8EDE-EF7FC9A74430}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{498E0845-C7F4-438B-8EDE-EF7FC9A74430}.Debug|x86.Build.0 = Debug|Win32
|
||||
{498E0845-C7F4-438B-8EDE-EF7FC9A74430}.Release|x64.ActiveCfg = Release|x64
|
||||
{498E0845-C7F4-438B-8EDE-EF7FC9A74430}.Release|x64.Build.0 = Release|x64
|
||||
{498E0845-C7F4-438B-8EDE-EF7FC9A74430}.Release|x86.ActiveCfg = Release|Win32
|
||||
{498E0845-C7F4-438B-8EDE-EF7FC9A74430}.Release|x86.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {6CF51673-664F-4C9F-B3FE-991FF423F3B6}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
@ -1,265 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>modbus</ProjectName>
|
||||
<ProjectGuid>{498E0845-C7F4-438B-8EDE-EF7FC9A74430}</ProjectGuid>
|
||||
<RootNamespace>modbus</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>16.0.29511.113</_ProjectFileVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableManagedIncrementalBuild>False</EnableManagedIncrementalBuild>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>true</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableManagedIncrementalBuild>False</EnableManagedIncrementalBuild>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>true</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command />
|
||||
</PreBuildEvent>
|
||||
<CustomBuildStep>
|
||||
<Message />
|
||||
<Command />
|
||||
</CustomBuildStep>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>.;..</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>W32DEBUG;HAVE_CONFIG_H;DLLBUILD;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NONSTDC_NO_DEPRECATE=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<ExceptionHandling />
|
||||
<BasicRuntimeChecks>UninitializedLocalUsageCheck</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>CompileAsC</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_MSC_VER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ResourceOutputFileName>$(SolutionDir)/modbus.res</ResourceOutputFileName>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<Version>
|
||||
</Version>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<RandomizedBaseAddress />
|
||||
<DataExecutionPrevention />
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command />
|
||||
</PreBuildEvent>
|
||||
<CustomBuildStep>
|
||||
<Message />
|
||||
<Command />
|
||||
</CustomBuildStep>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>.;..</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>HAVE_CONFIG_H;DLLBUILD;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NONSTDC_NO_DEPRECATE=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling />
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>CompileAsC</CompileAs>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<StackReserveSize>1048576</StackReserveSize>
|
||||
<StackCommitSize>524288</StackCommitSize>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<LinkTimeCodeGeneration />
|
||||
<EntryPointSymbol />
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention />
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<PreBuildEvent>
|
||||
<Command />
|
||||
</PreBuildEvent>
|
||||
<CustomBuildStep>
|
||||
<Message />
|
||||
<Command />
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>.;..</AdditionalIncludeDirectories>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>CompileAsC</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
<PreprocessorDefinitions>W32DEBUG;_WINDLL;HAVE_CONFIG_H;DLLBUILD;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NONSTDC_NO_DEPRECATE=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<StackReserveSize>1048576</StackReserveSize>
|
||||
<StackCommitSize>524288</StackCommitSize>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<PreBuildEvent>
|
||||
<Command />
|
||||
</PreBuildEvent>
|
||||
<CustomBuildStep>
|
||||
<Message />
|
||||
<Command />
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>.;..</AdditionalIncludeDirectories>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>CompileAsC</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
<PreprocessorDefinitions>_WINDLL;HAVE_CONFIG_H;DLLBUILD;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NONSTDC_NO_DEPRECATE=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<StackReserveSize>1048576</StackReserveSize>
|
||||
<StackCommitSize>524288</StackCommitSize>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<LinkTimeCodeGeneration />
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\modbus-data.c" />
|
||||
<ClCompile Include="..\modbus-rtu.c" />
|
||||
<ClCompile Include="..\modbus-tcp.c" />
|
||||
<ClCompile Include="..\modbus.c" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\modbus-private.h" />
|
||||
<ClInclude Include="..\modbus-rtu-private.h" />
|
||||
<ClInclude Include="..\modbus-rtu.h" />
|
||||
<ClInclude Include="..\modbus-tcp-private.h" />
|
||||
<ClInclude Include="..\modbus-tcp.h" />
|
||||
<ClInclude Include="..\modbus.h" />
|
||||
<ClInclude Include="config.h" />
|
||||
<ClInclude Include="modbus-version.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="modbus.rc" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@ -1,62 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\modbus-data.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\modbus-rtu.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\modbus-tcp.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\modbus.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="config.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\modbus-private.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\modbus-rtu-private.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\modbus-rtu.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\modbus-tcp-private.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\modbus-tcp.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="modbus-version.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\modbus.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="modbus.rc">
|
||||
<Filter>Resource Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@ -14,7 +14,7 @@ Zabbix build base (MySQL) image is used for building Zabbix components. It conta
|
||||
|
||||
# Zabbix build base (MySQL) images
|
||||
|
||||
These are the only official Zabbix build base (MySQL) Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of the image are:
|
||||
These are the only official Zabbix build base (MySQL) Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of the image are:
|
||||
|
||||
Zabbix build base 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix build base 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -62,7 +62,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -62,7 +62,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -62,7 +62,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -73,7 +73,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -62,7 +62,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
# escape=`
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:ltsc2022-agent-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -36,11 +36,11 @@ RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
New-Item -ItemType directory -Path $env:SystemDrive\zabbix_src | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:ZBX_OUTPUT_DIR | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:ZBX_OUTPUT_DIR\sbin | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:ZBX_OUTPUT_DIRt\bin | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:ZBX_OUTPUT_DIR\bin | Out-Null; `
|
||||
New-Item -ItemType directory -Path $env:ZBX_OUTPUT_DIR\conf | Out-Null; `
|
||||
`
|
||||
Import-Module (Get-ChildItem $env:VS_PATH -Recurse -File -Filter Microsoft.VisualStudio.DevShell.dll).FullName; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=$env:BUILD_ARCH"""; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=x64"""; `
|
||||
`
|
||||
Write-Host ('Checkout GIT {0} ({1}) repository ...' -f $env:ZBX_SOURCES, $env:GIT_BRANCH); `
|
||||
git -c advice.detachedHead=false clone $env:ZBX_SOURCES --branch $env:GIT_BRANCH --depth 1 --single-branch $env:ZBX_SOURCES_DIR; `
|
||||
@ -50,7 +50,7 @@ RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
$ZbxRevision=(git rev-parse --short HEAD); `
|
||||
(Get-Content include/version.h).replace('{ZABBIX_REVISION}', $ZbxRevision) | Set-Content include/version.h; `
|
||||
Set-Location -Path $env:ZBX_SOURCES_DIR\build\win32\project; `
|
||||
set CL=/MP; `
|
||||
$env:CL = """$env:CL /MP /MT"""; `
|
||||
nmake /S -f Makefile `
|
||||
CPU=$env:CPU_MODEL `
|
||||
CFLAGS="""/D CURL_STATICLIB /D HAVE_LIBCURL /I "$env:BUILD_OUTPUT\curl\include" /D ZABBIX_VERSION_REVISION=$ZbxRevision /D HAVE_LIBMODBUS_STATIC /D DEFAULT_CONFIG_FILE=$env:SystemDrive\zabbix\conf\zabbix_agentd.conf""" `
|
||||
@ -61,7 +61,7 @@ RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
TLSLIBDIR=$env:BUILD_OUTPUT\openssl\lib `
|
||||
MODBINCDIR=$env:BUILD_OUTPUT\libmodbus\include `
|
||||
MODBLIBDIR=$env:BUILD_OUTPUT\libmodbus\lib `
|
||||
LIBS="""$env:LIBS Crypt32.lib $env:BUILD_OUTPUT\curl\lib\libcurl_a.lib $env:BUILD_OUTPUT\zlib\lib\zlib.lib""" `
|
||||
LIBS="""$env:LIBS Crypt32.lib $env:BUILD_OUTPUT\curl\lib\libcurl.lib $env:BUILD_OUTPUT\zlib\lib\zlibstatic.lib""" `
|
||||
all; `
|
||||
`
|
||||
Write-Host 'Verifying build ("zabbix_agentd.exe -V") ...'; `
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
# escape=`
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:ltsc2022-agent2-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -53,7 +53,7 @@ RUN Set-Location -Path $env:SystemDrive\.; `
|
||||
New-Item -ItemType directory -Path $env:ZBX_OUTPUT_DIR\zabbix-agent2-plugin | Out-Null; `
|
||||
`
|
||||
Import-Module (Get-ChildItem $env:VS_PATH -Recurse -File -Filter Microsoft.VisualStudio.DevShell.dll).FullName; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=$env:BUILD_ARCH"""; `
|
||||
Enter-VsDevShell -VsInstallPath $env:VS_PATH -SkipAutomaticLocation -DevCmdArguments """-arch=x64"""; `
|
||||
`
|
||||
Write-Host ('Checkout GIT {0} ({1}) repository ...' -f $env:ZBX_SOURCES, $env:GIT_BRANCH); `
|
||||
git -c advice.detachedHead=false clone $env:ZBX_SOURCES --branch $env:GIT_BRANCH --depth 1 --single-branch $env:ZBX_SOURCES_DIR; `
|
||||
|
||||
@ -14,7 +14,7 @@ Zabbix build base (PostgreSQL) image is used for building Zabbix components. It
|
||||
|
||||
# Zabbix build base (PostgreSQL) images
|
||||
|
||||
These are the only official Zabbix build base (PostgreSQL) Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of the image are:
|
||||
These are the only official Zabbix build base (PostgreSQL) Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of the image are:
|
||||
|
||||
Zabbix build base 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix build base 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -64,7 +64,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -64,7 +64,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -64,7 +64,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -75,7 +75,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -64,7 +64,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -14,7 +14,7 @@ Zabbix build base (SQLite3) image is used for building Zabbix components. It con
|
||||
|
||||
# Zabbix build base (SQLite3) images
|
||||
|
||||
These are the only official Zabbix build base (SQLite3) Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of the image are:
|
||||
These are the only official Zabbix build base (SQLite3) Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of the image are:
|
||||
|
||||
Zabbix build base 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix build base 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -56,7 +56,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -56,7 +56,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -56,7 +56,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -67,7 +67,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-base:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -56,7 +56,7 @@ RUN --mount=type=cache,target=/root/.cache/go-build/ \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${GIT_BRANCH:-$ZBX_VERSION} --depth 1 --single-branch ${ZBX_SOURCES_DIR}; \
|
||||
fi && \
|
||||
cd ${ZBX_SOURCES_DIR} && \
|
||||
for patch_filename in "/tmp/patches/*.patch"; do \
|
||||
for patch_filename in /tmp/patches/*.patch; do \
|
||||
if [ -f "$patch_filename" ]; then \
|
||||
patch -p1 < "$patch_filename"; \
|
||||
fi \
|
||||
|
||||
@ -14,7 +14,7 @@ Zabbix Java Gateway performs native support for monitoring JMX applications. Jav
|
||||
|
||||
# Zabbix Java Gateway images
|
||||
|
||||
These are the only official Zabbix Java Gateway Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix Java Gateway are:
|
||||
These are the only official Zabbix Java Gateway Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix Java Gateway are:
|
||||
|
||||
Zabbix Java Gateway 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix Java Gateway 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -14,7 +14,7 @@ Zabbix proxy is a process that may collect monitoring data from one or more moni
|
||||
|
||||
# Zabbix proxy images
|
||||
|
||||
These are the only official Zabbix proxy Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix proxy are:
|
||||
These are the only official Zabbix proxy Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix proxy are:
|
||||
|
||||
Zabbix proxy 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix proxy 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -16,6 +16,7 @@ ENV TERM=xterm \
|
||||
ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES} \
|
||||
MIBDIRS=/usr/share/snmp/mibs:/var/lib/zabbix/mibs MIBS=+ALL \
|
||||
NMAP_PRIVILEGED="" \
|
||||
MARIADB_TLS_DISABLE_PEER_VERIFICATION=1 \
|
||||
ZABBIX_USER_HOME_DIR="/var/lib/zabbix" \
|
||||
ZABBIX_CONF_DIR="/etc/zabbix"
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -14,7 +14,7 @@ Zabbix proxy is a process that may collect monitoring data from one or more moni
|
||||
|
||||
# Zabbix proxy images
|
||||
|
||||
These are the only official Zabbix proxy Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix proxy are:
|
||||
These are the only official Zabbix proxy Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix proxy are:
|
||||
|
||||
Zabbix proxy 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix proxy 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-sqlite3:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-sqlite3:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-sqlite3:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-sqlite3:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-sqlite3:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -16,7 +16,7 @@ The server performs the polling and trapping of data, it calculates triggers, se
|
||||
|
||||
# Zabbix server images
|
||||
|
||||
These are the only official Zabbix server Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix server are:
|
||||
These are the only official Zabbix server Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix server are:
|
||||
|
||||
Zabbix server 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix server 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
@ -16,6 +16,7 @@ ENV TERM=xterm \
|
||||
ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES} \
|
||||
MIBDIRS=/usr/share/snmp/mibs:/var/lib/zabbix/mibs MIBS=+ALL \
|
||||
NMAP_PRIVILEGED="" \
|
||||
MARIADB_TLS_DISABLE_PEER_VERIFICATION=1 \
|
||||
ZABBIX_USER_HOME_DIR="/var/lib/zabbix" \
|
||||
ZABBIX_CONF_DIR="/etc/zabbix"
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -16,7 +16,7 @@ The server performs the polling and trapping of data, it calculates triggers, se
|
||||
|
||||
# Zabbix server images
|
||||
|
||||
These are the only official Zabbix server Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix server are:
|
||||
These are the only official Zabbix server Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix server are:
|
||||
|
||||
Zabbix server 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix server 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-pgsql:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-pgsql:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-pgsql:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-pgsql:rhel-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-pgsql:ubuntu-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -14,7 +14,7 @@ The image is used to receive SNMP traps, store them to a log file and provide ac
|
||||
|
||||
# Zabbix snmptraps images
|
||||
|
||||
These are the only official Zabbix snmptraps Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix snmptraps are:
|
||||
These are the only official Zabbix snmptraps Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix snmptraps are:
|
||||
|
||||
Zabbix snmptraps 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix snmptraps 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
@ -87,6 +87,8 @@ The volume allows to add new MIB files. It does not support subdirectories, all
|
||||
|
||||
The volume various persistent configuration files generated by snmptrapd daemon. The volume is required usually only for SNMPv3 traps. Do not modify manually anything stored in the volume.
|
||||
|
||||
The volume also can be used for custom configuration file ``snmptrapd_custom.conf``. The configuration file can be used for SNMPv3 authentification details.
|
||||
|
||||
# The image variants
|
||||
|
||||
The `zabbix-snmptraps` images come in many flavors, each designed for a specific use case.
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
ENV TERM=xterm \
|
||||
@ -55,7 +55,7 @@ RUN set -eux && \
|
||||
chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \
|
||||
chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/
|
||||
|
||||
EXPOSE 1162/UDP
|
||||
EXPOSE 1162/udp
|
||||
|
||||
WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/
|
||||
|
||||
@ -64,7 +64,8 @@ VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"]
|
||||
COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"]
|
||||
COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"]
|
||||
COPY ["conf/usr/sbin/zabbix_trap_handler.sh", "/usr/sbin/"]
|
||||
COPY ["conf/usr/sbin/snmptrapd_runner.sh", "/usr/sbin/"]
|
||||
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/snmptrapd", "-n", "-t", "-X", "-C", "-c", "/etc/snmp/snmptrapd.conf", "-Lo", "-A", "--doNotFork=yes"]
|
||||
CMD ["/usr/sbin/snmptrapd_runner.sh"]
|
||||
|
||||
11
Dockerfiles/snmptraps/alpine/conf/usr/sbin/snmptrapd_runner.sh
Executable file
11
Dockerfiles/snmptraps/alpine/conf/usr/sbin/snmptrapd_runner.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
DEFAULT_ARGS="-n -t -X -Lo -A"
|
||||
|
||||
CONF_FILE_LIST="/etc/snmp/snmptrapd.conf,$SNMP_PERSISTENT_DIR/snmptrapd.conf"
|
||||
|
||||
if [ -f "$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf" ]; then
|
||||
CONF_FILE_LIST="$CONF_FILE_LIST,$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf"
|
||||
fi
|
||||
|
||||
/usr/sbin/snmptrapd --doNotFork=yes -C -c "$CONF_FILE_LIST" $DEFAULT_ARGS
|
||||
@ -3,7 +3,7 @@ ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
ENV TERM=xterm \
|
||||
@ -61,7 +61,7 @@ RUN --mount=type=tmpfs,target=/var/lib/dnf/ \
|
||||
chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \
|
||||
chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/
|
||||
|
||||
EXPOSE 1162/UDP
|
||||
EXPOSE 1162/udp
|
||||
|
||||
WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/
|
||||
|
||||
@ -70,7 +70,8 @@ VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"]
|
||||
COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"]
|
||||
COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"]
|
||||
COPY ["conf/usr/sbin/zabbix_trap_handler.sh", "/usr/sbin/"]
|
||||
COPY ["conf/usr/sbin/snmptrapd_runner.sh", "/usr/sbin/"]
|
||||
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/snmptrapd", "-n", "-t", "-X", "-C", "-c", "/etc/snmp/snmptrapd.conf", "-Lo", "-A", "--doNotFork=yes"]
|
||||
CMD ["/usr/sbin/snmptrapd_runner.sh"]
|
||||
|
||||
11
Dockerfiles/snmptraps/centos/conf/usr/sbin/snmptrapd_runner.sh
Executable file
11
Dockerfiles/snmptraps/centos/conf/usr/sbin/snmptrapd_runner.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
DEFAULT_ARGS="-n -t -X -Lo -A"
|
||||
|
||||
CONF_FILE_LIST="/etc/snmp/snmptrapd.conf,$SNMP_PERSISTENT_DIR/snmptrapd.conf"
|
||||
|
||||
if [ -f "$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf" ]; then
|
||||
CONF_FILE_LIST="$CONF_FILE_LIST,$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf"
|
||||
fi
|
||||
|
||||
/usr/sbin/snmptrapd --doNotFork=yes -C -c "$CONF_FILE_LIST" $DEFAULT_ARGS
|
||||
@ -3,7 +3,7 @@ ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
ENV TERM=xterm \
|
||||
@ -60,7 +60,7 @@ RUN --mount=type=tmpfs,target=/var/lib/dnf/ \
|
||||
chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \
|
||||
chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/
|
||||
|
||||
EXPOSE 1162/UDP
|
||||
EXPOSE 1162/udp
|
||||
|
||||
WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/
|
||||
|
||||
@ -69,7 +69,8 @@ VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"]
|
||||
COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"]
|
||||
COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"]
|
||||
COPY ["conf/usr/sbin/zabbix_trap_handler.sh", "/usr/sbin/"]
|
||||
COPY ["conf/usr/sbin/snmptrapd_runner.sh", "/usr/sbin/"]
|
||||
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/snmptrapd", "-n", "-t", "-X", "-C", "-c", "/etc/snmp/snmptrapd.conf", "-Lo", "-A", "--doNotFork=yes"]
|
||||
CMD ["/usr/sbin/snmptrapd_runner.sh"]
|
||||
|
||||
11
Dockerfiles/snmptraps/ol/conf/usr/sbin/snmptrapd_runner.sh
Executable file
11
Dockerfiles/snmptraps/ol/conf/usr/sbin/snmptrapd_runner.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
DEFAULT_ARGS="-n -t -X -Lo -A"
|
||||
|
||||
CONF_FILE_LIST="/etc/snmp/snmptrapd.conf,$SNMP_PERSISTENT_DIR/snmptrapd.conf"
|
||||
|
||||
if [ -f "$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf" ]; then
|
||||
CONF_FILE_LIST="$CONF_FILE_LIST,$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf"
|
||||
fi
|
||||
|
||||
/usr/sbin/snmptrapd --doNotFork=yes -C -c "$CONF_FILE_LIST" $DEFAULT_ARGS
|
||||
@ -1,10 +1,10 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.0
|
||||
ARG OS_BASE_IMAGE=registry.access.redhat.com/ubi10/ubi-minimal:10.1
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG RELEASE=4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG RELEASE=6
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
@ -100,7 +100,7 @@ RUN --mount=type=tmpfs,target=/var/lib/dnf/ \
|
||||
chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \
|
||||
chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/
|
||||
|
||||
EXPOSE 1162/UDP
|
||||
EXPOSE 1162/udp
|
||||
|
||||
WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/
|
||||
|
||||
@ -109,7 +109,8 @@ VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"]
|
||||
COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"]
|
||||
COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"]
|
||||
COPY ["conf/usr/sbin/zabbix_trap_handler.sh", "/usr/sbin/"]
|
||||
COPY ["conf/usr/sbin/snmptrapd_runner.sh", "/usr/sbin/"]
|
||||
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/snmptrapd", "-n", "-t", "-X", "-C", "-c", "/etc/snmp/snmptrapd.conf", "-Lo", "-A", "--doNotFork=yes"]
|
||||
CMD ["/usr/sbin/snmptrapd_runner.sh"]
|
||||
|
||||
11
Dockerfiles/snmptraps/rhel/conf/usr/sbin/snmptrapd_runner.sh
Executable file
11
Dockerfiles/snmptraps/rhel/conf/usr/sbin/snmptrapd_runner.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
DEFAULT_ARGS="-n -t -X -Lo -A"
|
||||
|
||||
CONF_FILE_LIST="/etc/snmp/snmptrapd.conf,$SNMP_PERSISTENT_DIR/snmptrapd.conf"
|
||||
|
||||
if [ -f "$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf" ]; then
|
||||
CONF_FILE_LIST="$CONF_FILE_LIST,$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf"
|
||||
fi
|
||||
|
||||
/usr/sbin/snmptrapd --doNotFork=yes -C -c "$CONF_FILE_LIST" $DEFAULT_ARGS
|
||||
@ -3,7 +3,7 @@ ARG OS_BASE_IMAGE=ubuntu:noble
|
||||
FROM ${OS_BASE_IMAGE}
|
||||
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
ENV TERM=xterm \
|
||||
@ -59,7 +59,7 @@ RUN --mount=type=cache,target=/var/cache/apt/,sharing=locked \
|
||||
chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \
|
||||
chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/
|
||||
|
||||
EXPOSE 1162/UDP
|
||||
EXPOSE 1162/udp
|
||||
|
||||
WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/
|
||||
|
||||
@ -68,7 +68,8 @@ VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"]
|
||||
COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"]
|
||||
COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"]
|
||||
COPY ["conf/usr/sbin/zabbix_trap_handler.sh", "/usr/sbin/"]
|
||||
COPY ["conf/usr/sbin/snmptrapd_runner.sh", "/usr/sbin/"]
|
||||
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/snmptrapd", "-n", "-t", "-X", "-C", "-c", "/etc/snmp/snmptrapd.conf", "-Lo", "-A", "--doNotFork=yes"]
|
||||
CMD ["/usr/sbin/snmptrapd_runner.sh"]
|
||||
|
||||
11
Dockerfiles/snmptraps/ubuntu/conf/usr/sbin/snmptrapd_runner.sh
Executable file
11
Dockerfiles/snmptraps/ubuntu/conf/usr/sbin/snmptrapd_runner.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
DEFAULT_ARGS="-n -t -X -Lo -A"
|
||||
|
||||
CONF_FILE_LIST="/etc/snmp/snmptrapd.conf,$SNMP_PERSISTENT_DIR/snmptrapd.conf"
|
||||
|
||||
if [ -f "$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf" ]; then
|
||||
CONF_FILE_LIST="$CONF_FILE_LIST,$SNMP_PERSISTENT_DIR/snmptrapd_custom.conf"
|
||||
fi
|
||||
|
||||
/usr/sbin/snmptrapd --doNotFork=yes -C -c "$CONF_FILE_LIST" $DEFAULT_ARGS
|
||||
@ -14,7 +14,7 @@ Zabbix web interface is a part of Zabbix software. It is used to manage resource
|
||||
|
||||
# Zabbix web interface images
|
||||
|
||||
These are the only official Zabbix web interface Docker images. They are based on Alpine Linux v3.22, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix web interface are:
|
||||
These are the only official Zabbix web interface Docker images. They are based on Alpine Linux v3.23, Ubuntu 24.04 (noble), CentOS Stream 10 and Oracle Linux 10 images. The available versions of Zabbix web interface are:
|
||||
|
||||
Zabbix web interface 6.0 (tags: alpine-6.0-latest, ubuntu-6.0-latest, ol-6.0-latest)
|
||||
Zabbix web interface 6.0.* (tags: alpine-6.0.*, ubuntu-6.0.*, ol-6.0.*)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=alpine:3.22
|
||||
ARG OS_BASE_IMAGE=alpine:3.23
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:alpine-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=quay.io/centos/centos:stream10-minimal
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:centos-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG OS_BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:10-slim
|
||||
ARG MAJOR_VERSION=7.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.4
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.6
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ol-${ZBX_VERSION}
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} AS builder
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user