Repository navigation
fix: detect updates when GitHub repo is private - #11
Merged
Merged
Conversation
- Add Docker Hub fallback when GitHub versions URL fails (404/500) - Change default versions_url to public devforge-store repo - Filter Docker Hub tags to plain semver (ignore api-*, sha-*, latest) - Add comprehensive logging for version check failures - Add unit tests for Docker Hub fallback scenarios - Document private repo workaround in VERSIONING.md Fixes update detection on https://web.briseteia.me/settings/updates/ Co-authored-by: Mathieu JESER <bobdivx@users.noreply.github.com>
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problème
L'interface de mise à jour sur https://web.briseteia.me/settings/updates/ affiche "À jour 4.1.3" alors que Docker Hub contient
bobdivx/devforge:4.1.4et que le fichierbackend/versions.jsonsur GitHub main est à4.1.4.La détection échoue car
CheckForUpdatesJobtente de récupérer :Cette URL retourne 404 (repo privé). Si la réponse HTTP échoue, le job ne fait rien silencieusement, donc
new_version_availablerestefalse.Solution
1. CheckForUpdatesJob (
backend/app/Jobs/CheckForUpdatesJob.php)versions_urlen premierhttps://hub.docker.com/v2/repositories/bobdivx/devforge/tags?page_size=100^[0-9]+\.[0-9]+\.[0-9]+$) comme4.1.4(ignoreapi-4.1.4,sha-*,latest)version_compareversionsavecdevforge.versionetcoolify.v4.version, puis réutilise la logique existante2. Default versions_url (
backend/config/constants.php)'https://raw.githubusercontent.com/bobdivx/devforge-store/main/versions.json'devforge-storehéberge maintenantversions.jsonenv('VERSIONS_URL', ...)pour permettre au NAS de surcharger3. Documentation (
docs/VERSIONING.md)versions.jsonpublic (devforge-store) et les tags Docker Hub en fallback4. Validation
Updates.phpappelleCheckForUpdatesJob::dispatchSync()— aucune modification nécessaire, il utilisera automatiquement le nouveau code avec fallbackapi-*,sha-*,latest)Tests
Notes
bobdivx/devforgepublicconstants.coolify.helper_image/ env s'il est déjàbobdivx/devforge