react-native-brownfield icon indicating copy to clipboard operation
react-native-brownfield copied to clipboard

CLI command: build-ios

Open michalchudziak opened this issue 4 years ago • 0 comments

Description

Build commands are core CLI features, they take care of building the final artifact. The command should be invokable as follows:

yarn react-native-brownfield build-ios

The command should utilize underlying iOS project, please check out the diagram: RNB diagram

The command should:

  • bundle JS
  • install pods (along with linking native modules)
  • build frameworks for different architectures
  • merge frameworks into a universal one

The produced output should be a working .xcframework file.

Additional command options:

  • --dev -D flag should build an artifact with no bundle or assets and fetch it from the remote.
  • --config <path/to/config> path to config file

Acceptance criteria

Functional:

  • build-ios command works on example app (produces working artifact on root level)
  • build-ios command works on the newly created react-native init application (produces working artifact on root level)
  • native modules are linked and embedded into artifact
  • assets & resources are linked and embedded into artifact
  • configuration file is respected
  • dev flag should be supported

Non-functional:

  • 100% typescript coverage
  • command is tested with unit tests

michalchudziak avatar Aug 03 '21 21:08 michalchudziak