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.2a1.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file neon-phal-plugin-core-updater-1.2.2a1.tar.gz.

File metadata

File hashes

Hashes for neon-phal-plugin-core-updater-1.2.2a1.tar.gz
Algorithm Hash digest
SHA256 056f553dc35f0cd56d0dcc660e68c5e153fde49c22bf7dc757ff286f090f0af6
MD5 17eb2113728d888653687cfd17b13410
BLAKE2b-256 1f05cc58f8fe4f77288abedc0f4d60ca9efd4266876e20cff09e5728f8bc260d

See more details on using hashes here.

File details

Details for the file neon_phal_plugin_core_updater-1.2.2a1-py3-none-any.whl.

File metadata

File hashes

Hashes for neon_phal_plugin_core_updater-1.2.2a1-py3-none-any.whl
Algorithm Hash digest
SHA256 2560b12cc2e084f2ea18951c0bc57aa005808b79b530a407336c3d808a6e8b1b
MD5 8655da0e4edb6c35974999a143459b97
BLAKE2b-256 d43911813101b9430fe1b4dd111b6d0b97aabcd894797bd68ac3613ca294230d

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