This pull request includes significant updates to the docker.versions plugin, focusing on improving the handling of container image releases and the associated metadata. The changes include a major rework of the README for better clarity, updates to the plugin's XML and PHP files to support new labels and source types, and enhancements to the release fetching logic.
Documentation Updates:
README.md: Reworked the documentation to provide a clearer flow of release checks and added detailed descriptions for container labels.
Plugin Configuration:
docker.versions.plg: Updated the plugin configuration to support a comma-separated list for docker.versions.source and added new labels sourceType and imageSourceType.
These updates enhance the plugin's functionality by providing more flexible and detailed release tracking, improving documentation, and refactoring code for better maintainability.
This pull request includes significant updates to the
docker.versions
plugin, focusing on improving the handling of container image releases and the associated metadata. The changes include a major rework of the README for better clarity, updates to the plugin's XML and PHP files to support new labels and source types, and enhancements to the release fetching logic.Documentation Updates:
README.md
: Reworked the documentation to provide a clearer flow of release checks and added detailed descriptions for container labels.Plugin Configuration:
docker.versions.plg
: Updated the plugin configuration to support a comma-separated list fordocker.versions.source
and added new labelssourceType
andimageSourceType
.Code Enhancements:
src/docker.versions/usr/local/emhttp/plugins/docker.versions/server/models/Container.php
: Added new propertiessourceType
andimageSourceType
, and refactored the constructor to process labels using a new private methodprocessLabels
.src/docker.versions/usr/local/emhttp/plugins/docker.versions/server/services/Containers.php
: Refactored the release fetching logic into a new methodpullContainerReleases
and updatedgetChangeLogs
to use this method for better modularity and readability. [1] [2]Additional Changes:
src/docker.versions/usr/local/emhttp/plugins/docker.versions/server/models/Release.php
: Expanded the allowed types to include 'commit' for more comprehensive release tracking.src/docker.versions/usr/local/emhttp/plugins/docker.versions/server/models/Container.php
: Updated the type hint forgetRepositorySource
method toarray
for consistency.These updates enhance the plugin's functionality by providing more flexible and detailed release tracking, improving documentation, and refactoring code for better maintainability.