@radhya/mach 1.4.16 → 1.4.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +9 -8
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -294,7 +294,10 @@ if [ -f "$HOME/.bash_profile" ]; then source "$HOME/.bash_profile"; fi
294
294
  if [ -f "$HOME/.bashrc" ]; then source "$HOME/.bashrc"; fi
295
295
  set -e
296
296
 
297
- # 3. Forward environment variables (includes PRESIGNED_* URLs + project secrets)
297
+ # 3. Node version switch (must happen before any npm/node usage)
298
+ {{NODE_VERSION_SETUP}}
299
+
300
+ # 4. Forward environment variables (includes PRESIGNED_* URLs + project secrets)
298
301
  {{ENV_VARS}}
299
302
 
300
303
  BUILD_ID="{{BUILD_ID}}"
@@ -333,9 +336,6 @@ unzip -o -q source.zip
333
336
 
334
337
  echo "[STEP_START:deps] $(date +%s)"
335
338
 
336
- # --- Node Version Switch ---
337
- {{NODE_VERSION_SETUP}}
338
-
339
339
  # --- DERIVED DATA SETUP ---
340
340
  export DERIVED_DATA_PATH="{{REMOTE_DIR}}/DerivedData"
341
341
  mkdir -p "$DERIVED_DATA_PATH"
@@ -371,15 +371,16 @@ if [ ! -d "node_modules" ] || [ -z "$(ls -A node_modules 2>/dev/null)" ]; then
371
371
  fi
372
372
 
373
373
  # Install Dependencies
374
+ echo "[NODE] Active: $(node -v) | $(which node)"
374
375
  if [ -f "yarn.lock" ]; then
375
376
  echo "Running yarn install..."
376
- yarn install --ignore-engines --prefer-offline || exit 1
377
+ yarn install --prefer-offline || exit 1
377
378
  elif [ -f "package-lock.json" ]; then
378
379
  echo "Running npm install..."
379
- npm install --ignore-engines --prefer-offline || exit 1
380
+ npm install --prefer-offline || exit 1
380
381
  else
381
382
  echo "No lockfile detected. Trying yarn then npm..."
382
- yarn install --ignore-engines || npm install --ignore-engines || exit 1
383
+ yarn install || npm install || exit 1
383
384
  fi
384
385
 
385
386
  # Save node_modules cache via presigned URL
@@ -714,7 +715,7 @@ fi
714
715
  `);o.message("Generating macOS build script...");let O=process.env.CODEARTIFACT_AUTH_TOKEN?`export CODEARTIFACT_AUTH_TOKEN="${process.env.CODEARTIFACT_AUTH_TOKEN}"
715
716
  `:"";if(t)for(let[I,b]of Object.entries(t)){let R=b.replace(/"/g,'\\"').replace(/\$/g,"\\$").replace(/`/g,"\\`");O+=`export ${I}="${R}"
716
717
  `}let L=[O,P.logUpload?`export PRESIGNED_LOG_UPLOAD="${P.logUpload}"`:"",P.doneMarker?`export PRESIGNED_DONE_MARKER="${P.doneMarker}"`:"",P.cacheDerivedDataDownload?`export PRESIGNED_CACHE_DD_DOWNLOAD="${P.cacheDerivedDataDownload}"`:"",P.cacheDerivedDataUpload?`export PRESIGNED_CACHE_DD_UPLOAD="${P.cacheDerivedDataUpload}"`:"",P.cacheNodeModulesDownload?`export PRESIGNED_CACHE_NODE_DOWNLOAD="${P.cacheNodeModulesDownload}"`:"",P.cacheNodeModulesUpload?`export PRESIGNED_CACHE_NODE_UPLOAD="${P.cacheNodeModulesUpload}"`:"",P.cachePodsDownload?`export PRESIGNED_CACHE_PODS_DOWNLOAD="${P.cachePodsDownload}"`:"",P.cachePodsUpload?`export PRESIGNED_CACHE_PODS_UPLOAD="${P.cachePodsUpload}"`:"",P.artifactIpaUpload?`export PRESIGNED_ARTIFACT_IPA_UPLOAD="${P.artifactIpaUpload}"`:"",P.artifactAppZipUpload?`export PRESIGNED_ARTIFACT_APP_ZIP_UPLOAD="${P.artifactAppZipUpload}"`:"",`export BUILD_ID="${n}"`,`export ${f.envPrefix}PROJECT_ID="${u}"`,t.MATCH_ENCRYPTION_PASSPHRASE?`export MATCH_PASSWORD="${t.MATCH_ENCRYPTION_PASSPHRASE}"`:"",t.APPLE_TEAM_ID?`export FASTLANE_TEAM_ID="${t.APPLE_TEAM_ID}"`:"",`export MATCH_KEYCHAIN_NAME="${f.credentialsKeychain}"`,`export MATCH_KEYCHAIN_PASSWORD="${f.keychainPassword}"`].filter(Boolean).join(`
717
- `),H=e.nodeVersion?['export NVM_DIR="$HOME/.nvm"','[ -s "$NVM_DIR/nvm.sh" ] && source "$NVM_DIR/nvm.sh"',`nvm install ${e.nodeVersion} 2>/dev/null || true`,`nvm use ${e.nodeVersion}`,'export PATH="$NVM_BIN:$PATH"','echo "[NODE] Using Node $(node -v) at $(which node)"'].join(`
718
+ `),H=e.nodeVersion?['export NVM_DIR="$HOME/.nvm"','[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"',`nvm install ${e.nodeVersion} 2>/dev/null || true`,`nvm use ${e.nodeVersion}`,'export PATH="$NVM_BIN:$PATH"','echo "[NODE] Switched to Node $(node -v)"'].join(`
718
719
  `):"",q=Ai,y={"{{REMOTE_DIR}}":p,"{{ENV_VARS}}":L,"{{CREDENTIAL_DOWNLOADS}}":N,"{{IOS_SCHEME}}":e.iosScheme||"","{{IOS_CONFIG}}":e.iosConfiguration||"Release","{{TEAM_ID}}":e.iosTeamId||"","{{AUTH_PARAMS}}":h,"{{IS_SIMULATOR}}":e.simulator?"true":"false","{{BUILD_ID}}":n,"{{EXPORT_METHOD}}":e.iosExportMethod||"ad-hoc","{{NODE_VERSION_SETUP}}":H};Object.entries(y).forEach(([I,b])=>{q=q.split(I).join(b)});let w=`/tmp/${f.nameLower}-mac-build-${n}.sh`;if(Jn.writeFileSync(w,q),Qe(`${l} ${w} ${c}:${p}/build.sh`),o.stop("Remote script uploaded."),He.info(Te.cyan("Executing remote build. This might take a while...")),Qe(`${s} "bash ${p}/build.sh"`,{stdio:"inherit"}),o.stop("Remote build finished!"),i){o.start("Fetching artifact links...");try{let b=(await $.get(`/builds/${i}/${n}/artifacts`)).data.artifacts||[],R=e.simulator===!0;if(b.length===0&&!R)throw o.stop("Build Failed!"),new Error("Build completed but no artifacts were generated. Check build logs for errors.");if(o.stop("Build Successful!"),b.length>0){He.success("Build Artifacts Ready:");for(let G of b)console.log(`
719
720
  ${Te.yellow(G.name)}:
720
721
  ${Te.cyan(G.downloadUrl)}`);console.log(`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@radhya/mach",
3
- "version": "1.4.16",
3
+ "version": "1.4.18",
4
4
  "description": "Mach CLI: Cloud Build Orchestrator for React Native & Expo",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",