Skip to content

Instantly share code, notes, and snippets.

@Toasterson
Last active June 22, 2024 13:38
Show Gist options
  • Save Toasterson/cfcd6780a14ece1a3c9a8fccb6d52b4a to your computer and use it in GitHub Desktop.
Save Toasterson/cfcd6780a14ece1a3c9a8fccb6d52b4a to your computer and use it in GitHub Desktop.

Aufräumen auf dem offiziellen CI-System (Build- und Repository Server)

on build server:

Clean up packages, produced by illumos-gate job:

svcadm disable svc:/jenkins:default
cd /jenkins/jobs/illumos-gate/workspace/components/openindiana/illumos-gate/
rm -fr build/i386/pkgre*
rm -fr illumos-gate/packages/i386/nightly*

on pkg server:

Create new filesystem:

zfs create rpool/data/oirepo/hipster.new

Clean up packages, produced by oi-userland job (should preserve latest packages to generate userland-incorporation):

cd /zdata/oirepo
cp hipster/pkg5.repository hipster.new/
pkgrecv -s hipster --newest | tee pkg-list
cat pkg-list | split -l 100
for i in $(ls x*); do pkgrecv -s hipster -d hipster.new $(cat $i); done

Check new repo (diff should be empty):

pkgrecv -s hipster --newest > /tmp/old.packages
pkgrecv -s hipster.new --newest > /tmp/new.packages
diff -u /tmp/old.packages /tmp/new.packages

Final cleanup:

pkgrepo -s hipster.new rebuild
rm x* pkg-list

Make necessary directories:

cd hipster.new/
mkdir .empty .temp .temp/.openindiana.org
chown -R oi:staff .

Switch to new repo:

cd /
svcadm disable svc:/application/pkg/server:hipster
zfs rename rpool/data/oirepo/hipster rpool/data/oirepo/hipster.old
zfs rename rpool/data/oirepo/hipster.new rpool/data/oirepo/hipster
svcadm enable svc:/application/pkg/server:hipster

Testing: Visit http://pkg.openindiana.org/hipster/ and check that search works correctly.

Run some jenkins build job to ensure that interaction between hipster.openindiana.org and pkg.openindiana.org works correctly.

Don't forget to destroy rpool/data/oirepo/hipster.old filesystem in several days after cleanup.

on build server:

Once done reactivate the jenkins server

svcadm enable svc:/jenkins:default
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment