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.org':
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.1.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.1-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for nextcloud_version_checker-1.0.1.tar.gz
Algorithm Hash digest
SHA256 40a2063d47bd5a1a8219d6ddc4fb73e316ed29ce4b51d1579a43d06096124d3e
MD5 0673d5c26769b355c6bc498b5a3e94f3
BLAKE2b-256 13ef33fd5ad0f4a0d60b5ec7b3fad617c23d3126603fbf735d3d68b43b56c1e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nextcloud_version_checker-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cf880d4e48474a8b22495fda115987cfb937c9cfc0c33262044b90af29745a2f
MD5 341df7c23019d302f7efd05e118a2afb
BLAKE2b-256 13054115d04250fe208213be6947853ca280ca099497066b180de6aed03c5df5

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