Pat the chicken dry with paper towels, removing anything inside the cavity, and season the whole chicken generously with coarse kosher salt inside the cavity and outside of the chicken.
Peel and smash a few cloves of garlic and place them inside of the cavity.
In a small bowl combine part of the butter (1-2 tbsp) with grated garlic. Gently lift the skin of the chicken breasts and spread the butter-garlic mixture onto the breast.
Cover the entirety of the outside of the chicken with the rest of the butter and any of the leftover garlic-butter mixture.
Let the chicken sit for 1 hour, or in the fridge overnight if you have time or are prepping ahead.
Before the chicken goes into the oven, heat up your oven to 425F and cast iron skillet inside on the lower rack.
Once the oven has come up to 425F, carefully remove the cast iron skillet, drizzle 1-2 tbsp of olive oil onto it and quickly add in the chicken. Place the whole chicken in the cast iron skillet back into the oven.
Bake for 10 minutes before pulling out the skillet. Baste the chicken with the melted butter in the pan before adding in the baby potatoes around the chicken. Sprinkle some salt on and make sure the potatoes are coated in butter and salt.
Roast the whole chicken for another 45-50 minutes, basting the chicken with the butter every 10-15 minutes.
After 45-50 minutes, pull out the skillet from the oven, basting it the chicken before adding in grape tomatoes to the sides of the skillet, around the chicken.
Roast for a final 15 minutes. When done, remove the cast iron skillet from the oven and let the chicken rest 10-15 minutes before serving. I recommend using a meat thermometer to make sure the internal temperature of the thickest part of the chicken is 165F/75C.