(Add a documentation link) |
m (Add a test case) |
||
Line 73: | Line 73: | ||
<!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | ||
Edit .repo file in /etc/yum.repos.d/* and set an url that is not accessible. | |||
Case 1: | |||
No skip_if_unavailable in the repo file, in /etc/dnf/dnf.conf or overwritten from commandline using `--setopt`. | |||
Any command that requires available repositories like `dnf repoquery` will fail due to an error `Error: Failed to synchronize cache for repo '<repo_ID>'` | |||
Case 2: | |||
Set skip_if_unavailable=true in the repo file. | |||
Any command that requires available repositories like `dnf repoquery` will not fail due to missing metadata of the `<repo_id>` | |||
== User Experience == | == User Experience == |
Revision as of 08:17, 23 April 2019
Summary
Dnf team wants to change a default setting for the repo option skip_if_unavailable
to FALSE
.
Owner
- Name: Jaroslav Mracek
- Email: jmracek@redhat.com
- Release notes owner:
Current status
- Targeted release: Fedora 31
- Last updated: 2019-04-23
- Tracker bug: <will be assigned by the Wrangler>
Detailed Description
Dnf team wants to change a default setting for the repo option skip_if_unavailable
to FALSE
. The option is responsible for behavior when metadata of a repository is unavailable. When it is set to false, it will stop on the first unavailable repository with raising an error. The default behavior could be overwritten by a configuration of each repository or in dnf by configuration in /etc/dnf/dnf.conf.
The behavior is not new, because it was used already by YUM, and the behavior is really essential because all Fedora ropos are already shipped with skip_if_unavailable=FALSE
.
The change will be applied in libdnf library, and the changed behavior will be visible for all direct and indirect users of the library: dnf, microdnf, PackageKit, ... .
Benefit to Fedora
It should provide a better security because some Important updates from third-party repositories could be present in temporary unavailable repository, but user can easily overlook it during dnf update
because the issue is reported as a warning.
Scope
- Proposal owners:
- Backport the following upstream pull requests into the DNF stack on Fedora: https://github.com/rpm-software-management/libdnf/pull/701
- Other developers: N/A (not a System Wide Change)
- Release engineering: #Releng issue number (a check of an impact with Release Engineering is needed)
- List of deliverables: N/A (not a System Wide Change)
- Policies and guidelines: N/A
- Trademark approval: not needed for this Change
Upgrade/compatibility impact
N/A (not a System Wide Change)
How To Test
Edit .repo file in /etc/yum.repos.d/* and set an url that is not accessible.
Case 1:
No skip_if_unavailable in the repo file, in /etc/dnf/dnf.conf or overwritten from commandline using --setopt
.
Any command that requires available repositories like dnf repoquery
will fail due to an error Error: Failed to synchronize cache for repo '<repo_ID>'
Case 2:
Set skip_if_unavailable=true in the repo file.
Any command that requires available repositories like dnf repoquery
will not fail due to missing metadata of the <repo_id>
User Experience
Broken repositories are recognized early, enabling the users to act upon them by double-checking their repository configuration or filing bugs, instead of assuming no upgrades are available.
Dependencies
N/A (not a System Wide Change)
Contingency Plan
- Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
The change requires a merge and a release of the pull-request https://github.com/rpm-software-management/libdnf/pull/701
- Contingency deadline: N/A (not a System Wide Change)
Should be delivered before 2019-07-24.
- Blocks release? N/A (not a System Wide Change), Yes/No
No
- Blocks product? product
No
Documentation
https://dnf.readthedocs.io/en/latest/conf_ref.html
Update for documentation: https://github.com/rpm-software-management/dnf/pull/1358