HarborのProject内の全Repositoryを削除するメモ

Project内のRepositoryを空にしないとProjectを削除できない。APIで削除する方法をメモ。

HARBOR_URL=https://harbor.example.com:8443
HARBOR_USER=admin
HARBOR_PASSWORD=admin
HARBOR_PROJECT=hello

curl -s -k -u ${HARBOR_USER}:${HARBOR_PASSWORD} "${HARBOR_URL}/api/v2.0/projects/${HARBOR_PROJECT}/repositories?page_size=1000" | jq -r ".[].name" | sed "s|${HARBOR_PROJECT}/||g" > repos.txt
for r in  $(cat repos.txt);do 
  echo $r;
  curl -s -k -u ${HARBOR_USER}:${HARBOR_PASSWORD} -XDELETE "${HARBOR_URL}/api/v2.0/projects/${HARBOR_PROJECT}/repositories/$r";
done