Marc Neureiter
07/12/2024, 8:35 AMiosApp
should live in a repo containing the android app and shared module. in that setup, the ios compiler triggers the shared module's compilation routine. after that, the ios compiler can pick up the artifacts from the parent directory. unfortunately, to make this work in the pipeline, you have to completely adapt its configuration to check out the android/shared repository instead, where the ios repository is embedded. that's a huge task.
one of our co-workers has some experience with setups like these and came to the conclusion that a different way is much easier and requires no changes in the ci pipeline while still having the code of both platforms conveniently in one place, so you can check it out with fleet and do code editing and debugging cross-platform. the solution is simply exactly the other way round as described above: the android/shared stuff is checked out into a folder inside the ios project. that way the ci pipeline configuration can stay the same. it's not only easier to adopt kmp that way, it's also no problem having it like that in general, as we wouldn't mind at all to have a folder shared
(containing the android/shared part) inside the ios repo.
i think it's wrong to thinking that, just because "shared" is the new kid on the block, the ios app part needs to be inside the android/shared part. i think easy adoption and relative independency of the ios part from the android/shared part can be key to the adoptionn and success of kmp. we really want to see this option to be an increasingly attractive one for developers and companies everywhere, so we'd be really glad to see this piece of feedback find some reception at jetbrains.
all the best and keep up the really amazing work, jetbrains! ❤️Kurt Renzo Acosta
07/12/2024, 8:39 AMrelease/<env>/android
and release/<env>/ios
. They’d contain the same code but easier to keep track on which is released per platform and and i can run its own pipeline depending on the platform. the main
branch just becomes the latest code so anyone can just push what’s done. i tried the multiple repo approach but it didn’t work out and i like the mental model of building a mobile app rather than building an android/ios app. it kinda forces engineers to think outside their platforms as well but again it depends so YMMVMarc Neureiter
07/12/2024, 8:42 AMdarkmoon_uk
07/16/2024, 2:43 AMgildor
07/16/2024, 3:32 AMMarc Neureiter
07/16/2024, 2:35 PMdarkmoon_uk
07/16/2024, 11:03 PMdarkmoon_uk
07/16/2024, 11:08 PMdarkmoon_uk
07/17/2024, 2:07 AMgildor
07/18/2024, 5:05 AMdarkmoon_uk
07/18/2024, 5:22 AMincludeBuild("<repo_path_to_submodule>/myLibrary")
.gildor
07/18/2024, 5:40 AMgildor
07/18/2024, 5:41 AMgildor
07/18/2024, 6:11 AM