Skip to content

Commit 0464ef0

Browse files
committed
CI: parameterize some API setup options
1 parent f949ee1 commit 0464ef0

File tree

2 files changed

+21
-10
lines changed

2 files changed

+21
-10
lines changed

.github/workflows/zabbix-integration.yml

+14-4
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,13 @@ jobs:
111111
- encryption: psk
112112
tls: tls_rustls
113113

114+
env:
115+
# Used by API setup step and final test step
116+
ZBX_TEST_HOSTGROUP: CI test hosts
117+
ZBX_TEST_HOST_NAME: CI test host
118+
ZBX_TEST_ITEM_NAME_PREFIX: CI test item
119+
ZBX_TEST_ITEM_KEY_PREFIX: ci.test
120+
114121
steps:
115122
- uses: actions/checkout@v3
116123

@@ -139,6 +146,9 @@ jobs:
139146

140147
- name: Call Zabbix API to create test Host and Items
141148
# Allow Docker private subnets, in addition to localhost
149+
env:
150+
ZBX_USER: Admin
151+
ZBX_PASSWORD: zabbix
142152
run: |
143153
[ '${{ matrix.encryption }}' = 'psk' ] \
144154
&& PSK_ARGS="--tls-psk-identity ${{ env.CI_EXAMPLE_BIN }} --tls-psk-key $(cat pki/client.psk)" \
@@ -204,10 +214,10 @@ jobs:
204214
esac
205215
# Call ${{ env.CI_EXAMPLE_BIN }} to send some items to Zabbix Server
206216
./${{ env.CI_EXAMPLE_BIN }} --status-on-fail --zabbix-server localhost $TLS_OPTS --input-file - <<EOF
207-
"CI test host" ci.test.character "Hello, world."
208-
"CI test host" ci.test.unsigned 54321
209-
"CI test host" ci.test.float 54.321
210-
"CI test host" ci.test.text "I have eaten
217+
"$ZBX_TEST_HOST_NAME" $ZBX_TEST_ITEM_KEY_PREFIX.character "Hello, world."
218+
"$ZBX_TEST_HOST_NAME" $ZBX_TEST_ITEM_KEY_PREFIX.unsigned 54321
219+
"$ZBX_TEST_HOST_NAME" $ZBX_TEST_ITEM_KEY_PREFIX.float 54.321
220+
"$ZBX_TEST_HOST_NAME" $ZBX_TEST_ITEM_KEY_PREFIX.text "I have eaten
211221
the plums
212222
that were in
213223
the icebox

script/zabbix_api_setup.py

+7-6
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,19 @@
22

33
import argparse
44
import json
5+
import os
56
import time
67
from sys import exit
78
import urllib.request as rq
89
from urllib.parse import urljoin
910

1011

11-
ZABBIX_USER = "Admin"
12-
ZABBIX_PASSWORD = "zabbix"
13-
ZABBIX_HOSTGROUP = "CI test hosts"
14-
ZABBIX_HOST_NAME = "CI test host"
15-
ZABBIX_ITEM_NAME_PREFIX = "CI test item"
16-
ZABBIX_ITEM_KEY_PREFIX = "ci.test"
12+
ZABBIX_USER = os.environ.get('ZBX_USER', "Admin")
13+
ZABBIX_PASSWORD = os.environ.get('ZBX_PASSWORD', "zabbix")
14+
ZABBIX_HOSTGROUP = os.environ.get('ZBX_TEST_HOSTGROUP', "Test hosts")
15+
ZABBIX_HOST_NAME = os.environ.get('ZBX_TEST_HOST_NAME', "Test host")
16+
ZABBIX_ITEM_NAME_PREFIX = os.environ.get('ZBX_TEST_ITEM_NAME_PREFIX', "Test")
17+
ZABBIX_ITEM_KEY_PREFIX = os.environ.get('ZBX_TEST_ITEM_KEY_PREFIX', "test")
1718

1819

1920
class ZabbixError(Exception):

0 commit comments

Comments
 (0)