name: zabbix_60
run-name: Compatibility with Zabbix 6.0 test
permissions:
  contents: read

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]
  workflow_dispatch:

jobs:
  compatibility-check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
        with:
          persist-credentials: false

      - uses: actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6.1.0
        with:
          go-version: '1.25'

      - name: Start Zabbix environment
        run: |
          docker compose -f devenv/zabbix60/docker-compose.yml up -d
          # Wait for Zabbix to be ready
          sleep 30

      - name: Run integration tests
        env:
          INTEGRATION_TEST60: 'true'
          ZABBIX_URL: 'https://localhost/api_jsonrpc.php'
          ZABBIX_USER: 'Admin'
          ZABBIX_PASSWORD: 'zabbix'
        run: go test -v ./pkg/zabbixapi/...

      - name: Cleanup
        if: always()
        run: docker compose -f devenv/zabbix60/docker-compose.yml down -v
