@expo/eas-build-job 1.0.130 → 1.0.136

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/index.d.ts CHANGED
@@ -9,3 +9,4 @@ export * from './artifacts';
9
9
  export * from './context';
10
10
  export * from './generic';
11
11
  export * from './step';
12
+ export * from './submission-config';
package/dist/index.js CHANGED
@@ -46,4 +46,5 @@ __exportStar(require("./artifacts"), exports);
46
46
  __exportStar(require("./context"), exports);
47
47
  __exportStar(require("./generic"), exports);
48
48
  __exportStar(require("./step"), exports);
49
+ __exportStar(require("./submission-config"), exports);
49
50
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAqC;AACrC,6CAA6B;AAC7B,mCAYkB;AAXhB,2GAAA,iBAAiB,OAAA;AAEjB,mGAAA,SAAS,OAAA;AAET,sGAAA,YAAY,OAAA;AAGZ,+GAAA,qBAAqB,OAAA;AACrB,kGAAA,QAAQ,OAAA;AACR,kGAAA,QAAQ,OAAA;AAGV,uCAAkG;AAA/E,4GAAA,gBAAgB,OAAA;AAAqB,iHAAA,qBAAqB,OAAA;AAC7E,wCAAsB;AACtB,yCAAuB;AACvB,mDAAmC;AACnC,8CAA4B;AAC5B,4CAA0B;AAC1B,4CAA0B;AAC1B,yCAAuB","sourcesContent":["export * as Android from './android';\nexport * as Ios from './ios';\nexport {\n ArchiveSourceType,\n ArchiveSource,\n BuildMode,\n BuildPhaseStats,\n BuildTrigger,\n Env,\n EnvironmentSecret,\n EnvironmentSecretType,\n Workflow,\n Platform,\n Cache,\n} from './common';\nexport { Metadata, sanitizeMetadata, FingerprintSource, FingerprintSourceType } from './metadata';\nexport * from './job';\nexport * from './logs';\nexport * as errors from './errors';\nexport * from './artifacts';\nexport * from './context';\nexport * from './generic';\nexport * from './step';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAqC;AACrC,6CAA6B;AAC7B,mCAYkB;AAXhB,2GAAA,iBAAiB,OAAA;AAEjB,mGAAA,SAAS,OAAA;AAET,sGAAA,YAAY,OAAA;AAGZ,+GAAA,qBAAqB,OAAA;AACrB,kGAAA,QAAQ,OAAA;AACR,kGAAA,QAAQ,OAAA;AAGV,uCAAkG;AAA/E,4GAAA,gBAAgB,OAAA;AAAqB,iHAAA,qBAAqB,OAAA;AAC7E,wCAAsB;AACtB,yCAAuB;AACvB,mDAAmC;AACnC,8CAA4B;AAC5B,4CAA0B;AAC1B,4CAA0B;AAC1B,yCAAuB;AACvB,sDAAoC","sourcesContent":["export * as Android from './android';\nexport * as Ios from './ios';\nexport {\n ArchiveSourceType,\n ArchiveSource,\n BuildMode,\n BuildPhaseStats,\n BuildTrigger,\n Env,\n EnvironmentSecret,\n EnvironmentSecretType,\n Workflow,\n Platform,\n Cache,\n} from './common';\nexport { Metadata, sanitizeMetadata, FingerprintSource, FingerprintSourceType } from './metadata';\nexport * from './job';\nexport * from './logs';\nexport * as errors from './errors';\nexport * from './artifacts';\nexport * from './context';\nexport * from './generic';\nexport * from './step';\nexport * from './submission-config';\n"]}
@@ -6,6 +6,8 @@ export declare enum FingerprintSourceType {
6
6
  'URL' = "URL"
7
7
  }
