From Fedora Project Wiki

(Modify repoinfo instructions ... 'f15-updates' doesn't exist until release day)
(Taskotron EOL)
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{header|qa}}
{{header|qa}}


With each new development release of Fedora (aka [[Releases/Branched|Branched]]), new package repositories are available for testing.  This page describes the changes to the AutoQA {{filename|repoinfo.conf}} file needed to accommodate a new release of Fedora.
{{admon/caution|Taskotron development reached end of life|[[Taskotron]] has been sunset in Fedora Infrastructure. It is no longer running and no longer being developed. You can use these wiki pages to learn about its history, but please be aware that the information is no longer actual.}}
 
With each new development release of Fedora (aka [[Releases/Branched|Branched]]), new package repositories are available for testing.  This page describes the changes to the Taskotron {{filename|yumrepoinfo.conf}} file needed to accommodate a new release of Fedora.


= Introduction =
= Introduction =
Line 7: Line 9:
Leading up to each release, the [[Releases/Rawhide|rawhide]] development stream is branched.  Branching results in two parallel development streams, called [[Releases/Rawhide|rawhide]] and [[Releases/Branched|branched]].  As always, ''rawhide'' continues to track the latest and greatest development intended for future releases of Fedora.  While, ''branched'' is intended for stabilization of the upcoming Fedora release.
Leading up to each release, the [[Releases/Rawhide|rawhide]] development stream is branched.  Branching results in two parallel development streams, called [[Releases/Rawhide|rawhide]] and [[Releases/Branched|branched]].  As always, ''rawhide'' continues to track the latest and greatest development intended for future releases of Fedora.  While, ''branched'' is intended for stabilization of the upcoming Fedora release.


