Apt/NewPostgreSQLVersion

From PostgreSQL wiki

< Apt
Jump to: navigation, search

Adding a new PostgreSQL version to the repository

  • Create a new bzr branch on bzr.debian.org
  • Check if apt.postgresql.org/jenkins/generate-pgdg-source needs updating (usually not)
    • If so, update the checkout on pgdgbuild by running the "apt.postgresql.org" job
  • Update apt.postgresql.org/repo/conf/distributions.sh and re-generate the distributions file
    • Update the checkout in atalia:/srv/apt/apt.postgresql.org
  • Create new Jenkins jobs and build them

Changing the default PostgreSQL version

  • Update apt.postgresql.org/jenkins/generate-pgdg-source
    • If so, update the checkout on pgdgbuild by running the "apt.postgresql.org" job
  • If the old version was in sid only, also update apt.postgresql.org/repo/conf/distributions.sh
    • If so, re-generate the distributions file, and update the checkout in atalia:/srv/apt/apt.postgresql.org
  • Rebuild the old default version so its libpq gets added to the extra component (as it was in main before)
  • Rebuild the new default version so its libpq gets added to main (as it was in the extra component before)
  • In postgresql-common, update debian/supported-versions
  • To remove obsolete old lib packages, use for dist in sid squeeze wheezy lucid precise; do sudo -u aptuser reprepro -C 9.3 remove $dist-pgdg-testing libpq5 libecpg6 libecpg-compat3 libecpg-dev libpgtypes3 libpq-dev ; done

Adding a new distribution

  • Update apt.postgresql.org:
    • repo/conf/distributions.sh and re-generate the distributions file
    • repo/conf/incoming
    • repo/promote
    • jenkins/pgapt-jobs.yaml
    • jenkins/generate-pgdg-source
  • Update pgdg/apt.postgresql.org.sh in postgresql-common
  • Run the "apt.postgresql.org" job
  • Seed $newdist-pgdg-testing: reprepro copysrc ... postgresql-common pgdg-keyring pgdg-buildenv from $olddist-pgdg-testing; postgresql-x.y from sid-pgdg-testing (or whatever seems appropriate)
  • reprepro copymatched $newdist-pgdg $newdist-pgdg-testing '*'
  • Update wiki pages
  • Send announcement
Personal tools