Repository navigation
fix(setup): reuse verified Java after Behat config reset - #9379
Conversation
Use the versioned JRE directory when java_path is absent so SHA-512 verification checks the same files as a configured installation. Preserve integrity verification and add regression coverage for missing config, tampering, missing files, architectures, and distros. Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
Stub the AppData folder lookup to the same vfsStream release used by the signed-hash fixture. Keep real signature verification and its negative cases. Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
|
/backport to stable35 |
|
/backport to stable34 |
|
/backport to stable33 |
|
The backport to # Switch to the target branch and update it
git checkout stable33
git pull origin stable33
# Create the new backport branch
git checkout -b backport/9379/stable33
# Cherry pick the change from the commit sha1 of the change against the default branch
# This might cause conflicts, resolve them
git cherry-pick 2a0708a4 6686a74e dcd41271
# Push the cherry pick commit to the remote repository and open a pull request
git push origin backport/9379/stable33Error: Failed to check for changes with origin/stable33: No changes found in backport branch Learn more about backports at https://docs.nextcloud.com/server/stable/go.php?to=developer-backports. |
|
The backport to # Switch to the target branch and update it
git checkout stable34
git pull origin stable34
# Create the new backport branch
git checkout -b backport/9379/stable34
# Cherry pick the change from the commit sha1 of the change against the default branch
# This might cause conflicts, resolve them
git cherry-pick 2a0708a4 6686a74e dcd41271
# Push the cherry pick commit to the remote repository and open a pull request
git push origin backport/9379/stable34Error: Failed to check for changes with origin/stable34: No changes found in backport branch Learn more about backports at https://docs.nextcloud.com/server/stable/go.php?to=developer-backports. |
|
The backport to # Switch to the target branch and update it
git checkout stable35
git pull origin stable35
# Create the new backport branch
git checkout -b backport/9379/stable35
# Cherry pick the change from the commit sha1 of the change against the default branch
# This might cause conflicts, resolve them
git cherry-pick 2a0708a4 6686a74e dcd41271
# Push the cherry pick commit to the remote repository and open a pull request
git push origin backport/9379/stable35Error: Failed to check for changes with origin/stable35: No changes found in backport branch Learn more about backports at https://docs.nextcloud.com/server/stable/go.php?to=developer-backports. |
Backport of LibreSign#9379, adapted to the stable installation service. Preserve signed hash validation when AppConfig no longer contains java_path. Add regression tests for distro, architecture, valid files, and tampering. Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
Backport of LibreSign#9379, adapted to the stable installation service. Preserve signed hash validation when AppConfig no longer contains java_path. Add regression tests for distro, architecture, valid files, and tampering. Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
Summary
java_pathhas been cleared by the Behat per-scenario reset.InstallService::JAVA_URL_PATH_NAMEinstead of the obsolete hard-coded JRE version.Rationale
Each Behat scenario calls
libresign:developer:reset --all, which deletesjava_path.SetupInstallPathResolver::resolveJava()previously selected the.../javaparent without this config, whereas the signed file hashes are relative to.../java/jdk-<version>-jre. A valid installed Java release could therefore fail integrity verification and trigger unnecessary re-download/extraction.Validation
All 21 GitHub Actions workflows for head
dcd41271c14abe377185ee4848bd15cdc1ba4e43completed successfully, including:An isolated synthetic reproduction demonstrated that the old resolver rejected a valid installed release after clearing
java_path, while the corrected path verifies valid content and still rejects tampered or missing files.Scope
No changes to
libresign:developer:reset, scenario isolation, database configuration, or CI database versions.Backports
Automated backports could not apply directly because stable releases use the older
SignSetupService::getInstallPath()implementation. Adapted backports:stable35)stable34)stable33)Merged into
mainon November 7, 2026.