Как в Go lang сделать do-while цикл

В большинстве ставших уже классическими языках программирования есть привычная многим конструкция:

do {
	work();
} while(condition);

Которая выполняет оно и то же действие до тех пор, пока не будет выполнено заданное условие. Иногда даже может получиться вечный цикл. Как сделать аналогично в Go lang?

Вариант первый:

for ok := true; ok; ok = condition {
	work()
}

Вариант второй:

for {
	work()
	if condition {
		break
	}
}

Непривычно, немного многословно, но вот так вот.