8
8
  export type FingerprintSource = {
9
+ isDebugFingerprint?: boolean;
10
+ } & ({
9
11
  type: FingerprintSourceType.GCS;
10
12
  bucketKey: string;
11
13
  } | {
@@ -14,7 +16,7 @@ export type FingerprintSource = {
14
16
  } | {
15
17
  type: FingerprintSourceType.URL;
16
18
  url: string;
17
- };
19
+ });
18
20
  export type Metadata = {
19
21
  /**
20
22
  * Tracking context
package/dist/metadata.js CHANGED
@@ -15,6 +15,7 @@ const FingerprintSourceSchema = joi_1.default.object({
15
15
  type: joi_1.default.string()
16
16
  .valid(...Object.values(FingerprintSourceType))
17
17
  .required(),
18
+ isDebugFingerprint: joi_1.default.boolean(),
18
19
  })
19
20
  .when(joi_1.default.object({ type: FingerprintSourceType.GCS }).unknown(), {
20
21
  then: joi_1.default.object({
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"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","sourcesContent":["import Joi from 'joi';\n\nimport { Workflow } from './common';\n\nexport enum FingerprintSourceType {\n 'GCS' = 'GCS',\n 'PATH' = 'PATH',\n 'URL' = 'URL',\n}\n\nexport type FingerprintSource =\n | { type: FingerprintSourceType.GCS; bucketKey: string }\n | { type: FingerprintSourceType.PATH; path: string }\n | { type: FingerprintSourceType.URL; url: string };\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 * The location of the fingerprint file if one exists\n */\n fingerprintSource?: FingerprintSource;\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 * simulator is deprecated, use simulator flag instead\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 * Git commit message\n */\n gitCommitMessage?: 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 /**\n * Message attached to the build.\n */\n message?: string;\n\n /**\n * Indicates whether the build was run from CI.\n */\n runFromCI?: boolean;\n\n /**\n * Indicates whether the build was run with --no-wait flag.\n */\n runWithNoWaitFlag?: boolean;\n\n /**\n * Workflow name available for custom builds.\n */\n customWorkflowName?: string;\n\n /**\n * Indicates whether this is (likely, we can't be 100% sure) development client build.\n */\n developmentClient?: boolean;\n\n /**\n * Which package manager will be used for the build. Determined based on lockfiles in the project directory.\n */\n requiredPackageManager?: 'npm' | 'pnpm' | 'yarn' | 'bun';\n\n /**\n * Indicates if this is an iOS build for a simulator\n */\n simulator?: boolean;\n\n /**\n * Image selected by user for the build. If user didn't select any image and wants to use default for the given RN and SDK version it will undefined.\n */\n selectedImage?: string;\n\n /**\n * Custom node version selected by user for the build. If user didn't select any node version and wants to use default it will be undefined.\n */\n customNodeVersion?: string;\n\n /**\n * EAS env vars environment chosen for the job\n */\n environment?: 'production' | 'preview' | 'development';\n};\n\nconst FingerprintSourceSchema = Joi.object<FingerprintSource>({\n type: Joi.string()\n .valid(...Object.values(FingerprintSourceType))\n .required(),\n})\n .when(Joi.object({ type: FingerprintSourceType.GCS }).unknown(), {\n then: Joi.object({\n type: Joi.string().valid(FingerprintSourceType.GCS).required(),\n bucketKey: Joi.string().required(),\n }),\n })\n .when(Joi.object({ type: FingerprintSourceType.PATH }).unknown(), {\n then: Joi.object({\n type: Joi.string().valid(FingerprintSourceType.PATH).required(),\n path: Joi.string().required(),\n }),\n })\n .when(Joi.object({ type: FingerprintSourceType.URL }).unknown(), {\n then: Joi.object({\n type: Joi.string().valid(FingerprintSourceType.URL).required(),\n url: Joi.string().uri().required(),\n }),\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 fingerprintSource: FingerprintSourceSchema,\n reactNativeVersion: 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 gitCommitMessage: Joi.string().max(4096),\n isGitWorkingTreeDirty: Joi.boolean(),\n username: Joi.string(),\n iosEnterpriseProvisioning: Joi.string().valid('adhoc', 'universal'),\n message: Joi.string().max(1024),\n runFromCI: Joi.boolean(),\n runWithNoWaitFlag: Joi.boolean(),\n customWorkflowName: Joi.string(),\n developmentClient: Joi.boolean(),\n requiredPackageManager: Joi.string().valid('npm', 'pnpm', 'yarn', 'bun'),\n simulator: Joi.boolean(),\n selectedImage: Joi.string(),\n customNodeVersion: Joi.string(),\n environment: Joi.string().valid('production', 'preview', 'development'),\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":"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","sourcesContent":["import Joi from 'joi';\n\nimport { Workflow } from './common';\n\nexport enum FingerprintSourceType {\n 'GCS' = 'GCS',\n 'PATH' = 'PATH',\n 'URL' = 'URL',\n}\n\nexport type FingerprintSource = { isDebugFingerprint?: boolean } & (\n | { type: FingerprintSourceType.GCS; bucketKey: string }\n | { type: FingerprintSourceType.PATH; path: string }\n | { type: FingerprintSourceType.URL; url: string }\n);\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 * The location of the fingerprint file if one exists\n */\n fingerprintSource?: FingerprintSource;\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 * simulator is deprecated, use simulator flag instead\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 * Git commit message\n */\n gitCommitMessage?: 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 /**\n * Message attached to the build.\n */\n message?: string;\n\n /**\n * Indicates whether the build was run from CI.\n */\n runFromCI?: boolean;\n\n /**\n * Indicates whether the build was run with --no-wait flag.\n */\n runWithNoWaitFlag?: boolean;\n\n /**\n * Workflow name available for custom builds.\n */\n customWorkflowName?: string;\n\n /**\n * Indicates whether this is (likely, we can't be 100% sure) development client build.\n */\n developmentClient?: boolean;\n\n /**\n * Which package manager will be used for the build. Determined based on lockfiles in the project directory.\n */\n requiredPackageManager?: 'npm' | 'pnpm' | 'yarn' | 'bun';\n\n /**\n * Indicates if this is an iOS build for a simulator\n */\n simulator?: boolean;\n\n /**\n * Image selected by user for the build. If user didn't select any image and wants to use default for the given RN and SDK version it will undefined.\n */\n selectedImage?: string;\n\n /**\n * Custom node version selected by user for the build. If user didn't select any node version and wants to use default it will be undefined.\n */\n customNodeVersion?: string;\n\n /**\n * EAS env vars environment chosen for the job\n */\n environment?: 'production' | 'preview' | 'development';\n};\n\nconst FingerprintSourceSchema = Joi.object<FingerprintSource>({\n type: Joi.string()\n .valid(...Object.values(FingerprintSourceType))\n .required(),\n isDebugFingerprint: Joi.boolean(),\n})\n .when(Joi.object({ type: FingerprintSourceType.GCS }).unknown(), {\n then: Joi.object({\n type: Joi.string().valid(FingerprintSourceType.GCS).required(),\n bucketKey: Joi.string().required(),\n }),\n })\n .when(Joi.object({ type: FingerprintSourceType.PATH }).unknown(), {\n then: Joi.object({\n type: Joi.string().valid(FingerprintSourceType.PATH).required(),\n path: Joi.string().required(),\n }),\n })\n .when(Joi.object({ type: FingerprintSourceType.URL }).unknown(), {\n then: Joi.object({\n type: Joi.string().valid(FingerprintSourceType.URL).required(),\n url: Joi.string().uri().required(),\n }),\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 fingerprintSource: FingerprintSourceSchema,\n reactNativeVersion: 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 gitCommitMessage: Joi.string().max(4096),\n isGitWorkingTreeDirty: Joi.boolean(),\n username: Joi.string(),\n iosEnterpriseProvisioning: Joi.string().valid('adhoc', 'universal'),\n message: Joi.string().max(1024),\n runFromCI: Joi.boolean(),\n runWithNoWaitFlag: Joi.boolean(),\n customWorkflowName: Joi.string(),\n developmentClient: Joi.boolean(),\n requiredPackageManager: Joi.string().valid('npm', 'pnpm', 'yarn', 'bun'),\n simulator: Joi.boolean(),\n selectedImage: Joi.string(),\n customNodeVersion: Joi.string(),\n environment: Joi.string().valid('production', 'preview', 'development'),\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"]}
@@ -0,0 +1,101 @@
1
+ import { z } from 'zod';
2
+ /** Submission config as used by the submission worker. */
3
+ export declare namespace SubmissionConfig {
4
+ type Ios = z.infer<typeof Ios.SchemaZ>;
5
+ type Android = z.infer<typeof Android.SchemaZ>;
6
+ namespace Ios {
7
+ const SchemaZ: z.ZodIntersection<z.ZodObject<{
8
+ /**
9
+ * App Store Connect unique App ID
10
+ */
11
+ ascAppIdentifier: z.ZodString;
12
+ isVerboseFastlaneEnabled: z.ZodOptional<z.ZodBoolean>;
13
+ }, "strip", z.ZodTypeAny, {
14
+ ascAppIdentifier: string;
15
+ isVerboseFastlaneEnabled?: boolean | undefined;
16
+ }, {
17
+ ascAppIdentifier: string;
18
+ isVerboseFastlaneEnabled?: boolean | undefined;
19
+ }>, z.ZodUnion<[z.ZodObject<{
20
+ appleIdUsername: z.ZodString;
21
+ appleAppSpecificPassword: z.ZodString;
22
+ ascApiJsonKey: z.ZodOptional<z.ZodNever>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ appleIdUsername: string;
25
+ appleAppSpecificPassword: string;
26
+ ascApiJsonKey?: undefined;
27
+ }, {
28
+ appleIdUsername: string;
29
+ appleAppSpecificPassword: string;
30
+ ascApiJsonKey?: undefined;
31
+ }>, z.ZodObject<{
32
+ /**
33
+ * ASC API JSON token example:
34
+ * {
35
+ * key_id: "D383SF739",
36
+ * issuer_id: "6053b7fe-68a8-4acb-89be-165aa6465141",
37
+ * key: "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM\n-----END PRIVATE KEY--"
38
+ * }
39
+ */
40
+ ascApiJsonKey: z.ZodString;
41
+ appleIdUsername: z.ZodOptional<z.ZodNever>;
42
+ appleAppSpecificPassword: z.ZodOptional<z.ZodNever>;
43
+ }, "strip", z.ZodTypeAny, {
44
+ ascApiJsonKey: string;
45
+ appleIdUsername?: undefined;
46
+ appleAppSpecificPassword?: undefined;
47
+ }, {
48
+ ascApiJsonKey: string;
49
+ appleIdUsername?: undefined;
50
+ appleAppSpecificPassword?: undefined;
51
+ }>]>>;
52
+ }
53
+ namespace Android {
54
+ enum ReleaseStatus {
55
+ COMPLETED = "completed",
56
+ DRAFT = "draft",
57
+ HALTED = "halted",
58
+ IN_PROGRESS = "inProgress"
59
+ }
60
+ enum ReleaseTrack {
61
+ PRODUCTION = "production",
62
+ BETA = "beta",
63
+ ALPHA = "alpha",
64
+ INTERNAL = "internal"
65
+ }
66
+ const SchemaZ: z.ZodIntersection<z.ZodObject<{
67
+ track: z.ZodNativeEnum<typeof ReleaseTrack>;
68
+ changesNotSentForReview: z.ZodDefault<z.ZodBoolean>;
69
+ googleServiceAccountKeyJson: z.ZodString;
70
+ isVerboseFastlaneEnabled: z.ZodOptional<z.ZodBoolean>;
71
+ }, "strip", z.ZodTypeAny, {
72
+ track: ReleaseTrack;
73
+ changesNotSentForReview: boolean;
74
+ googleServiceAccountKeyJson: string;
75
+ isVerboseFastlaneEnabled?: boolean | undefined;
76
+ }, {
77
+ track: ReleaseTrack;
78
+ googleServiceAccountKeyJson: string;
79
+ isVerboseFastlaneEnabled?: boolean | undefined;
80
+ changesNotSentForReview?: boolean | undefined;
81
+ }>, z.ZodUnion<[z.ZodObject<{
82
+ releaseStatus: z.ZodLiteral<ReleaseStatus.IN_PROGRESS>;
83
+ rollout: z.ZodDefault<z.ZodNumber>;
84
+ }, "strip", z.ZodTypeAny, {
85
+ releaseStatus: ReleaseStatus.IN_PROGRESS;
86
+ rollout: number;
87
+ }, {
88
+ releaseStatus: ReleaseStatus.IN_PROGRESS;
89
+ rollout?: number | undefined;
90
+ }>, z.ZodObject<{
91
+ releaseStatus: z.ZodOptional<z.ZodNativeEnum<typeof ReleaseStatus>>;
92
+ rollout: z.ZodOptional<z.ZodNever>;
93
+ }, "strip", z.ZodTypeAny, {
94
+ releaseStatus?: ReleaseStatus | undefined;
95
+ rollout?: undefined;
96
+ }, {
97
+ releaseStatus?: ReleaseStatus | undefined;
98
+ rollout?: undefined;
99
+ }>]>>;
100
+ }
101
+ }
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SubmissionConfig = void 0;
4
+ const zod_1 = require("zod");
5
+ /** Submission config as used by the submission worker. */
6
+ var SubmissionConfig;
7
+ (function (SubmissionConfig) {
8
+ let Ios;
9
+ (function (Ios) {
10
+ Ios.SchemaZ = zod_1.z
11
+ .object({
12
+ /**
13
+ * App Store Connect unique App ID
14
+ */
15
+ ascAppIdentifier: zod_1.z.string(),
16
+ isVerboseFastlaneEnabled: zod_1.z.boolean().optional(),
17
+ })
18
+ .and(zod_1.z.union([
19
+ zod_1.z.object({
20
+ // The `appleIdUsername` & `appleAppSpecificPassword` pair is mutually exclusive with `ascApiJsonKey`
21
+ appleIdUsername: zod_1.z.string(),
22
+ appleAppSpecificPassword: zod_1.z.string(),
23
+ ascApiJsonKey: zod_1.z.never().optional(),
24
+ }),
25
+ zod_1.z.object({
26
+ /**
27
+ * ASC API JSON token example:
28
+ * {
29
+ * key_id: "D383SF739",
30
+ * issuer_id: "6053b7fe-68a8-4acb-89be-165aa6465141",
31
+ * key: "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM\n-----END PRIVATE KEY--"
32
+ * }
33
+ */
34
+ ascApiJsonKey: zod_1.z.string(),
35
+ appleIdUsername: zod_1.z.never().optional(),
36
+ appleAppSpecificPassword: zod_1.z.never().optional(),
37
+ }),
38
+ ]));
39
+ })(Ios = SubmissionConfig.Ios || (SubmissionConfig.Ios = {}));
40
+ let Android;
41
+ (function (Android) {
42
+ let ReleaseStatus;
43
+ (function (ReleaseStatus) {
44
+ ReleaseStatus["COMPLETED"] = "completed";
45
+ ReleaseStatus["DRAFT"] = "draft";
46
+ ReleaseStatus["HALTED"] = "halted";
47
+ ReleaseStatus["IN_PROGRESS"] = "inProgress";
48
+ })(ReleaseStatus = Android.ReleaseStatus || (Android.ReleaseStatus = {}));
49
+ let ReleaseTrack;
50
+ (function (ReleaseTrack) {
51
+ ReleaseTrack["PRODUCTION"] = "production";
52
+ ReleaseTrack["BETA"] = "beta";
53
+ ReleaseTrack["ALPHA"] = "alpha";
54
+ ReleaseTrack["INTERNAL"] = "internal";
55
+ })(ReleaseTrack = Android.ReleaseTrack || (Android.ReleaseTrack = {}));
56
+ Android.SchemaZ = zod_1.z
57
+ .object({
58
+ track: zod_1.z.nativeEnum(ReleaseTrack),
59
+ changesNotSentForReview: zod_1.z.boolean().default(false),
60
+ googleServiceAccountKeyJson: zod_1.z.string(),
61
+ isVerboseFastlaneEnabled: zod_1.z.boolean().optional(),
62
+ })
63
+ .and(zod_1.z.union([
64
+ zod_1.z.object({
65
+ releaseStatus: zod_1.z.literal(ReleaseStatus.IN_PROGRESS),
66
+ rollout: zod_1.z.number().gte(0).lte(1).default(1),
67
+ }),
68
+ zod_1.z.object({
69
+ releaseStatus: zod_1.z.nativeEnum(ReleaseStatus).optional(),
70
+ rollout: zod_1.z.never().optional(),
71
+ }),
72
+ ]));
73
+ })(Android = SubmissionConfig.Android || (SubmissionConfig.Android = {}));
74
+ })(SubmissionConfig || (exports.SubmissionConfig = SubmissionConfig = {}));
75
+ //# sourceMappingURL=submission-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submission-config.js","sourceRoot":"","sources":["../src/submission-config.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,0DAA0D;AAC1D,IAAiB,gBAAgB,CAyEhC;AAzED,WAAiB,gBAAgB;IAI/B,IAAiB,GAAG,CAgCnB;IAhCD,WAAiB,GAAG;QACL,WAAO,GAAG,OAAC;aACrB,MAAM,CAAC;YACN;;eAEG;YACH,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE;YAC5B,wBAAwB,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;SACjD,CAAC;aACD,GAAG,CACF,OAAC,CAAC,KAAK,CAAC;YACN,OAAC,CAAC,MAAM,CAAC;gBACP,qGAAqG;gBACrG,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE;gBAC3B,wBAAwB,EAAE,OAAC,CAAC,MAAM,EAAE;gBACpC,aAAa,EAAE,OAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;aACpC,CAAC;YACF,OAAC,CAAC,MAAM,CAAC;gBACP;;;;;;;mBAOG;gBACH,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE;gBACzB,eAAe,EAAE,OAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;gBACrC,wBAAwB,EAAE,OAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;aAC/C,CAAC;SACH,CAAC,CACH,CAAC;IACN,CAAC,EAhCgB,GAAG,GAAH,oBAAG,KAAH,oBAAG,QAgCnB;IAED,IAAiB,OAAO,CAkCvB;IAlCD,WAAiB,OAAO;QACtB,IAAY,aAKX;QALD,WAAY,aAAa;YACvB,wCAAuB,CAAA;YACvB,gCAAe,CAAA;YACf,kCAAiB,CAAA;YACjB,2CAA0B,CAAA;QAC5B,CAAC,EALW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAKxB;QAED,IAAY,YAKX;QALD,WAAY,YAAY;YACtB,yCAAyB,CAAA;YACzB,6BAAa,CAAA;YACb,+BAAe,CAAA;YACf,qCAAqB,CAAA;QACvB,CAAC,EALW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAKvB;QAEY,eAAO,GAAG,OAAC;aACrB,MAAM,CAAC;YACN,KAAK,EAAE,OAAC,CAAC,UAAU,CAAC,YAAY,CAAC;YACjC,uBAAuB,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;YACnD,2BAA2B,EAAE,OAAC,CAAC,MAAM,EAAE;YACvC,wBAAwB,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;SACjD,CAAC;aACD,GAAG,CACF,OAAC,CAAC,KAAK,CAAC;YACN,OAAC,CAAC,MAAM,CAAC;gBACP,aAAa,EAAE,OAAC,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC;gBACnD,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;aAC7C,CAAC;YACF,OAAC,CAAC,MAAM,CAAC;gBACP,aAAa,EAAE,OAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;gBACrD,OAAO,EAAE,OAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;aAC9B,CAAC;SACH,CAAC,CACH,CAAC;IACN,CAAC,EAlCgB,OAAO,GAAP,wBAAO,KAAP,wBAAO,QAkCvB;AACH,CAAC,EAzEgB,gBAAgB,gCAAhB,gBAAgB,QAyEhC","sourcesContent":["import { z } from 'zod';\n\n/** Submission config as used by the submission worker. */\nexport namespace SubmissionConfig {\n export type Ios = z.infer<typeof Ios.SchemaZ>;\n export type Android = z.infer<typeof Android.SchemaZ>;\n\n export namespace Ios {\n export const SchemaZ = z\n .object({\n /**\n * App Store Connect unique App ID\n */\n ascAppIdentifier: z.string(),\n isVerboseFastlaneEnabled: z.boolean().optional(),\n })\n .and(\n z.union([\n z.object({\n // The `appleIdUsername` & `appleAppSpecificPassword` pair is mutually exclusive with `ascApiJsonKey`\n appleIdUsername: z.string(),\n appleAppSpecificPassword: z.string(),\n ascApiJsonKey: z.never().optional(),\n }),\n z.object({\n /**\n * ASC API JSON token example:\n * {\n * key_id: \"D383SF739\",\n * issuer_id: \"6053b7fe-68a8-4acb-89be-165aa6465141\",\n * key: \"-----BEGIN PRIVATE KEY-----\\nMIGTAgEAMBMGByqGSM\\n-----END PRIVATE KEY--\"\n * }\n */\n ascApiJsonKey: z.string(),\n appleIdUsername: z.never().optional(),\n appleAppSpecificPassword: z.never().optional(),\n }),\n ])\n );\n }\n\n export namespace Android {\n export enum ReleaseStatus {\n COMPLETED = 'completed',\n DRAFT = 'draft',\n HALTED = 'halted',\n IN_PROGRESS = 'inProgress',\n }\n\n export enum ReleaseTrack {\n PRODUCTION = 'production',\n BETA = 'beta',\n ALPHA = 'alpha',\n INTERNAL = 'internal',\n }\n\n export const SchemaZ = z\n .object({\n track: z.nativeEnum(ReleaseTrack),\n changesNotSentForReview: z.boolean().default(false),\n googleServiceAccountKeyJson: z.string(),\n isVerboseFastlaneEnabled: z.boolean().optional(),\n })\n .and(\n z.union([\n z.object({\n releaseStatus: z.literal(ReleaseStatus.IN_PROGRESS),\n rollout: z.number().gte(0).lte(1).default(1),\n }),\n z.object({\n releaseStatus: z.nativeEnum(ReleaseStatus).optional(),\n rollout: z.never().optional(),\n }),\n ])\n );\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expo/eas-build-job",
3
- "version": "1.0.130",
3
+ "version": "1.0.136",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [
@@ -35,5 +35,5 @@
35
35
  "node": "20.14.0",
36
36
  "yarn": "1.22.21"
37
37
  },
38
- "gitHead": "f58752e2cea134b586a9318ecdc7e07d59c00716"
38
+ "gitHead": "40ec258852b8f40ceaaeaaa0b5c35125cc098676"
39
39
  }