I have always changed work hours in the summer so that the earlier they can start, the better. For example, 7-3 works well - usually. Right now, we are doing split schedules where no one is here working in the direct heat. I do not supply sunscreen because I cannot be responsible for application of this (laws don't allow this in schools, etc.) but they are encouraged to bring it and wear it and sunglasses. We switch from dark colored shirts to white T-Shirts and I will provide hats. There is always water available. We supply for the contractors as well, even though they are always surprised that I do.
During this recent heat wave I sent them all home early (with pay) as there are no vacant units at this time for them to work indoors. They are allowed to use the pool, too, at the end of the day. Someone is always on-call, of course, with regular work orders still being taken care of in the morning or offering early evening hours to spare the Techs from being here during peak heat hours.
Residents here are informed of this as well. They seem to be okay with this system since they are taken care of with same-day-service still provided. I like Nate's suggestion of the overhead covers. That's a great idea.