You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beam.apache.org by Daniela Martín <da...@wizeline.com> on 2022/02/23 22:44:14 UTC

[Question] MacOS self-hosted servers - BEAM-12812

Hi everyone,

We are currently working on *BEAM-12812 Run GitHub Actions on GCP
self-hosted workers* [1] task, and we would like to know your thoughts
regarding the Mac OS runners.

Some context of the task

The current GitHub Actions workflows are being tested on multiple operating
systems, such as Ubuntu, Windows and MacOS. The way to migrate these
runners from GitHub-hosted to GCP is by implementing self-hosted runners,
so we have started implementing them in both Ubuntu and Windows
environments, going with Google Kubernetes Engine and Google Cloud Compute
VMs instances respectively.

Findings

In addition, we are working on researching the best way to implement the
MacOS self-hosted runners, concluding with the following approaches:

   -

   Cloud Virtual Machines Support
   -

   Mac OS X in Docker
   -

   Hackintosh


Cloud VM Support

We have found that there are other Cloud Providers, such as AWS [2], that
allow us to host Mac OS instances in our own dedicated hosts using official
Apple hardware. However, we don’t have any Mac OS image available in Google
Cloud Platform [3] yet.
Mac OS X in Docker

A Docker image docker-osx [4] is available in Docker Hub for running Mac OS
X in a Docker container.

Pros

Cons

   -

   macOS Monterey VM on Linux
   -

   Near-native performance
   -

   Multiple versions of mac OS: High Sierra, Mojave, Catalina, Big Sur and
   Monterey
   -

   Multiple kind of images depending on the use case
   -

   Runs on top of QEMU + KVM
   -

   Supports Kubernetes


   -

   Is this approach completely allowed according to Apple’s license?
   -

   Unverified Docker Hub publisher
   -

   Hardware virtualization enabled in BIOS
   -

   Approx 20 GB disk space for minimum installation



Hackintosh

A way to get Mac OS running on hardware that is not authorized by Apple.
The creation and configuration of the equipment (using GNU/Linux as a base)
can become very complicated resulting in a malfunctioning OS if the
required settings are not properly implemented or the hardware is not
suitable.


In conclusion, we found that there are some ways to run macOS in
self-hosted runners, however this could conflict with Apple's terms and
licenses and should be investigated in depth before any implementation.

The question here would be, if someone knows any other approach where we
could run Mac OS in the Cloud following Apple's licenses.

Also, we would like to know if there is any information regarding Google
Cloud Platform having a macOS image anytime soon for running it in VM or
containers, as we think this may be the best approach for this task.

Please feel free to share your comments and suggestions.

Thank you!

Regards,

[1] https://issues.apache.org/jira/browse/BEAM-12812

[2]
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html

[3]
https://cloud.google.com/migrate/compute-engine/docs/5.0/reference/supported-os-versions


[4] https://hub.docker.com/r/sickcodes/docker-osx

-- 

Daniela Martín (She/Her) | <https://www.wizeline.com/>

Site Reliability Engineer III

daniela.martin@wizeline.com

Amado Nervo 2200, Esfera P6, Col. Ciudad del Sol, 45050 Zapopan, Jal.

Follow us Twitter <https://twitter.com/wizelineglobal> | Facebook
<https://www.facebook.com/WizelineGlobal> | Instagram
<https://www.instagram.com/wizelineglobal/> | LinkedIn
<https://www.linkedin.com/company/wizeline>

Share feedback on Clutch <https://clutch.co/review/submit/375119>

-- 
*This email and its contents (including any attachments) are being sent to
you on the condition of confidentiality and may be protected by legal
privilege. Access to this email by anyone other than the intended recipient
is unauthorized. If you are not the intended recipient, please immediately
notify the sender by replying to this message and delete the material
immediately from your system. Any further use, dissemination, distribution
or reproduction of this email is strictly prohibited. Further, no
representation is made with respect to any content contained in this email.*

Re: [Question] MacOS self-hosted servers - BEAM-12812

Posted by Ahmet Altay <al...@google.com>.
Sounds great, thank you!

On Thu, Feb 24, 2022 at 11:18 AM Daniela Martín <da...@wizeline.com>
wrote:

