Research and categorize scripts related to package management, quality assurance, sync operations, and infrastructure for the upcoming scripts directory restructuring initiative.
Your assigned scripts (approximately 37 items):
Root Level Scripts:
Directories:
Look at the ticket for reference: https://pagure.io/releng/issue/12925
Please respond directly in this ticket by commenting for each script/directory using the following format:
Script Name: [script_name] ๐ Proposed Location: [path in new structure] ๐ Alternative: [alternative path if unsure] ๐ฏ Purpose: (Check if it is written within the script - Yes/No) ๐ Dependencies: - External repos: [list or "None"] - Other releng scripts: [list or "None"] - External services: [Koji, Bodhi, etc. or "None"] - Special permissions: [signing keys, etc. or "None"] ๐ญ Additional Notes: [any concerns or questions] Breaking changes: [describe potential issues]
Example Response: Script Name: find_FTBFS.py ๐ Proposed Location: quality-assurance/ftbfs/ ๐ Alternative: packages/maintenance/ ๐ฏ Purpose: Yes, (Identifies packages that fail to build from source and generates reports for maintainer action._ ๐ Dependencies: External repos: None Other releng scripts: None External services: Koji, Bugzilla API Special permissions: Bugzilla API access ๐ญ Additional Notes: Part of FTBFS workflow, should be grouped with related scripts Breaking changes: Cron job paths need updating
Research completion: [Date: 10th September, 2025] Review discussion: [Date: 10th September, 2025]
Post any questions as comments on this ticket. If you can't determine a script's purpose, mark it in your response and we'll discuss.
Response Guidelines - One comment per script/directory - keeps discussion organized - Use the exact format above - makes review easier - Be specific about dependencies - helps plan migration order - Flag unclear items - better to ask than guess - Consider grouping - if multiple scripts serve the same purpose, mention in notes
Also, I would suggest checking if the script is still relevant for today's scenarios.
Metadata Update from @jnsamyak: - Issue tagged with: investigation, medium-gain, medium-trouble
Metadata Update from @jnsamyak: - Custom field blocking adjusted to 12925,12931 - Issue marked as blocking: #12925 - Issue marked as blocking: #12931
Metadata Update from @humaton: - Issue assigned to amedvede
Script Name: block_retired.py ๐ Proposed Location: package/lifecycle ๐ Alternative: misc or removed ๐ฏ Purpose: No (it is used to block retired package for specific tags on koji) ๐ Dependencies: - External repos: https://docs.fedoraproject.org/en-US/infra/releng_misc_guide/sop_package_blocking/ it mentioned in doc - Other releng scripts: build-functions.sh, find_tagged_retired_epel_builds.py - External services: PDC, Koji - Special permissions: Koji Permission to block package on tag. ๐ญ Additional Notes: Script is still using PDC endpoint to get retired packages, probably we not using it and should remove it. Breaking changes: Since it uses PDC we probably didn't use this script since PDC decomition
It's not clear what external repos are in particular. Can we define a list? For now, I'm usingthe following list of repos as External repos, some of the repos weren't without commits for ages but still:
ansible ci-resultsdb-listener compose-tracker compose-utils container-blacklist distgit-bugzilla-sync failed-composes fedora-atomic fedora-comps fedora-infrastructure fedora-kickstarts fedora-kiwi-descriptions fedora-lorax-templates fedora-modular-repos fedora-module-defaults fedora-packager fedora-release fedora-repos fedora-scm-requests fedpkg-minimal flr forgejo-deployment generate_changelog howtos infra-docs infra-docs-fpo ipsilon-fedora koji-fedmsg-plugin koji-shadow-configs koji-site mailman-stack-maint mark-atomic-bad mash multiboot-media-creator pagure pagure-dist-git pungi pungi-fedora python-multilib python-munch releng-automation review_stats rpmautospec tag2distrepo toddlers workstation-ostree-config zuul
Also, do we understand under external services the services that depend on the script, or the opposite, because in the previous example. The script uses the Koji module, but Koji does not depend on this script. So, should I write Koji as an external service in that case?
external services
@jnsamyak clarified that external services is the list of services used within the script; on the other hand, external repos is a list of repos where the script is used
external repos
koji-fedmsg-plugin koji-shadow-configs koji-site container-blacklist rpmautospec python-multilib python-munch ci-resultsdb-listener mailman-stack-maint zuul tag2distrepo mark-atomic-bad fedpkg-minimal flr mash ipsilon-fedora multiboot-media-creator fedora-modular-repos
these are some of the repos i don't thing releng scripts have dependency on
Script Name: check_epel_deps.py ๐ Proposed Location: packages/epel/ ๐ Alternative: misc ๐ฏ Purpose: No (Identify Epel packages with broken dependencies and notify maintainers through email) ๐ Dependencies: - External repos: None - Other releng scripts: check_epel_deps.sh - External services: None - Special permissions: None ๐ญ Additional Notes: It generates a config header only for "epel-6" tree name.
Script Name: check_epel_deps.sh ๐ Proposed Location: packages/epel ๐ Alternative: misc ๐ฏ Purpose: No (It's a wrapper that calls check_epel_deps.py for specific use case with treename=epel-6 ) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: None - Special permissions: None ๐ญ Additional Notes: It won't work without check_epel_deps.py, because it's just a wrapper. Breaking changes: [describe potential issues]
I think those two can be removed, or they need to be modified, since it mainly dedicated to identify broken dependencies for epel-6 packages
Script Name: check-latest-build.py ๐ Proposed Location: builds/koji ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (Find packages where latest and highest NVR are different in a tag.) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: Kerberos auth ๐ญ Additional Notes: Should be renamed to use underscores instead of hyphens Breaking changes: Renaming or moving won't break anything
Script Name: check-testing-pre-GA.py ๐ Proposed Location: builds/koji ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (Find builds tagged in both fX-updates-testign and fX tags) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: None (working with kojihub api) ๐ญ Additional Notes: Need to be renamed Breaking changes: Everything will be fine
Script Name: check-upgrade-paths.py ๐ Proposed Location: builds/koji ๐ Alternative: utilities or remove ๐ฏ Purpose: Yes (A utility to examine a set of tags to verify upgrade paths for all the packages) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: None (kerberos) ๐ญ Additional Notes: Need to be renamed. Also seems to be outdated, the functionality is close to check-latest-build. Breaking changes: Nothing
Script Name: clean-amis.py ๐ Proposed Location: infrastructure/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to remove the nightly AMIs every 5 days.) ๐ Dependencies: - External repos: infra-docs-fpo, also mentioned that script is running as a cron job in fedora infrastructure, but I didn't find where - Other releng scripts: None - External services: Datagrepper, Pagure, AWS, fedfind - Special permissions: Pagure access token, aws secret access key ๐ญ Additional Notes: Should be renamed, also it says that it runs as a cron job within Fedora Infra Breaking changes: Potential cron job failure UPD: This script can be removed, now it handled by cloud-image-uploader
Script Name: clean-overrides.py ๐ Proposed Location: builds/koji ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to examine a buildroot override tag and compare contents to an updates tag.) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: None (kerberos) ๐ญ Additional Notes: Need to be renamed Breaking changes: Nothing
Script Name: close-old-ftbfs-bugz.sh ๐ Proposed Location: misc/ ๐ Alternative: utilities/ ๐ฏ Purpose: No (It closes bugzilla tickets with status NEW, if package in ticket has latest build date later that ticket creation) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji, Bugzilla - Special permissions: Need access to modify bugzilla tickets ๐ญ Additional Notes: need to be renamed Breaking changes: Nothing
Script Name: critpath.py ๐ Proposed Location: quality-assurance/critpath ๐ Alternative: ๐ฏ Purpose: No (Identify which packages are part of Fedora critpath and generate output with different options) ๐ Dependencies: - External repos: ansible, pungi-fedora, infra-docs-fpo - Other releng scripts: build-functions.sh - External services: Bodhi, DL fedora, coreOS, dnf - Special permissions: None ๐ญ Additional Notes: This is an important script, so refactoring must be carefull Breaking changes: Cron job path and pungi-fedora/nightly.sh path needs to be updated
Script Name: distgit-branch-unused.py ๐ Proposed Location: packages/distgit/ ๐ Alternative: packages/maintenance/, misc/, ๐ฏ Purpose: Yes (This script checks if a branch may be deleted.) ๐ Dependencies: - External repos: infra-docs-fpo, howtos - Other releng scripts: None - External services: Koji, Bodhi - Special permissions: None ๐ญ Additional Notes: Needs to be renamed. Breaking changes: requires updating the path in the doc
Script Name: fedmsg-functions.sh (can be removed since fedora-messaging.sh is implementing the same functionality, but with the modern fedora-messaging module) ๐ Proposed Location: infrastructure/messaging/ ๐ Alternative: utilities ๐ฏ Purpose: Yes (This is a bash shell script that is meant to be sourced by other scripts and aims to deliver functions common to sending messages to fedmsg[0] in rel-eng shell scripts.) ๐ Dependencies: - External repos: pungi-fedora - Other releng scripts: build-functions.sh, fedora-messaging-logger - External services: fedmsg - Special permissions: None ๐ญ Additional Notes: Needs to be renamed. Last time was updated 9 years ago, and it uses fedmsg so it might be outdated. Breaking changes: Paths in pungi-fedora and some other releng scripts need to be changed.
Script Name: fedora-messaging-logger ๐ Proposed Location: infrastructure/messaging/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (fedora-messaging replacement for fedmsg-logger) ๐ Dependencies: - External repos: ansible - Other releng scripts: fedora-messaging.sh - External services: fedora-messaging - Special permissions: None (might be the ability to send messages to the message bus, but the script itself does not require anything in terms of permissions) ๐ญ Additional Notes: Needs to be added file extension, in that case .py. It's a Fedora messaging compatibility wrapper Breaking changes: Paths need to be changed.
Script Name: fedora-messaging.sh ๐ Proposed Location: infrastructure/messaging/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (This is a bash shell script that is meant to be sourced by other scripts and aims to deliver functions common to sending messages to fedora-messaging[0] in rel-eng shell scripts.) ๐ Dependencies: - External repos: pungi-fedora - Other releng scripts: None - External services: fedora-messaging - Special permissions: None ๐ญ Additional Notes: Needs to be renamed. It's a copy of fedmsg-functions.sh, but it uses fedora-messaging-logger as a logger instead of fedmsg-logger Breaking changes: Paths need to be changed in pungi-fedora
Script Name: fedora-torrent-ini.py ๐ Proposed Location: release_process/torrents/ ๐ Alternative: misc/ ๐ฏ Purpose: No (Torrent metadata generator for Fedora) ๐ Dependencies: - External repos: infra-docs-fpo - Other releng scripts: None - External services: None - Special permissions: None ๐ญ Additional Notes: Needs to be renamed. It runs on a torrent server to generate torrent metadata Breaking changes: Nothing, but need to fix typo https://pagure.io/infra-docs-fpo/blob/master/f/modules/release_guide/pages/sop_torrent_releases.adoc#_91
``` I think those two can be removed, or they need to be modified, since it mainly dedicated to identify broken dependencies for epel-6 packages
check with Carl or Diego from epel team about this if stuck we can discuss more about this in our discussion call!
Script Name: clean-amis.py ๐ Proposed Location: infrastructure/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to remove the nightly AMIs every 5 days.) ๐ Dependencies: - External repos: infra-docs-fpo, also mentioned that script is running as a cron job in fedora infrastructure, but I didn't find where
Script Name: clean-amis.py
๐ Proposed Location: infrastructure/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to remove the nightly AMIs every 5 days.)
๐ Dependencies: - External repos: infra-docs-fpo, also mentioned that script is running as a cron job in fedora infrastructure, but I didn't find where
Look for that in ansible repository all crons are defined there, otherwise I would recommend asking Kevin!
Other releng scripts: None External services: Datagrepper, Pagure, AWS, fedfind Special permissions: Pagure access token, aws secret access key ๐ญ Additional Notes: Should be renamed, also it says that it runs as a cron job within Fedora Infra Breaking changes: Potential cron job failure ```
๐ญ Additional Notes: Should be renamed, also it says that it runs as a cron job within Fedora Infra Breaking changes: Potential cron job failure ```
Script Name: find_failures.py ๐ Proposed Location: release_process/mass_rebuilds/ ๐ Alternative: None ๐ฏ Purpose: Yes (A utility to discover failed builds in a given tag) ๐ Dependencies: - External repos: infra-docs-fpo - Other releng scripts: mass_rebuild_file_bugs.py - External services: Koji - Special permissions: None ๐ญ Additional Notes: Breaking changes: Paths change within releng repo
Script Name: find_FTBFS.py ๐ Proposed Location: utilities/ ๐ Alternative: builds/koji/ ๐ฏ Purpose: Yes (Find FTBFS packages) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: None (kerberos) ๐ญ Additional Notes: Just a script to find FTBFS packages Breaking changes: Nothing
Script Name: find_tagged_retired_epel_builds.py ๐ Proposed Location: utilities/ ๐ Alternative: misc or removed since it uses block_retired.py functionality, which using PDC ๐ฏ Purpose: Yes (Check if there are EPEL builds from retired packages still in the buildroot.) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: None ๐ญ Additional Notes: It might be outdated, last update 7 years ago, and it is still using block_retired.py functions that use PDC. Breaking changes: Nothing
Script Name: find_unblocked_orphans ๐ Proposed Location: packages/orphaned/ ๐ Alternative: release_process/mass_branching because it is mentioned in mass branching SOP and requires adoption ๐ฏ Purpose: Yes (A utility to find orphaned packages in pagure that are unblocked in koji and to show what may require those orphans) ๐ Dependencies: - External repos: infra-docs-fpo - Other releng scripts: everything inside orphaned-package-process dir - External services: Koji, dnf - Special permissions: Kerberos, but this script is part of bigger dir, where is also retire.py script which requires ๐ญ Additional Notes: Now in the releng repo, this script is a link to the script which is placed in a different location, so it should definitely be fixed. Breaking changes: Needs to move the whole dir
Script Name: find-bad-builds.py ๐ Proposed Location: builds/koji/utils ๐ Alternative: utilities ๐ฏ Purpose: Yes (template for finding builds that meet some time/buildroot component critera. Edit to suit.) Needs to fix typo in description. ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: None (kerberos) ๐ญ Additional Notes: Needs to be renamed. It's a template to get builds by specific criteria. Not sure if it's used or not, last update was 2 years ago, but it's just adding gssapi_login as a part of koji authentication. Breaking changes: Nothing
Script Name: find-hidden-packages.py ๐ Proposed Location: builds/koji ๐ Alternative: utilities/ ๐ฏ Purpose: No (The name does not say much about this script, but basically it checks the difference in package versions between builds in parent and child tags) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji, rpm - Special permissions: None (Kerberos) ๐ญ Additional Notes: Needs to be renamed. We have a lot of scripts that are doing close enough functionality, so I guess part of them can be grouped up inside 1 script with different behavior based on arguments. Otherwise, it is difficult to follow all the scripts with close functionality, especially when most of them are not used anywhere else and are not even mentioned in the documentation. Breaking changes: Nothing
Script Name: ftbfs_weekly_reminder.py ๐ Proposed Location: utilities/ ๐ Alternative: misc/ ๐ฏ Purpose: No (Identify Bugzilla FYBFS bugs and notify maintainers as a part of cron job) ๐ Dependencies: - External repos: ansible - Other releng scripts: None - External services: Bugzilla - Special permissions: Bugzilla API key ๐ญ Additional Notes: This script is running on the server as a cron job, so moving it won't break anything. Breaking changes: Nothing.
Script Name: get_retired_packages.sh ๐ Proposed Location: packages/ ๐ Alternative: utilities/ ๐ฏ Purpose: No (But name saying exactly what it does.) ๐ Dependencies: - External repos: ansible, infra-docs-fpo - Other releng scripts: None - External services: pkgs machine - Special permissions: access to the packages machine since it is fetching packages from /stv/git/rpms ๐ญ Additional Notes: Breaking changes: Paths need to be modified in the cron job and in the documentation for the final freeze
Script Name: isolate-tag.py ๐ Proposed Location: builds/koji/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to tag all inherited builds into a specific koji tag) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: kerberos ๐ญ Additional Notes: Needs to be renamed. Breaking changes: Nothing
Script Name: mass-tag.py ๐ Proposed Location: builds/koji ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to tag rebuilt packages) ๐ Dependencies: - External repos: infra-docs-fpo - Other releng scripts: None - External services: Koji, rmp - Special permissions: koji admin permissions ๐ญ Additional Notes: Needs to be renamed. Breaking changes: Nothing, maybe update in mass rebuild doc
Script Name: need-rebuild.py ๐ Proposed Location: release_process/mass_rebuilds/ ๐ Alternative: ๐ฏ Purpose: Yes (A utility to discover packages that need a rebuild) ๐ Dependencies: - External repos: infra-docs-fpo - Other releng scripts: None - External services: Koji - Special permissions: None (kerberos) ๐ญ Additional Notes: Needs to be renamed. Breaking changes: Change paths in mass rebuild doc
Script Name: prune-tag.py ๐ Proposed Location: builds/koji/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to prune all but the latest build in a given tag) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: Kerberos ๐ญ Additional Notes: Needs to be renamed. Breaking changes: Nothing
Script Name: secondary-mash-updates ๐ Proposed Location: builds/compose ๐ Alternative: sync/secondary/ ๐ฏ Purpose: No (Creation and synchronization of update repositories for non-x86 architectures.) ๐ Dependencies: - External repos: fedora-comps - Other releng scripts: None - External services: Koji - Special permissions: Access to the Koji compose machine. ๐ญ Additional Notes: Miss file extension, in that case .sh Breaking changes: Nothing
Script Name: secondary-sync.py ๐ Proposed Location: sync/secondary/ ๐ Alternative: [alternative path if unsure] ๐ฏ Purpose: Yes (A command line tool to sync all fedora secondary arches from the hubs to a central mirror) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji, fedmsg, rpm - Special permissions: Access to the compose machine ๐ญ Additional Notes: Needs to be renamed. Also it uses fedmsg for notifying so it seems to be outdated. Not sure what permissions it requires. Breaking changes: Nothing
Script Name: srpm-excluded-arch.py ๐ Proposed Location: utilities/ ๐ Alternative: packages/ ๐ฏ Purpose: Yes (is a tool to give you a list of package names that are excluded on the given arches. access to a srpm tree is needed) ๐ Dependencies: - External repos: None - Other releng scripts: build-functions.sh, build-current.py - External services: rpm - Special permissions: access to pkgs machine ๐ญ Additional Notes: Needs to be renamed. Breaking changes: Needs to modify path in build-functions.sh script
Script Name: sync-blocked-primary.py ๐ Proposed Location: sync/secondary/ ๐ Alternative: sync/primary/ ๐ฏ Purpose: Yes (A utility to sync blocked packages in primary koji to a secondary arch for a given tag) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: Koji admin rights to block unblock pacakges. ๐ญ Additional Notes: Needs to be renamed. Breaking changes: Nothing
Script Name: sync-tagged-primary.py ๐ Proposed Location: sync/secondary/ ๐ Alternative: sync/primary ๐ฏ Purpose: Yes (A utility to sync tagged packages in primary koji to a secondary arch) ๐ Dependencies: - External repos: None - Other releng scripts: sync-tagged-primary (bash script that runs this script with specific options) - External services: Koji, rpm - Special permissions: Koji admin (kerberos) ๐ญ Additional Notes: Needs to be renamed. Breaking changes: Nothing.
Script Name: sync-tagged-primary ๐ Proposed Location: sync/secondary ๐ Alternative: sync/primary ๐ฏ Purpose: No (It's a outdated wrapper for sync-tagged-primary.py script) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: None - Special permissions: same as Python script ๐ญ Additional Notes: Needs to be renamed. File extension needs to be added. Breaking changes: Nothing needs to be updated if it is still in use.
Script Name: distgit/give-package.py ๐ Proposed Location: packages/distgit ๐ Alternative: ๐ฏ Purpose: Yes (Give a package in pagure-on-dist-git from one user to another) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: pagure distgit - Special permissions: pagure api token ๐ญ Additional Notes: Needs to be renamed. Breaking changes: When move should be moved with distgit/utilities.py
Script Name: distgit/orphan-all-packages.py ๐ Proposed Location: packages/distgit/ ๐ Alternative: ๐ฏ Purpose: Yes (Orphan all packages of a given set of users.) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Pagure distgit - Special permissions: Pagure api token ๐ญ Additional Notes: Needs to be renamed. Breaking changes: When move should be moved with distgit/utilities.py. It will be rewritten during the forge move.
Script Name: distgit/orphan-listed-packages.py ๐ Proposed Location: packages/distgit/ ๐ Alternative: ๐ฏ Purpose: Yes (This script is useful to bulk orphan listed packages.) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Pagure distgit - Special permissions: Pagure API token ๐ญ Additional Notes: Needs to be renamed. Breaking changes: It will be rewritten during the forge move since it works with pagure.
Script Name: distgit/retire_packagers.py ๐ Proposed Location: packages/distgit/ ๐ Alternative: ๐ฏ Purpose: Yes (This script queries dist-git for all the packages a given packager maintains, has commit or watches.) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Pagure distgit - Special permissions: Pagure api token ๐ญ Additional Notes: Breaking changes: Might be rewritten during the forge move.
Script Name: distgit/utilities.py ๐ Proposed Location: packages/distgit/ ๐ Alternative: ๐ฏ Purpose: Yes (Utilities for manipulating dist-git (pagure).) ๐ Dependencies: - External repos: None - Other releng scripts: distgit/give-package.py, distgit/orphan-all-packages.py - External services: Pagure distgit - Special permissions: pagure api token ๐ญ Additional Notes: It's a utility module, which does not run as a script but is imported into other scripts instead. Breaking changes: needs to be in the same directory with other distgit scripts.
Script Name: fesco/sig-policy/sig_policy.py ๐ Proposed Location: infrastructure/fesco/sig-policy/ ๐ Alternative: ๐ฏ Purpose: Yes (This script enacts the FESCo SIG Policy as documented here: https://docs.fedoraproject.org/en-US/fesco/SIG_policy/) ๐ Dependencies: - External repos: ansible, infra-docs-fpo - Other releng scripts: None - External services: fedpq, pagure - Special permissions: pagure api token ๐ญ Additional Notes: I'm not sure if the directory name should follow the same convention as a Python script name. Breaking changes: Paths in Ansible repos need to be adjusted.
Script Name: ftbfs-fti/follow-policy.py ๐ Proposed Location: packages/maintenance/ftbfs-fti/ ๐ Alternative: infrastructure/ftbfs-fti/ ๐ฏ Purpose: No (Automatically detects packages with installation issues, creates Bugzilla tickets, and follows FESCo's policy for handling unmaintained packages.) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Bugzilla - Special permissions: bugzilla token ๐ญ Additional Notes: Needs to be renamed. Breaking changes: It uses Jinja templates that are in same folder and should be moved with the script.
Script Name: misc/failed_composes_cleanup ๐ Proposed Location: misc/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to clean all the older issues in the releng/failed-compose tracker.) ๐ Dependencies: - External repos: infra-docs=fpo - Other releng scripts: None - External services: Pagure - Special permissions: Pagure API token. ๐ญ Additional Notes: Breaking changes: Paths in SOP doc need to be modified.
Script Name: misc/ga-cleanup ๐ Proposed Location: misc/ ๐ Alternative: builds/koji/ ๐ฏ Purpose: Yes (script to print builds that are tagged both into the GA tag and updates-testing) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji - Special permissions: None ๐ญ Additional Notes: File extension needs to be added, in that case .sh. Needs to be renamed. Breaking changes: Nothing
Script Name: misc/rebuild ๐ Proposed Location: misc/ ๐ Alternative: builds/koji ๐ฏ Purpose: Yes (Script to build re-bootstrap pkgs for eg. glibc ABI changes and prepare substitution list for koji-shadow) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: Koji, rpm, fedpkg - Special permissions: build permission ๐ญ Additional Notes: File extension needs to be added, in that case .sh. Not sure if it's still in use Breaking changes: Nothing
Script Name: odcs/odcs-private-copose.py ๐ Proposed Location: builds/compose/odcs/ ๐ Alternative: infrastructure/odcs/ ๐ฏ Purpose: Yes (This is used to generate private composes using ODCS) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: ODCS - Special permissions: odcs token, sigkey ๐ญ Additional Notes: Needs to be renamed. Breaking changes: Nothing. UPD: should be removed
Script Name: odcs/odcs-token.py ๐ Proposed Location: builds/compose/odcs/ ๐ Alternative: infrastructure/odcs/ ๐ฏ Purpose: Yes (This is used to generate a token needed to run odcs composes ) ๐ Dependencies: - External repos: None - Other releng scripts: None - External services: openidc - Special permissions: None ๐ญ Additional Notes: Needs to be renamed. Breaking changes: It'd be better to put it in the same directory as the previous script. UPD: Should be removed
Script Name: orphaned-packages-process/all_files ๐ Proposed Location: packages/lifecycle/orphaned-packages-process/ ๐ Alternative: packages/orphaned/orphaned-packages-process/ ๐ฏ Purpose: No (All scripts and files inside this dir is a part of one SOP, which identifies orphaned packages and retires them afterward.) ๐ Dependencies: - External repos: infra-docs-fpo - Other releng scripts: all inside orphaned-packages-process dir - External services: bugzilla, koji, dnf - Special permissions: access to the machine where koji and python-fedora are installed. Also need access to modify bugzilla tickets. ๐ญ Additional Notes: This dir should be moved as it is under a new dir. Also this functionality can be implemented as a toddler plugin, so it triggers automatically. Breaking changes: Paths in documentation.
``` I think those two can be removed, or they need to be modified, since it mainly dedicated to identify broken dependencies for epel-6 packages check with Carl or Diego from epel team about this if stuck we can discuss more about this in our discussion call!
I will update the comment associated with the script when I get a response.
Script Name: clean-amis.py ๐ Proposed Location: infrastructure/ ๐ Alternative: utilities/ ๐ฏ Purpose: Yes (A utility to remove the nightly AMIs every 5 days.) ๐ Dependencies: - External repos: infra-docs-fpo, also mentioned that script is running as a cron job in fedora infrastructure, but I didn't find where Look for that in ansible repository all crons are defined there, otherwise I would recommend asking Kevin!
This script can be removed, I updated comment
Metadata Update from @amedvede: - Issue untagged with: medium-gain, medium-trouble - Issue tagged with: high-gain, high-trouble
for branching/ and torrent-generator/ dirs, my +1 to Patrik's investigation
Oh, please know that in the recent PRs, the odcs is also retired, there are no need to have them in the new structure they should be considered as remove
Updated comments! Thanks for clarification
Metadata Update from @jnsamyak: - Issue close_status updated to: Fixed - Issue status updated to: Closed (was: Open)