Maybe thisThis will help you with that quest: https://medium.com/sketch-app-sources/overrides-dynamic-buttons-in-sketch-c9ccfb6a5682
It is a plugin that helps buttons have a dynamic button widths. So the style via a symbol stays, but It explains how you can use the shape of it changes. It may also work for vertical content'Auto Layout' plugin to make this behavior happen.
Also the new and improved resize tool can help you with this job. More info abou tatabout at one you can find at https://www.sketchapp.com/learn/documentation/layer-basics/constraints/
But, this is necessary anymore, Sketch improved of the editions and it is all baked in. It is called Smart Layout. More on this you can find on the site of the makers https://www.sketch.com/features/smart-layout