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

Uploaded Source

Built Distribution

File details

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

File metadata

File hashes

Hashes for neon-phal-plugin-core-updater-1.2.1a1.tar.gz
Algorithm Hash digest
SHA256 3877937df93134b41d12352526c408678d3113b227deecc87ba6968df409fe89
MD5 45c33dcd3aa45b0fad4da9efdd88f88a
BLAKE2b-256 d49a6582c9a692eff7249205a086ba7f98b5ad74c2d969aba7b883830cc8aa3e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for neon_phal_plugin_core_updater-1.2.1a1-py3-none-any.whl
Algorithm Hash digest
SHA256 291bc55ea6ca8c195c8ce8596b499f0765c48a601ab324b120c1319827137b73
MD5 c9c340615aef5b6d47acecf3c7a2fe48
BLAKE2b-256 96570327b0a9350e82c28c55898f743c794bf34b03fedd86ad1e82f1efea4fc2

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