When AWS introduced macOS instances recently, they only included dedicated hardware instance types, because apple's licensing requires that an entire machine is leased and for a minimum of 24 hours.<p>Exercept from https://www.apple.com/legal/sla/docs/macOSBigSur.pdf:<p>=====================<p>3. Leasing for Permitted Developer Services.
A. Leasing.
You may lease or sublease a validly licensed version of the Apple Software in its entirety to an individual or organization (each, a “Lessee”) provided that all of the following conditions are met:<p>(i) the leased Apple Software must be used for the sole purpose of providing Permitted Developer Services and each Lessee must review and agree to be bound by the terms of this License;<p>(ii) each lease period must be for a minimum period of twenty-four (24) consecutive hours;<p>(iii) during the lease period, the End User Lessee must have sole and exclusive use and control of the Apple Software and the Apple-branded hardware on which it is installed, except that you, as the party leasing the Apple Software (“Lessor”), may provide administrative support for the Apple Software; and<p>(iv) prior to using the Apple Software, the End User Lessee must review and agree to be bound by the terms applicable to any software preinstalled on the Apple Software, including, but not limited to Apple’s Xcode developer software and any other Apple or third-party software.<p>=====================<p>How does Github provide macos containers on a very short term basis for CI jobs, while complying with the above license? I can't see them allocating me a physical machine for 24 hours, each time I use a macos runner in a GH action.
The relevant distinction is probably that GitHub does not lease a machine to you because they do not give you full access. They are in control of the machine, and they are executing tasks on it.