The branch date can be found on the [http://poelstra.fedorapeople.org/schedules/f-{{FedoraVersion|number|next}}/f-{{FedoraVersion|number|next}}-releng-tasks.html release engineering schedule].
The branch date can be found in the [[Releases#Development|release schedule]].


= When to Update =
= When to Update =


The {{filename|repoinfo.conf}} file will need to change whenever a new package repository is available, the location of an existing repository changes or we no longer want to support an existing repository.  The most common scenarios where this happens are:
The {{filename|yumrepoinfo.conf}} file will need to change whenever a new package repository is available, the location of an existing repository changes or we no longer want to support an existing repository.  The most common scenarios where this happens are:
# When Fedora branches to stabilize the upcoming Fedora release
# When Fedora branches to stabilize the upcoming Fedora release
# When Fedora is released
# When Fedora is released
# When Fedora support has ended (it's EOL'd)
# When Fedora support has ended (it's EOL'd)


The AutoQA team will be notified by the [[ReleaseEngineering|release engineering]] or [[Infrastructure|infrastructure]] teams when either of the above events occur.  An AutoQA TRAC ticket will be filed to request the {{filename|repoinfo.conf}} changes (see [[Mass_Branching_SOP#Update_AutoQA_repoinfo.conf]], [[Release_Infrastructure_SOP#Step_5_.28AutoQA_repoinfo.conf.29]] and [[End_of_life_SOP#AutoQA]]).
The Taskotron team will be notified by the [[ReleaseEngineering|release engineering]] or [[Infrastructure|infrastructure]] teams when either of the above events occur.  A Taskotron ticket will be filed to request the {{filename|yumrepoinfo.conf}} changes (see [[Mass Branching SOP#Taskotron]], [http://infrastructure.fedoraproject.org/infra/docs/fedora-releases.txt Infra Releases SOP] and [[End of life SOP#Taskotron_tasks]]).


= What To Update =
= What To Update =
Line 25: Line 27:


<ol>
<ol>
<li>Update the the <code>[rawhide]</code> configuration.  Change the value of <code>tag</code> to the koji tag for the next release.  For example, if branching for {{FedoraVersion|long|next}}, you would set <code>tag - dist-f{{FedoraVersion|number|next2}}</code> as shown below:
<li>Update the the <code>[rawhide]</code> configuration.  Change the value of <code>tag</code> to the koji tag for the next release.  For example, if branching for {{FedoraVersion|long|next}}, you would set <code>tag = f{{FedoraVersion|number|next2}}</code> as shown below:
{{#tag:pre|
{{#tag:pre|
[rawhide]
[rawhide]
arches = i386, x86_64
url = %(rawhideurl)s
path = development/rawhide
path = development/rawhide
url = %(rawhideurl)s
tag = f{{FedoraVersion|number|next2}}
tag = dist-f{{FedoraVersion|number|next2}}
release_status = rawhide
collection_name = devel
}}</li>
}}</li>
<li>Create new config sections for the current branch.  A section will be needed for each of the package repositories available.  For example, if branching for {{FedoraVersion|long|next}}, you would add sections for <code>f{{FedoraVersion||next}}</code> and <code>f{{FedoraVersion||next}}-updates-testing</code>.  See the example below.
<li>Create new config sections for the current branch.  A section will be needed for each of the package repositories available.  For example, if branching for {{FedoraVersion|long|next}}, you would use the configuration listed below.  
{{#tag:pre|
{{#tag:pre|
[f{{FedoraVersion||next}}]
[f{{FedoraVersion||next}}]
url = %(rawhideurl)s
path = development/{{FedoraVersion||next}}
path = development/{{FedoraVersion||next}}
url = %(rawhideurl)s
tag = f{{FedoraVersion||next}}
collection_name = F-{{FedoraVersion||next}}
release_status = branched
composes = yes
 
[f{{FedoraVersion||next}}-updates]
url = %(updatesurl)s
path = {{FedoraVersion||next}}
parent = f{{FedoraVersion||next}}
tag = f{{FedoraVersion||next}}-updates


[f{{FedoraVersion||next}}-updates-testing]
[f{{FedoraVersion||next}}-updates-testing]
url = %(updatesurl)s
path = testing/{{FedoraVersion||next}}
path = testing/{{FedoraVersion||next}}
url = %(updatesurl)s
parent = f{{FedoraVersion||next}}-updates
parents = f{{FedoraVersion||next}}-updates, f{{FedoraVersion||next}}
tag = f{{FedoraVersion||next}}-updates-testing
collection_name = F-{{FedoraVersion||next}}
}}</li>
}}</li></ol>
<li>If primary or alternate architectures changed for Rawhide/Branched, make sure to locate <code>primary_arches</code> and <code>alternate_arches</code> keys in the <code>[DEFAULT]</code> section and update them to match Rawhide status. Then include them in any other section for which the default value is not correct (the value in a particular section will override the value from the default section).</li>
</ol>


== New Fedora Release ==
== New Fedora Release ==
Line 53: Line 62:
When a new release of Fedora is available, the following changes are required.
When a new release of Fedora is available, the following changes are required.


<ol><li>''Update'' the <code>f{{FedoraVersion||current}}</code> section for the just released repository.  The values for <code>path</code> and <code>url</code> will need to be updated to reflect current values.
<ol><li>''Update'' the existing configuration for the recently released version of Fedora.  For example, if {{FedoraVersion|long|current}} was just released, you would need to update the values for <code>path</code> and <code>url</code> as listed below.
{{#tag:pre|
{{#tag:pre|
[f{{FedoraVersion||current}}]
[f{{FedoraVersion|number|current}}]
path = {{FedoraVersion||current}}
url = %(goldurl)s
url = %(goldurl)s
collection_name = F-{{FedoraVersion||current}}
path = {{FedoraVersion|number|current}}
}}</li>
tag = f{{FedoraVersion|number|current}}
<li>''Add'' a section for the <code>f{{FedoraVersion||current}}-updates</code> repository.  See the example below for reference.
release_status = stable
{{#tag:pre|
[f{{FedoraVersion||current}}-updates]
path = {{FedoraVersion||current}}
url = %(updatesurl)s
parents = f{{FedoraVersion||current}}
collection_name = F-{{FedoraVersion||current}}
}}</li>
}}</li>
</ol>
</ol>
Line 77: Line 79:
{{#tag:pre|
{{#tag:pre|
[f{{FedoraVersion||previous2}}]
[f{{FedoraVersion||previous2}}]
isactiverelease = yes
url = %(goldurl)s
path = {{FedoraVersion||previous2}}
path = {{FedoraVersion||previous2}}
url = %(goldurl)s
tag = f{{FedoraVersion||previous2}}
collection_name = F-{{FedoraVersion||previous2}}
release_status = stable


[f{{FedoraVersion||previous2}}-updates]
[f{{FedoraVersion||previous2}}-updates]
url = %(updatesurl)s
path = {{FedoraVersion||previous2}}
path = {{FedoraVersion||previous2}}
url = %(updatesurl)s
parent = f{{FedoraVersion||previous2}}
parents = f{{FedoraVersion||previous2}}
tag = f{{FedoraVersion||previous2}}-updates
collection_name = F-{{FedoraVersion||previous2}}


[f{{FedoraVersion||previous2}}-updates-testing]
[f{{FedoraVersion||previous2}}-updates-testing]
url = %(updatesurl)s
path = testing/{{FedoraVersion||previous2}}
path = testing/{{FedoraVersion||previous2}}
url = %(updatesurl)s
parent = f{{FedoraVersion||previous2}}-updates
parents = f{{FedoraVersion||previous2}}-updates, f{{FedoraVersion||previous2}}
tag = f{{FedoraVersion||previous2}}-updates-testing
collection_name = F-{{FedoraVersion||previous2}}
}}</li></ol>
}}</li></ol>


= How to Update =
Please use <code>git</code> to generate and submit patches for review by the AutoQA development team.  For information on AutoQA patch, please see [[AutoQA_Patch_Process#Patch_submission]]
[[Category:AutoQA]]


{{admon/important|Updating {{filename|repoinfo.conf}} manually|When manually updating the {{filename|repoinfo.conf}} file on a running AutoQA instance, it is important to update the file on '''both''' the server and ''all'' test clients.  Failing to update the configuration file on the clients will result in incorrect repository information when tests are executed on clients.}}
[[Category:Taskotron]] [[Category:AutoQA]]

Latest revision as of 14:50, 7 May 2020

QA.png


Stop (medium size).png
Taskotron development reached end of life
Taskotron has been sunset in Fedora Infrastructure. It is no longer running and no longer being developed. You can use these wiki pages to learn about its history, but please be aware that the information is no longer actual.

With each new development release of Fedora (aka Branched), new package repositories are available for testing. This page describes the changes to the Taskotron yumrepoinfo.conf file needed to accommodate a new release of Fedora.

Introduction

Leading up to each release, the rawhide development stream is branched. Branching results in two parallel development streams, called rawhide and branched. As always, rawhide continues to track the latest and greatest development intended for future releases of Fedora. While, branched is intended for stabilization of the upcoming Fedora release.

The branch date can be found in the release schedule.

When to Update

The yumrepoinfo.conf file will need to change whenever a new package repository is available, the location of an existing repository changes or we no longer want to support an existing repository. The most common scenarios where this happens are:

  1. When Fedora branches to stabilize the upcoming Fedora release
  2. When Fedora is released
  3. When Fedora support has ended (it's EOL'd)

The Taskotron team will be notified by the release engineering or infrastructure teams when either of the above events occur. A Taskotron ticket will be filed to request the yumrepoinfo.conf changes (see Mass Branching SOP#Taskotron, Infra Releases SOP and End of life SOP#Taskotron_tasks).

What To Update

New Fedora Branch

When a new Fedora branch release is available, the following changes are required.

  1. Update the the [rawhide] configuration. Change the value of tag to the koji tag for the next release. For example, if branching for Fedora 40, you would set tag = f41 as shown below:
    [rawhide]
    url = %(rawhideurl)s
    path = development/rawhide
    tag = f41
    release_status = rawhide
    
  2. Create new config sections for the current branch. A section will be needed for each of the package repositories available. For example, if branching for Fedora 40, you would use the configuration listed below.
    [f40]
    url = %(rawhideurl)s
    path = development/40
    tag = f40
    release_status = branched
    
    [f40-updates]
    url = %(updatesurl)s
    path = 40
    parent = f40
    tag = f40-updates
    
    [f40-updates-testing]
    url = %(updatesurl)s
    path = testing/40
    parent = f40-updates
    tag = f40-updates-testing
    
  3. If primary or alternate architectures changed for Rawhide/Branched, make sure to locate primary_arches and alternate_arches keys in the [DEFAULT] section and update them to match Rawhide status. Then include them in any other section for which the default value is not correct (the value in a particular section will override the value from the default section).

New Fedora Release

When a new release of Fedora is available, the following changes are required.

  1. Update the existing configuration for the recently released version of Fedora. For example, if Fedora 39 was just released, you would need to update the values for path and url as listed below.
    [f39]
    url = %(goldurl)s
    path = 39
    tag = f39
    release_status = stable
    

Fedora support ended

When a Fedora release reaches its End of Life (EOL), the following changes are required.

  1. Remove the sections corresponding to the EOL'd release. For example, when Fedora 37 reaches EOL, the following sections would be removed:
    [f37]
    url = %(goldurl)s
    path = 37
    tag = f37
    release_status = stable
    
    [f37-updates]
    url = %(updatesurl)s
    path = 37
    parent = f37
    tag = f37-updates
    
    [f37-updates-testing]
    url = %(updatesurl)s
    path = testing/37
    parent = f37-updates
    tag = f37-updates-testing