# Zabbix backup python script
*EXPERIMENTAL: use at your own risk!*
Python script to perform zabbix dumps.
See full project documentation at https://www.zabbixbackup.com.
Inspired by the project https://github.com/npotorino/zabbix-backup.
## Install
```
pip install zabbixbackup
```
## Examples
Create a backup connecting as user `postgres` to the db `zabbix` with schema `zabbix`
`python -m zabbixbackup psql --host 127.0.0.1 --user postgres --passwd mypassword --database zabbix --schema zabbix`
Create a tar archive dump and save standard zabbix configuration files along with it.
`python -m zabbixbackup psql --host 127.0.0.1 --passwd mypassword --format tar --save-files`
Create a "custom" archive and save it to a backup folder, rotate backups to retain
only the last four.
`python -m zabbixbackup psql --host 127.0.0.1 --passwd mypassword --format custom --rotate 4`
Setup an authentication (`.pgpass`) file and use it to login in subsequent call.
```
python -m zabbixbackup pgsql --host 127.0.0.1 \
--passwd - --keep-login-file --dry-run
[input password]
mv .pgpass /root
python -m zabbixbackup pgsql --host 127.0.0.1 --login-file /root/.pgpass
```
Setup an authentication (`mylogin.cnf`) file and use it to login in subsequent call.
```
python -m zabbixbackup mysql --host 127.0.0.1 \
--passwd - --keep-login-file --dry-run
[input password]
mv mylogin.cnf /root
python -m zabbixbackup mysql --host 127.0.0.1 --login-file /root/mylogin.cnf
```
## First level CLI
```
usage: zabbixbackup [-h] {psql,pgsql,mysql} ...
options:
-h, --help show this help message and exit
DBMS:
{psql,pgsql,mysql}
psql (pgsql) (see zabbixbackup psql --help)
mysql (see zabbixbackup mysql --help)
```
## Postgres SQL: second level CLI
`zabbixbackup psql --help`
```
usage: zabbixbackup psql [-h] [-z] [-Z ZBX_CONFIG] [-D] [-H HOST] [-P PORT]
[-u USER] [-p PASSWD] [--keep-login-file]
[--login-file LOGINFILE] [-d DBNAME] [-s SCHEMA] [-n]
[--name NAME] [-U {dump,nodata,ignore,fail}]
[-M {dump,nodata}] [-N] [-x PGCOMPRESSION]
[-f {custom,plain,directory,tar}] [--save-files]
[--files FILES] [-a ARCHIVE] [-o OUTDIR] [-r ROTATE]
[-q | -v | -V | --debug]
zabbix dump for psql inspired and directly translated from...
options:
-h, --help show this help message and exit
-z, --read-zabbix-config
try to read database host and credentials from Zabbix
config. Implicit if `--zabbix-config` is set.
(default: False)
-Z ZBX_CONFIG, --zabbix-config ZBX_CONFIG
Zabbix config file path. Implicit if `--read-zabbix-
config` is set. (default:
/etc/zabbix/zabbix_server.conf)
-D, --dry-run Do not create the actual backup, only show dump
commands. Be aware that the database will be queried
for tables selection and temporary folders and files
will be created. (default: False)
connection options:
-H HOST, --host HOST hostname/IP of DBMS server, to specify a blank value
pass '-'. If host starts with a slash it's interpreted
as a socket directory. Special rules might apply (see
postgre online documentation for sockets). (default:
127.0.0.1)
-P PORT, --port PORT DBMS port. (default: 5432)
-u USER, --username USER
database login user. (default: zabbix)
-p PASSWD, --passwd PASSWD
database login password (specify '-' for an
interactive prompt). (default: None)
--keep-login-file if a credential file is created (.pgpass) do not
delete it on exit. (default: False)
--login-file LOGINFILE
use '.pgpass' file for the authentication. (default:
None)
-d DBNAME, --database DBNAME
database name. (default: zabbix)
-s SCHEMA, --schema SCHEMA
database schema. (default: public)
-n, --reverse-lookup (NOT IMPLEMENTED) perform a reverse lookup of the IP
address for the host. (default: True)
--name NAME use this name instead of 'host' for the backup name.
(allowed alphanum, -, .) (default: None)
dump action options:
-U {dump,nodata,ignore,fail}, --unknown-action {dump,nodata,ignore,fail}
action for unknown tables. (default: ignore)
-M {dump,nodata}, --monitoring-action {dump,nodata}
action for monitoring table (default: nodata)
-N, --add-columns add column names in INSERT clauses and quote them as
needed. (default: False)
dump level compression options:
-x PGCOMPRESSION, --pgcompression PGCOMPRESSION
passed as-is to pg_dump --compress, might be implied
by format. (default: None)
-f {custom,plain,directory,tar}, --pgformat {custom,plain,directory,tar}
dump format, will mandate the file output format.
(default: custom)
configuration files:
--save-files save folders and other files (see --files). (default:
False)
--files FILES save folders and other files as listed in this file.
One line per folder or file, non existant will be
ignored. Directory structure is replicated (copied via
'cp'). (default: -)
output options:
-a ARCHIVE, --archive ARCHIVE
archive level compression. 'tar' to create a tar
archive, '-' to leave the backup uncompressed as a
folder. Other available formats are xz, gzip and
bzip2. Use ':<LEVEL>' to set a compression level. I.e.
--archive xz:6 (default: -)
-o OUTDIR, --outdir OUTDIR
save database dump to 'outdir'. (default: .)
-r ROTATE, --rotate ROTATE
rotate backups while keeping up 'R' old backups.Uses
filename to match '0=keep everything'. (default: 0)
verbosity:
-q, --quiet don't print anything except unrecoverable errors.
(default: False)
-v, --verbose print informations. (default: True)
-V, --very-verbose print even more informations. (default: False)
--debug print everything. (default: False)
```
## MySQL: second level CLI
`zabbixbackup mysql --help`
```
usage: zabbixbackup mysql [-h] [-z] [-Z ZBX_CONFIG] [-c] [-C MYSQL_CONFIG]
[-D] [-H HOST] [-P PORT] [-S SOCK] [-u USER]
[-p PASSWD] [--keep-login-file]
[--login-file LOGINFILE] [-d DBNAME] [-n]
[--name NAME] [-U {dump,nodata,ignore,fail}]
[-M {dump,nodata}] [-N]
[--mysqlcompression MYSQLCOMPRESSION] [--save-files]
[--files FILES] [-a ARCHIVE] [-o OUTDIR] [-r ROTATE]
[-q | -v | -V | --debug]
zabbix dump for mysql inspired and directly translated from...
options:
-h, --help show this help message and exit
-z, --read-zabbix-config
try to read database host and credentials from Zabbix
config. Implicit if `--zabbix-config` is set.
(default: False)
-Z ZBX_CONFIG, --zabbix-config ZBX_CONFIG
Zabbix config file path. Implicit if `--read-zabbix-
config` is set. (default:
/etc/zabbix/zabbix_server.conf)
-c, --read-mysql-config
Read database host and credentials from MySQL config
file. Implicit if `--mysql-config` is set. (default:
False)
-C MYSQL_CONFIG, --mysql-config MYSQL_CONFIG
MySQL config file path. Implicit if `--read-mysql-
config` is set. (default: /etc/mysql/my.cnf)
-D, --dry-run Do not create the actual backup, only show dump
commands. Be aware that the database will be queried
for tables selection and temporary folders and files
will be created. (default: False)
connection options:
-H HOST, --host HOST hostname/IP of DBMS server, to specify a blank value
pass '-'. (default: 127.0.0.1)
-P PORT, --port PORT DBMS port. (default: 3306)
-S SOCK, --socket SOCK
path to DBMS socket file. Alternative to specifying
host. (default: None)
-u USER, --username USER
database login user. (default: zabbix)
-p PASSWD, --passwd PASSWD
database login password (specify '-' for an
interactive prompt). (default: None)
--keep-login-file if a credential file is created (mylogin.cnf) do not
delete it on exit. (default: False)
--login-file LOGINFILE
use 'mylogin.cnf' file for the authentication.
(default: None)
-d DBNAME, --database DBNAME
database name. (default: zabbix)
-n, --reverse-lookup (NOT IMPLEMENTED) perform a reverse lookup of the IP
address for the host. (default: True)
--name NAME use this name instead of 'host' for the backup name.
(allowed alphanum, -, .) (default: None)
dump action options:
-U {dump,nodata,ignore,fail}, --unknown-action {dump,nodata,ignore,fail}
action for unknown tables. (default: ignore)
-M {dump,nodata}, --monitoring-action {dump,nodata}
action for monitoring table (default: nodata)
-N, --add-columns add column names in INSERT clauses and quote them as
needed. (default: False)
dump level compression options:
--mysqlcompression MYSQLCOMPRESSION
dump level compression. Available formats are xz, gzip
and bzip2. Use ':<LEVEL>' to set a compression level.
I.e. --archive xz:6. See documentation for the
details. (default: gzip:6)
configuration files:
--save-files save folders and other files (see --files). (default:
False)
--files FILES save folders and other files as listed in this file.
One line per folder or file, non existant will be
ignored. Directory structure is replicated (copied via
'cp'). (default: -)
output options:
-a ARCHIVE, --archive ARCHIVE
archive level compression. 'tar' to create a tar
archive, '-' to leave the backup uncompressed as a
folder. Other available formats are xz, gzip and
bzip2. Use ':<LEVEL>' to set a compression level. I.e.
--archive xz:6 (default: -)
-o OUTDIR, --outdir OUTDIR
save database dump to 'outdir'. (default: .)
-r ROTATE, --rotate ROTATE
rotate backups while keeping up 'R' old backups.Uses
filename to match '0=keep everything'. (default: 0)
verbosity:
-q, --quiet don't print anything except unrecoverable errors.
(default: False)
-v, --verbose print informations. (default: True)
-V, --very-verbose print even more informations. (default: False)
--debug print everything. (default: False)
```
Raw data
{
"_id": null,
"home_page": null,
"name": "zabbixbackup",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "zabbix, backup, configuration, postgresql, postgres, psql, mysql",
"author": null,
"author_email": "Giampaolo Eusebi <giampaolo.eusebi@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/32/f8/2678eb1017f88ed20da230363117fb40f0f31bf8dd8d2b5530fb2908e9a6/zabbixbackup-0.0.1b8.tar.gz",
"platform": null,
"description": "# Zabbix backup python script\r\n\r\n*EXPERIMENTAL: use at your own risk!*\r\n\r\nPython script to perform zabbix dumps.\r\n\r\nSee full project documentation at https://www.zabbixbackup.com.\r\n\r\nInspired by the project https://github.com/npotorino/zabbix-backup.\r\n\r\n## Install\r\n```\r\npip install zabbixbackup\r\n```\r\n\r\n## Examples\r\nCreate a backup connecting as user `postgres` to the db `zabbix` with schema `zabbix`\r\n\r\n`python -m zabbixbackup psql --host 127.0.0.1 --user postgres --passwd mypassword --database zabbix --schema zabbix`\r\n\r\nCreate a tar archive dump and save standard zabbix configuration files along with it.\r\n\r\n`python -m zabbixbackup psql --host 127.0.0.1 --passwd mypassword --format tar --save-files`\r\n\r\nCreate a \"custom\" archive and save it to a backup folder, rotate backups to retain\r\nonly the last four.\r\n\r\n`python -m zabbixbackup psql --host 127.0.0.1 --passwd mypassword --format custom --rotate 4`\r\n\r\nSetup an authentication (`.pgpass`) file and use it to login in subsequent call.\r\n```\r\npython -m zabbixbackup pgsql --host 127.0.0.1 \\\r\n --passwd - --keep-login-file --dry-run\r\n[input password]\r\nmv .pgpass /root\r\n\r\npython -m zabbixbackup pgsql --host 127.0.0.1 --login-file /root/.pgpass\r\n```\r\n\r\nSetup an authentication (`mylogin.cnf`) file and use it to login in subsequent call.\r\n```\r\npython -m zabbixbackup mysql --host 127.0.0.1 \\\r\n --passwd - --keep-login-file --dry-run\r\n[input password]\r\nmv mylogin.cnf /root\r\n\r\npython -m zabbixbackup mysql --host 127.0.0.1 --login-file /root/mylogin.cnf\r\n```\r\n\r\n## First level CLI\r\n```\r\nusage: zabbixbackup [-h] {psql,pgsql,mysql} ...\r\n\r\noptions:\r\n -h, --help show this help message and exit\r\n\r\nDBMS:\r\n {psql,pgsql,mysql}\r\n psql (pgsql) (see zabbixbackup psql --help)\r\n mysql (see zabbixbackup mysql --help)\r\n```\r\n\r\n## Postgres SQL: second level CLI\r\n\r\n`zabbixbackup psql --help`\r\n```\r\nusage: zabbixbackup psql [-h] [-z] [-Z ZBX_CONFIG] [-D] [-H HOST] [-P PORT]\r\n [-u USER] [-p PASSWD] [--keep-login-file]\r\n [--login-file LOGINFILE] [-d DBNAME] [-s SCHEMA] [-n]\r\n [--name NAME] [-U {dump,nodata,ignore,fail}]\r\n [-M {dump,nodata}] [-N] [-x PGCOMPRESSION]\r\n [-f {custom,plain,directory,tar}] [--save-files]\r\n [--files FILES] [-a ARCHIVE] [-o OUTDIR] [-r ROTATE]\r\n [-q | -v | -V | --debug]\r\n\r\nzabbix dump for psql inspired and directly translated from...\r\n\r\noptions:\r\n -h, --help show this help message and exit\r\n -z, --read-zabbix-config\r\n try to read database host and credentials from Zabbix\r\n config. Implicit if `--zabbix-config` is set.\r\n (default: False)\r\n -Z ZBX_CONFIG, --zabbix-config ZBX_CONFIG\r\n Zabbix config file path. Implicit if `--read-zabbix-\r\n config` is set. (default:\r\n /etc/zabbix/zabbix_server.conf)\r\n -D, --dry-run Do not create the actual backup, only show dump\r\n commands. Be aware that the database will be queried\r\n for tables selection and temporary folders and files\r\n will be created. (default: False)\r\n\r\nconnection options:\r\n -H HOST, --host HOST hostname/IP of DBMS server, to specify a blank value\r\n pass '-'. If host starts with a slash it's interpreted\r\n as a socket directory. Special rules might apply (see\r\n postgre online documentation for sockets). (default:\r\n 127.0.0.1)\r\n -P PORT, --port PORT DBMS port. (default: 5432)\r\n -u USER, --username USER\r\n database login user. (default: zabbix)\r\n -p PASSWD, --passwd PASSWD\r\n database login password (specify '-' for an\r\n interactive prompt). (default: None)\r\n --keep-login-file if a credential file is created (.pgpass) do not\r\n delete it on exit. (default: False)\r\n --login-file LOGINFILE\r\n use '.pgpass' file for the authentication. (default:\r\n None)\r\n -d DBNAME, --database DBNAME\r\n database name. (default: zabbix)\r\n -s SCHEMA, --schema SCHEMA\r\n database schema. (default: public)\r\n -n, --reverse-lookup (NOT IMPLEMENTED) perform a reverse lookup of the IP\r\n address for the host. (default: True)\r\n --name NAME use this name instead of 'host' for the backup name.\r\n (allowed alphanum, -, .) (default: None)\r\n\r\ndump action options:\r\n -U {dump,nodata,ignore,fail}, --unknown-action {dump,nodata,ignore,fail}\r\n action for unknown tables. (default: ignore)\r\n -M {dump,nodata}, --monitoring-action {dump,nodata}\r\n action for monitoring table (default: nodata)\r\n -N, --add-columns add column names in INSERT clauses and quote them as\r\n needed. (default: False)\r\n\r\ndump level compression options:\r\n -x PGCOMPRESSION, --pgcompression PGCOMPRESSION\r\n passed as-is to pg_dump --compress, might be implied\r\n by format. (default: None)\r\n -f {custom,plain,directory,tar}, --pgformat {custom,plain,directory,tar}\r\n dump format, will mandate the file output format.\r\n (default: custom)\r\n\r\nconfiguration files:\r\n --save-files save folders and other files (see --files). (default:\r\n False)\r\n --files FILES save folders and other files as listed in this file.\r\n One line per folder or file, non existant will be\r\n ignored. Directory structure is replicated (copied via\r\n 'cp'). (default: -)\r\n\r\noutput options:\r\n -a ARCHIVE, --archive ARCHIVE\r\n archive level compression. 'tar' to create a tar\r\n archive, '-' to leave the backup uncompressed as a\r\n folder. Other available formats are xz, gzip and\r\n bzip2. Use ':<LEVEL>' to set a compression level. I.e.\r\n --archive xz:6 (default: -)\r\n -o OUTDIR, --outdir OUTDIR\r\n save database dump to 'outdir'. (default: .)\r\n -r ROTATE, --rotate ROTATE\r\n rotate backups while keeping up 'R' old backups.Uses\r\n filename to match '0=keep everything'. (default: 0)\r\n\r\nverbosity:\r\n -q, --quiet don't print anything except unrecoverable errors.\r\n (default: False)\r\n -v, --verbose print informations. (default: True)\r\n -V, --very-verbose print even more informations. (default: False)\r\n --debug print everything. (default: False)\r\n```\r\n\r\n## MySQL: second level CLI\r\n\r\n`zabbixbackup mysql --help`\r\n```\r\nusage: zabbixbackup mysql [-h] [-z] [-Z ZBX_CONFIG] [-c] [-C MYSQL_CONFIG]\r\n [-D] [-H HOST] [-P PORT] [-S SOCK] [-u USER]\r\n [-p PASSWD] [--keep-login-file]\r\n [--login-file LOGINFILE] [-d DBNAME] [-n]\r\n [--name NAME] [-U {dump,nodata,ignore,fail}]\r\n [-M {dump,nodata}] [-N]\r\n [--mysqlcompression MYSQLCOMPRESSION] [--save-files]\r\n [--files FILES] [-a ARCHIVE] [-o OUTDIR] [-r ROTATE]\r\n [-q | -v | -V | --debug]\r\n\r\nzabbix dump for mysql inspired and directly translated from...\r\n\r\noptions:\r\n -h, --help show this help message and exit\r\n -z, --read-zabbix-config\r\n try to read database host and credentials from Zabbix\r\n config. Implicit if `--zabbix-config` is set.\r\n (default: False)\r\n -Z ZBX_CONFIG, --zabbix-config ZBX_CONFIG\r\n Zabbix config file path. Implicit if `--read-zabbix-\r\n config` is set. (default:\r\n /etc/zabbix/zabbix_server.conf)\r\n -c, --read-mysql-config\r\n Read database host and credentials from MySQL config\r\n file. Implicit if `--mysql-config` is set. (default:\r\n False)\r\n -C MYSQL_CONFIG, --mysql-config MYSQL_CONFIG\r\n MySQL config file path. Implicit if `--read-mysql-\r\n config` is set. (default: /etc/mysql/my.cnf)\r\n -D, --dry-run Do not create the actual backup, only show dump\r\n commands. Be aware that the database will be queried\r\n for tables selection and temporary folders and files\r\n will be created. (default: False)\r\n\r\nconnection options:\r\n -H HOST, --host HOST hostname/IP of DBMS server, to specify a blank value\r\n pass '-'. (default: 127.0.0.1)\r\n -P PORT, --port PORT DBMS port. (default: 3306)\r\n -S SOCK, --socket SOCK\r\n path to DBMS socket file. Alternative to specifying\r\n host. (default: None)\r\n -u USER, --username USER\r\n database login user. (default: zabbix)\r\n -p PASSWD, --passwd PASSWD\r\n database login password (specify '-' for an\r\n interactive prompt). (default: None)\r\n --keep-login-file if a credential file is created (mylogin.cnf) do not\r\n delete it on exit. (default: False)\r\n --login-file LOGINFILE\r\n use 'mylogin.cnf' file for the authentication.\r\n (default: None)\r\n -d DBNAME, --database DBNAME\r\n database name. (default: zabbix)\r\n -n, --reverse-lookup (NOT IMPLEMENTED) perform a reverse lookup of the IP\r\n address for the host. (default: True)\r\n --name NAME use this name instead of 'host' for the backup name.\r\n (allowed alphanum, -, .) (default: None)\r\n\r\ndump action options:\r\n -U {dump,nodata,ignore,fail}, --unknown-action {dump,nodata,ignore,fail}\r\n action for unknown tables. (default: ignore)\r\n -M {dump,nodata}, --monitoring-action {dump,nodata}\r\n action for monitoring table (default: nodata)\r\n -N, --add-columns add column names in INSERT clauses and quote them as\r\n needed. (default: False)\r\n\r\ndump level compression options:\r\n --mysqlcompression MYSQLCOMPRESSION\r\n dump level compression. Available formats are xz, gzip\r\n and bzip2. Use ':<LEVEL>' to set a compression level.\r\n I.e. --archive xz:6. See documentation for the\r\n details. (default: gzip:6)\r\n\r\nconfiguration files:\r\n --save-files save folders and other files (see --files). (default:\r\n False)\r\n --files FILES save folders and other files as listed in this file.\r\n One line per folder or file, non existant will be\r\n ignored. Directory structure is replicated (copied via\r\n 'cp'). (default: -)\r\n\r\noutput options:\r\n -a ARCHIVE, --archive ARCHIVE\r\n archive level compression. 'tar' to create a tar\r\n archive, '-' to leave the backup uncompressed as a\r\n folder. Other available formats are xz, gzip and\r\n bzip2. Use ':<LEVEL>' to set a compression level. I.e.\r\n --archive xz:6 (default: -)\r\n -o OUTDIR, --outdir OUTDIR\r\n save database dump to 'outdir'. (default: .)\r\n -r ROTATE, --rotate ROTATE\r\n rotate backups while keeping up 'R' old backups.Uses\r\n filename to match '0=keep everything'. (default: 0)\r\n\r\nverbosity:\r\n -q, --quiet don't print anything except unrecoverable errors.\r\n (default: False)\r\n -v, --verbose print informations. (default: True)\r\n -V, --very-verbose print even more informations. (default: False)\r\n --debug print everything. (default: False)\r\n```\r\n\r\n",
"bugtrack_url": null,
"license": null,
"summary": "Zabbix database backup utility for postgres and mysql",
"version": "0.0.1b8",
"project_urls": {
"Homepage": "https://www.zabbixbackup.com",
"Issues": "https://github.com/geusebi/zabbixbackup/issues",
"Repository": "https://github.com/geusebi/zabbixbackup"
},
"split_keywords": [
"zabbix",
" backup",
" configuration",
" postgresql",
" postgres",
" psql",
" mysql"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "99a77200b31d1fa95dc40e531f0116e5d1da8bb3c6e6ddc3c484877296280b4a",
"md5": "15d0d11a1de7bc58222bc8f4aa644f8d",
"sha256": "892a42d39865b156e0d3c7b52e19204f5fcf2069e34d19c315bba6651ee7b73c"
},
"downloads": -1,
"filename": "zabbixbackup-0.0.1b8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "15d0d11a1de7bc58222bc8f4aa644f8d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 34331,
"upload_time": "2024-12-16T14:34:53",
"upload_time_iso_8601": "2024-12-16T14:34:53.160792Z",
"url": "https://files.pythonhosted.org/packages/99/a7/7200b31d1fa95dc40e531f0116e5d1da8bb3c6e6ddc3c484877296280b4a/zabbixbackup-0.0.1b8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "32f82678eb1017f88ed20da230363117fb40f0f31bf8dd8d2b5530fb2908e9a6",
"md5": "ac1e19fced6976dc71b4f6f00cc640b9",
"sha256": "07b8c658c15fc5e4eac27cbcf2f18c417e479ad076c8e7736ca8ea09560e674d"
},
"downloads": -1,
"filename": "zabbixbackup-0.0.1b8.tar.gz",
"has_sig": false,
"md5_digest": "ac1e19fced6976dc71b4f6f00cc640b9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 35420,
"upload_time": "2024-12-16T14:35:02",
"upload_time_iso_8601": "2024-12-16T14:35:02.972470Z",
"url": "https://files.pythonhosted.org/packages/32/f8/2678eb1017f88ed20da230363117fb40f0f31bf8dd8d2b5530fb2908e9a6/zabbixbackup-0.0.1b8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-16 14:35:02",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "geusebi",
"github_project": "zabbixbackup",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "zabbixbackup"
}