Skip to content
This repository has been archived by the owner on Oct 4, 2023. It is now read-only.

Commit

Permalink
[C-1012] Remove web build from mobile build (#1907)
Browse files Browse the repository at this point in the history
  • Loading branch information
raymondjacobson committed Sep 13, 2022
1 parent 8572ee3 commit 22288b1
Show file tree
Hide file tree
Showing 8 changed files with 42 additions and 118 deletions.
44 changes: 10 additions & 34 deletions .circleci/src/commands/@mobile-commands.yml
Original file line number Diff line number Diff line change
@@ -1,40 +1,19 @@
# Build the web to be bundled with the mobile client
mobile-build-web-app:
parameters:
build-type:
default: "mobile-prod"
type: string
steps:
- checkout
- attach_workspace:
at: ./
- run:
name: build
command: cd packages/web && CI=false npm run build:<<parameters.build-type>>
- persist_to_workspace:
root: ./
paths:
- packages/web

# Build the ios app
mobile-build-ios:
parameters:
build-directory:
default: "build-mobile-production"
default: 'build-mobile-production'
type: string
bundle-id:
default: "co.audius.audiusmusic"
default: 'co.audius.audiusmusic'
type: string
env:
default: ".env.prod"
default: '.env.prod'
type: string
steps:
- checkout
- attach_workspace:
at: ./
- run:
name: Move Web App build
command: mkdir -p packages/mobile/web-app/Web.bundle/build && mv packages/web/<<parameters.build-directory>>/* packages/mobile/web-app/Web.bundle/build
- run:
name: update cocoapods
command: sudo gem install cocoapods
Expand Down Expand Up @@ -74,7 +53,7 @@ mobile-build-ios:
mobile-upload-ios:
parameters:
bundle-id:
default: "co.audius.audiusmusic"
default: 'co.audius.audiusmusic'
type: string
steps:
- run:
Expand All @@ -85,27 +64,24 @@ mobile-upload-ios:
mobile-build-android:
parameters:
build-directory:
default: "build-mobile-production"
default: 'build-mobile-production'
type: string
build-type:
default: "bundleRelease"
default: 'bundleRelease'
type: string
bundle-id:
default: "co.audius.app"
default: 'co.audius.app'
type: string
track:
default: "beta"
default: 'beta'
type: string
remote-directory:
default: "audius-mobile"
default: 'audius-mobile'
type: string
steps:
- checkout
- attach_workspace:
at: ./
- run:
name: Move Web App build
command: mkdir -p packages/mobile/web-app/Web.bundle/build && mv packages/web/<<parameters.build-directory>>/* packages/mobile/web-app/Web.bundle/build
- run:
name: migrate support libraries for androidX packages
command: |
Expand Down Expand Up @@ -144,7 +120,7 @@ mobile-build-android:
mobile-upload-android:
parameters:
upload-type:
default: "prod"
default: 'prod'
type: string
steps:
- run:
Expand Down
70 changes: 26 additions & 44 deletions .circleci/src/jobs/@mobile-jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,61 +55,43 @@ mobile-init:
- packages/mobile/.env.stage
- packages/mobile/.env.prod

mobile-build-production-web-app:
working_directory: ~/audius-client
docker:
- image: circleci/node:14.18
resource_class: xlarge
steps:
- mobile-build-web-app:
build-type: "mobile-prod"

mobile-build-staging-web-app:
working_directory: ~/audius-client
docker:
- image: circleci/node:14.18
resource_class: xlarge
steps:
- mobile-build-web-app:
build-type: "mobile-stage"

mobile-build-upload-staging-ios:
working_directory: ~/audius-client
macos: # Run on osx so app can be created and signed.
xcode: "13.3.0"
xcode: '13.3.0'
environment:
FL_OUTPUT_DIR: output
shell: /bin/bash --login -o pipefail
steps:
- mobile-build-ios:
build-directory: "build-mobile-staging"
bundle-id: "co.audius.audiusmusic.bounce"
env: ".env.stage"
build-directory: 'build-mobile-staging'
bundle-id: 'co.audius.audiusmusic.bounce'
env: '.env.stage'
- when:
condition:
matches: { pattern: "^main$", value: << pipeline.git.branch >> }
matches: { pattern: '^main$', value: << pipeline.git.branch >> }
steps:
- mobile-upload-ios:
bundle-id: "co.audius.audiusmusic.bounce"
bundle-id: 'co.audius.audiusmusic.bounce'

mobile-build-upload-production-ios:
working_directory: ~/audius-client
macos: # Run on osx so app can be created and signed.
xcode: "13.3.0"
xcode: '13.3.0'
environment:
FL_OUTPUT_DIR: output
shell: /bin/bash --login -o pipefail
steps:
- mobile-build-ios:
build-directory: "build-mobile-production"
bundle-id: "co.audius.audiusmusic"
env: ".env.prod"
build-directory: 'build-mobile-production'
bundle-id: 'co.audius.audiusmusic'
env: '.env.prod'
- when:
condition:
matches: { pattern: "^release.*$", value: << pipeline.git.branch >> }
matches: { pattern: '^release.*$', value: << pipeline.git.branch >> }
steps:
- mobile-upload-ios:
bundle-id: "co.audius.audiusmusic"
bundle-id: 'co.audius.audiusmusic'

mobile-build-upload-staging-android:
working_directory: ~/audius-client
Expand All @@ -118,17 +100,17 @@ mobile-build-upload-staging-android:
- image: circleci/android:api-30-node
steps:
- mobile-build-android:
build-directory: "build-mobile-staging"
build-type: "bundleBounceRelease"
bundle-id: "co.audius.app.bounce"
track: "alpha"
remote-directory: "audius-mobile-staging"
build-directory: 'build-mobile-staging'
build-type: 'bundleBounceRelease'
bundle-id: 'co.audius.app.bounce'
track: 'alpha'
remote-directory: 'audius-mobile-staging'
- when:
condition:
matches: { pattern: "^main$", value: << pipeline.git.branch >> }
matches: { pattern: '^main$', value: << pipeline.git.branch >> }
steps:
- mobile-upload-android:
upload-type: "bounce"
upload-type: 'bounce'

mobile-build-upload-production-android:
working_directory: ~/audius-client
Expand All @@ -137,14 +119,14 @@ mobile-build-upload-production-android:
- image: circleci/android:api-30-node
steps:
- mobile-build-android:
build-directory: "build-mobile-production"
build-type: "bundleRelease"
bundle-id: "co.audius.app"
track: "alpha"
remote-directory: "audius-mobile"
build-directory: 'build-mobile-production'
build-type: 'bundleRelease'
bundle-id: 'co.audius.app'
track: 'alpha'
remote-directory: 'audius-mobile'
- when:
condition:
matches: { pattern: "^release.*$", value: << pipeline.git.branch >> }
matches: { pattern: '^release.*$', value: << pipeline.git.branch >> }
steps:
- mobile-upload-android:
upload-type: "alpha"
upload-type: 'alpha'
21 changes: 4 additions & 17 deletions .circleci/src/workflows/mobile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,41 +3,28 @@ jobs:
- mobile-init:
context: Audius Mobile Client

- mobile-build-production-web-app:
context: Audius Mobile Client
requires:
- mobile-init
filters:
branches:
only: /(^main|^release.*)$/

- mobile-build-staging-web-app:
context: Audius Mobile Client
requires:
- mobile-init

- mobile-build-upload-staging-ios:
context: Audius Mobile Client
requires:
- mobile-build-staging-web-app
- mobile-init

- mobile-build-upload-staging-android:
context: Audius Mobile Client
requires:
- mobile-build-staging-web-app
- mobile-init

- mobile-build-upload-production-ios:
context: Audius Mobile Client
requires:
- mobile-build-production-web-app
- mobile-init
filters:
branches:
only: /(^main|^release.*)$/

- mobile-build-upload-production-android:
context: Audius Mobile Client
requires:
- mobile-build-production-web-app
- mobile-init
filters:
branches:
only: /(^main|^release.*)$/
8 changes: 0 additions & 8 deletions packages/mobile/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,14 +125,6 @@ adb logcat '*:V'

## Helpful

- Sometimes the simulator app code won't update. You should disable caching in `settings/Network` of React Native Debugger.
- If you feel like debugging the actual static app contained in the build, you can:

```bash
npm install -g serve --user
serve -s web-app/Web.bundle/build -p 9000
```

- If your app is crashing after running for a second, or crashing on startup with no error message, it's probably an environment variable problem, and you should check to make sure you have them all. Debug using XCode.

- Other commands and things:
Expand Down
4 changes: 0 additions & 4 deletions packages/mobile/android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -229,10 +229,6 @@ android {

}
}

sourceSets {
main { assets.srcDirs = ['src/main/assets', '../../web-app'] }
}
}

dependencies {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
5983D8FED74747CCA45F8FC4 /* AvenirNextLTPro-Medium.otf in Resources */ = {isa = PBXBuildFile; fileRef = 33E11CC84EEA4109B8A1AE2C /* AvenirNextLTPro-Medium.otf */; };
717F36E82733C73F0017511F /* AvenirNextLTPro-DemiBold.otf in Resources */ = {isa = PBXBuildFile; fileRef = 717F36E72733C73F0017511F /* AvenirNextLTPro-DemiBold.otf */; };
838AABE023CE3813004B2DA3 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 838AABDF23CE3813004B2DA3 /* GoogleService-Info.plist */; };
83D3A5322399E3290084E702 /* Web.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 83D3A5312399E3290084E702 /* Web.bundle */; };
83F7359F23C55C2D0040A4C5 /* AirplayViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 83F7359E23C55C2D0040A4C5 /* AirplayViewManager.m */; };
83F735A523C64C950040A4C5 /* AirplayEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 83F735A423C64C950040A4C5 /* AirplayEvent.m */; };
83FB60B623A4351D00DC2238 /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 008F07F21AC5B25A0029DE68 /* main.jsbundle */; };
Expand Down Expand Up @@ -46,7 +45,6 @@
6F65A9A9BAD047FABD240C59 /* AvenirNextLTPro-Regular.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "AvenirNextLTPro-Regular.otf"; path = "../src/assets/fonts/AvenirNextLTPro-Regular.otf"; sourceTree = "<group>"; };
717F36E72733C73F0017511F /* AvenirNextLTPro-DemiBold.otf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "AvenirNextLTPro-DemiBold.otf"; path = "../src/assets/fonts/AvenirNextLTPro-DemiBold.otf"; sourceTree = "<group>"; };
838AABDF23CE3813004B2DA3 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
83D3A5312399E3290084E702 /* Web.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; name = Web.bundle; path = "../web-app/Web.bundle"; sourceTree = "<group>"; };
83E8F64123F6101600817622 /* libRNAnalytics.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libRNAnalytics.a; sourceTree = BUILT_PRODUCTS_DIR; };
83F7359E23C55C2D0040A4C5 /* AirplayViewManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AirplayViewManager.m; sourceTree = "<group>"; };
83F735A423C64C950040A4C5 /* AirplayEvent.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AirplayEvent.m; sourceTree = "<group>"; };
Expand Down Expand Up @@ -98,7 +96,6 @@
children = (
838AABDF23CE3813004B2DA3 /* GoogleService-Info.plist */,
A20D1DBF23ABDA2B003D6530 /* Audius Music.entitlements */,
83D3A5312399E3290084E702 /* Web.bundle */,
008F07F21AC5B25A0029DE68 /* main.jsbundle */,
13B07FAF1A68108700A75B9A /* AppDelegate.h */,
13B07FB01A68108700A75B9A /* AppDelegate.m */,
Expand Down Expand Up @@ -261,7 +258,6 @@
files = (
717F36E82733C73F0017511F /* AvenirNextLTPro-DemiBold.otf in Resources */,
83FB60B623A4351D00DC2238 /* main.jsbundle in Resources */,
83D3A5322399E3290084E702 /* Web.bundle in Resources */,
838AABE023CE3813004B2DA3 /* GoogleService-Info.plist in Resources */,
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */,
Expand Down Expand Up @@ -290,7 +286,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "${SRCROOT}/scripts/bundleReactNative.sh";
shellScript = "${SRCROOT}/scripts/bundleReactNative.sh\n";
};
18A5B1D0CA1543ABB2DC5C65 /* Upload Debug Symbols to Sentry */ = {
isa = PBXShellScriptBuildPhase;
Expand Down
4 changes: 0 additions & 4 deletions packages/mobile/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,6 @@
"private": true,
"scripts": {
"jetifier": "jetifier",
"copy:local-production": "mkdir -p web-app/Web.bundle/build && rm -rf web-app/Web.bundle/build && cp -r ../web/build-mobile-production web-app/Web.bundle/build",
"copy:local-staging": "mkdir -p web-app/Web.bundle/build && rm -rf web-app/Web.bundle/build && cp -r ../web/build-mobile-staging web-app/Web.bundle/build",
"copy:remote-production": "mkdir -p web-app/Web.bundle/build && rm -rf web-app/Web.bundle/build && aws s3 sync s3://audius-mobile/build web-app/Web.bundle/build",
"copy:remote-staging": "mkdir -p web-app/Web.bundle/build && rm -rf web-app/Web.bundle/build && aws s3 sync s3://audius-mobile-staging/build web-app/Web.bundle/build",
"android": "ENVFILE=.env.prod react-native run-android --variant=prodDebug",
"android:bounce": "ENVFILE=.env.stage react-native run-android --variant=bounceDebug --appIdSuffix bounce",
"android:dev": "ENVFILE=.env.dev react-native run-android --variant=prodDebug",
Expand Down
3 changes: 1 addition & 2 deletions packages/mobile/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@
"babel.config.js",
"metro.config.js",
"jest.config.js",
"./android/*",
"./web-app/*"
"./android/*"
]
}

0 comments on commit 22288b1

Please sign in to comment.