Current users of PDC

release engineering - releng scripts

Repository: https://pagure.io/releng

Retired packages
  • scripts/block_retired.py

  • /rest_api/v1/component-branches/?name={1}&type={2}&active=false&page_size=100’

  • {1} - branch name, i.e. rawhide

  • {2} - type, i.e. rpm

Package unretirement
Package retirement
  • scripts/fedretire

  • results = pdc.get_paged(pdc[‘component-branches’], global_component=name, name=branch, type=NAMESPACES[namespace])

  • uses fedpkg for actual retirement

Critical path
  • scripts/get-critpath

  • pdc.get_paged(endpoint, critical_path=True, **kwargs)

Mass rebuild modules
  • /rest_api/v1/component-branch-slas/?page_size=100&branch_type=module&branch_active=1’

fedpkg

Repository: https://pagure.io/fedpkg

get_release_branches
  • fedpkg/utils.py

  • query_args = {‘fields’: [‘short’, ‘version’], ‘active’: True}

  • endpoint = ‘product-versions’

get_stream_branches
  • fedpkg/utils.py

  • query_args = {‘global_component’: package_name,’fields’: [‘name’, ‘active’]}

  • endpoint = ‘component-branches’

query_pdc
  • fedpkg/utils.py

  • uses requests

pungi

According to lubomir.sedlar@gmail.com:

“Pungi used to integrate with PDC in the past, but this support has been deprecated and dropped.”

fedoraqa - fedfind

Repository: https://pagure.io/fedora-qa/fedfind

pdc_query
  • /home/asaleh/work/fedfind/fedfind/helpers.py

  • light rest client with caching

Pungi4Release.metadata
  • fedfind/release.py

  • pdc_query(‘compose-images/{}’.format(self._pdccid))

Pungi4Release.previous_release
  • fedfind/release.py

  • pdc_query(‘releases’, {‘version’: self.release, ‘name’: self.dist})

Pungi4Release.get_package_nevras_pdc
  • fedfind/release.py

  • pdc_query(‘rpms’, [(‘compose’, self.cid), (‘arch’, ‘src’)])

Bodhi

Repository: https://github.com/fedora-infra/bodhi

pdc_api_get
  • simple wrapped-requests-library api client

  • /home/asaleh/work/bodhi/bodhi/server/util.py

get_critpath_components_from_pdc
  • /home/asaleh/work/bodhi/bodhi/server/util.py

fedscm-admin

We have dropped fedscm-admin in favor of toddlers. The endpoints used by it should be the same since it solves the same problem.

Repository: https://pagure.io/fedora-infra/toddlers/

fedscm_admin/pdc.py
  • get_global_component

  • new_global_component

  • get_branch

  • new_branch

  • get_sla

  • new_sla_to_branch

pagure

  • /rest_api/v1/component-branches/

  • to get retired packages

modulebuildservice

As of Fedora 39 we are dropping modules support. With Fedora 38 EOL we will drop MBS.

  • /rest_api/v1/component-branches/

  • to get end-of-life packages

  • based on ansible roles/mbs/common/files/fedora.json.productbion

mirrormanager scripts

  • /rest_api/v1/releases/

  • checks for currently active releases

  • roles/mirrormanager/backend/templates/handle_propagation.sh

  • roles/mirrormanager/crawler/files/check_propagation.sh

ODCS

no longer uses pdc

new hotness

  • /rest_api/v1/component-branches/

  • to get retired packages

fedora messaging

  • no integrations found

osbs client

  • no integrations found