Xcode Cloud overview

228 points by math-dev 2 years ago | 154 comments
  • alberth 2 years ago
    Dumb question: why does a cloud offering require onprem macOS?

    Shouldn’t folks on iOS at least be able to access XCode Cloud

    • MBCook 2 years ago
      Xcode Cloud is a CI/CD setup for compiling and signing Mac and iOS apps. It is not a web or remote development environment like some other companies offer.

      Because it can be triggered by pushes into git, you could make changes to existing code from an iPad or PC and get it built. But you can’t (realistically) do anything that requires Xcode such as adding new things to your project or messing with xib files.

    • joshspankit 2 years ago
      This is probably a controversial opinion, but it feels like Apple is trying to lock developers in to a single path of constantly upgrading hardware and getting more and more specialized in the skills required in the Apple ecosystem.

      Not just developers who try to do it for a living, but the demographic that used to be called power users (and before that: hackers): the enthusiasts that install things and dig deeper and make tools for themselves and maybe make tools for others or even transition to being career developers.

      It’s the developers who build the moat around the walled gardens of mobile, and enthusiasts who bring in the people in their lives. I think Apple knows this and intentionally builds new APIs (while depreciating old ones) just so they can force devs to upgrade their OS’ which in turn forces them to upgrade to the next generation of restrictive hardware and lead them further down the garden path.

      I have no insight in to the workings of Apple. I only see what they show to the public. I’m comfortable being wrong about this, but I don’t think I am.

      • flohofwoe 2 years ago
        Not a controversional opinion at all but instead very obvious, and for a long time now.

        At least macOS is a UNIX under the hood these days (unlike MacOS 9), which provides some 'cross-platform synergies', but looking at where Apple has been taking these UNIX roots with iOS that was probably just a lucky accident. Enjoy it while it lasts (on macOS at least) ;)

        • pjmlp 2 years ago
          Had BeOS been acquired instead of the NeXT reverse acquisition, Apple's history would have been much different, and most likely there wouldn't be any UNIX desktops to chose from (as I doubt Desktop Linux would have been any different in such alternative universe).
        • ramesh31 2 years ago
          >This is probably a controversial opinion, but it feels like Apple is trying to lock developers in to a single path of constantly upgrading hardware and getting more and more specialized in the skills required in the Apple ecosystem.

          That has literally been Apple’s business model since the 80s.

        • hot_gril 2 years ago
          > This is probably a controversial opinion

          Apple has been well-known as a walled garden since its inception. Some are ok with that, some aren't.

        • derefr 2 years ago
          It’s a CI system with XCode as its fat client. There’s no XCode for iOS.
          • danpalmer 2 years ago
            There isn't an Xcode for iOS, but there is an increasingly capable iOS development environment for iOS, and I expect that this cloud offering is intended to eventually complement that well.

            Much of the stuff that Xcode Cloud does is automation that's ~easy with a terminal and some scripting and that many developers end up doing on their Macs, but that is hard to do in the limited computing environment that iOS offers – things like packaging apps for TestFlight with the right signing keys, compressing images, etc. By moving those processes to automation running in the cloud, Apple are making iOS development on iOS more feasible.

            • smoldesu 2 years ago
              You mean, there is (1) first-party children's sandbox that is being provided by Apple's good graces and private entitlements, written in their own language and only allowing you to publish applications to their heavily taxed storefront?

              Yeah. Sounds like Apple is starting to get serious about their developer market, huh?

          • honkdaddy 2 years ago
            I can't think of a good reason Apple would want to support developers who want to publish in their (very) walled garden but aren't willing to purchase at least one macOS device. There are services which provide virtual Macs, this isn't meant to be one of them.
            • Sirened 2 years ago
              It's a CI/CD, not an IDE. If you want to automatically test your code on all devices in a dozen configs on multiple OS versions, you're going to need to buy some fairly expensive hardware and host it yourself, which is not exactly where the industry is going at the moment with it's "yay cloud" movement.
              • dagmx 2 years ago
                You can already develop apps and publish them completely on iPadOS without a Mac.

                Is it logical to do so? No but it is possible and Apple sanctioned. In fact it was featured at last years WWDC

                • Maursault 2 years ago
                  > I can't think of a good reason Apple would want to support developers who want to publish in their (very) walled garden but aren't willing to purchase at least one macOS device.

                  Those devs aren't going to purchase Apple hardware whether Apple sells them cheeseburgers or not, so its more profitable for Apple to sell them cheeseburgers.

                  • makeitdouble 2 years ago
                    Education perhaps. Kids in middle school or lower might get iPads and not laptops, and programming can be part of their curriculum.
                    • kemayo 2 years ago
                      They actually have that one covered with Swift Playgrounds: https://www.apple.com/swift/playgrounds/

                      You can, in fact, write an app and publish it to Apple's App Store with it, all from an iPad. I have no idea how much actual uptake this has seen, since I think the capability only came out at the start of the year?

                      • pdpi 2 years ago
                        "Xcode Cloud is a continuous integration and delivery service built into Xcode and designed expressly for Apple developers."

                        This is a (presumably well-integrated) alternative to CircleCI. There's nothing about this particular product that would make it even remotely relevant for a middle school programming curriculum.

                        At any rate, what you're asking for already exists — Swift Playgrounds has been around for years, it's specifically tailored for learners, is kid-friendly, and already lets you take the whole journey from your first line of code to publishing on the App Store.

                      • sfifs 2 years ago
                        Hobbyist? Student? Education?

                        But of course that doesn't add to their monopoly profits :-)

                        • MBCook 2 years ago
                          Those categories don’t usually need a CI/CD solution.
                      • diebeforei485 2 years ago
                        I wouldn't be surprised if future versions of iPadOS came with support for Xcode Cloud.

                        Or even Xcode, considering how powerful iPads are these days (M1 chip, etc).

                        • kmeisthax 2 years ago
                          Xcode explicitly supports running external command-line tools in a full-permission, unjailed shell; which is entirely contrary to the iPadOS permission model.

                          Apple's approach seems to be to use Swift packages as an alternative project type that can be shared across iPads and Macs and, most importantly, do not require support for running binaries outside of an app container.

                          How this evolves over time depends on Apple's opinions about their operating systems. If they were to basically hand people what amounts to a manufacturer-sanctioned jailbreak, then they could port Xcode to UIKit with all the functionality it has on MacOS, save for the lack of AppKit support. Alternatively, and more likely, what they'll do is add new app extension types to do Xcode-like things in Swift Playgrounds. So if you need to, say, use Rust code in your app; you'd literally download a Rust compiler from the App Store to do that.

                          Or they could do nothing and be satisfied with the hobbyist-grade, Swift-only programming environment they already ship.

                          • madeofpalk 2 years ago
                            Swift Playgrounds on iOS supports building apps and submitting them to the App Store. It seems like a 'trivial' extension to add in support for XCode Cloud to Swift Playgrounds.
                            • nicoburns 2 years ago
                              They could perhaps run the unsandboxed code in a VM. I’m not sure if iPhone cpus currently support this, but Mac ones do so it could be added.
                          • jbverschoor 2 years ago
                            Because of licensing.
                            • tootie 2 years ago
                              And now you know why Apple is worth $2T
                            • homarp 2 years ago
                              see https://news.ycombinator.com/item?id=32654493

                              "[author] has been using Xcode Cloud to compile and deploy my rcmd app switcher (https://lowtechguys.com/rcmd) for the past few months, and it’s been a great experience.

                              I liked that with a single “git push” I could compile, archive, deploy to TestFlight, and send for beta review. I even pushed a fix from my iPhone using Working Copy one time while I was on a train.

                              These are the pricing plans for those interested:

                              - 25 compute hours/month: Free*

                              - 100 compute hours/month: $49.99/month

                              - 250 compute hours/month: $99.99/month

                              - 1000 compute hours/month: $399.99/month

                              * Free through December 2023, then $14.99/month if you choose to subscribe at that time. "

                              • Maursault 2 years ago
                                > 1000 compute hours/month: $399.99/month

                                This is interesting, because a month never contains more than 744 hours, so even if you owned your own hardware, you couldn't beat Apple's compute power with only one machine.

                                • MBCook 2 years ago
                                  Xcode Cloud can runs your various jobs and builds in parallel.
                                  • 2 years ago
                                  • bee_rider 2 years ago
                                    Depends on what the compute element in their cloud is.
                                  • 2 years ago
                                  • BonoboIO 2 years ago
                                    You can get a Mac Mini M1 as Server for as low as 49$ per month from hetzner.

                                    If you need more CI „hours“ this is a good way to go. For signing and the workflows a base subscription is maybe a good deal.

                                    https://www.hetzner.com/dedicated-rootserver/brands/matrix-a...

                                    Those parallel Test will get through your hours very quickly.

                                    • novok 2 years ago
                                      And then you need to spend all of that time managing that machine for a lot of labor cost. It's all about a balance overall.
                                      • 10000truths 2 years ago
                                        Managing what, exactly? I get that there’s a one time cost you have to pay to set things up, but that’s true of cloud builds as well.
                                        • spiderice 2 years ago
                                          Isn't this a little like saying "Don't pay for Github, just buy a server rack"? My point being, A Mac mini != Xcode Cloud. There are other services that Xcode Cloud offers beyond a roll your own Mac mini solution. Just like how Github offers more services than a roll your own home server offers.
                                          • hot_gril 2 years ago
                                            Managing the difference between a home server and a cloud service.

                                            I used to manage some rack-mount servers for a garage startup. That meant dealing with:

                                            - power (including UPS and remote power strips)

                                            - network (LAN, router, ISP, DNS)

                                            - server hardware

                                            - server BIOS (i.e. pls reboot after power failure)

                                            - OS and software updates

                                            - user admin

                                            - backups

                                            And living 500 miles away from the server room taught me how many things can go wrong when I'm away, and what it takes to even monitor that. Can't easily conclude it wasn't worth, since these were multi-purpose and the equivalent capacity on EC2 would've cost a ton, but doing all that just for Xcode builds would've been silly.

                                            Closer to the topic, I also used to just manage a remote Mac mini server. It was also not automatic. Even had both disks in my RAID1 set fail over time.

                                            • MBCook 2 years ago
                                              Software updates, for one.
                                              • onion2k 2 years ago
                                                Managing what, exactly? I get that there’s a one time cost you have to pay to set things up, but that’s true of cloud builds as well.

                                                Yes, because XCode famously never crashes.

                                            • Cthulhu_ 2 years ago
                                              Amazon also has M1 available now: https://aws.amazon.com/about-aws/whats-new/2022/07/general-a...

                                              We've just set up our CI in it (set it up as a Gitlab runner), it seems to work fine. To add more complexity, it isn't even a native iOS app but Nativescript. I think we use it to make the Android builds as well.

                                              • MrDOS 2 years ago
                                                For $475/month, I hope you're able to use it for more than just iOS builds.

                                                I know I'm too hobbyist- and small-business-minded for lots of folks on HN, but that monthly fee is a mind-boggling non-starter for me. I know that cloud services are never the cheapest option and I don't want to come off as a skinflint, but AWS' Mac pricing is just absurd. Two months' rental pays for the machine outright (three, if you upgrade the RAM or storage). I wouldn't leap into running a public-facing service on a machine parked in the back corner of an office somewhere, but it's not a big deal if your CI/CD machine goes offline for a few minutes if power or data connectivity stumbles.

                                                • klausa 2 years ago
                                                  I've worked for a startup where we begged the IT folks to just buy us an M1 Mac Mini to stuff in the closet somewhere, or at least sign us up for Mac Stadium or something, but it was borderline impossible to convince them to do that.

                                                  Talking to DevOps folks to spin up two dedicated instances on AWS? I had access within 10 minutes.

                                                • meowtimemania 2 years ago
                                                  How do you like nativescript? I haven’t met anyone using it yet
                                                  • BonoboIO 2 years ago
                                                    Amazon charges 10 times the amount of hetzner ... uncounted bandwidth usage
                                                  • nix23 2 years ago
                                                    • 2 years ago
                                                      • zionic 2 years ago
                                                        Why would I ever pay hetzner money when they dare to dictate what software I can/can not run.
                                                        • rfrey 2 years ago
                                                          So instead you'll give your money to... Apple?
                                                          • hamandcheese 2 years ago
                                                            Care to explain this one?
                                                            • powerhour 2 years ago
                                                              Folks are sad that Hetzner, like most mainstream providers, has a policy against running crypto software and port scanners.
                                                        • password4321 2 years ago
                                                          Achieving an open-source implementation of Apple Code Signing and notarization

                                                          https://news.ycombinator.com/item?id=32386762

                                                          • Apocryphon 2 years ago
                                                            Finally, the fruits of the Buddybuild acquisition(?)
                                                            • akmarinov 2 years ago
                                                              For comparison Bitrise charges 3 tokens per minute on an M1 mac and 10 000 tokens are $500. That gives you 55 hours.
                                                              • wetpaws 2 years ago
                                                                Bitrise does a lot more than just iOS cicd
                                                                • akmarinov 2 years ago
                                                                  Not on an M1 Mac, they don't
                                                                  • smoldesu 2 years ago
                                                                    So... let's pop the champagne for the 1,000 Billion dollar business finally engineering a cheaper way to deliver their own software?
                                                                • 2 years ago
                                                                • frizlab 2 years ago
                                                                  It’s a small c in Xcode…
                                                                  • sebastien_b 2 years ago
                                                                    Also I wonder why they never pronounced it “Ten-Code” (after all “Mac OS X” was “Mac oh-ess Ten”)
                                                                    • dwaite 2 years ago
                                                                      Apple likes to write ten as the roman numeral X - that does not mean all uses of the letter X are the number 10.
                                                                      • eyelidlessness 2 years ago
                                                                        For that matter it should’ve been renamed 11code alongside the release of macOS 11!
                                                                        • eyelidlessness 2 years ago
                                                                          • eyelidlessness 2 years ago
                                                                            Whoever flagged my adjacent comment, “applaud” means praise. I applaud the person who downvoted my bad joke. I was sincerely agreeing with the downvote of my own comment, not objecting to the downvote. I will however object to being moderated for agreeing with being moderated.
                                                                        • lostgame 2 years ago
                                                                          I’ve been developing with Xcode since at least 2005 and I still have, for some reason, never gotten used to this. It’s only autocorrect that saves me, I always instinctively type it with a capital C. Weird.
                                                                          • monocularvision 2 years ago
                                                                            Yes, can we get the title updated to fix my twitching eye?
                                                                            • smoldesu 2 years ago
                                                                              Oh, the humanity.
                                                                            • jbverschoor 2 years ago
                                                                              The first steps to Apple’s AWS competitor. Their multi billion contract with Amazon will end soon, so the timing makes perfect sense.
                                                                              • yazaddaruvala 2 years ago
                                                                                Apple took the first steps to an AWS competitor in 2010 when it started working on phone CPUs.

                                                                                Apple is very unlikely to build a “general cloud” offering. This is built and sold on differentiated services (eg BigQuery, Lambda, Kinesis), not on undifferentiated compute units (ie Apple Silicon even if it is slightly cheaper for the raw hardware).

                                                                                Meanwhile, every time a developer uses local inference with CoreML, that competes directly with AWS’ revenue.

                                                                                Apple’s “cloud” offering will be hosted in people’s pockets, powered by electricity consumers pay for, and hardware that Apple sells for a fat profit. And they will keep empowering developers to move more compute over to “the client”.

                                                                                • Cthulhu_ 2 years ago
                                                                                  I think that IF they were to do any kind of cloud offering, it would be services for apps - storage like Firebase, push notifications, analytics, in-app purchase management, that kind of thing.
                                                                                  • yazaddaruvala 2 years ago
                                                                                    My guess, they’ll contract this out to a player like Cloudflare (like with iCloud relay).

                                                                                    e.g. I can see Apple building a framework for “isomorphic” Apps. Where the front end in SwiftUI and backend in SwiftStateful (a hypothetical framework for permissions/auth and connecting to cloud databases) compiled and deployed to CF Workers or some other edge deployed service.

                                                                                    I think they might even take this one step further and make some future version of MacStudio+WiFi that downloads and executes CFs Workers. If they went this route, it’s unclear if they’d need or want a partner like CF just to deploy and cache the workers.

                                                                                    Disclaimer: I have an investment in Cloudflare. I have no real idea about anything really.

                                                                                • Ancapistani 2 years ago
                                                                                  While I doubt it, I hope so.

                                                                                  Apple Silicon is so much more efficient on the desktop, and an AWS competitor might make it worthwhile to consider using aarm64 containers end-to-end. That would be amazing.

                                                                                  • suresk 2 years ago
                                                                                    I'm not sure what I'm missing, but don't most cloud providers have ARM instances these days? We've been running most of our stuff on Graviton processors on AWS for some time now and it is a nice cost savings.
                                                                                    • WatchDog 2 years ago
                                                                                      It’s not just a matter of ISA, Apple’s CPUs are significantly more performant in a number of ways compared to other ARM CPUs on the market at the moment.
                                                                                    • aeyes 2 years ago
                                                                                      Why is it not worthwhile to run ARM containers on AWS today? Savings should be roughly 20%.
                                                                                  • Aloha 2 years ago
                                                                                    How does a CI/CD system lead to an AWS competitor?
                                                                                    • altairprime 2 years ago
                                                                                      The pricing is in compute hours, which means that their app-integrated CI/CD offering directly competes with offerings that require you to purchase your own retail-rate AWS EC2 &co compute hours.
                                                                                      • dwaite 2 years ago
                                                                                        They are likely pricing in compute hours because their upstream providers also bill in compute-hours.

                                                                                        The lack of an ongoing free tier also softly implies that they are being charged upstream.

                                                                                    • mrweasel 2 years ago
                                                                                      That sort of raises the question: What does Xcode Cloud run on?

                                                                                      You would assume macOS as the operating system, but is that manageable at that scale? Maybe it runs on Linux and cross-compiles? Apple do run their own data-centers, which I assume all run Linux. If there was some headless macOS version and data-center wide management framework for it, I suspect that we would have heard about it. If the Xcode Cloud runs on macOS, does that mean that Apple have some rack mounted servers based on the M1/M2 processors?

                                                                                      • AJRF 2 years ago
                                                                                        It runs macOS on QEMU on machines that use Intel Xeon Gold 5218's - https://twitter.com/KhaosT/status/1410332951963869185/photo/...
                                                                                        • oefrha 2 years ago
                                                                                          Folks at e.g. MacStadium has been managing Mac minis (running macOS) at scale for a very long time. AWS also entered the space ~2 years ago. Of course Apple can do it themselves, and more efficiently.
                                                                                          • Cthulhu_ 2 years ago
                                                                                            > You would assume macOS as the operating system, but is that manageable at that scale?

                                                                                            Sure, it's a unix system. You can go far with SSHing into a machine and running some commands. Also, they only very recently discontinued MacOS Server (https://support.apple.com/en-us/HT208312)

                                                                                            Hardware-wise, it's either a battery of Mac Minis or Mac Pros, or maybe they've made custom hardware so they can put Apple hardware in a blade server form factor.

                                                                                            • jbverschoor 2 years ago
                                                                                              Darwin is headless. But maybe they're running asahi, although I doubt it. To run nodes, you don't actually need a complete distribution..

                                                                                              All the cloud providers create custom rack servers and even silicon, so why wouldn't they have rack mounted Mx boards? Also, the Mx gives you a lot of power for per watt. Perfect use case of a DC.

                                                                                              • saagarjha 2 years ago
                                                                                                It's macOS running in QEMU on commodity hardware.
                                                                                                • mrweasel 2 years ago
                                                                                                  Doesn’t that assume continued support for Intel CPUs? Once all the Macs are Apple Silicon they’d some else.
                                                                                              • jasoncartwright 2 years ago
                                                                                                Is that true? Have they been investing the required billions (tens of billions?) in datacenter infrastructure across the globe to do this?
                                                                                                • jbverschoor 2 years ago
                                                                                                  They have built a few datacenters around the globe.

                                                                                                  They’re spending 10B between 2018 and 2023 to build datacenters in the US.

                                                                                                  They’ve been a big customer on all cloud platforms (learning). The last contract with aws is worth at least 1.5b (300m/year but growing since 2018) and ends in about 1.5 year.

                                                                                                  Seems like a good place to save billions, and make some more by offering cloud services on efficient systems.

                                                                                                  And they've been hiring a lot of infra people since 2020

                                                                                                • 2 years ago
                                                                                                • m3kw9 2 years ago
                                                                                                  25$ or compute hours free a month, I wonder how much tests that is, and any overhead cpu costs?
                                                                                                  • codazoda 2 years ago
                                                                                                    3. Free through December 2023, then US$14.99 per month if you choose to subscribe at that time.
                                                                                                  • nikanj 2 years ago
                                                                                                    Does this mean one can reasonably develop ios apps without a mac?
                                                                                                    • pooper 2 years ago
                                                                                                      Sadly, no.

                                                                                                      > Xcode Cloud is a continuous integration and delivery service built into Xcode and designed expressly for Apple developers. It accelerates the development and delivery of high-quality apps by bringing together cloud-based tools that help you build apps, run automated tests in parallel, deliver apps to testers, and view and manage user feedback.

                                                                                                      This requires xcode, which requires a Mac as far as I know.

                                                                                                      • paxys 2 years ago
                                                                                                        This is just a CI/CD product. You still need a Mac and the Xcode desktop app.
                                                                                                        • 2 years ago
                                                                                                        • Cthulhu_ 2 years ago
                                                                                                          Why would you? I'm of the opinion that instead of trying to fight the system you should work with it, take the path of least resistance, and work on the best solution for the problem.

                                                                                                          Tangentially related, in my opinion, native apps built in the tooling offered by the phone's manufacturer (xcode or android studio) will always be superior - to the end-user - than any cross-platform compromise. I'll admit that e.g. react native may have a better developer experience, but you don't build apps for the developers, right?

                                                                                                          • data-ottawa 2 years ago
                                                                                                            No, this lets you do automated tests and builds in the cloud.

                                                                                                            You’ll still need Xcode to create the project, sign it, manage entitlements, load to test flight, etc.

                                                                                                            • MBCook 2 years ago
                                                                                                              Xcode cloud requires you let Apple handle code signing automatically so you don’t have to do it locally, although obviously you still have to have a paid account. Additionally as others have mentioned this can push things to TestFlight for you.
                                                                                                              • DelightOne 2 years ago
                                                                                                                > load to test flight

                                                                                                                The web page says it supports test flight.

                                                                                                              • kemayo 2 years ago
                                                                                                                As others have said, this is largely unrelated.

                                                                                                                However, they're making some steps in the direction of letting you develop iOS apps with just an iPad, via new capabilities in Swift Playgrounds: https://support.apple.com/guide/playgrounds-ipad/get-started...

                                                                                                                e.g. https://9to5mac.com/2022/01/05/this-to-do-list-app-is-the-fi...

                                                                                                                • candiddevmike 2 years ago
                                                                                                                  Get a Mac Mini and use VNC along with a GitHub/GitLab runner. Works quite well!
                                                                                                                  • chrisseaton 2 years ago
                                                                                                                    > without a mac

                                                                                                                    > Get a Mac

                                                                                                                    • hot_gril 2 years ago
                                                                                                                      Next recommendation is gonna be to build a Hackintosh. (Btw, I did, and I even ran Xcode on it, would not recommend.)
                                                                                                                  • Tepix 2 years ago
                                                                                                                    If you don't want to buy one, you can rent a Mac in the cloud only when you need it (unrelated to Xcode Cloud) for 0.10€ per hour at Scaleway
                                                                                                                    • keraf 2 years ago
                                                                                                                      If only. Apple's licensing terms require you to keep the instance for at least 24 hours[0].

                                                                                                                      [0] On the Scaleway checkout for the Mac Mini M1, at the bottom: "As required by Apple License, you must keep this Instance for at least 24 hours. You will be able to delete it only after 24 hours.".

                                                                                                                    • xuki 2 years ago
                                                                                                                      If you don't care about TOS, it's very easy to run macOS on x86 hardware these days.
                                                                                                                      • obenn 2 years ago
                                                                                                                        You still need a Mac with Xcode
                                                                                                                      • solarkraft 2 years ago
                                                                                                                        I do wonder how they're implementing this. Are they also building Mac Mini farms or are they making exemptions from their ToS for themselves like so often to get around that and be able to run their service more efficiently than their competitors?

                                                                                                                        It feels like something that may or should be prevented by some laws.

                                                                                                                        • sokoloff 2 years ago
                                                                                                                          Is it really an exemption from the ToS for them to run their own operating system on other hardware?

                                                                                                                          For one thing, it would still be "Apple-branded hardware" if Apple just puts an Apple sticker on it, so would literally be compliant with the same ToS they offer to everyone, but even if it wasn't based on that technicality, they reserve all other rights to their IP, so I don't see any logical or legal reason why they couldn't either make a version of Xcode that ran on an alternate OS or run macOS on other hardware.

                                                                                                                          • jhugo 2 years ago
                                                                                                                            Exactly. "Apple Cloud Server Mk.1", powered by a Xeon processor.
                                                                                                                            • hot_gril 2 years ago
                                                                                                                              Better off with AS anyway. Edit: Welp, turns out it is on a Xeon in an emulator (see comment below).
                                                                                                                          • coldtea 2 years ago
                                                                                                                            >or are they making exemptions from their ToS for themselves

                                                                                                                            Err, allowing it to your self, is not an "exception from their ToS". The ToS, any ToS, only applies to third parties you provide a service/product to. You're free to do whatever you want with it yourself (within the general law of the land).

                                                                                                                            It's the same reason someone can't "violate" GPL by giving their own code, they wrote themselves, under a closed license as well, or even stop providing new versions under GPL altogether...

                                                                                                                            • mrpippy 2 years ago
                                                                                                                              At least last summer, the machine type was “AppleQEMU” and CPU was a Xeon Gold 5218

                                                                                                                              https://news.ycombinator.com/item?id=27698380

                                                                                                                              • userbinator 2 years ago
                                                                                                                                Probably running KVM, so basically, it's their own Hackintosh?
                                                                                                                              • reaperducer 2 years ago
                                                                                                                                It's the same TOS exception that video game companies get when they patch their own games: none. Because none is required.

                                                                                                                                Really, the knee-jerk axe grinding on HN has gotten so predictable lately.

                                                                                                                                • hot_gril 2 years ago
                                                                                                                                  It is pretty telling that they've deliberately made devs unable to build Apple software on non-Apple hardware, though. I've already ground my Apple tree axe down to nothing and quit being an iOS app developer; fed up with their antics.
                                                                                                                                • mr_toad 2 years ago
                                                                                                                                  > are they making exemptions from their ToS for themselves

                                                                                                                                  You can’t enter into a legal contract with yourself, and you couldn’t legally enforce terms on yourself even if for some bizarre reason you wanted to.

                                                                                                                                  • joshspankit 2 years ago
                                                                                                                                    I mean they definitely can (and do) enter in to legal agreements with “themselves”. Many companies do, especially when it comes to licensing (even Subway does it).

                                                                                                                                    It’s one of the most common methods for shifting income to other countries where the taxes are lower.

                                                                                                                                    • jhugo 2 years ago
                                                                                                                                      No, that's two separate (but related) legal entities entering into agreements with each other.
                                                                                                                                      • prepend 2 years ago
                                                                                                                                        Those are with separate legal entities like subsidiaries and franchises.
                                                                                                                                    • BonoboIO 2 years ago
                                                                                                                                      Really good question, I think someone will get their hands dirty and find a way to see on which hardware it’s running. Maybe through time correlation, that 2 test are running on the same hardware and reverse the power of the Hardware.
                                                                                                                                      • joshspankit 2 years ago
                                                                                                                                        They have public documentation[1] about running macOS in a VM, so maybe they’ve let that go?

                                                                                                                                        The parts of their ToS you are alluding to mostly talks about it being against ToS to run macOS on non-Apple hardware and since Apple makes chips now it’s very possible that the entire Xcloud service is running on Apple hardware.

                                                                                                                                        [1]https://developer.apple.com/documentation/virtualization/run...

                                                                                                                                        • jhugo 2 years ago
                                                                                                                                          They didn't "let anything go" by publishing these docs; since they've never forbidden running macOS in a VM, only running it on non-Apple hardware.
                                                                                                                                        • renewiltord 2 years ago
                                                                                                                                          I'm going to make an exception from my usual policy and go sleep in my bed without first asking my wife.
                                                                                                                                          • naikrovek 2 years ago
                                                                                                                                            if they are only offering CI/CD time, they aren't doing anything forbidden to anyone else.

                                                                                                                                            it is lease of an entire MacOS VM that must be one 24-hours at a time, along with other restrictions.

                                                                                                                                            • 2 years ago
                                                                                                                                              • MBCook 2 years ago
                                                                                                                                                My understanding is Apple uses Linux a lot internally for server stuff. Wouldn’t surprise me one bit if it was just Linux machines running LLVM and their other tools.

                                                                                                                                                Perhaps the stuff runs on MacOS in VMs for the best compatibility, but I’m not sure that’s strictly necessary.

                                                                                                                                                • mrweasel 2 years ago
                                                                                                                                                  The iPhone apps where already cross-compiled from AMD64, before the switch to the Apple Silicon. It might not take that much to do the compilation on an Linux server, regardless of the underlying hardware.

                                                                                                                                                  There is something weird about a company that makes it's own hardware and operating system using something completely different in their datacenters. However I don't think that macOS have the tooling required to large scale installation required for something like this.

                                                                                                                                                  • pjmlp 2 years ago
                                                                                                                                                    Once upon a time they did.
                                                                                                                                                • 2 years ago
                                                                                                                                                  • 2 years ago
                                                                                                                                                    • duxup 2 years ago
                                                                                                                                                      I think Apple can declare their TOS doesn’t apply to them.
                                                                                                                                                      • 2 years ago
                                                                                                                                                    • keyle 2 years ago
                                                                                                                                                      Cough cough, sarcastic old dev here "yeah, that's what XCode needed, cloud CI/CD".
                                                                                                                                                      • tomovo 2 years ago
                                                                                                                                                        Yeah and a great motivator for the business to do everything in their power to make the Swift compiler faster. Oh wait…
                                                                                                                                                        • 2 years ago
                                                                                                                                                          • draw_down 2 years ago
                                                                                                                                                          • zackify 2 years ago
                                                                                                                                                            Xcode cloud is terrible. Slow. Fails randomly with unknown error messages.

                                                                                                                                                            Save yourself time and money with an M1 Mac mini as a GitHub actions self hosted runner.

                                                                                                                                                            Pays for itself quickly, you can upload apps direct to App Store Connect from Xcode cli tools already.

                                                                                                                                                            • zionic 2 years ago
                                                                                                                                                              >Slow. Fails randomly with unknown error messages.

                                                                                                                                                              I mean, that’s Xcode on your machine. Why would Xcode on someone else’s machine be any better?

                                                                                                                                                              • JimDabell 2 years ago
                                                                                                                                                                If you’re going to complain that Xcode Cloud is unreliable, it’s probably best not to suggest GitHub Actions as an alternative, it doesn’t have the best track record for reliability itself.

                                                                                                                                                                https://hn.algolia.com/?q=github+down

                                                                                                                                                                • 2 years ago
                                                                                                                                                                • fellellor 2 years ago
                                                                                                                                                                  Do people find it hard to run Xcode on their MacBook Air? Who is this service targeted to? I’m asking because I don’t know.
                                                                                                                                                                  • mrweasel 2 years ago
                                                                                                                                                                    Businesses? I'm thinking it's something a team of developers would use. There are a ton of project on GitHub that uses various CI/CD tools to build package, rather than letting a random developer build an distribute a new release. Similarly a company might want to use this to test, build and release software. Checking that patches and updates from any number of developers can be merged and verify that all tests still passes.

                                                                                                                                                                    If I understand it correctly, it would also mean that use Xcode Cloud to release an application into the App Store. Then no single developer needs access to submit new versions.

                                                                                                                                                                  • Cthulhu_ 2 years ago
                                                                                                                                                                    Say you have a 6 or more developer team working on an app. Do you really want everyone to be able to create production builds? Or do you really want to rely on one guy having the production certificates?

                                                                                                                                                                    What if you've outsourced your app development; do you really want random developers spread across the world from having the ability to make production builds?

                                                                                                                                                                    Anyway, there's more authorative sources on the internet about "why CI" than some guy (me) in a comment section.

                                                                                                                                                                    • fellellor 2 years ago
                                                                                                                                                                      Oh I thought this was for individuals for some reason.