pyIPAM - Docker Plugin for IPAM written in Python
Jacek Kowalski
2026-03-11 a4d4f806e8d9a9f019c18c667afa1e703b4bf97e
Workflows: release: "docker plugin" does not allow duplicates anymore
2 files modified
26 ■■■■ changed files
.github/workflows/release.yml 6 ●●●●● patch | view | raw | blame | history
package.sh 20 ●●●●● patch | view | raw | blame | history
.github/workflows/release.yml
@@ -31,9 +31,6 @@
          export NAME="ghcr.io/${{ github.repository }}"
          export VERSIONS="latest ${GITHUB_REF/refs\/tags\//}"
          ./package.sh
          for VERSION in ${VERSIONS}; do
            docker plugin push "ghcr.io/${{ github.repository }}:${VERSION}"
          done
  deploy-to-docker-hub:
    name: Publish to Docker Hub
@@ -53,6 +50,3 @@
          export NAME="${{ github.actor }}/pyipam"
          export VERSIONS="latest ${GITHUB_REF/refs\/tags\//}"
          ./package.sh
          for VERSION in ${VERSIONS}; do
            docker plugin push "${{ github.actor }}/pyipam:${VERSION}"
          done
package.sh
@@ -1,4 +1,6 @@
#!/bin/bash -x
#!/bin/bash
set -e -x
NAME=${NAME:-jacekkow/pyipam}
VERSIONS=${VERSIONS:-latest}
@@ -12,14 +14,16 @@
sudo mkdir -p rootfs
docker export "${id}" | sudo tar -x -C rootfs
docker rm -vf "${id}"
docker plugin disable "${NAME}"
docker plugin rm "${NAME}"
docker plugin disable "${NAME}" || true
docker plugin rm "${NAME}" || true
sudo chmod 755 rootfs && sudo chmod -R o=g rootfs/usr/src
if [ `echo ${VERSIONS} | wc -w` -gt 1 ]; then
for VERSION in ${VERSIONS}; do
  sudo docker plugin create "${NAME}:${VERSION}" .
    docker plugin push "${NAME}:${VERSION}"
    docker plugin rm "${NAME}:${VERSION}"
done
sudo du -hs rootfs
for VERSION in ${VERSIONS}; do
  docker plugin enable "${NAME}:${VERSION}" || exit 1
  break
done
else
  sudo docker plugin create "${NAME}:${VERSIONS}" .
  docker plugin enable "${NAME}:${VERSIONS}"
fi