name: EpicMorg Advanced Zabbix Images

on:
#  push:
#    branches:
#      - 'master'
  schedule:
    - cron: '0 03 * * 2,4,6'

jobs:

  build-latest-images:
    name: EpicMorg Advanced Zabbix Latest Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/latest/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Agent2 Images:"
      run:  cd linux/advanced/zabbix/latest/agent2 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/latest/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/latest/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/latest/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/latest/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/latest/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/latest/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/latest/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/latest/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-30-images:
    name: Build EpicMorg Advanced Zabbix 3.0 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/3.0/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/3.0/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/3.0/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/3.0/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/3.0/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/3.0/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/3.0/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/3.0/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/3.0/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-40-images:
    name: Build EpicMorg Advanced Zabbix 4.0 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/4.0/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/4.0/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/4.0/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/4.0/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/4.0/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/4.0/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/4.0/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/4.0/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/4.0/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-50-images:
    name: Build EpicMorg Advanced Zabbix 5.0 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/5.0/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Agent2 Images:"
      run:  cd linux/advanced/zabbix/5.0/agent2 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/5.0/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/5.0/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/5.0/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/5.0/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/5.0/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/5.0/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/5.0/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/5.0/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-52-images:
    name: Build EpicMorg Advanced Zabbix 5.2 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/5.2/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Agent2 Images:"
      run:  cd linux/advanced/zabbix/5.2/agent2 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/5.2/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/5.2/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/5.2/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/5.2/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/5.2/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/5.2/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/5.2/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/5.2/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-54-images:
    name: Build EpicMorg Advanced Zabbix 5.4 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/5.4/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Agent2 Images:"
      run:  cd linux/advanced/zabbix/5.4/agent2 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/5.4/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/5.4/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/5.4/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/5.4/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/5.4/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/5.4/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/5.4/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/5.4/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-60-images:
    name: Build EpicMorg Advanced Zabbix 6.0 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/6.0/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Agent2 Images:"
      run:  cd linux/advanced/zabbix/6.0/agent2 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/6.0/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/6.0/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/6.0/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/6.0/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/6.0/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/6.0/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/6.0/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/6.0/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-62-images:
    name: Build EpicMorg Advanced Zabbix 6.2 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/6.2/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Agent2 Images:"
      run:  cd linux/advanced/zabbix/6.2/agent2 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/6.2/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/6.2/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/6.2/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/6.2/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/6.2/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/6.2/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/6.2/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/6.2/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-64-images:
    name: Build EpicMorg Advanced Zabbix 6.2 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/6.4/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Agent2 Images:"
      run:  cd linux/advanced/zabbix/6.4/agent2 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/6.4/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/6.4/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/6.4/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/6.4/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/6.4/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/6.4/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/6.4/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/6.4/web-pgsql && pwd && make build && make deploy

##################################################################################

  build-trunk-images:
    name: Build EpicMorg Advanced Zabbix 6.2 Images
    runs-on: ubuntu-22.04

    steps:
    - uses: actions/checkout@v4
    - name: Log into registry
      run:  echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin

    - name: Test Make
      run:  make

    - name: "Build and Deploy Advanced Zabbix Agent Images:"
      run:  cd linux/advanced/zabbix/trunk/agent && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Agent2 Images:"
      run:  cd linux/advanced/zabbix/trunk/agent2 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Java Gateway  Images:"
      run:  cd linux/advanced/zabbix/trunk/java-gateway && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Mysql Images:"
      run:  cd linux/advanced/zabbix/trunk/proxy-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Proxy Sqlite3 Images:"
      run:  cd linux/advanced/zabbix/trunk/proxy-sqlite3 && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Mysql Images:"
      run:  cd linux/advanced/zabbix/trunk/server-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Server Pgsql Images:"
      run:  cd linux/advanced/zabbix/trunk/server-pgsql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Snmptraps Images:"
      run:  cd linux/advanced/zabbix/trunk/snmptraps && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Mysql Images:"
      run:  cd linux/advanced/zabbix/trunk/web-mysql && pwd && make build && make deploy

    - name: "Build and Deploy Advanced Zabbix Web Pgsql Images:"
      run:  cd linux/advanced/zabbix/trunk/web-pgsql && pwd && make build && make deploy

##################################################################################

    - name: Cleanup
      run: make docker-clean