make deployment idempotent