Create a generic base class for publish actions