Herman Mashaba has quit after three years as mayor of Johannesburg, signalling his belief that the Democratic Alliance intends to break up the coalition that helped him land the job.

“The DA I signed up for is no longer the DA that emerged from the recent federal council meeting,” he told a news conference on Monday.

His resignation is from the city, and from the DA.

Mashaba's decision was sparked by Sunday's election of Helen Zille as the DA's federal council chairperson, a position second only to that of party leader Mmusi Maimane.

He accused the party of veering off leader Mmusi Maimane's vision of "one South Africa for all".

Mashaba said "as a patriot, I will always choose my country" ahead of the party.

Taking up the responsibility of mayor was never about a love for positions, he said, but rather was motivated by "the desire to get our city to work again, which is why I have always said if Joburg works, SA works".

The city's banner, which was mounted at 9.55am behind the podium from which he was set to speak, was removed at 10.04am, two minutes before Mashaba started his speech.