Skip to main content

Simple tool for checking a bunch of Nextcloud servers, whether their Nextcloud version is supported and up2date.

Project description

Nextcloud Version Checker

This is a tiny and simple tool for checking a bunch of nextcloud servers, whether their Nextcloud version is supported and up2date.

Usage

Installation

This project is published on PyPI, so you just want to install it via pipx or pip. Please note, that pipx is the recommended way.

$ pipx install nextcloud-version-checker
 
OR

$ pip install nextcloud-version-checker

How to use

You can call the tool via nvc or nextcloud-version-checker.

It assumes, that there's an existing input file called input.json in your current directory. If you want to specify a custom input file, just call it like e.g. nextcloud-version-checker --server-file myservers.json or shorter nvc -s myservers.json.

An example input file is located under nextcloud_version_checker/misc/input.example.json.

How it works

Information about the current latest versions will be fetched from the official API, which is also fetched by the built-in version check. (Code Reference on ShitHub)

The script will throw the list of strings from your input file into a multiprocessing pool which will fetch, parse and display the update information in a table at the end.

Example output

user@pc:~/Workspace nextcloud-version-checker
2025-02-09 00:31:20.976 | ERROR    | nextcloud_version_checker.utils.check:check:35 - Error while fetching the current version of 'https://offline.example.com':
2025-02-09 00:31:20.976 | ERROR    | nextcloud_version_checker.utils.check:check:36 - -> <urlopen error [Errno 111] Connection refused>
2025-02-09 00:31:21.428 | INFO     | nextcloud_version_checker.main:main:36 - +++ Nextcloud Version Overview +++
Instance                      Current Version    Supported    Latest Security Update    Next available Version
----------------------------  -----------------  -----------  ------------------------  ------------------------
cloud.example.org             30.0.5.1           ✓            ✓                         -
cloud.example.com/nextcloud   30.0.4.0           ✓            ✖                         30.0.5.1
legacy-cloud.example.org      16.1.0.1           ✖            ✖                         16.0.11.1
offline.example.com           Error              ?            ?                         ?

user@pc:~/Workspace$ 

Development

This is an uv project. You can set up your development environment by cloning this Repository via git and running a uv sync in the project directory afterward.

The Lockfile can be updated by using uv lock (also updates the installed packages in the dependency tree).

The project can be bundled by running uv build and published by running uv publish. Results can be found in the dist/ directory.

For code linting and formatting, ruff was used. You may run it via uv run ruff check or uv run ruff format.

This project is using Semantic Versioning and Conventional Commits.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nextcloud_version_checker-1.0.3.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nextcloud_version_checker-1.0.3-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file nextcloud_version_checker-1.0.3.tar.gz.

File metadata

File hashes

Hashes for nextcloud_version_checker-1.0.3.tar.gz
Algorithm Hash digest
SHA256 475bc132e8a169c237c40d4557ffedbb4db0275ab2ae810787c047d5c1aa9331
MD5 f2d75441213f114cb753c22e337a7cde
BLAKE2b-256 f0ee8ea101b2998c223da005c705973cc7168d74916b4c3417aa2a980bd86014

See more details on using hashes here.

File details

Details for the file nextcloud_version_checker-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for nextcloud_version_checker-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 baa36f14dec818e605f56e0219570d3f804475fceca34e02f9753cc8033eab3c
MD5 e7459eb91c9ad31c34dea1a1106a98d3
BLAKE2b-256 a51551372cc567489ddd9cc7426149f41277314997321c72e43787324202f093

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page