You can use computed Boolean field for that, include this field in your view as invisible="1" and make the button invisible depending on the value of the Boolean field. Here is the Boolean field itself:
is_sales_manager = fields.Booelan("Sales Manager", compute="compute_is_sales_manager")
@api.multi
def compute_is_sales_manager(self):
is_manager = self.env.user.has_group("base.group_sale_manager")
for rec in self:
rec.is_sales_manager = is_manager
so, if you make the button invisible depending on this Boolean field, then it should be visible only to users who belong to the "base.group_sale_manager" group.
Title of question is: "How can I make a **button** only for base.group_sale_manager visible?", even in question text you refer to **button**, and as you posted a code it appears that actually you're asking about menuitem and NOT about a button. Please correct your question title and a question itself, to make it clear what is it about. My answer below is for a button, not for a menuitem.