Move artifact publishing into adapter API