> Hi,
>
> Thank you very much for your comments and suggestions, totally agree with
> you both. We will discuss it with the rest of the team and let you know the
> resolution.
>
> Thanks.
>
>
> Regards,
>
> On Wed, Feb 23, 2022 at 8:05 PM Ahmet Altay <al...@google.com> wrote:
>
>> Hi Daniela,
>>
>> My suggestion would be to rely on github provided runners and avoid self
>> hosted runners for macos builds. We would like to use builtin support in
>> these platforms (GH, GCP etc.) and not build our own systems because of the
>> complications you are mentioning. I do not think adding AWS based self
>> hosted runners would be worth the complexity just for this either.
>>
>> > Also, we would like to know if there is any information regarding
>> Google Cloud Platform having a macOS image anytime soon for running it in
>> VM or containers, as we think this may be the best approach for this task.
>>
>> People working at Google won't be able to answer this question. There is
>> no public information about this. I agree that it would be the best
>> approach but it is not clear if/when it will be available. I would not
>> recommend waiting for it.
>>
>> Ahmet
>>
>>
>> On Wed, Feb 23, 2022 at 5:46 PM Danny McCormick <
>> dannymccormick@google.com> wrote:
>>
>>> Unfortunately, Apple is pretty hardcore about licensing such that AWS,
>>> Mac Stadium, or buying/hosting dedicated macs are pretty much the only good
>>> options AFAIK. That was a pain in the butt for the multiple CI systems I've
>>> worked on in the past.
>>>
>>> > Is this approach completely allowed according to Apple’s license?
>>>
>>> Almost definitely not - Apple's OS licensing requires every OS to be run
>>> on "Apple-branded" hardware - e.g. from the Catalina license (
>>> https://www.apple.com/legal/sla/docs/macOSCatalina.pdf)
>>>
>>> "The grants set forth in this License do not permit you to, and you
>>> agree not to, install, use or run the Apple Software on any
>>> non-Apple-branded computer, or to enable others to do so."
>>>
>>> The same presumably applies to the Hackintosh approach.
>>>
>>> Disclaimer - I'm not a lawyer, but I have had lawyers say my team
>>> couldn't do something like this in the past 🙂
>>>
>>> Thanks,
>>> Danny
>>>
>>> On Wed, Feb 23, 2022 at 5:44 PM Daniela Martín <
>>> daniela.martin@wizeline.com> wrote:
>>>
>>>> Hi everyone,
>>>>
>>>> We are currently working on *BEAM-12812 Run GitHub Actions on GCP
>>>> self-hosted workers* [1] task, and we would like to know your thoughts
>>>> regarding the Mac OS runners.
>>>>
>>>> Some context of the task
>>>>
>>>> The current GitHub Actions workflows are being tested on multiple
>>>> operating systems, such as Ubuntu, Windows and MacOS. The way to migrate
>>>> these runners from GitHub-hosted to GCP is by implementing self-hosted
>>>> runners, so we have started implementing them in both Ubuntu and Windows
>>>> environments, going with Google Kubernetes Engine and Google Cloud Compute
>>>> VMs instances respectively.
>>>>
>>>> Findings
>>>>
>>>> In addition, we are working on researching the best way to implement
>>>> the MacOS self-hosted runners, concluding with the following approaches:
>>>>
>>>>    -
>>>>
>>>>    Cloud Virtual Machines Support
>>>>    -
>>>>
>>>>    Mac OS X in Docker
>>>>    -
>>>>
>>>>    Hackintosh
>>>>
>>>>
>>>> Cloud VM Support
>>>>
>>>> We have found that there are other Cloud Providers, such as AWS [2],
>>>> that allow us to host Mac OS instances in our own dedicated hosts using
>>>> official Apple hardware. However, we don’t have any Mac OS image available
>>>> in Google Cloud Platform [3] yet.
>>>> Mac OS X in Docker
>>>>
>>>> A Docker image docker-osx [4] is available in Docker Hub for running
>>>> Mac OS X in a Docker container.
>>>>
>>>> Pros
>>>>
>>>> Cons
>>>>
>>>>    -
>>>>
>>>>    macOS Monterey VM on Linux
>>>>    -
>>>>
>>>>    Near-native performance
>>>>    -
>>>>
>>>>    Multiple versions of mac OS: High Sierra, Mojave, Catalina, Big Sur
>>>>    and Monterey
>>>>    -
>>>>
>>>>    Multiple kind of images depending on the use case
>>>>    -
>>>>
>>>>    Runs on top of QEMU + KVM
>>>>    -
>>>>
>>>>    Supports Kubernetes
>>>>
>>>>
>>>>    -
>>>>
>>>>    Is this approach completely allowed according to Apple’s license?
>>>>    -
>>>>
>>>>    Unverified Docker Hub publisher
>>>>    -
>>>>
>>>>    Hardware virtualization enabled in BIOS
>>>>    -
>>>>
>>>>    Approx 20 GB disk space for minimum installation
>>>>
>>>>
>>>>
>>>> Hackintosh
>>>>
>>>> A way to get Mac OS running on hardware that is not authorized by
>>>> Apple. The creation and configuration of the equipment (using GNU/Linux as
>>>> a base) can become very complicated resulting in a malfunctioning OS if the
>>>> required settings are not properly implemented or the hardware is not
>>>> suitable.
>>>>
>>>>
>>>> In conclusion, we found that there are some ways to run macOS in
>>>> self-hosted runners, however this could conflict with Apple's terms and
>>>> licenses and should be investigated in depth before any implementation.
>>>>
>>>> The question here would be, if someone knows any other approach where
>>>> we could run Mac OS in the Cloud following Apple's licenses.
>>>>
>>>> Also, we would like to know if there is any information regarding
>>>> Google Cloud Platform having a macOS image anytime soon for running it in
>>>> VM or containers, as we think this may be the best approach for this task.
>>>>
>>>> Please feel free to share your comments and suggestions.
>>>>
>>>> Thank you!
>>>>
>>>> Regards,
>>>>
>>>> [1] https://issues.apache.org/jira/browse/BEAM-12812
>>>>
>>>> [2]
>>>> https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html
>>>>
>>>>
>>>> [3]
>>>> https://cloud.google.com/migrate/compute-engine/docs/5.0/reference/supported-os-versions
>>>>
>>>>
>>>> [4] https://hub.docker.com/r/sickcodes/docker-osx
>>>>
>>>> --
>>>>
>>>> Daniela Martín (She/Her) | <https://www.wizeline.com/>
>>>>
>>>> Site Reliability Engineer III
>>>>
>>>> daniela.martin@wizeline.com
>>>>
>>>> Amado Nervo 2200, Esfera P6, Col. Ciudad del Sol, 45050 Zapopan, Jal.
>>>>
>>>> Follow us Twitter <https://twitter.com/wizelineglobal> | Facebook
>>>> <https://www.facebook.com/WizelineGlobal> | Instagram
>>>> <https://www.instagram.com/wizelineglobal/> | LinkedIn
>>>> <https://www.linkedin.com/company/wizeline>
>>>>
>>>> Share feedback on Clutch <https://clutch.co/review/submit/375119>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *This email and its contents (including any attachments) are being sent
>>>> toyou on the condition of confidentiality and may be protected by
>>>> legalprivilege. Access to this email by anyone other than the intended
>>>> recipientis unauthorized. If you are not the intended recipient, please
>>>> immediatelynotify the sender by replying to this message and delete the
>>>> materialimmediately from your system. Any further use, dissemination,
>>>> distributionor reproduction of this email is strictly prohibited. Further,
>>>> norepresentation is made with respect to any content contained in this
>>>> email.*
>>>
>>>
>
> --
>
> Daniela Martín (She/Her) | <https://www.wizeline.com/>
>
> Site Reliability Engineer III
>
> daniela.martin@wizeline.com
>
> Amado Nervo 2200, Esfera P6, Col. Ciudad del Sol, 45050 Zapopan, Jal.
>
> Follow us Twitter <https://twitter.com/wizelineglobal> | Facebook
> <https://www.facebook.com/WizelineGlobal> | Instagram
> <https://www.instagram.com/wizelineglobal/> | LinkedIn
> <https://www.linkedin.com/company/wizeline>
>
> Share feedback on Clutch <https://clutch.co/review/submit/375119>
>
>
>
>
>
>
>
>
> *This email and its contents (including any attachments) are being sent
> toyou on the condition of confidentiality and may be protected by
> legalprivilege. Access to this email by anyone other than the intended
> recipientis unauthorized. If you are not the intended recipient, please
> immediatelynotify the sender by replying to this message and delete the
> materialimmediately from your system. Any further use, dissemination,
> distributionor reproduction of this email is strictly prohibited. Further,
> norepresentation is made with respect to any content contained in this
> email.*

Re: [Question] MacOS self-hosted servers - BEAM-12812

Posted by Daniela Martín <da...@wizeline.com>.
Hi,

Thank you very much for your comments and suggestions, totally agree with
you both. We will discuss it with the rest of the team and let you know the
resolution.

Thanks.


Regards,

On Wed, Feb 23, 2022 at 8:05 PM Ahmet Altay <al...@google.com> wrote:

> Hi Daniela,
>
> My suggestion would be to rely on github provided runners and avoid self
> hosted runners for macos builds. We would like to use builtin support in
> these platforms (GH, GCP etc.) and not build our own systems because of the
> complications you are mentioning. I do not think adding AWS based self
> hosted runners would be worth the complexity just for this either.
>
> > Also, we would like to know if there is any information regarding Google
> Cloud Platform having a macOS image anytime soon for running it in VM or
> containers, as we think this may be the best approach for this task.
>
> People working at Google won't be able to answer this question. There is
> no public information about this. I agree that it would be the best
> approach but it is not clear if/when it will be available. I would not
> recommend waiting for it.
>
> Ahmet
>
>
> On Wed, Feb 23, 2022 at 5:46 PM Danny McCormick <da...@google.com>
> wrote:
>
>> Unfortunately, Apple is pretty hardcore about licensing such that AWS,
>> Mac Stadium, or buying/hosting dedicated macs are pretty much the only good
>> options AFAIK. That was a pain in the butt for the multiple CI systems I've
>> worked on in the past.
>>
>> > Is this approach completely allowed according to Apple’s license?
>>
>> Almost definitely not - Apple's OS licensing requires every OS to be run
>> on "Apple-branded" hardware - e.g. from the Catalina license (
>> https://www.apple.com/legal/sla/docs/macOSCatalina.pdf)
>>
>> "The grants set forth in this License do not permit you to, and you
>> agree not to, install, use or run the Apple Software on any
>> non-Apple-branded computer, or to enable others to do so."
>>
>> The same presumably applies to the Hackintosh approach.
>>
>> Disclaimer - I'm not a lawyer, but I have had lawyers say my team
>> couldn't do something like this in the past 🙂
>>
>> Thanks,
>> Danny
>>
>> On Wed, Feb 23, 2022 at 5:44 PM Daniela Martín <
>> daniela.martin@wizeline.com> wrote:
>>
>>> Hi everyone,
>>>
>>> We are currently working on *BEAM-12812 Run GitHub Actions on GCP
>>> self-hosted workers* [1] task, and we would like to know your thoughts
>>> regarding the Mac OS runners.
>>>
>>> Some context of the task
>>>
>>> The current GitHub Actions workflows are being tested on multiple
>>> operating systems, such as Ubuntu, Windows and MacOS. The way to migrate
>>> these runners from GitHub-hosted to GCP is by implementing self-hosted
>>> runners, so we have started implementing them in both Ubuntu and Windows
>>> environments, going with Google Kubernetes Engine and Google Cloud Compute
>>> VMs instances respectively.
>>>
>>> Findings
>>>
>>> In addition, we are working on researching the best way to implement the
>>> MacOS self-hosted runners, concluding with the following approaches:
>>>
>>>    -
>>>
>>>    Cloud Virtual Machines Support
>>>    -
>>>
>>>    Mac OS X in Docker
>>>    -
>>>
>>>    Hackintosh
>>>
>>>
>>> Cloud VM Support
>>>
>>> We have found that there are other Cloud Providers, such as AWS [2],
>>> that allow us to host Mac OS instances in our own dedicated hosts using
>>> official Apple hardware. However, we don’t have any Mac OS image available
>>> in Google Cloud Platform [3] yet.
>>> Mac OS X in Docker
>>>
>>> A Docker image docker-osx [4] is available in Docker Hub for running
>>> Mac OS X in a Docker container.
>>>
>>> Pros
>>>
>>> Cons
>>>
>>>    -
>>>
>>>    macOS Monterey VM on Linux
>>>    -
>>>
>>>    Near-native performance
>>>    -
>>>
>>>    Multiple versions of mac OS: High Sierra, Mojave, Catalina, Big Sur
>>>    and Monterey
>>>    -
>>>
>>>    Multiple kind of images depending on the use case
>>>    -
>>>
>>>    Runs on top of QEMU + KVM
>>>    -
>>>
>>>    Supports Kubernetes
>>>
>>>
>>>    -
>>>
>>>    Is this approach completely allowed according to Apple’s license?
>>>    -
>>>
>>>    Unverified Docker Hub publisher
>>>    -
>>>
>>>    Hardware virtualization enabled in BIOS
>>>    -
>>>
>>>    Approx 20 GB disk space for minimum installation
>>>
>>>
>>>
>>> Hackintosh
>>>
>>> A way to get Mac OS running on hardware that is not authorized by Apple.
>>> The creation and configuration of the equipment (using GNU/Linux as a base)
>>> can become very complicated resulting in a malfunctioning OS if the
>>> required settings are not properly implemented or the hardware is not
>>> suitable.
>>>
>>>
>>> In conclusion, we found that there are some ways to run macOS in
>>> self-hosted runners, however this could conflict with Apple's terms and
>>> licenses and should be investigated in depth before any implementation.
>>>
>>> The question here would be, if someone knows any other approach where we
>>> could run Mac OS in the Cloud following Apple's licenses.
>>>
>>> Also, we would like to know if there is any information regarding Google
>>> Cloud Platform having a macOS image anytime soon for running it in VM or
>>> containers, as we think this may be the best approach for this task.
>>>
>>> Please feel free to share your comments and suggestions.
>>>
>>> Thank you!
>>>
>>> Regards,
>>>
>>> [1] https://issues.apache.org/jira/browse/BEAM-12812
>>>
>>> [2]
>>> https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html
>>>
>>>
>>> [3]
>>> https://cloud.google.com/migrate/compute-engine/docs/5.0/reference/supported-os-versions
>>>
>>>
>>> [4] https://hub.docker.com/r/sickcodes/docker-osx
>>>
>>> --
>>>
>>> Daniela Martín (She/Her) | <https://www.wizeline.com/>
>>>
>>> Site Reliability Engineer III
>>>
>>> daniela.martin@wizeline.com
>>>
>>> Amado Nervo 2200, Esfera P6, Col. Ciudad del Sol, 45050 Zapopan, Jal.
>>>
>>> Follow us Twitter <https://twitter.com/wizelineglobal> | Facebook
>>> <https://www.facebook.com/WizelineGlobal> | Instagram
>>> <https://www.instagram.com/wizelineglobal/> | LinkedIn
>>> <https://www.linkedin.com/company/wizeline>
>>>
>>> Share feedback on Clutch <https://clutch.co/review/submit/375119>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> *This email and its contents (including any attachments) are being sent
>>> toyou on the condition of confidentiality and may be protected by
>>> legalprivilege. Access to this email by anyone other than the intended
>>> recipientis unauthorized. If you are not the intended recipient, please
>>> immediatelynotify the sender by replying to this message and delete the
>>> materialimmediately from your system. Any further use, dissemination,
>>> distributionor reproduction of this email is strictly prohibited. Further,
>>> norepresentation is made with respect to any content contained in this
>>> email.*
>>
>>

-- 

Daniela Martín (She/Her) | <https://www.wizeline.com/>

Site Reliability Engineer III

daniela.martin@wizeline.com

Amado Nervo 2200, Esfera P6, Col. Ciudad del Sol, 45050 Zapopan, Jal.

Follow us Twitter <https://twitter.com/wizelineglobal> | Facebook
<https://www.facebook.com/WizelineGlobal> | Instagram
<https://www.instagram.com/wizelineglobal/> | LinkedIn
<https://www.linkedin.com/company/wizeline>

Share feedback on Clutch <https://clutch.co/review/submit/375119>

-- 
*This email and its contents (including any attachments) are being sent to
you on the condition of confidentiality and may be protected by legal
privilege. Access to this email by anyone other than the intended recipient
is unauthorized. If you are not the intended recipient, please immediately
notify the sender by replying to this message and delete the material
immediately from your system. Any further use, dissemination, distribution
or reproduction of this email is strictly prohibited. Further, no
representation is made with respect to any content contained in this email.*

Re: [Question] MacOS self-hosted servers - BEAM-12812

Posted by Ahmet Altay <al...@google.com>.
Hi Daniela,

My suggestion would be to rely on github provided runners and avoid self
hosted runners for macos builds. We would like to use builtin support in
these platforms (GH, GCP etc.) and not build our own systems because of the
complications you are mentioning. I do not think adding AWS based self
hosted runners would be worth the complexity just for this either.

> Also, we would like to know if there is any information regarding Google
Cloud Platform having a macOS image anytime soon for running it in VM or
containers, as we think this may be the best approach for this task.

People working at Google won't be able to answer this question. There is no
public information about this. I agree that it would be the best
approach but it is not clear if/when it will be available. I would not
recommend waiting for it.

Ahmet


On Wed, Feb 23, 2022 at 5:46 PM Danny McCormick <da...@google.com>
wrote:

> Unfortunately, Apple is pretty hardcore about licensing such that AWS, Mac
> Stadium, or buying/hosting dedicated macs are pretty much the only good
> options AFAIK. That was a pain in the butt for the multiple CI systems I've
> worked on in the past.
>
> > Is this approach completely allowed according to Apple’s license?
>
> Almost definitely not - Apple's OS licensing requires every OS to be run
> on "Apple-branded" hardware - e.g. from the Catalina license (
> https://www.apple.com/legal/sla/docs/macOSCatalina.pdf)
>
> "The grants set forth in this License do not permit you to, and you agree
> not to, install, use or run the Apple Software on any non-Apple-branded
> computer, or to enable others to do so."
>
> The same presumably applies to the Hackintosh approach.
>
> Disclaimer - I'm not a lawyer, but I have had lawyers say my team couldn't
> do something like this in the past 🙂
>
> Thanks,
> Danny
>
> On Wed, Feb 23, 2022 at 5:44 PM Daniela Martín <
> daniela.martin@wizeline.com> wrote:
>
>> Hi everyone,
>>
>> We are currently working on *BEAM-12812 Run GitHub Actions on GCP
>> self-hosted workers* [1] task, and we would like to know your thoughts
>> regarding the Mac OS runners.
>>
>> Some context of the task
>>
>> The current GitHub Actions workflows are being tested on multiple
>> operating systems, such as Ubuntu, Windows and MacOS. The way to migrate
>> these runners from GitHub-hosted to GCP is by implementing self-hosted
>> runners, so we have started implementing them in both Ubuntu and Windows
>> environments, going with Google Kubernetes Engine and Google Cloud Compute
>> VMs instances respectively.
>>
>> Findings
>>
>> In addition, we are working on researching the best way to implement the
>> MacOS self-hosted runners, concluding with the following approaches:
>>
>>    -
>>
>>    Cloud Virtual Machines Support
>>    -
>>
>>    Mac OS X in Docker
>>    -
>>
>>    Hackintosh
>>
>>
>> Cloud VM Support
>>
>> We have found that there are other Cloud Providers, such as AWS [2], that
>> allow us to host Mac OS instances in our own dedicated hosts using official
>> Apple hardware. However, we don’t have any Mac OS image available in Google
>> Cloud Platform [3] yet.
>> Mac OS X in Docker
>>
>> A Docker image docker-osx [4] is available in Docker Hub for running Mac
>> OS X in a Docker container.
>>
>> Pros
>>
>> Cons
>>
>>    -
>>
>>    macOS Monterey VM on Linux
>>    -
>>
>>    Near-native performance
>>    -
>>
>>    Multiple versions of mac OS: High Sierra, Mojave, Catalina, Big Sur
>>    and Monterey
>>    -
>>
>>    Multiple kind of images depending on the use case
>>    -
>>
>>    Runs on top of QEMU + KVM
>>    -
>>
>>    Supports Kubernetes
>>
>>
>>    -
>>
>>    Is this approach completely allowed according to Apple’s license?
>>    -
>>
>>    Unverified Docker Hub publisher
>>    -
>>
>>    Hardware virtualization enabled in BIOS
>>    -
>>
>>    Approx 20 GB disk space for minimum installation
>>
>>
>>
>> Hackintosh
>>
>> A way to get Mac OS running on hardware that is not authorized by Apple.
>> The creation and configuration of the equipment (using GNU/Linux as a base)
>> can become very complicated resulting in a malfunctioning OS if the
>> required settings are not properly implemented or the hardware is not
>> suitable.
>>
>>
>> In conclusion, we found that there are some ways to run macOS in
>> self-hosted runners, however this could conflict with Apple's terms and
>> licenses and should be investigated in depth before any implementation.
>>
>> The question here would be, if someone knows any other approach where we
>> could run Mac OS in the Cloud following Apple's licenses.
>>
>> Also, we would like to know if there is any information regarding Google
>> Cloud Platform having a macOS image anytime soon for running it in VM or
>> containers, as we think this may be the best approach for this task.
>>
>> Please feel free to share your comments and suggestions.
>>
>> Thank you!
>>
>> Regards,
>>
>> [1] https://issues.apache.org/jira/browse/BEAM-12812
>>
>> [2]
>> https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html
>>
>>
>> [3]
>> https://cloud.google.com/migrate/compute-engine/docs/5.0/reference/supported-os-versions
>>
>>
>> [4] https://hub.docker.com/r/sickcodes/docker-osx
>>
>> --
>>
>> Daniela Martín (She/Her) | <https://www.wizeline.com/>
>>
>> Site Reliability Engineer III
>>
>> daniela.martin@wizeline.com
>>
>> Amado Nervo 2200, Esfera P6, Col. Ciudad del Sol, 45050 Zapopan, Jal.
>>
>> Follow us Twitter <https://twitter.com/wizelineglobal> | Facebook
>> <https://www.facebook.com/WizelineGlobal> | Instagram
>> <https://www.instagram.com/wizelineglobal/> | LinkedIn
>> <https://www.linkedin.com/company/wizeline>
>>
>> Share feedback on Clutch <https://clutch.co/review/submit/375119>
>>
>>
>>
>>
>>
>>
>>
>>
>> *This email and its contents (including any attachments) are being sent
>> toyou on the condition of confidentiality and may be protected by
>> legalprivilege. Access to this email by anyone other than the intended
>> recipientis unauthorized. If you are not the intended recipient, please
>> immediatelynotify the sender by replying to this message and delete the
>> materialimmediately from your system. Any further use, dissemination,
>> distributionor reproduction of this email is strictly prohibited. Further,
>> norepresentation is made with respect to any content contained in this
>> email.*
>
>

Re: [Question] MacOS self-hosted servers - BEAM-12812

Posted by Danny McCormick <da...@google.com>.
Unfortunately, Apple is pretty hardcore about licensing such that AWS, Mac
Stadium, or buying/hosting dedicated macs are pretty much the only good
options AFAIK. That was a pain in the butt for the multiple CI systems I've
worked on in the past.

> Is this approach completely allowed according to Apple’s license?

Almost definitely not - Apple's OS licensing requires every OS to be run on
"Apple-branded" hardware - e.g. from the Catalina license (
https://www.apple.com/legal/sla/docs/macOSCatalina.pdf)

"The grants set forth in this License do not permit you to, and you agree
not to, install, use or run the Apple Software on any non-Apple-branded
computer, or to enable others to do so."

The same presumably applies to the Hackintosh approach.

Disclaimer - I'm not a lawyer, but I have had lawyers say my team couldn't
do something like this in the past 🙂

Thanks,
Danny

On Wed, Feb 23, 2022 at 5:44 PM Daniela Martín <da...@wizeline.com>
wrote:

> Hi everyone,
>
> We are currently working on *BEAM-12812 Run GitHub Actions on GCP
> self-hosted workers* [1] task, and we would like to know your thoughts
> regarding the Mac OS runners.
>
> Some context of the task
>
> The current GitHub Actions workflows are being tested on multiple
> operating systems, such as Ubuntu, Windows and MacOS. The way to migrate
> these runners from GitHub-hosted to GCP is by implementing self-hosted
> runners, so we have started implementing them in both Ubuntu and Windows
> environments, going with Google Kubernetes Engine and Google Cloud Compute
> VMs instances respectively.
>
> Findings
>
> In addition, we are working on researching the best way to implement the
> MacOS self-hosted runners, concluding with the following approaches:
>
>    -
>
>    Cloud Virtual Machines Support
>    -
>
>    Mac OS X in Docker
>    -
>
>    Hackintosh
>
>
> Cloud VM Support
>
> We have found that there are other Cloud Providers, such as AWS [2], that
> allow us to host Mac OS instances in our own dedicated hosts using official
> Apple hardware. However, we don’t have any Mac OS image available in Google
> Cloud Platform [3] yet.
> Mac OS X in Docker
>
> A Docker image docker-osx [4] is available in Docker Hub for running Mac
> OS X in a Docker container.
>
> Pros
>
> Cons
>
>    -
>
>    macOS Monterey VM on Linux
>    -
>
>    Near-native performance
>    -
>
>    Multiple versions of mac OS: High Sierra, Mojave, Catalina, Big Sur
>    and Monterey
>    -
>
>    Multiple kind of images depending on the use case
>    -
>
>    Runs on top of QEMU + KVM
>    -
>
>    Supports Kubernetes
>
>
>    -
>
>    Is this approach completely allowed according to Apple’s license?
>    -
>
>    Unverified Docker Hub publisher
>    -
>
>    Hardware virtualization enabled in BIOS
>    -
>
>    Approx 20 GB disk space for minimum installation
>
>
>
> Hackintosh
>
> A way to get Mac OS running on hardware that is not authorized by Apple.
> The creation and configuration of the equipment (using GNU/Linux as a base)
> can become very complicated resulting in a malfunctioning OS if the
> required settings are not properly implemented or the hardware is not
> suitable.
>
>
> In conclusion, we found that there are some ways to run macOS in
> self-hosted runners, however this could conflict with Apple's terms and
> licenses and should be investigated in depth before any implementation.
>
> The question here would be, if someone knows any other approach where we
> could run Mac OS in the Cloud following Apple's licenses.
>
> Also, we would like to know if there is any information regarding Google
> Cloud Platform having a macOS image anytime soon for running it in VM or
> containers, as we think this may be the best approach for this task.
>
> Please feel free to share your comments and suggestions.
>
> Thank you!
>
> Regards,
>
> [1] https://issues.apache.org/jira/browse/BEAM-12812
>
> [2]
> https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html
>
>
> [3]
> https://cloud.google.com/migrate/compute-engine/docs/5.0/reference/supported-os-versions
>
>
> [4] https://hub.docker.com/r/sickcodes/docker-osx
>
> --
>
> Daniela Martín (She/Her) | <https://www.wizeline.com/>
>
> Site Reliability Engineer III
>
> daniela.martin@wizeline.com
>
> Amado Nervo 2200, Esfera P6, Col. Ciudad del Sol, 45050 Zapopan, Jal.
>
> Follow us Twitter <https://twitter.com/wizelineglobal> | Facebook
> <https://www.facebook.com/WizelineGlobal> | Instagram
> <https://www.instagram.com/wizelineglobal/> | LinkedIn
> <https://www.linkedin.com/company/wizeline>
>
> Share feedback on Clutch <https://clutch.co/review/submit/375119>
>
>
>
>
>
>
>
>
> *This email and its contents (including any attachments) are being sent
> toyou on the condition of confidentiality and may be protected by
> legalprivilege. Access to this email by anyone other than the intended
> recipientis unauthorized. If you are not the intended recipient, please
> immediatelynotify the sender by replying to this message and delete the
> materialimmediately from your system. Any further use, dissemination,
> distributionor reproduction of this email is strictly prohibited. Further,
> norepresentation is made with respect to any content contained in this
> email.*