Ich würde sagen, „Website“ passt besser als „Mobile App“, aber ich mag diese Formulierung von Max Lynch
Jede produktive mobile App hat letztendlich eine Reihe von wiederkehrenden Aufgaben im Zusammenhang mit Integration, Testen, Bereitstellung und langfristiger Wartung. Diese Aufgaben müssen oft über ein Team von vielen Entwicklern und App-Projekten hinweg automatisiert werden. Der Aufbau eines Prozesses für diese Aufgaben kann unglaublich zeitaufwendig sein und erfordert spezialisierte Infrastrukturerfahrung, ist aber entscheidend für den Erfolg jedes ernsthaften App-Projekts.
Sie sprechen über "Continuous Integration und Continuous Deployment" oder CI/CD.
Jeder versucht, dich zu seinen CI/CD-Tools zu bewegen, und es ist klar, warum: Es ist eine Form von Vendor-Lock-in. Diese Dinge sind schwierig, also wenn sie helfen können, es einfacher zu machen, ist das großartig, aber sie tun es oft auf ihre eigene spezielle Art und Weise, was bedeutet, dass du nicht einfach gehen kannst, ohne dir selbst viel Arbeit zu machen. Ich lüge nicht, es ist einfach so.
So viel CI/CD-Zeug kreuzt meine Aufmerksamkeit
- Max schrieb über AppFlow, was ein neues CI/CD-Ding von Ionic ist. Ich habe es nicht benutzt, aber hey, es sieht gut aus. Ich habe auch Semaphore nicht benutzt, aber es sieht auch gut aus.
- Ich benutze Buddy auf CSS-Tricks.
- Bei CodePen haben wir früher Capistrano benutzt, dann sind wir zu CodeShip gewechselt, dann zu GitLab (DevOps) und sind jetzt auf GitHub (Actions) mit Pulumi konfiguriert. Das war, nachdem wir uns Azure DevOps und AWS CodeBuild angesehen hatten. Einiges davon beinhaltet die Verwendung von Tools wie Serverless, um Code nach AWS zu bringen.
- Netlify führt meine Builds für alles Jamstack-ähnliche aus, was ich tue, was hochgradig konfigurierbar ist und die Bereitstellung voraussetzt.
- Wir sprachen mit Brian Leroux in ShopTalk, der Begin baut, was serverless CI/CD ist.
- Es scheint, dass die großen Klassiker Jenkins, Circle CI und Travis CI sind.
- Heroku verdient einen High Five dafür, Entwicklern schon vor langer Zeit beigebracht zu haben, dass CI/CD Git-basiert und so einfach wie
git push heroku mastersein sollte.
Ich vermisse wahrscheinlich mindestens 20 Unternehmen hier. Wie ich schon sagte, jeder will dich in seinem System haben. Sie wollen, dass du deine Geheimnisse dort speicherst. Sie wollen, dass du deine Berechtigungen dort konfigurierst.
Heroku ist so einfach wie die Verbindung zum GitHub-Branch des zugehörigen Repos. Wenn du auf den Branch pushst, erfolgt die Bereitstellung automatisch.
Ich habe in letzter Zeit Google Cloud Build und Cloud Run für eine Rails-App verwendet. Ich muss sagen, als ich mit der Recherche begann, wo ich anfangen sollte, war es etwas verwirrend und überwältigend. Ich habe viel Zeit damit verbracht, alles in GitLab einzurichten. Als mir klar wurde, dass ein Git-Spiegel in Google Cloud Source super einfach zu konfigurieren ist, ergab die Verlagerung von allem in die native Cloud-Tooling mit Cloud Run mehr Sinn. Ich erwarte, dass ich das wahrscheinlich mindestens 15 verschiedene Wege einrichten werde, bevor ich das beste Rezept gefunden habe. Ich stimme definitiv zu, dass der Lock-in-Effekt real ist. Es ist nicht gerade das unterhaltsamste Zeug zum Debuggen, wenn es Build-Probleme gibt, ganz zu schweigen von grünen Builds, aber fehlerhaften Anwendungsbereitstellungen.
Ich bin gespannt auf Kommentare zu diesem Thema.
Was ist mit benutzerdefinierten Schriftarten in einem alten Browser wie NetFront...
Fastlane ist ein guter Kandidat für React-Native-Projekte und kann mit vielen erwähnten Tools verbunden werden: https://fastlane.tools/
Persönlich scheinen die CI/CD-Pipelines und Jobs von GitLab sehr gut dokumentiert und einfach zu erlernen zu sein, um deine Pipelines schnell zum Laufen zu bringen. Obwohl, sobald ich die Wege von GitLab gelernt habe, scheint das Erlernen eines völlig anderen CI/CD-Tools jetzt viel Mühe zu kosten, aber ich glaube, sie zielen alle darauf ab, das Gleiche zu erreichen, und es wird nicht zu schwer sein, ein anderes zu lernen.