@expo/eas-build-job 0.2.57 → 0.2.61

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.
package/dist/android.d.ts CHANGED
@@ -10,7 +10,8 @@ export declare enum BuildType {
10
10
  APK = "apk",
11
11
  APP_BUNDLE = "app-bundle"
12
12
  }
13
- export declare const builderBaseImages: readonly ["default", "latest", "stable", "ubuntu-18.04-android-30-ndk-r19c", "ubuntu-20.04-android-30-ndk-r21e"];
13
+ export declare const builderBaseImages: readonly ["default", "latest", "stable", "ubuntu-18.04-android-30-ndk-r19c", "ubuntu-20.04-android-30-ndk-r21e", "ubuntu-18.04-jdk-8-ndk-r19c", "ubuntu-18.04-jdk-11-ndk-r19c", "ubuntu-20.04-jdk-8-ndk-r21e", "ubuntu-20.04-jdk-11-ndk-r21e"];
14
+ export declare const reactNativeVersionToDefaultBuilderImage: Record<string, typeof builderBaseImages[number]>;
14
15
  export interface BuilderEnvironment {
15
16
  image?: typeof builderBaseImages[number];
16
17
  node?: string;
package/dist/android.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.JobSchema = exports.builderBaseImages = exports.BuildType = void 0;
6
+ exports.JobSchema = exports.reactNativeVersionToDefaultBuilderImage = exports.builderBaseImages = exports.BuildType = void 0;
7
7
  const joi_1 = __importDefault(require("joi"));
8
8
  const common_1 = require("./common");
9
9
  const KeystoreSchema = joi_1.default.object({
@@ -23,11 +23,17 @@ exports.builderBaseImages = [
23
23
  'stable',
24
24
  'ubuntu-18.04-android-30-ndk-r19c',
25
25
  'ubuntu-20.04-android-30-ndk-r21e',
26
+ 'ubuntu-18.04-jdk-8-ndk-r19c',
27
+ 'ubuntu-18.04-jdk-11-ndk-r19c',
28
+ 'ubuntu-20.04-jdk-8-ndk-r21e',
29
+ 'ubuntu-20.04-jdk-11-ndk-r21e',
26
30
  ];
31
+ exports.reactNativeVersionToDefaultBuilderImage = {
32
+ '>=0.68.0.': 'ubuntu-18.04-jdk-11-ndk-r19c',
33
+ '<0.68.0': 'ubuntu-18.04-jdk-8-ndk-r19c',
34
+ };
27
35
  const BuilderEnvironmentSchema = joi_1.default.object({
28
- image: joi_1.default.string()
29
- .valid(...exports.builderBaseImages)
30
- .default('default'),
36
+ image: joi_1.default.string().valid(...exports.builderBaseImages),
31
37
  node: joi_1.default.string(),
32
38
  yarn: joi_1.default.string(),
33
39
  expoCli: joi_1.default.string(),
@@ -1 +1 @@
1
- {"version":3,"file":"android.js","sourceRoot":"","sources":["../src/android.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAEtB,qCASkB;AASlB,MAAM,cAAc,GAAG,aAAG,CAAC,MAAM,CAAC;IAChC,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,gBAAgB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACnD,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;CACpC,CAAC,CAAC;AAEH,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,sCAAyB,CAAA;AAC3B,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AAEY,QAAA,iBAAiB,GAAG;IAC/B,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,kCAAkC;IAClC,kCAAkC;CAC1B,CAAC;AAWX,MAAM,wBAAwB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC1C,KAAK,EAAE,aAAG,CAAC,MAAM,EAAE;SAChB,KAAK,CAAC,GAAG,yBAAiB,CAAC;SAC3B,OAAO,CAAC,SAAS,CAAC;IACrB,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE;IAClB,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE;IAClB,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE;IACrB,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE;IACjB,GAAG,EAAE,kBAAS;CACf,CAAC,CAAC;AA8BU,QAAA,SAAS,GAAG,aAAG,CAAC,MAAM,CAAC;IAClC,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE;SACf,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAQ,CAAC,CAAC;SACjC,QAAQ,EAAE;IACb,cAAc,EAAE,4BAAmB,CAAC,QAAQ,EAAE;IAC9C,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,iBAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;IACzD,oBAAoB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE;IAC5B,OAAO,EAAE,aAAG,CAAC,MAAM,CAAC;QAClB,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE;KACtB,CAAC;IACF,OAAO,EAAE,aAAG,CAAC,MAAM,CAAC;QAClB,gBAAgB,EAAE,aAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC;QACrE,kBAAkB,EAAE,kBAAS;KAC9B,CAAC,CAAC,QAAQ,EAAE;IACb,kBAAkB,EAAE,wBAAwB;IAC5C,KAAK,EAAE,oBAAW,CAAC,OAAO,EAAE;IAC5B,iBAAiB,EAAE,aAAG,CAAC,OAAO,EAAE;IAEhC,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE;IAC3B,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE;IAE1B,SAAS,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1D,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC","sourcesContent":["import Joi from 'joi';\n\nimport {\n ArchiveSource,\n ArchiveSourceSchema,\n Env,\n EnvSchema,\n Platform,\n Workflow,\n Cache,\n CacheSchema,\n} from './common';\n\nexport interface Keystore {\n dataBase64: string;\n keystorePassword: string;\n keyAlias: string;\n keyPassword?: string;\n}\n\nconst KeystoreSchema = Joi.object({\n dataBase64: Joi.string().required(),\n keystorePassword: Joi.string().allow('').required(),\n keyAlias: Joi.string().required(),\n keyPassword: Joi.string().allow(''),\n});\n\nexport enum BuildType {\n APK = 'apk',\n APP_BUNDLE = 'app-bundle',\n}\n\nexport const builderBaseImages = [\n 'default',\n 'latest',\n 'stable',\n 'ubuntu-18.04-android-30-ndk-r19c',\n 'ubuntu-20.04-android-30-ndk-r21e',\n] as const;\n\nexport interface BuilderEnvironment {\n image?: typeof builderBaseImages[number];\n node?: string;\n yarn?: string;\n expoCli?: string;\n ndk?: string;\n env?: Env;\n}\n\nconst BuilderEnvironmentSchema = Joi.object({\n image: Joi.string()\n .valid(...builderBaseImages)\n .default('default'),\n node: Joi.string(),\n yarn: Joi.string(),\n expoCli: Joi.string(),\n ndk: Joi.string(),\n env: EnvSchema,\n});\n\nexport interface Job {\n type: Workflow;\n projectArchive: ArchiveSource;\n platform: Platform.ANDROID;\n projectRootDirectory: string;\n releaseChannel?: string;\n updates?: {\n channel?: string;\n };\n secrets: {\n buildCredentials?: {\n keystore: Keystore;\n };\n environmentSecrets?: Env;\n };\n builderEnvironment?: BuilderEnvironment;\n cache: Cache;\n developmentClient?: boolean;\n\n // generic\n gradleCommand?: string;\n artifactPath?: string;\n\n // managed\n buildType?: BuildType;\n username?: string;\n}\n\nexport const JobSchema = Joi.object({\n type: Joi.string()\n .valid(...Object.values(Workflow))\n .required(),\n projectArchive: ArchiveSourceSchema.required(),\n platform: Joi.string().valid(Platform.ANDROID).required(),\n projectRootDirectory: Joi.string().required(),\n releaseChannel: Joi.string(),\n updates: Joi.object({\n channel: Joi.string(),\n }),\n secrets: Joi.object({\n buildCredentials: Joi.object({ keystore: KeystoreSchema.required() }),\n environmentSecrets: EnvSchema,\n }).required(),\n builderEnvironment: BuilderEnvironmentSchema,\n cache: CacheSchema.default(),\n developmentClient: Joi.boolean(),\n\n gradleCommand: Joi.string(),\n artifactPath: Joi.string(),\n\n buildType: Joi.string().valid(...Object.values(BuildType)),\n username: Joi.string(),\n}).oxor('releaseChannel', 'updates.channel');\n"]}
1
+ {"version":3,"file":"android.js","sourceRoot":"","sources":["../src/android.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAEtB,qCASkB;AASlB,MAAM,cAAc,GAAG,aAAG,CAAC,MAAM,CAAC;IAChC,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,gBAAgB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACnD,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;CACpC,CAAC,CAAC;AAEH,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,sCAAyB,CAAA;AAC3B,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AAEY,QAAA,iBAAiB,GAAG;IAC/B,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,kCAAkC;IAClC,kCAAkC;IAClC,6BAA6B;IAC7B,8BAA8B;IAC9B,6BAA6B;IAC7B,8BAA8B;CACtB,CAAC;AAEE,QAAA,uCAAuC,GAGhD;IACF,WAAW,EAAE,8BAA8B;IAC3C,SAAS,EAAE,6BAA6B;CACzC,CAAC;AAWF,MAAM,wBAAwB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC1C,KAAK,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,yBAAiB,CAAC;IAC/C,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE;IAClB,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE;IAClB,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE;IACrB,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE;IACjB,GAAG,EAAE,kBAAS;CACf,CAAC,CAAC;AA8BU,QAAA,SAAS,GAAG,aAAG,CAAC,MAAM,CAAC;IAClC,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE;SACf,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAQ,CAAC,CAAC;SACjC,QAAQ,EAAE;IACb,cAAc,EAAE,4BAAmB,CAAC,QAAQ,EAAE;IAC9C,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,iBAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;IACzD,oBAAoB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE;IAC5B,OAAO,EAAE,aAAG,CAAC,MAAM,CAAC;QAClB,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE;KACtB,CAAC;IACF,OAAO,EAAE,aAAG,CAAC,MAAM,CAAC;QAClB,gBAAgB,EAAE,aAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC;QACrE,kBAAkB,EAAE,kBAAS;KAC9B,CAAC,CAAC,QAAQ,EAAE;IACb,kBAAkB,EAAE,wBAAwB;IAC5C,KAAK,EAAE,oBAAW,CAAC,OAAO,EAAE;IAC5B,iBAAiB,EAAE,aAAG,CAAC,OAAO,EAAE;IAEhC,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE;IAC3B,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE;IAE1B,SAAS,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1D,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC","sourcesContent":["import Joi from 'joi';\n\nimport {\n ArchiveSource,\n ArchiveSourceSchema,\n Env,\n EnvSchema,\n Platform,\n Workflow,\n Cache,\n CacheSchema,\n} from './common';\n\nexport interface Keystore {\n dataBase64: string;\n keystorePassword: string;\n keyAlias: string;\n keyPassword?: string;\n}\n\nconst KeystoreSchema = Joi.object({\n dataBase64: Joi.string().required(),\n keystorePassword: Joi.string().allow('').required(),\n keyAlias: Joi.string().required(),\n keyPassword: Joi.string().allow(''),\n});\n\nexport enum BuildType {\n APK = 'apk',\n APP_BUNDLE = 'app-bundle',\n}\n\nexport const builderBaseImages = [\n 'default',\n 'latest',\n 'stable',\n 'ubuntu-18.04-android-30-ndk-r19c', // legacy naming (image with java 8)\n 'ubuntu-20.04-android-30-ndk-r21e', // legacy naming (image with java 8)\n 'ubuntu-18.04-jdk-8-ndk-r19c',\n 'ubuntu-18.04-jdk-11-ndk-r19c',\n 'ubuntu-20.04-jdk-8-ndk-r21e',\n 'ubuntu-20.04-jdk-11-ndk-r21e',\n] as const;\n\nexport const reactNativeVersionToDefaultBuilderImage: Record<\n string,\n typeof builderBaseImages[number]\n> = {\n '>=0.68.0.': 'ubuntu-18.04-jdk-11-ndk-r19c',\n '<0.68.0': 'ubuntu-18.04-jdk-8-ndk-r19c',\n};\n\nexport interface BuilderEnvironment {\n image?: typeof builderBaseImages[number];\n node?: string;\n yarn?: string;\n expoCli?: string;\n ndk?: string;\n env?: Env;\n}\n\nconst BuilderEnvironmentSchema = Joi.object({\n image: Joi.string().valid(...builderBaseImages),\n node: Joi.string(),\n yarn: Joi.string(),\n expoCli: Joi.string(),\n ndk: Joi.string(),\n env: EnvSchema,\n});\n\nexport interface Job {\n type: Workflow;\n projectArchive: ArchiveSource;\n platform: Platform.ANDROID;\n projectRootDirectory: string;\n releaseChannel?: string;\n updates?: {\n channel?: string;\n };\n secrets: {\n buildCredentials?: {\n keystore: Keystore;\n };\n environmentSecrets?: Env;\n };\n builderEnvironment?: BuilderEnvironment;\n cache: Cache;\n developmentClient?: boolean;\n\n // generic\n gradleCommand?: string;\n artifactPath?: string;\n\n // managed\n buildType?: BuildType;\n username?: string;\n}\n\nexport const JobSchema = Joi.object({\n type: Joi.string()\n .valid(...Object.values(Workflow))\n .required(),\n projectArchive: ArchiveSourceSchema.required(),\n platform: Joi.string().valid(Platform.ANDROID).required(),\n projectRootDirectory: Joi.string().required(),\n releaseChannel: Joi.string(),\n updates: Joi.object({\n channel: Joi.string(),\n }),\n secrets: Joi.object({\n buildCredentials: Joi.object({ keystore: KeystoreSchema.required() }),\n environmentSecrets: EnvSchema,\n }).required(),\n builderEnvironment: BuilderEnvironmentSchema,\n cache: CacheSchema.default(),\n developmentClient: Joi.boolean(),\n\n gradleCommand: Joi.string(),\n artifactPath: Joi.string(),\n\n buildType: Joi.string().valid(...Object.values(BuildType)),\n username: Joi.string(),\n}).oxor('releaseChannel', 'updates.channel');\n"]}
package/dist/errors.js CHANGED
@@ -126,11 +126,11 @@ class IncompatiblePodsManagedWorkflowError extends UserError {
126
126
  constructor(usingDefaultCacheConfig) {
127
127
  super();
128
128
  this.errorCode = ErrorCode.INCOMPATIBLE_PODS_MANAGED_WORKFLOW_ERROR;
129
- this.message = `Compatible version of some pods could not be resolved.
129
+ this.message = `Compatible versions of some pods could not be resolved.
130
130
  You are seeing this error because either:
131
131
  - Versions in the Podfile.lock cached by EAS do not match required values for some of the libraries, it can be triggered when upgrading Expo SDK or any other library with native code. To fix that ${usingDefaultCacheConfig
132
- ? 'add "cache.key" field (it can be set to any value) in eas.json to invalidate the cache.'
133
- : 'update value of "cache.key" field in the eas.json to invalidate the cache.'}
132
+ ? 'add the "cache.key" field (it can be set to any value) in eas.json to invalidate the cache.'
133
+ : 'update value of the "cache.key" field in eas.json to invalidate the cache.'}
134
134
  - Some of your npm packages have native code that depend on different versions of the same pod. Please see logs for more info.
135
135
  `;
136
136
  }
@@ -140,11 +140,11 @@ class IncompatiblePodsGenericWorkflowError extends UserError {
140
140
  constructor(usingDefaultCacheConfig) {
141
141
  super();
142
142
  this.errorCode = ErrorCode.INCOMPATIBLE_PODS_GENERIC_WORKFLOW_ERROR;
143
- this.message = `Compatible version of some pods could not be resolved.
143
+ this.message = `Compatible versions of some pods could not be resolved.
144
144
  You are seeing this error because either:
145
- - Versions in the Podfile.lock cached by EAS do not match required values in podspecs of some of the libraries. To fix that ${usingDefaultCacheConfig
146
- ? 'add "cache.key" field (it can be set to any value) in eas.json to invalidate the cache.'
147
- : 'update value of "cache.key" field in the eas.json to invalidate the cache.'}
145
+ - Versions in the Podfile.lock cached by EAS do not match required values in Podspecs of some of the libraries. To fix that ${usingDefaultCacheConfig
146
+ ? 'add the "cache.key" field (it can be set to any value) in eas.json to invalidate the cache.'
147
+ : 'update value of the "cache.key" field in eas.json to invalidate the cache.'}
148
148
  - Some of the pods used in your project depend on different versions of the same pod. Please see logs for more info.
149
149
  `;
150
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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","sourcesContent":["export enum ErrorCode {\n UKNOWN_ERROR = 'UNKNOWN_ERROR',\n SERVER_ERROR = 'SERVER_ERROR',\n CREDENTIALS_DIST_CERT_MISMATCH = 'EAS_BUILD_CREDENTIALS_DIST_CERT_MISMATCH',\n SYSTEM_DEPS_INSTALL_ERROR = 'EAS_BUILD_SYSTEM_DEPS_INSTALL_ERROR',\n UNSUPPORTED_COCOAPODS_VERSION_ERROR = 'EAS_BUILD_UNSUPPORTED_COCOAPODS_VERSION_ERROR',\n UNSUPPORTED_BUNDLER_VERSION_ERROR = 'EAS_BUILD_UNSUPPORTED_BUNDLER_VERSION_ERROR',\n INVALID_KEYSTORE_FORMAT_ERROR = 'EAS_BUILD_INVALID_KEYSTORE_FORMAT_ERROR',\n INVALID_KEYSTORE_ALIAS_ERROR = 'EAS_BUILD_INVALID_KEYSTORE_ALIAS_ERROR',\n MISSING_GOOGLE_SERVICES_JSON_ERROR = 'EAS_BUILD_MISSING_GOOGLE_SERVICES_JSON_ERROR',\n MISSING_GOOGLE_SERVICES_PLIST_ERROR = 'EAS_BUILD_MISSING_GOOGLE_SERVICES_PLIST_ERROR',\n INCOMPATIBLE_PODS_MANAGED_WORKFLOW_ERROR = 'EAS_BUILD_INCOMPATIBLE_PODS_MANAGED_WORKFLOW_ERROR',\n INCOMPATIBLE_PODS_GENERIC_WORKFLOW_ERROR = 'EAS_BUILD_INCOMPATIBLE_PODS_GENERIC_WORKFLOW_ERROR',\n YARN_LOCK_CHECKSUM_ERROR = 'EAS_BUILD_YARN_LOCK_CHECKSUM_ERROR',\n UNKNOWN_FASTLANE_ERROR = 'EAS_BUILD_UNKNOWN_FASTLANE_ERROR',\n UNKNOWN_GRADLE_ERROR = 'EAS_BUILD_UNKNOWN_GRADLE_ERROR',\n}\n\nexport interface ExternalUserError {\n errorCode: string;\n message: string;\n docsUrl?: string;\n}\n\nexport abstract class UserError extends Error {\n public abstract errorCode: ErrorCode;\n public docsUrl?: string;\n public innerError?: Error;\n\n public format(): ExternalUserError {\n return {\n errorCode: this.errorCode,\n message: this.message,\n docsUrl: this.docsUrl,\n };\n }\n}\n\nexport class UnknownError extends UserError {\n errorCode = ErrorCode.UKNOWN_ERROR;\n message = 'Unknown error. Please see logs.';\n}\n\nexport class ServerError extends UserError {\n errorCode = ErrorCode.SERVER_ERROR;\n message =\n 'Internal Server Error.\\nPlease try again later. If the problem persists, please report the issue.';\n}\n\nexport class CredentialsDistCertMismatchError extends UserError {\n errorCode = ErrorCode.CREDENTIALS_DIST_CERT_MISMATCH;\n message = \"Provisioning profile and distribution certificate don't match.\";\n}\n\nexport class SystemDepsInstallError extends UserError {\n errorCode = ErrorCode.SYSTEM_DEPS_INSTALL_ERROR;\n\n constructor(dependency: string) {\n super();\n this.message = `Failed to install ${dependency}. Make sure you specified the correct version in eas.json.`;\n }\n}\n\nexport class InvalidKeystoreFormatError extends UserError {\n errorCode = ErrorCode.INVALID_KEYSTORE_FORMAT_ERROR;\n message =\n 'The keystore used in this build is malformed or it has an unsupported type. Make sure you provided the correct file.';\n}\n\nexport class InvalidKeystoreAliasError extends UserError {\n errorCode = ErrorCode.INVALID_KEYSTORE_FORMAT_ERROR;\n message =\n 'The alias specified for this keystore does not exist. Make sure you specified the correct value.';\n}\n\nexport class UnsupportedCocoaPodsVersion extends UserError {\n errorCode = ErrorCode.UNSUPPORTED_COCOAPODS_VERSION_ERROR;\n message = `Your project requires a newer version of CocoaPods, you can update it in the build profile in eas.json by either:\n- changing the current version under key \"cocoapods\"\n- switching to an image that supports that version under key \"image\"`;\n docsUrl = 'https://docs.expo.io/build/eas-json';\n}\n\nexport class UnsupportedBundlerVersion extends UserError {\n errorCode = ErrorCode.UNSUPPORTED_BUNDLER_VERSION_ERROR;\n message = `Your project requires another version of bundler, you can change it in the build profile in eas.json by specifying the version under key \"bundler\"`;\n docsUrl = 'https://docs.expo.io/build/eas-json';\n}\n\nexport class MissingGoogleServicesJson extends UserError {\n errorCode = ErrorCode.MISSING_GOOGLE_SERVICES_JSON_ERROR;\n message =\n '\"google-services.json\" is missing, make sure that file exists. Remember that EAS Build only uploads the files tracked by git.';\n}\n\nexport class MissingGoogleServicesPlist extends UserError {\n errorCode = ErrorCode.MISSING_GOOGLE_SERVICES_PLIST_ERROR;\n message =\n '\"GoogleService-Info.plist\" is missing, make sure that file exists. Remember that EAS Build only uploads the files tracked by git.';\n}\n\nexport class UnknownFastlaneError extends UserError {\n errorCode = ErrorCode.UNKNOWN_FASTLANE_ERROR;\n message = `Fastlane build failed with unknown error. Please refer to the \"Run fastlane\" and \"Xcode Logs\" phases.\nFastlane errors in most cases are not printed at the end of the output, so you may not find any useful information in the last lines of output when looking for an error message.`;\n}\n\nexport class IncompatiblePodsManagedWorkflowError extends UserError {\n errorCode = ErrorCode.INCOMPATIBLE_PODS_MANAGED_WORKFLOW_ERROR;\n\n constructor(usingDefaultCacheConfig: boolean) {\n super();\n this.message = `Compatible version of some pods could not be resolved.\nYou are seeing this error because either:\n - Versions in the Podfile.lock cached by EAS do not match required values for some of the libraries, it can be triggered when upgrading Expo SDK or any other library with native code. To fix that ${\n usingDefaultCacheConfig\n ? 'add \"cache.key\" field (it can be set to any value) in eas.json to invalidate the cache.'\n : 'update value of \"cache.key\" field in the eas.json to invalidate the cache.'\n }\n - Some of your npm packages have native code that depend on different versions of the same pod. Please see logs for more info.\n`;\n }\n}\n\nexport class IncompatiblePodsGenericWorkflowError extends UserError {\n errorCode = ErrorCode.INCOMPATIBLE_PODS_GENERIC_WORKFLOW_ERROR;\n\n constructor(usingDefaultCacheConfig: boolean) {\n super();\n this.message = `Compatible version of some pods could not be resolved.\nYou are seeing this error because either:\n - Versions in the Podfile.lock cached by EAS do not match required values in podspecs of some of the libraries. To fix that ${\n usingDefaultCacheConfig\n ? 'add \"cache.key\" field (it can be set to any value) in eas.json to invalidate the cache.'\n : 'update value of \"cache.key\" field in the eas.json to invalidate the cache.'\n }\n - Some of the pods used in your project depend on different versions of the same pod. Please see logs for more info.\n`;\n }\n}\n\nexport class YarnLockChecksumError extends UserError {\n errorCode = ErrorCode.YARN_LOCK_CHECKSUM_ERROR;\n\n constructor(packageName: string) {\n super();\n this.message = `Checksum for package \"${packageName}\" does not match value in registry. To fix that:\n- run \"yarn cache clean\"\n- remove yarn.lock (or only the section for that package)\n- run \"yarn install --force\"`;\n }\n}\n\nexport class UnknownGradleError extends UserError {\n errorCode = ErrorCode.UNKNOWN_GRADLE_ERROR;\n message = 'Gradle build failed with unknown error. Please see logs for the \"Run gradlew\" phase.';\n}\n"]}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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","sourcesContent":["export enum ErrorCode {\n UKNOWN_ERROR = 'UNKNOWN_ERROR',\n SERVER_ERROR = 'SERVER_ERROR',\n CREDENTIALS_DIST_CERT_MISMATCH = 'EAS_BUILD_CREDENTIALS_DIST_CERT_MISMATCH',\n SYSTEM_DEPS_INSTALL_ERROR = 'EAS_BUILD_SYSTEM_DEPS_INSTALL_ERROR',\n UNSUPPORTED_COCOAPODS_VERSION_ERROR = 'EAS_BUILD_UNSUPPORTED_COCOAPODS_VERSION_ERROR',\n UNSUPPORTED_BUNDLER_VERSION_ERROR = 'EAS_BUILD_UNSUPPORTED_BUNDLER_VERSION_ERROR',\n INVALID_KEYSTORE_FORMAT_ERROR = 'EAS_BUILD_INVALID_KEYSTORE_FORMAT_ERROR',\n INVALID_KEYSTORE_ALIAS_ERROR = 'EAS_BUILD_INVALID_KEYSTORE_ALIAS_ERROR',\n MISSING_GOOGLE_SERVICES_JSON_ERROR = 'EAS_BUILD_MISSING_GOOGLE_SERVICES_JSON_ERROR',\n MISSING_GOOGLE_SERVICES_PLIST_ERROR = 'EAS_BUILD_MISSING_GOOGLE_SERVICES_PLIST_ERROR',\n INCOMPATIBLE_PODS_MANAGED_WORKFLOW_ERROR = 'EAS_BUILD_INCOMPATIBLE_PODS_MANAGED_WORKFLOW_ERROR',\n INCOMPATIBLE_PODS_GENERIC_WORKFLOW_ERROR = 'EAS_BUILD_INCOMPATIBLE_PODS_GENERIC_WORKFLOW_ERROR',\n YARN_LOCK_CHECKSUM_ERROR = 'EAS_BUILD_YARN_LOCK_CHECKSUM_ERROR',\n UNKNOWN_FASTLANE_ERROR = 'EAS_BUILD_UNKNOWN_FASTLANE_ERROR',\n UNKNOWN_GRADLE_ERROR = 'EAS_BUILD_UNKNOWN_GRADLE_ERROR',\n}\n\nexport interface ExternalUserError {\n errorCode: string;\n message: string;\n docsUrl?: string;\n}\n\nexport abstract class UserError extends Error {\n public abstract errorCode: ErrorCode;\n public docsUrl?: string;\n public innerError?: Error;\n\n public format(): ExternalUserError {\n return {\n errorCode: this.errorCode,\n message: this.message,\n docsUrl: this.docsUrl,\n };\n }\n}\n\nexport class UnknownError extends UserError {\n errorCode = ErrorCode.UKNOWN_ERROR;\n message = 'Unknown error. Please see logs.';\n}\n\nexport class ServerError extends UserError {\n errorCode = ErrorCode.SERVER_ERROR;\n message =\n 'Internal Server Error.\\nPlease try again later. If the problem persists, please report the issue.';\n}\n\nexport class CredentialsDistCertMismatchError extends UserError {\n errorCode = ErrorCode.CREDENTIALS_DIST_CERT_MISMATCH;\n message = \"Provisioning profile and distribution certificate don't match.\";\n}\n\nexport class SystemDepsInstallError extends UserError {\n errorCode = ErrorCode.SYSTEM_DEPS_INSTALL_ERROR;\n\n constructor(dependency: string) {\n super();\n this.message = `Failed to install ${dependency}. Make sure you specified the correct version in eas.json.`;\n }\n}\n\nexport class InvalidKeystoreFormatError extends UserError {\n errorCode = ErrorCode.INVALID_KEYSTORE_FORMAT_ERROR;\n message =\n 'The keystore used in this build is malformed or it has an unsupported type. Make sure you provided the correct file.';\n}\n\nexport class InvalidKeystoreAliasError extends UserError {\n errorCode = ErrorCode.INVALID_KEYSTORE_FORMAT_ERROR;\n message =\n 'The alias specified for this keystore does not exist. Make sure you specified the correct value.';\n}\n\nexport class UnsupportedCocoaPodsVersion extends UserError {\n errorCode = ErrorCode.UNSUPPORTED_COCOAPODS_VERSION_ERROR;\n message = `Your project requires a newer version of CocoaPods, you can update it in the build profile in eas.json by either:\n- changing the current version under key \"cocoapods\"\n- switching to an image that supports that version under key \"image\"`;\n docsUrl = 'https://docs.expo.io/build/eas-json';\n}\n\nexport class UnsupportedBundlerVersion extends UserError {\n errorCode = ErrorCode.UNSUPPORTED_BUNDLER_VERSION_ERROR;\n message = `Your project requires another version of bundler, you can change it in the build profile in eas.json by specifying the version under key \"bundler\"`;\n docsUrl = 'https://docs.expo.io/build/eas-json';\n}\n\nexport class MissingGoogleServicesJson extends UserError {\n errorCode = ErrorCode.MISSING_GOOGLE_SERVICES_JSON_ERROR;\n message =\n '\"google-services.json\" is missing, make sure that file exists. Remember that EAS Build only uploads the files tracked by git.';\n}\n\nexport class MissingGoogleServicesPlist extends UserError {\n errorCode = ErrorCode.MISSING_GOOGLE_SERVICES_PLIST_ERROR;\n message =\n '\"GoogleService-Info.plist\" is missing, make sure that file exists. Remember that EAS Build only uploads the files tracked by git.';\n}\n\nexport class UnknownFastlaneError extends UserError {\n errorCode = ErrorCode.UNKNOWN_FASTLANE_ERROR;\n message = `Fastlane build failed with unknown error. Please refer to the \"Run fastlane\" and \"Xcode Logs\" phases.\nFastlane errors in most cases are not printed at the end of the output, so you may not find any useful information in the last lines of output when looking for an error message.`;\n}\n\nexport class IncompatiblePodsManagedWorkflowError extends UserError {\n errorCode = ErrorCode.INCOMPATIBLE_PODS_MANAGED_WORKFLOW_ERROR;\n\n constructor(usingDefaultCacheConfig: boolean) {\n super();\n this.message = `Compatible versions of some pods could not be resolved.\nYou are seeing this error because either:\n - Versions in the Podfile.lock cached by EAS do not match required values for some of the libraries, it can be triggered when upgrading Expo SDK or any other library with native code. To fix that ${\n usingDefaultCacheConfig\n ? 'add the \"cache.key\" field (it can be set to any value) in eas.json to invalidate the cache.'\n : 'update value of the \"cache.key\" field in eas.json to invalidate the cache.'\n }\n - Some of your npm packages have native code that depend on different versions of the same pod. Please see logs for more info.\n`;\n }\n}\n\nexport class IncompatiblePodsGenericWorkflowError extends UserError {\n errorCode = ErrorCode.INCOMPATIBLE_PODS_GENERIC_WORKFLOW_ERROR;\n\n constructor(usingDefaultCacheConfig: boolean) {\n super();\n this.message = `Compatible versions of some pods could not be resolved.\nYou are seeing this error because either:\n - Versions in the Podfile.lock cached by EAS do not match required values in Podspecs of some of the libraries. To fix that ${\n usingDefaultCacheConfig\n ? 'add the \"cache.key\" field (it can be set to any value) in eas.json to invalidate the cache.'\n : 'update value of the \"cache.key\" field in eas.json to invalidate the cache.'\n }\n - Some of the pods used in your project depend on different versions of the same pod. Please see logs for more info.\n`;\n }\n}\n\nexport class YarnLockChecksumError extends UserError {\n errorCode = ErrorCode.YARN_LOCK_CHECKSUM_ERROR;\n\n constructor(packageName: string) {\n super();\n this.message = `Checksum for package \"${packageName}\" does not match value in registry. To fix that:\n- run \"yarn cache clean\"\n- remove yarn.lock (or only the section for that package)\n- run \"yarn install --force\"`;\n }\n}\n\nexport class UnknownGradleError extends UserError {\n errorCode = ErrorCode.UNKNOWN_GRADLE_ERROR;\n message = 'Gradle build failed with unknown error. Please see logs for the \"Run gradlew\" phase.';\n}\n"]}
package/dist/job.d.ts CHANGED
@@ -3,6 +3,7 @@ import * as Android from './android';
3
3
  import * as Ios from './ios';
4
4
  export declare type Job = Android.Job | Ios.Job;
5
5
  export declare const JobSchema: Joi.ObjectSchema<Job>;
6
- export declare function sanitizeJob(rawJob: object, { sdkVersion }?: {
6
+ export declare function sanitizeJob(rawJob: object, { sdkVersion, reactNativeVersion }?: {
7
+ reactNativeVersion?: string;
7
8
  sdkVersion?: string;
8
9
  }): Job;
package/dist/job.js CHANGED
@@ -35,14 +35,19 @@ exports.JobSchema = joi_1.default.object({
35
35
  })
36
36
  .when(joi_1.default.object({ platform: common_1.Platform.ANDROID }).unknown(), { then: Android.JobSchema })
37
37
  .when(joi_1.default.object({ platform: common_1.Platform.IOS }).unknown(), { then: Ios.JobSchema });
38
- function sanitizeJob(rawJob, { sdkVersion } = {}) {
38
+ function sanitizeJob(rawJob, { sdkVersion, reactNativeVersion } = {}) {
39
39
  const { value, error } = exports.JobSchema.validate(rawJob, {
40
40
  stripUnknown: true,
41
41
  convert: true,
42
42
  abortEarly: false,
43
43
  });
44
44
  const job = value;
45
- setIosBuilderImageForManagedJob(job, sdkVersion);
45
+ if (job.platform === common_1.Platform.IOS) {
46
+ setIosBuilderImageForManagedJob(job, sdkVersion);
47
+ }
48
+ else if (job.platform === common_1.Platform.ANDROID) {
49
+ setAndroidBuilderImage(job, reactNativeVersion);
50
+ }
46
51
  if (error) {
47
52
  throw error;
48
53
  }
@@ -51,12 +56,22 @@ function sanitizeJob(rawJob, { sdkVersion } = {}) {
51
56
  }
52
57
  }
53
58
  exports.sanitizeJob = sanitizeJob;
59
+ function setAndroidBuilderImage(job, reactNativeVersion) {
60
+ var _a;
61
+ if (((_a = job.builderEnvironment) === null || _a === void 0 ? void 0 : _a.image) || !reactNativeVersion) {
62
+ return;
63
+ }
64
+ const ranges = Object.keys(Android.reactNativeVersionToDefaultBuilderImage);
65
+ const matchingRange = ranges.find((range) => semver_1.default.satisfies(reactNativeVersion, range));
66
+ if (!matchingRange) {
67
+ return;
68
+ }
69
+ const image = Android.reactNativeVersionToDefaultBuilderImage[matchingRange];
70
+ job.builderEnvironment = Object.assign({ image }, job.builderEnvironment);
71
+ }
54
72
  function setIosBuilderImageForManagedJob(job, sdkVersion) {
55
73
  var _a;
56
- if (!(job.platform === common_1.Platform.IOS &&
57
- job.type === common_1.Workflow.MANAGED &&
58
- !((_a = job.builderEnvironment) === null || _a === void 0 ? void 0 : _a.image) &&
59
- sdkVersion)) {
74
+ if (job.type !== common_1.Workflow.MANAGED || ((_a = job.builderEnvironment) === null || _a === void 0 ? void 0 : _a.image) || !sdkVersion) {
60
75
  return;
61
76
  }
62
77
  const ranges = Object.keys(Ios.sdkVersionToDefaultBuilderImage);
package/dist/job.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"job.js","sourceRoot":"","sources":["../src/job.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAsB;AACtB,oDAA4B;AAE5B,qCAA8C;AAC9C,mDAAqC;AACrC,2CAA6B;AAIhB,QAAA,SAAS,GAAG,aAAG,CAAC,MAAM,CAAM;IACvC,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE;SACnB,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAQ,CAAC,CAAC;SACjC,QAAQ,EAAE;CACd,CAAC;KACC,IAAI,CAAC,aAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,iBAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;KACvF,IAAI,CAAC,aAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,iBAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;AAEnF,SAAgB,WAAW,CAAC,MAAc,EAAE,EAAE,UAAU,KAA8B,EAAE;IACtF,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,iBAAS,CAAC,QAAQ,CAAC,MAAM,EAAE;QAClD,YAAY,EAAE,IAAI;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IAEH,MAAM,GAAG,GAAQ,KAAK,CAAC;IACvB,+BAA+B,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAEjD,IAAI,KAAK,EAAE;QACT,MAAM,KAAK,CAAC;KACb;SAAM;QACL,OAAO,GAAG,CAAC;KACZ;AACH,CAAC;AAfD,kCAeC;AAED,SAAS,+BAA+B,CAAC,GAAQ,EAAE,UAAmB;;IACpE,IACE,CAAC,CACC,GAAG,CAAC,QAAQ,KAAK,iBAAQ,CAAC,GAAG;QAC7B,GAAG,CAAC,IAAI,KAAK,iBAAQ,CAAC,OAAO;QAC7B,CAAC,CAAA,MAAA,GAAG,CAAC,kBAAkB,0CAAE,KAAK,CAAA;QAC9B,UAAU,CACX,EACD;QACA,OAAO;KACR;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAChE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAM,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAClF,IAAI,CAAC,aAAa,EAAE;QAClB,OAAO;KACR;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,+BAA+B,CAAC,aAAa,CAAC,CAAC;IACjE,GAAG,CAAC,kBAAkB,mBACpB,KAAK,IACF,GAAG,CAAC,kBAAkB,CAC1B,CAAC;AACJ,CAAC","sourcesContent":["import Joi from 'joi';\nimport semver from 'semver';\n\nimport { Platform, Workflow } from './common';\nimport * as Android from './android';\nimport * as Ios from './ios';\n\nexport type Job = Android.Job | Ios.Job;\n\nexport const JobSchema = Joi.object<Job>({\n platform: Joi.string()\n .valid(...Object.values(Platform))\n .required(),\n})\n .when(Joi.object({ platform: Platform.ANDROID }).unknown(), { then: Android.JobSchema })\n .when(Joi.object({ platform: Platform.IOS }).unknown(), { then: Ios.JobSchema });\n\nexport function sanitizeJob(rawJob: object, { sdkVersion }: { sdkVersion?: string } = {}): Job {\n const { value, error } = JobSchema.validate(rawJob, {\n stripUnknown: true,\n convert: true,\n abortEarly: false,\n });\n\n const job: Job = value;\n setIosBuilderImageForManagedJob(job, sdkVersion);\n\n if (error) {\n throw error;\n } else {\n return job;\n }\n}\n\nfunction setIosBuilderImageForManagedJob(job: Job, sdkVersion?: string): void {\n if (\n !(\n job.platform === Platform.IOS &&\n job.type === Workflow.MANAGED &&\n !job.builderEnvironment?.image &&\n sdkVersion\n )\n ) {\n return;\n }\n\n const ranges = Object.keys(Ios.sdkVersionToDefaultBuilderImage);\n const matchingRange = ranges.find((range) => semver.satisfies(sdkVersion, range));\n if (!matchingRange) {\n return;\n }\n const image = Ios.sdkVersionToDefaultBuilderImage[matchingRange];\n job.builderEnvironment = {\n image,\n ...job.builderEnvironment,\n };\n}\n"]}
1
+ {"version":3,"file":"job.js","sourceRoot":"","sources":["../src/job.ts"],"names":[],"mappings":"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","sourcesContent":["import Joi from 'joi';\nimport semver from 'semver';\n\nimport { Platform, Workflow } from './common';\nimport * as Android from './android';\nimport * as Ios from './ios';\n\nexport type Job = Android.Job | Ios.Job;\n\nexport const JobSchema = Joi.object<Job>({\n platform: Joi.string()\n .valid(...Object.values(Platform))\n .required(),\n})\n .when(Joi.object({ platform: Platform.ANDROID }).unknown(), { then: Android.JobSchema })\n .when(Joi.object({ platform: Platform.IOS }).unknown(), { then: Ios.JobSchema });\n\nexport function sanitizeJob(\n rawJob: object,\n { sdkVersion, reactNativeVersion }: { reactNativeVersion?: string; sdkVersion?: string } = {}\n): Job {\n const { value, error } = JobSchema.validate(rawJob, {\n stripUnknown: true,\n convert: true,\n abortEarly: false,\n });\n\n const job: Job = value;\n if (job.platform === Platform.IOS) {\n setIosBuilderImageForManagedJob(job, sdkVersion);\n } else if (job.platform === Platform.ANDROID) {\n setAndroidBuilderImage(job, reactNativeVersion);\n }\n\n if (error) {\n throw error;\n } else {\n return job;\n }\n}\n\nfunction setAndroidBuilderImage(job: Job, reactNativeVersion?: string): void {\n if (job.builderEnvironment?.image || !reactNativeVersion) {\n return;\n }\n\n const ranges = Object.keys(Android.reactNativeVersionToDefaultBuilderImage);\n const matchingRange = ranges.find((range) => semver.satisfies(reactNativeVersion, range));\n if (!matchingRange) {\n return;\n }\n const image = Android.reactNativeVersionToDefaultBuilderImage[matchingRange];\n job.builderEnvironment = {\n image,\n ...job.builderEnvironment,\n };\n}\n\nfunction setIosBuilderImageForManagedJob(job: Job, sdkVersion?: string): void {\n if (job.type !== Workflow.MANAGED || job.builderEnvironment?.image || !sdkVersion) {\n return;\n }\n\n const ranges = Object.keys(Ios.sdkVersionToDefaultBuilderImage);\n const matchingRange = ranges.find((range) => semver.satisfies(sdkVersion, range));\n if (!matchingRange) {\n return;\n }\n const image = Ios.sdkVersionToDefaultBuilderImage[matchingRange];\n job.builderEnvironment = {\n image,\n ...job.builderEnvironment,\n };\n}\n"]}
@@ -49,6 +49,10 @@ export declare type Metadata = {
49
49
  * It's undefined if the classic expo-updates package is not installed for the project.
50
50
  */
51
51
  releaseChannel?: string;
52
+ /**
53
+ * Version of the react-native package used in the project.
54
+ */
55
+ reactNativeVersion?: string;
52
56
  /**
53
57
  * Channel (for Expo Updates when it is configured for for use with EAS)
54
58
  * It's undefined if the expo-updates package is not configured for use with EAS.
package/dist/metadata.js CHANGED
@@ -17,6 +17,7 @@ exports.MetadataSchema = joi_1.default.object({
17
17
  credentialsSource: joi_1.default.string().valid('local', 'remote'),
18
18
  sdkVersion: joi_1.default.string(),
19
19
  runtimeVersion: joi_1.default.string(),
20
+ reactNativeVersion: joi_1.default.string(),
20
21
  releaseChannel: joi_1.default.string(),
21
22
  channel: joi_1.default.string(),
22
23
  appName: joi_1.default.string(),
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAiHT,QAAA,cAAc,GAAG,aAAG,CAAC,MAAM,CAAC;IACvC,eAAe,EAAE,aAAG,CAAC,MAAM,EAAE;SAC1B,OAAO,CAAC,aAAG,CAAC,MAAM,EAAE,EAAE,CAAC,aAAG,CAAC,MAAM,EAAE,EAAE,aAAG,CAAC,MAAM,EAAE,EAAE,aAAG,CAAC,OAAO,EAAE,CAAC,CAAC;SAClE,QAAQ,EAAE;IACb,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE;IACxB,eAAe,EAAE,aAAG,CAAC,MAAM,EAAE;IAC7B,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE;IACxB,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC;IAClD,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC;IAClE,iBAAiB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC;IACxD,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE;IACxB,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE;IAC5B,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE;IAC5B,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE;IACrB,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE;IACrB,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE;IAC3B,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE;IAC1B,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE;IAC5C,qBAAqB,EAAE,aAAG,CAAC,OAAO,EAAE;IACpC,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE;IACtB,yBAAyB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC;CACpE,CAAC,CAAC;AAEH,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,sBAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE;QACzD,YAAY,EAAE,IAAI;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IACH,IAAI,KAAK,EAAE;QACT,MAAM,KAAK,CAAC;KACb;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAXD,4CAWC","sourcesContent":["import Joi from 'joi';\n\nimport { Workflow } from './common';\n\nexport type Metadata = {\n /**\n * Tracking context\n * It's used to track build process across different Expo services and tools.\n */\n trackingContext: Record<string, string | number | boolean>;\n\n /**\n * Application version:\n * - managed projects: expo.version in app.json/app.config.js\n * - generic projects:\n * * iOS: CFBundleShortVersionString in Info.plist\n * * Android: versionName in build.gradle\n */\n appVersion?: string;\n\n /**\n * Application build version:\n * - Android: version code\n * - iOS: build number\n */\n appBuildVersion?: string;\n\n /**\n * EAS CLI version\n */\n cliVersion?: string;\n\n /**\n * Build workflow\n * It's either 'generic' or 'managed'\n */\n workflow?: Workflow;\n\n /**\n * Credentials source\n * Credentials could be obtained either from credential.json or EAS servers.\n */\n credentialsSource?: 'local' | 'remote';\n\n /**\n * Expo SDK version\n * It's determined by the expo package version in package.json.\n * It's undefined if the expo package is not installed for the project.\n */\n sdkVersion?: string;\n\n /**\n * Runtime version (for Expo Updates)\n */\n runtimeVersion?: string;\n\n /**\n * Release channel (for classic expo-updates)\n * It's undefined if the classic expo-updates package is not installed for the project.\n */\n releaseChannel?: string;\n\n /**\n * Channel (for Expo Updates when it is configured for for use with EAS)\n * It's undefined if the expo-updates package is not configured for use with EAS.\n */\n channel?: string;\n\n /**\n * Distribution type\n * Indicates whether this is a build for store, internal distribution, or simulator (iOS).\n */\n distribution?: 'store' | 'internal' | 'simulator';\n\n /**\n * App name (expo.name in app.json/app.config.js)\n */\n appName?: string;\n\n /**\n * App identifier:\n * - iOS builds: the bundle identifier (expo.ios.bundleIdentifier in app.json/app.config.js)\n * - Android builds: the application id (expo.android.package in app.json/app.config.js)\n */\n appIdentifier?: string;\n\n /**\n * Build profile name (e.g. release)\n */\n buildProfile?: string;\n\n /**\n * Git commit hash (e.g. aab03fbdabb6e536ea78b28df91575ad488f5f21)\n */\n gitCommitHash?: string;\n\n /**\n * State of the git working tree\n */\n isGitWorkingTreeDirty?: boolean;\n\n /**\n * Username of the initiating user\n */\n username?: string;\n\n /**\n * Indicates what type of an enterprise provisioning profile was used to build the app.\n * It's either adhoc or universal\n */\n iosEnterpriseProvisioning?: 'adhoc' | 'universal';\n};\n\nexport const MetadataSchema = Joi.object({\n trackingContext: Joi.object()\n .pattern(Joi.string(), [Joi.string(), Joi.number(), Joi.boolean()])\n .required(),\n appVersion: Joi.string(),\n appBuildVersion: Joi.string(),\n cliVersion: Joi.string(),\n workflow: Joi.string().valid('generic', 'managed'),\n distribution: Joi.string().valid('store', 'internal', 'simulator'),\n credentialsSource: Joi.string().valid('local', 'remote'),\n sdkVersion: Joi.string(),\n runtimeVersion: Joi.string(),\n releaseChannel: Joi.string(),\n channel: Joi.string(),\n appName: Joi.string(),\n appIdentifier: Joi.string(),\n buildProfile: Joi.string(),\n gitCommitHash: Joi.string().length(40).hex(),\n isGitWorkingTreeDirty: Joi.boolean(),\n username: Joi.string(),\n iosEnterpriseProvisioning: Joi.string().valid('adhoc', 'universal'),\n});\n\nexport function sanitizeMetadata(metadata: object): Metadata {\n const { value, error } = MetadataSchema.validate(metadata, {\n stripUnknown: true,\n convert: true,\n abortEarly: false,\n });\n if (error) {\n throw error;\n } else {\n return value;\n }\n}\n"]}
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAsHT,QAAA,cAAc,GAAG,aAAG,CAAC,MAAM,CAAC;IACvC,eAAe,EAAE,aAAG,CAAC,MAAM,EAAE;SAC1B,OAAO,CAAC,aAAG,CAAC,MAAM,EAAE,EAAE,CAAC,aAAG,CAAC,MAAM,EAAE,EAAE,aAAG,CAAC,MAAM,EAAE,EAAE,aAAG,CAAC,OAAO,EAAE,CAAC,CAAC;SAClE,QAAQ,EAAE;IACb,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE;IACxB,eAAe,EAAE,aAAG,CAAC,MAAM,EAAE;IAC7B,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE;IACxB,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC;IAClD,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC;IAClE,iBAAiB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC;IACxD,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE;IACxB,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE;IAC5B,kBAAkB,EAAE,aAAG,CAAC,MAAM,EAAE;IAChC,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE;IAC5B,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE;IACrB,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE;IACrB,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE;IAC3B,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE;IAC1B,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE;IAC5C,qBAAqB,EAAE,aAAG,CAAC,OAAO,EAAE;IACpC,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE;IACtB,yBAAyB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC;CACpE,CAAC,CAAC;AAEH,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,sBAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE;QACzD,YAAY,EAAE,IAAI;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IACH,IAAI,KAAK,EAAE;QACT,MAAM,KAAK,CAAC;KACb;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAXD,4CAWC","sourcesContent":["import Joi from 'joi';\n\nimport { Workflow } from './common';\n\nexport type Metadata = {\n /**\n * Tracking context\n * It's used to track build process across different Expo services and tools.\n */\n trackingContext: Record<string, string | number | boolean>;\n\n /**\n * Application version:\n * - managed projects: expo.version in app.json/app.config.js\n * - generic projects:\n * * iOS: CFBundleShortVersionString in Info.plist\n * * Android: versionName in build.gradle\n */\n appVersion?: string;\n\n /**\n * Application build version:\n * - Android: version code\n * - iOS: build number\n */\n appBuildVersion?: string;\n\n /**\n * EAS CLI version\n */\n cliVersion?: string;\n\n /**\n * Build workflow\n * It's either 'generic' or 'managed'\n */\n workflow?: Workflow;\n\n /**\n * Credentials source\n * Credentials could be obtained either from credential.json or EAS servers.\n */\n credentialsSource?: 'local' | 'remote';\n\n /**\n * Expo SDK version\n * It's determined by the expo package version in package.json.\n * It's undefined if the expo package is not installed for the project.\n */\n sdkVersion?: string;\n\n /**\n * Runtime version (for Expo Updates)\n */\n runtimeVersion?: string;\n\n /**\n * Release channel (for classic expo-updates)\n * It's undefined if the classic expo-updates package is not installed for the project.\n */\n releaseChannel?: string;\n\n /**\n * Version of the react-native package used in the project.\n */\n reactNativeVersion?: string;\n\n /**\n * Channel (for Expo Updates when it is configured for for use with EAS)\n * It's undefined if the expo-updates package is not configured for use with EAS.\n */\n channel?: string;\n\n /**\n * Distribution type\n * Indicates whether this is a build for store, internal distribution, or simulator (iOS).\n */\n distribution?: 'store' | 'internal' | 'simulator';\n\n /**\n * App name (expo.name in app.json/app.config.js)\n */\n appName?: string;\n\n /**\n * App identifier:\n * - iOS builds: the bundle identifier (expo.ios.bundleIdentifier in app.json/app.config.js)\n * - Android builds: the application id (expo.android.package in app.json/app.config.js)\n */\n appIdentifier?: string;\n\n /**\n * Build profile name (e.g. release)\n */\n buildProfile?: string;\n\n /**\n * Git commit hash (e.g. aab03fbdabb6e536ea78b28df91575ad488f5f21)\n */\n gitCommitHash?: string;\n\n /**\n * State of the git working tree\n */\n isGitWorkingTreeDirty?: boolean;\n\n /**\n * Username of the initiating user\n */\n username?: string;\n\n /**\n * Indicates what type of an enterprise provisioning profile was used to build the app.\n * It's either adhoc or universal\n */\n iosEnterpriseProvisioning?: 'adhoc' | 'universal';\n};\n\nexport const MetadataSchema = Joi.object({\n trackingContext: Joi.object()\n .pattern(Joi.string(), [Joi.string(), Joi.number(), Joi.boolean()])\n .required(),\n appVersion: Joi.string(),\n appBuildVersion: Joi.string(),\n cliVersion: Joi.string(),\n workflow: Joi.string().valid('generic', 'managed'),\n distribution: Joi.string().valid('store', 'internal', 'simulator'),\n credentialsSource: Joi.string().valid('local', 'remote'),\n sdkVersion: Joi.string(),\n runtimeVersion: Joi.string(),\n reactNativeVersion: Joi.string(),\n releaseChannel: Joi.string(),\n channel: Joi.string(),\n appName: Joi.string(),\n appIdentifier: Joi.string(),\n buildProfile: Joi.string(),\n gitCommitHash: Joi.string().length(40).hex(),\n isGitWorkingTreeDirty: Joi.boolean(),\n username: Joi.string(),\n iosEnterpriseProvisioning: Joi.string().valid('adhoc', 'universal'),\n});\n\nexport function sanitizeMetadata(metadata: object): Metadata {\n const { value, error } = MetadataSchema.validate(metadata, {\n stripUnknown: true,\n convert: true,\n abortEarly: false,\n });\n if (error) {\n throw error;\n } else {\n return value;\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expo/eas-build-job",
3
- "version": "0.2.57",
3
+ "version": "0.2.61",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [