I noticed my country Greece wanted to sell bonds last year and they were stating "If they go above 7% we won't sell.". But who sets the price if not them? Why can't they say "the price is 5% and if you don't buy them then fine, we won't sell this time at all"?
"Who sets the prices?"
Effectively the market does, like basically all openly traded things.
The Greek government could well have said "5% is as high as we will go". As a result, investors may not have chosen to buy the securities. The global bond market is highly liquid, and investors who have a choice could well then choose to go elsewhere.
The reasons could well be varied, but primary among them would be that investors view Greek investments as more than 5% risky. If I can get 5% from a country that I deem less risky than from Greece, my choice is clear. Therefore to be compensated for loaning them my money, I am expecting a return of 7% because there is the possibility that they will default.
As for not selling them at all, if they could avoid issuing bonds, most governments would. They may not have had much of a choice. If they just print more money, that does other potentially bad things to the economy. The government needs funds to operate, if they are not collecting enough in taxes, for example, and do not want to print money as I mentioned, then bonds are one other common way to raise cash.
Notwithstanding that in your example you are referring to the interest rate, not the price, the principal is the same.