Skip to main content

Core Module Update Interface

Project description

Core Updater Plugin

Exposes a messagebus API to check for and initiate core module updates. Update checks use GitHub releases or PyPI indices, depending on plugin configuration. The update command is configurable and is started in a new session. Note that the calling module might be killed during updates and in many cases, systemD will kill the update process if the parent service stops.

Configuration

The update command, core package, and update references are all configurable. For version checks, a valid Python Package must be installed and versions must either be published to PyPI or tagged as GitHub releases.

PHAL:
  admin:
    neon-phal-plugin-core-updater:
      enabled: True
      core_module: neon_core
      github_ref: NeonGeckoCom/NeonCore
      update_command: systemctl start update_service

Messagebus API

Messagebus events are handled to check for updates and to update to a newer version.

Check for updates

emitting:

msg_type: neon.core_updater.check_update
data: 
  include_prerelease: True

will generate the response:

msg_type: neon.core_updater.check_update.response
data:
  new_version: <latest version including pre-releases/alphas>
  installed_version: <current installed version>
  github_ref: <plugin configured GH ref>
  pypi_ref: <plugin configured PyPI ref>

If include_prereleases is not present in the request, the installed version is used to determine if pre-releases should be included.

Note that only one of github_ref or pypi_ref should be configured. If both are configured, PyPI checks take priority.

Start Updates

emitting:

msg_type: neon.core_updater.start_update
data:
  version: <new_version>

will start the configured update command in a shell with version passed as the first and only argument. If version is omitted, the configured update command will be called with no commands.

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

neon-phal-plugin-core-updater-1.2.1a2.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file neon-phal-plugin-core-updater-1.2.1a2.tar.gz.

File metadata

File hashes

Hashes for neon-phal-plugin-core-updater-1.2.1a2.tar.gz
Algorithm Hash digest
SHA256 db00e8116c7e2cf6f157716373ab3258679232caae0a832c9305a3461237283d
MD5 fd2838df29caca01dc4cd7115d53cda9
BLAKE2b-256 badb1ca51bd01164f39a61a830511a0b25a4b6644c94aa053d34001d5114dbfa

See more details on using hashes here.

File details

Details for the file neon_phal_plugin_core_updater-1.2.1a2-py3-none-any.whl.

File metadata

File hashes

Hashes for neon_phal_plugin_core_updater-1.2.1a2-py3-none-any.whl
Algorithm Hash digest
SHA256 848bb8d32bb5335870493c91af5dfa7c35970fa2971e824db75cd283a071f582
MD5 64540563ce6cf859e4dd91e4ad94f3b8
BLAKE2b-256 016eeb2f7c84078239c7d175dde09cc3ff88c31e802219f5751bda0f30335384

See more details on using hashes here.

Supported by

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