Erwägungen:
1.
1.1. Der mazedonische Staatsangehörige A.A._ (geboren 1980) reiste am 4. Oktober 1992 in die Schweiz ein. Er verfügt über die Niederlassungsbewilligung. Seit 1999 ist er mit der aus Mazedonien stammenden, in der Schweiz niedergelassenen B.A._ (geb. 1980) verheiratet. Das Ehepaar hat vier Kinder, welche ebenfalls die Niederlassungsbewilligung besitzen: C.A._ (geb. 2001), D.A._ (geb. 2002), E.A._ (geb. 2005) und F.A._ (geb. 2013).
1.2. Am 29. April 2007 verurteilte die Staatsanwaltschaft See/Oberland A.A._ wegen mehrfacher grober Verletzung der Verkehrsregeln zu einer Geldstrafe von 40 Tagessätzen zu je Fr. 50.--, bedingt aufgeschoben mit einer Probezeit von drei Jahren, sowie zu einer Busse von Fr. 1'000.--. Das Migrationsamt des Kantons Zürich sprach am 4. Oktober 2007 eine Verwarnung aus, wobei es A.A._ "schwerer wiegende fremdenpolizeiliche Massnahmen" in Aussicht stellte für den Fall, dass er erneut gerichtlich bestraft werden oder sein Verhalten zu anderen berechtigten Klagen Anlass geben sollte.
Am 2. September 2010 verurteilte das Kreisgericht St. Gallen A.A._ wegen Gehilfenschaft zu mehrfachem Diebstahl, Gehilfenschaft zu mehrfachem versuchtem Diebstahl, Gehilfenschaft zu mehrfacher Sachbeschädigung und Gehilfenschaft zu mehrfachem Hausfriedensbruch, alle begangen zwischen 30. März 2007 und 31. Oktober 2007, zu einer Freiheitsstrafe von 20 Monaten, bedingt aufgeschoben mit einer Probezeit von drei Jahren. Gleichzeitig wurde der Vollzug der am 29. April 2007 ausgesprochenen Strafe angeordnet. Am 8. Februar 2011 verwarnte das Migrationsamt A.A._ erneut und drohte ihm den Widerruf der Niederlassungsbewilligung an.
Am 9. Mai 2011 verurteilte die Staatsanwaltschaft Graubünden A.A._ wegen Angriffs, begangen am 21. März 2010, zu einer Geldstrafe von 20 Tagessätzen zu je Fr. 40.--, bedingt aufgeschoben mit einer Probezeit von drei Jahren, als Zusatzstrafe zum Urteil des Kreisgerichts St. Gallen vom 2. September 2010.
Am 15. November 2012 verurteilte das Bezirksgericht Hinwil A.A._ wegen Irreführung der Rechtspflege, begangen am 4. Januar 2011, und versuchten Betrugs, begangen am 24. Januar 2011, zu einer Freiheitsstrafe von zwölf Monaten. Das Obergericht des Kantons Zürich bestätigte diese Schuldsprüche und das Strafmass mit Urteil vom 24. Juni 2013. Die vom Kreisgericht St. Gallen am 2. September 2010 angesetzte Probezeit von drei Jahren wurde um eineinhalb Jahre bis zum 2. März 2015 verlängert.
1.3. Am 23. Juli 2014 widerrief das Migrationsamt die Niederlassungsbewilligung und wies A.A._ aus der Schweiz weg. Die dagegen erhobenen Rechtsmittel blieben erfolglos (Entscheid der Sicherheitsdirektion des Kantons Zürich vom 21. Oktober 2014; Urteil des Verwaltungsgerichts des Kantons Zürich vom 14. Januar 2015).
1.4. A.A._ erhebt am 25. Februar 2015 Beschwerde beim Bundesgericht mit dem Antrag, das angefochtene Urteil aufzuheben und die Sache zur Neubeurteilung an die Vorinstanz zurückzuweisen. Das Verwaltungsgericht und das Staatssekretariat für Migration schliessen auf Abweisung der Beschwerde. Die Sicherheitsdirektion hat auf Vernehmlassung verzichtet. Am 27. Februar 2015 ist der Beschwerde antragsgemäss aufschiebende Wirkung beigelegt worden.
2.
Gegen den Widerruf der Niederlassungsbewilligung ist die Beschwerde in öffentlich-rechtlichen Angelegenheiten zulässig (BGE 135 II 1 E. 1.2.1 S. 4). Die Beschwerde ist offensichtlich unbegründet, so dass sie im Verfahren nach Art. 109 Abs. 2 lit. a und Abs. 3 BGG mit summarischer Begründung zu erledigen ist.
2.1. Die gesetzlichen Voraussetzungen für den Widerruf der Niederlassungsbewilligung nach Art. 63 Abs. 1 lit. a AuG i.V.m. Art. 62 lit. b AuG sind erfüllt. Zu prüfen bleibt die Verhältnismässigkeit der Massnahme im Sinn von Art. 96 AuG und Art. 8 Ziff. 2 EMRK.
2.2. Mit der Vorinstanz ist infolge der wiederholten Delinquenz von einem erheblichen sicherheitspolizeilichen Interesse an der Beendigung des Aufenthalts auszugehen, zumal sich unter den zahlreichen vom Beschwerdeführer begangenen Straftaten eine strafbare Handlung gegen Leib und Leben befindet (Verurteilung wegen Angriffs gemäss Art. 134 StGB). Vor und nach der Verurteilung vom 29. April 2007 wegen mehrfacher grober Verkehrsregelverletzung, während der Probezeit, beteiligte sich der Beschwerdeführer monatelang an Diebstählen, Sachbeschädigungen und Hausfriedensbrüchen. Obwohl er am 4. Oktober 2007 ausländerrechtlich verwarnt wurde, setzte er diese Deliktserie noch bis Ende Oktober 2007 fort. Die Verwarnung hielt ihn auch nicht davon ab, zweieinhalb Jahre später, am 21. März 2010, den erwähnten Angriff zu verüben. Nachdem ihn das Kreisgericht St. Gallen am 2. September 2010 zu einer Freiheitsstrafe von 20 Monaten verurteilt hatte, machte sich der Beschwerdeführer im Januar 2011 der Irreführung der Rechtspflege und des versuchten Betrugs schuldig, was zu einer Freiheitsstrafe von 12 Monaten führen sollte. Als das Migrationsamt am 8. Februar 2011 die zweite Verwarnung aussprach, hatte der Beschwerdeführer diese Delikte bereits begangen; die Verurteilung war indessen noch nicht erfolgt.
Die Chronologie zeigt, dass der Beschwerdeführer trotz mehrerer bedingt ausgesprochener Strafen und der ausdrücklichen Verwarnung des Migrationsamts immer wieder straffällig wurde. Er hat mehrere Chancen nicht ergriffen und damit den Widerruf der Bewilligung bewusst in Kauf genommen. Dass er durch den Strafvollzug in geordnete Bahnen eingeschwenkt sei, wie er geltend macht, kann im Zeitpunkt des angefochtenen Urteils nicht bestätigt werden, nachdem die durch das Obergericht des Kantons Zürich verlängerte Probezeit in jenem Zeitpunkt noch nicht einmal abgelaufen war (vgl. E. 1.2 am Ende).
2.3. Aufgrund seiner im Urteilszeitpunkt über 22 Jahre dauernden Anwesenheit in der Schweiz hat der Beschwerdeführer ein anerkennenswertes Interesse daran, in der Schweiz bleiben zu können. Indessen hat er immerhin die ersten zwölf Jahre seines Lebens in Mazedonien verbracht und reist nach eigenen Aussagen einmal jährlich dorthin. Er, der Albanisch und Mazedonisch spricht, könnte sich ohne grössere Probleme in seinem Herkunftsland zurechtfinden.
Die wirtschaftliche Integration in der Schweiz ist nicht geglückt. Der Beschwerdeführer hat eine Anlehre absolviert, konnte aber beruflich nicht richtig Fuss fassen. Er hat hohe Schulden; zudem musste seine Familie seit dem Jahr 2006 von der Sozialhilfe mit insgesamt Fr. 131'160.-- unterstützt werden. Die vor Bundesgericht erstmals eingereichten Beweismittel zum Schuldenabbau (Einzahlungsbelege und Kontoauszug betreffend Mietzinszahlungen) sind unzulässige Noven im Sinn von Art. 99 Abs. 1 BGG und als solche unbeachtlich.
Eine gewisse Härte ergibt sich aus dem Umstand, dass der Beschwerdeführer mit seiner Frau und den vier Kindern offenbar ein intaktes Familienleben führt. Die Trennung von ihnen ist aber nicht zwingend, weil sie alle aus Mazedonien stammen und dem Beschwerdeführer dorthin folgen könnten. Ob den beiden älteren Kindern, welche im Urteilszeitpunkt bereits 13 bzw. 12 Jahre alt waren, eine Ausreise nach Mazedonien zumutbar wäre, braucht hier nicht entschieden zu werden: Es steht der Ehefrau frei, mit den Kindern in der Schweiz zu bleiben, was der Beschwerdeführer, der diesbezüglich von "zwangsweiser Ausweisung" spricht, offenbar verkennt. Es ist auch nicht ersichtlich, inwiefern die Ehefrau und die Kinder durch die Wegweisung des Beschwerdeführers "in permanente Bedürftigkeit gebracht" würden, wie der Beschwerdeführer vorbringt: Wie dargelegt, besteht die Bedürftigkeit bereits; im Übrigen ist es der Ehefrau unbenommen, eine Erwerbstätigkeit auszuüben. Der Kontakt zum Beschwerdeführer kann besuchsweise und durch elektronische Kommunikation aufrecht erhalten werden.
3.
Aufgrund der dargelegten Umstände erweist sich der Widerruf der Niederlassungsbewilligung als verhältnismässig. Dies führt zur Abweisung der Beschwerde. Der unterliegende Beschwerdeführer trägt die Gerichtskosten (Art. 66 Abs. 1 BGG). Ausgangsgemäss ist keine Parteientschädigung zuzusprechen (Art. 68 BGG).
Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird abgewiesen.
2.
Die Gerichtskosten von Fr. 2'000.-- werden dem Beschwerdeführer auferlegt.
3.
Dieses Urteil wird den Verfahrensbeteiligten, dem Verwaltungsgericht des Kantons Zürich, 2. Abteilung, und dem Staatssekretariat für Migration schriftlich mitgeteilt.
Lausanne, 5. Oktober 2015
Im Namen der II. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Zünd
Die Gerichtsschreiberin: Genner