@simplysf/simply-cicd-core 0.10.1 → 0.12.0

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.
@@ -0,0 +1,335 @@
1
+ /*
2
+ * Copyright (c) 2026, SimplySF.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { createHash } from 'node:crypto';
17
+ import { promises as fs } from 'node:fs';
18
+ import os from 'node:os';
19
+ import path from 'node:path';
20
+ import { execa } from 'execa';
21
+ import { getDefaultPackageDirectory, isSubscriberPackageVersionId, readSfdxProject, } from '@simplysf/simply-core';
22
+ import { appendToEnvFile } from '../env.js';
23
+ import { logger } from '../logger.js';
24
+ import { getPackage2Info, getPackageVersionReport, resolveDependencyVersionId, } from '../sfPackages.js';
25
+ import { readAerVersion, resolveAerBinary } from './aerBinary.js';
26
+ import { AER_PACKAGE_FILE_KEY, AER_PACKAGE_URL_KEY, AER_PACKAGE_VERSION_KEY, hasApexSources, parseRepositoryHeader, readAerPluginConfig, renderRepositoryUrl, toAerPackageFile, } from './aerPackage.js';
27
+ import { resolveSubscriberPackageVersionId, toDistTag, toNpmVersion } from './packageVersionArtifact.js';
28
+ import { getSkipReason } from './skipGuard.js';
29
+ /** The default dotenv file, matching what `create-package-version`/`create-fallback-tag` write. */
30
+ const DEFAULT_ENV_FILE = 'subscriberPackageVersionId.env';
31
+ /** How much of a failed response's body goes into the error. */
32
+ const RESPONSE_EXCERPT_LENGTH = 500;
33
+ /** A run that did nothing, in the shape every guard returns. */
34
+ function skip() {
35
+ return { skipped: true, published: false };
36
+ }
37
+ /**
38
+ * Where a package version lives in the repository.
39
+ *
40
+ * Producer and dependent both call this, so they always agree. Everything comes from the Dev Hub
41
+ * rather than either repo's checkout: the package's name and namespace from `Package2`, and the
42
+ * git tag suffix from the version's `Branch`, which `create-package-version` sets from the same
43
+ * decision it makes for the tag.
44
+ */
45
+ function locate(package2, report, template) {
46
+ if (!report.Version) {
47
+ throw new Error(`Could not read a version number for ${package2.Name} from its package version report.`);
48
+ }
49
+ const { file, name, namespace } = toAerPackageFile(package2.Name, package2.NamespacePrefix);
50
+ const suffix = report.Branch ?? undefined;
51
+ const version = toNpmVersion(report.Version, suffix);
52
+ const url = renderRepositoryUrl(template, {
53
+ name,
54
+ version,
55
+ versionNumber: report.Version,
56
+ channel: toDistTag(suffix),
57
+ namespace,
58
+ file,
59
+ });
60
+ return { name, namespace, namespaceless: !package2.NamespacePrefix, file, version, url };
61
+ }
62
+ /** The URL without its query string, which for a presigned URL is the credential. */
63
+ function forLog(url) {
64
+ const queryStart = url.indexOf('?');
65
+ return queryStart === -1 ? url : `${url.slice(0, queryStart)}?…`;
66
+ }
67
+ function requestHeaders(header) {
68
+ return header ? { [header.name]: header.value } : {};
69
+ }
70
+ async function responseExcerpt(response) {
71
+ try {
72
+ const body = (await response.text()).trim();
73
+ return body.length > 0 ? `: ${body.slice(0, RESPONSE_EXCERPT_LENGTH)}` : '';
74
+ }
75
+ catch {
76
+ return '';
77
+ }
78
+ }
79
+ /**
80
+ * Whether `url` already holds a published package.
81
+ *
82
+ * Anything but a 2xx — including a network failure — is read as "not yet": the common cause is the
83
+ * 404 for a version that doesn't exist, and any real problem fails the upload right after with a
84
+ * better message than this check could give.
85
+ */
86
+ async function isAlreadyPublished(url, header) {
87
+ try {
88
+ const response = await fetch(url, { method: 'HEAD', headers: requestHeaders(header) });
89
+ return response.ok;
90
+ }
91
+ catch {
92
+ return false;
93
+ }
94
+ }
95
+ /**
96
+ * Resolve every input the publish needs, or decide there is nothing to publish.
97
+ *
98
+ * @returns `undefined` when a guard says to skip, having already logged why.
99
+ */
100
+ async function resolveTarget(options) {
101
+ const envFile = options.envFile ?? DEFAULT_ENV_FILE;
102
+ const subscriberPackageVersionId = await resolveSubscriberPackageVersionId({
103
+ flagValue: options.subscriberPackageVersionId,
104
+ envFile,
105
+ });
106
+ if (!subscriberPackageVersionId) {
107
+ logger.warn(`No package version ID given, in the environment, or in ${envFile}. ` +
108
+ 'This build created no package version, so there is no aer package to publish. Skipping.');
109
+ return undefined;
110
+ }
111
+ const sfdxProjectJson = await readSfdxProject();
112
+ const defaultPackageDir = getDefaultPackageDirectory(sfdxProjectJson);
113
+ if (!defaultPackageDir?.path) {
114
+ throw new Error('A default package directory with a `path` must be specified in sfdx-project.json.');
115
+ }
116
+ const packageDir = path.resolve(defaultPackageDir.path);
117
+ if (!(await hasApexSources(packageDir))) {
118
+ logger.info(`No Apex classes or triggers found under ${defaultPackageDir.path}. Skipping.`);
119
+ return undefined;
120
+ }
121
+ const template = options.repositoryUrl ?? readAerPluginConfig(sfdxProjectJson).repositoryUrl;
122
+ if (!template) {
123
+ throw new Error('No repository to publish to. Pass --repository-url, or set `plugins.simply.aer.repositoryUrl` in sfdx-project.json.');
124
+ }
125
+ const header = options.repositoryHeader ? parseRepositoryHeader(options.repositoryHeader) : undefined;
126
+ const report = await getPackageVersionReport(subscriberPackageVersionId, options.packagingDevhub);
127
+ if (!report.Package2Id) {
128
+ throw new Error(`Could not read a package ID for ${subscriberPackageVersionId} from its package version report.`);
129
+ }
130
+ const package2 = await getPackage2Info(report.Package2Id, options.packagingDevhub);
131
+ return {
132
+ subscriberPackageVersionId,
133
+ packageDir,
134
+ dependencies: defaultPackageDir.dependencies ?? [],
135
+ packageAliases: sfdxProjectJson.packageAliases ?? {},
136
+ template,
137
+ header,
138
+ location: locate(package2, report, template),
139
+ };
140
+ }
141
+ /**
142
+ * The `04t` a declared dependency points at: its alias or ID directly, or a `package` +
143
+ * `versionNumber` pair resolved through the Dev Hub.
144
+ */
145
+ async function dependencyVersionId(dependency, packageAliases, devHub) {
146
+ const declared = dependency.package ?? '';
147
+ const id = packageAliases[declared] ?? declared;
148
+ if (dependency.versionNumber) {
149
+ return resolveDependencyVersionId(id, dependency.versionNumber, devHub, dependency.branch);
150
+ }
151
+ if (!isSubscriberPackageVersionId(id)) {
152
+ throw new Error(`Dependency "${declared}" doesn't resolve to a subscriber package version ID (04t).`);
153
+ }
154
+ return id;
155
+ }
156
+ /**
157
+ * Download the `.pkg` of every dependency this Dev Hub owns into `targetDir`.
158
+ *
159
+ * A dependency the Dev Hub can't report on (a managed package, or one from another Dev Hub) isn't
160
+ * fetched; it's expected in a `--dependency-package-dir`. aer decides whether anything is missing.
161
+ */
162
+ async function stageDependencies(target, targetDir, options) {
163
+ const staged = [];
164
+ const external = [];
165
+ for (const dependency of target.dependencies) {
166
+ const label = dependency.package ?? '(unnamed dependency)';
167
+ // eslint-disable-next-line no-await-in-loop -- a handful of dependencies; ordering keeps the log readable
168
+ const versionId = await dependencyVersionId(dependency, target.packageAliases, options.packagingDevhub);
169
+ let report;
170
+ try {
171
+ // eslint-disable-next-line no-await-in-loop -- as above
172
+ report = await getPackageVersionReport(versionId, options.packagingDevhub);
173
+ }
174
+ catch {
175
+ external.push(label);
176
+ continue;
177
+ }
178
+ if (!report.Package2Id) {
179
+ external.push(label);
180
+ continue;
181
+ }
182
+ // eslint-disable-next-line no-await-in-loop -- as above
183
+ const location = locate(await getPackage2Info(report.Package2Id, options.packagingDevhub), report, target.template);
184
+ // eslint-disable-next-line no-await-in-loop -- as above
185
+ const response = await fetch(location.url, { headers: requestHeaders(target.header) });
186
+ if (!response.ok) {
187
+ throw new Error(`Could not download the aer package for dependency ${label} from ${forLog(location.url)} ` +
188
+ // eslint-disable-next-line no-await-in-loop -- as above
189
+ `(HTTP ${response.status}${await responseExcerpt(response)}). Has its pipeline published it?`);
190
+ }
191
+ // eslint-disable-next-line no-await-in-loop -- as above
192
+ await fs.writeFile(path.join(targetDir, location.file), Buffer.from(await response.arrayBuffer()));
193
+ logger.info(`Downloaded ${location.file} ${location.version} for dependency ${label}.`);
194
+ staged.push({ label, location });
195
+ }
196
+ if (external.length > 0) {
197
+ logger.info(`Not owned by this Dev Hub, so expected in --dependency-package-dir: ${external.join(', ')}. ` +
198
+ 'A managed package can be mocked with `aer package mock <namespace>`.');
199
+ }
200
+ return staged;
201
+ }
202
+ /** Run `aer package create`, turning a failure into an error that carries aer's own message. */
203
+ async function buildPackage(aerBinary, outputFile, packageDirs, target, staged, debug) {
204
+ const args = ['package', 'create', '-o', outputFile];
205
+ for (const dir of packageDirs) {
206
+ args.push('--package-dir', dir);
207
+ }
208
+ args.push(target.packageDir);
209
+ // `.aerrc` files are ignored so that a developer's or a repo's test settings can't change what
210
+ // gets published, and auto-update is off so the pinned binary is the one that runs.
211
+ const result = await execa(aerBinary, args, {
212
+ env: { AER_NO_RC: '1', AER_AUTOUPDATE_DISABLED: '1' },
213
+ reject: false,
214
+ stdio: debug ? 'inherit' : 'pipe',
215
+ });
216
+ if (result.exitCode === 0) {
217
+ return;
218
+ }
219
+ const output = [result.stderr, result.stdout]
220
+ .filter((part) => typeof part === 'string' && part.trim().length > 0)
221
+ .join('\n')
222
+ .trim();
223
+ let message = `aer package create failed (exit ${String(result.exitCode)})${output ? `:\n${output}` : '.'}`;
224
+ // aer only resolves a reference into a .pkg when it's namespace-qualified, and `create` has no
225
+ // `--default-namespace`, so a namespaceless package calling a namespaceless dependency can't build.
226
+ const namespaceless = staged.filter((dependency) => dependency.location.namespaceless);
227
+ if (target.location.namespaceless && namespaceless.length > 0 && /type check/i.test(output)) {
228
+ message +=
229
+ `\n\nThis package and ${namespaceless.map((d) => d.label).join(', ')} have no namespace. aer resolves ` +
230
+ 'references into a dependency package only when they are namespace-qualified, and `aer package create` ' +
231
+ 'has no --default-namespace, so this package cannot be built as an aer package yet.';
232
+ }
233
+ throw new Error(message);
234
+ }
235
+ /** `PUT` the package, with a SHA-256 header Artifactory verifies and other repositories ignore. */
236
+ async function upload(file, target) {
237
+ const body = await fs.readFile(file);
238
+ const response = await fetch(target.location.url, {
239
+ method: 'PUT',
240
+ headers: {
241
+ ...requestHeaders(target.header),
242
+ 'Content-Type': 'application/octet-stream',
243
+ 'X-Checksum-Sha256': createHash('sha256').update(body).digest('hex'),
244
+ },
245
+ body,
246
+ });
247
+ if (!response.ok) {
248
+ throw new Error(`Uploading ${target.location.file} to ${forLog(target.location.url)} failed ` +
249
+ `(HTTP ${response.status}${await responseExcerpt(response)}).`);
250
+ }
251
+ }
252
+ /**
253
+ * Build the project's aer package (`.pkg`) for one package version and upload it to an artifact
254
+ * repository, under a path derived from the Salesforce version number.
255
+ *
256
+ * Runs after `create-package-version`, whose `04t` it takes as input, so that every Unlocked
257
+ * Package version has a matching aer package a consumer can test against locally. See
258
+ * `docs/design/0059-aer-package-publish.md` in `simply-plugins` for the reasoning, particularly why
259
+ * the file name carries the namespace and the version lives only in the path.
260
+ *
261
+ * Skips (without failing) when the package didn't change, when the job is disabled, when no `04t`
262
+ * can be found, when the package has no Apex, or when this exact version is already uploaded.
263
+ * Everything past those guards throws on failure: a missing aer package would silently break every
264
+ * consumer pinned to that version.
265
+ */
266
+ export async function publishAerPackage(options) {
267
+ const skipReason = getSkipReason('publish-aer-package');
268
+ if (skipReason) {
269
+ logger.warn(skipReason);
270
+ return skip();
271
+ }
272
+ if (options.disabled) {
273
+ logger.warn('publish-aer-package is disabled. Skipping.');
274
+ return skip();
275
+ }
276
+ const target = await resolveTarget(options);
277
+ if (!target) {
278
+ return skip();
279
+ }
280
+ const { location } = target;
281
+ const outFile = options.out ?? DEFAULT_ENV_FILE;
282
+ const publishedKeys = {
283
+ [AER_PACKAGE_URL_KEY]: location.url,
284
+ [AER_PACKAGE_FILE_KEY]: location.file,
285
+ [AER_PACKAGE_VERSION_KEY]: location.version,
286
+ };
287
+ const described = { packageName: location.name, namespace: location.namespace, version: location.version };
288
+ logger.info(`Publishing ${location.file} ${location.version} to ${forLog(location.url)}.`);
289
+ if (!options.dryRun && (await isAlreadyPublished(location.url, target.header))) {
290
+ logger.info(`${location.file} ${location.version} is already published. Skipping.`);
291
+ appendToEnvFile(outFile, publishedKeys);
292
+ return {
293
+ skipped: true,
294
+ published: false,
295
+ alreadyPublished: true,
296
+ ...described,
297
+ url: location.url,
298
+ file: location.file,
299
+ };
300
+ }
301
+ const aerBinary = await resolveAerBinary({ aerPath: options.aerPath });
302
+ const aerVersion = await readAerVersion(aerBinary);
303
+ logger.info(`Using aer ${aerVersion ?? '(unknown version)'} at ${aerBinary}.`);
304
+ // Never inside the repo: aer compiles the package directory, and nothing generated should land in it.
305
+ const stagingDir = await fs.mkdtemp(path.join(os.tmpdir(), 'simply-cicd-aer-'));
306
+ if (options.debug) {
307
+ logger.debug(`Staging directory: ${stagingDir}`);
308
+ }
309
+ try {
310
+ const dependenciesDir = path.join(stagingDir, 'dependencies');
311
+ await fs.mkdir(dependenciesDir);
312
+ const staged = await stageDependencies(target, dependenciesDir, options);
313
+ const outputFile = path.join(stagingDir, location.file);
314
+ await buildPackage(aerBinary, outputFile, [dependenciesDir, ...(options.dependencyPackageDirs ?? []).map((dir) => path.resolve(dir))], target, staged, options.debug ?? false);
315
+ if (options.dryRun) {
316
+ const destination = path.join(process.cwd(), location.file);
317
+ await fs.copyFile(outputFile, destination);
318
+ logger.success(`Dry run: built ${destination}. Nothing was uploaded.`);
319
+ return { skipped: false, published: false, ...described, url: location.url, file: destination, aerVersion };
320
+ }
321
+ await upload(outputFile, target);
322
+ logger.success(`Published ${location.file} ${location.version}.`);
323
+ appendToEnvFile(outFile, publishedKeys);
324
+ return { skipped: false, published: true, ...described, url: location.url, file: location.file, aerVersion };
325
+ }
326
+ finally {
327
+ if (options.debug) {
328
+ logger.debug(`Leaving the staging directory in place for inspection: ${stagingDir}`);
329
+ }
330
+ else {
331
+ await fs.rm(stagingDir, { recursive: true, force: true });
332
+ }
333
+ }
334
+ }
335
+ //# sourceMappingURL=publishAerPackage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publishAerPackage.js","sourceRoot":"","sources":["../../src/build/publishAerPackage.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ import { getPackageVersionReport } from '../sfPackages.js';
24
24
  import { determineTagSuffix } from './createPackageVersion.js';
25
25
  import { getSkipReason } from './skipGuard.js';
26
26
  import { VersionTagFormat } from './versionTagFormat.js';
27
- import { buildCompilerConfig, buildPackageManifest, buildProvenanceLine, findPageObjectSources, readUtamPluginConfig, resolveSubscriberPackageVersionId, toDistTag, toNpmVersion, toUtamCoreRange, toVersionTag, UTAM_PACKAGE_KEY, UTAM_VERSION_KEY, } from './utamPageObjects.js';
27
+ import { buildCompilerConfig, buildPackageManifest, buildProvenanceLine, findOutputNameClashes, findPageObjectSources, findUtilitySources, PROFILES_CONFIG_FILE, readUtamPluginConfig, resolveSubscriberPackageVersionId, toDistTag, toNpmVersion, toUtamCoreRange, toVersionTag, STAGED_SOURCE_DIR, UTAM_PACKAGE_KEY, UTAM_VERSION_KEY, } from './utamPageObjects.js';
28
28
  /** The default dotenv file, matching what `create-package-version`/`create-fallback-tag` write. */
29
29
  const DEFAULT_ENV_FILE = 'subscriberPackageVersionId.env';
30
30
  /** A run that did nothing, in the shape every guard returns. */
@@ -74,16 +74,93 @@ async function installCompiler(stagingDir, utamVersion, debug) {
74
74
  logger.info(`Installed utam@${manifest.version}.`);
75
75
  return { version: manifest.version, entry: path.join(moduleDir, binRelative) };
76
76
  }
77
- /** Copy each `.utam.json` into the staged package, preserving its path under the package directory. */
77
+ /**
78
+ * Copy each source into the staged package, preserving its path under the package directory.
79
+ *
80
+ * Done before compiling, because the staged copy is what the compiler reads: rooted there, nothing
81
+ * it writes can land in the repo.
82
+ */
78
83
  async function stageSources(sources, pageObjectsRootDir, stagingDir) {
79
84
  for (const source of sources) {
80
- const destination = path.join(stagingDir, 'source', path.relative(pageObjectsRootDir, source));
85
+ const destination = path.join(stagingDir, STAGED_SOURCE_DIR, path.relative(pageObjectsRootDir, source));
81
86
  // eslint-disable-next-line no-await-in-loop -- a handful of small files; ordering keeps the log readable
82
87
  await fs.mkdir(path.dirname(destination), { recursive: true });
83
88
  // eslint-disable-next-line no-await-in-loop -- as above
84
89
  await fs.copyFile(source, destination);
85
90
  }
86
91
  }
92
+ /**
93
+ * Fail unless the compiler wrote every page object and utility into the staged package.
94
+ *
95
+ * The compiler exits cleanly even when its output lands somewhere else, and `npm publish` would
96
+ * then ship the source JSON alone — a package every test pinned to this version fails to import.
97
+ */
98
+ async function assertCompiledOutput(stagingDir, target) {
99
+ const missing = [
100
+ ...(await findMissingOutput(path.join(stagingDir, 'pageObjects'), target.sources, '.utam.json')),
101
+ ...(await findMissingOutput(path.join(stagingDir, 'utils'), target.utilitySources, '.utam.js')),
102
+ ];
103
+ if (missing.length > 0) {
104
+ throw new Error(`The UTAM compiler produced no output for ${missing.join(', ')}. Refusing to publish without them.`);
105
+ }
106
+ }
107
+ /** @returns `<outputDir>/<name>.js` for every source whose compiled `.js` isn't there. */
108
+ async function findMissingOutput(outputDir, sources, extension) {
109
+ const compiled = new Set(await fs.readdir(outputDir).catch(() => []));
110
+ return sources
111
+ .map((source) => `${path.basename(source, extension)}.js`)
112
+ .filter((file) => !compiled.has(file))
113
+ .map((file) => path.join(outputDir, file));
114
+ }
115
+ /**
116
+ * Move the compiler's profiles config, if it wrote one, to the fixed name the package publishes.
117
+ *
118
+ * The compiler writes it as `<module>.config.json` beside the output, so the scope folder of a
119
+ * scoped name has to exist before it runs; `prepareProfilesConfig` makes sure it does.
120
+ *
121
+ * The compiler also builds each implementation specifier with `path.join`, which on Windows writes
122
+ * `@scope\pkg\pageObjects\name`: not a specifier any module resolver accepts. Every value in this
123
+ * file is a module specifier, never a filesystem path, so backslashes are rewritten to `/`.
124
+ */
125
+ async function publishProfilesConfig(stagingDir, npmPackageName) {
126
+ const written = path.join(stagingDir, `${npmPackageName}.config.json`);
127
+ let content;
128
+ try {
129
+ content = await fs.readFile(written, 'utf8');
130
+ }
131
+ catch (error) {
132
+ if (error.code === 'ENOENT') {
133
+ return;
134
+ }
135
+ throw error;
136
+ }
137
+ const profiles = JSON.parse(content, (_key, value) => typeof value === 'string' ? value.replaceAll('\\', '/') : value);
138
+ await fs.writeFile(path.join(stagingDir, PROFILES_CONFIG_FILE), `${JSON.stringify(profiles, null, 4)}\n`);
139
+ await fs.rm(written);
140
+ // The `@scope/` folder `prepareProfilesConfig` made is empty now; leave staging as it'll be packed.
141
+ const scopeDir = path.dirname(written);
142
+ if (scopeDir !== stagingDir) {
143
+ await fs.rmdir(scopeDir).catch(() => undefined);
144
+ }
145
+ }
146
+ /** Create the folder the compiler writes `<module>.config.json` into — `@scope/` for a scoped name. */
147
+ async function prepareProfilesConfig(stagingDir, npmPackageName) {
148
+ await fs.mkdir(path.dirname(path.join(stagingDir, `${npmPackageName}.config.json`)), { recursive: true });
149
+ }
150
+ /**
151
+ * Fail, before anything is compiled, when two sources would compile to the same output file.
152
+ *
153
+ * @throws {Error} Naming every clashing source, since the fix is renaming one of them.
154
+ */
155
+ function assertNoOutputNameClashes(sources, utilitySources, rootDir) {
156
+ const clashes = [
157
+ ...findOutputNameClashes(sources, '.utam.json', rootDir),
158
+ ...findOutputNameClashes(utilitySources, '.utam.js', rootDir),
159
+ ];
160
+ if (clashes.length > 0) {
161
+ throw new Error(`UTAM compiles every page object and utility to a file named after its source, so these would overwrite each other: ${clashes.join('; ')}. Rename all but one.`);
162
+ }
163
+ }
87
164
  /**
88
165
  * Resolve every input the publish needs, or decide there is nothing to publish.
89
166
  *
@@ -115,6 +192,8 @@ async function resolveTarget(options) {
115
192
  return undefined;
116
193
  }
117
194
  logger.info(`Found ${sources.length} UTAM page object(s) under ${defaultPackageDir.path}.`);
195
+ const utilitySources = await findUtilitySources(pageObjectsRootDir);
196
+ assertNoOutputNameClashes(sources, utilitySources, pageObjectsRootDir);
118
197
  const versionTagFormat = VersionTagFormat.fromProject(sfdxProjectJson);
119
198
  const utamPluginConfig = readUtamPluginConfig(sfdxProjectJson);
120
199
  const npmPackageName = options.npmPackageName ?? utamPluginConfig.packageName;
@@ -130,6 +209,7 @@ async function resolveTarget(options) {
130
209
  subscriberPackageVersionId,
131
210
  pageObjectsRootDir,
132
211
  sources,
212
+ utilitySources,
133
213
  utamPluginConfig,
134
214
  npmPackageName,
135
215
  salesforcePackageName: defaultPackageDir.package ?? 'package',
@@ -147,12 +227,13 @@ async function resolveTarget(options) {
147
227
  */
148
228
  async function buildStagedPackage(stagingDir, target, options) {
149
229
  const compiler = await installCompiler(stagingDir, options.utamVersion ?? '^3', options.debug ?? false);
230
+ await stageSources([...target.sources, ...target.utilitySources], target.pageObjectsRootDir, stagingDir);
231
+ await prepareProfilesConfig(stagingDir, target.npmPackageName);
150
232
  const baseConfig = target.utamPluginConfig.compilerConfig
151
233
  ? JSON.parse(await fs.readFile(target.utamPluginConfig.compilerConfig, 'utf8'))
152
234
  : undefined;
153
235
  const compilerConfigPath = path.join(stagingDir, 'utam.config.json');
154
236
  await fs.writeFile(compilerConfigPath, JSON.stringify(buildCompilerConfig({
155
- pageObjectsRootDir: target.pageObjectsRootDir,
156
237
  stagingDir,
157
238
  npmPackageName: target.npmPackageName,
158
239
  version: target.version,
@@ -167,7 +248,8 @@ async function buildStagedPackage(stagingDir, target, options) {
167
248
  cwd: stagingDir,
168
249
  stdio: options.debug ? 'inherit' : 'pipe',
169
250
  });
170
- await stageSources(target.sources, target.pageObjectsRootDir, stagingDir);
251
+ await assertCompiledOutput(stagingDir, target);
252
+ await publishProfilesConfig(stagingDir, target.npmPackageName);
171
253
  await fs.writeFile(path.join(stagingDir, 'package.json'), `${JSON.stringify(buildPackageManifest({
172
254
  npmPackageName: target.npmPackageName,
173
255
  version: target.version,
@@ -1 +1 @@
1
- {"version":3,"file":"publishUtamPageObjects.js","sourceRoot":"","sources":["../../src/build/publishUtamPageObjects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publishUtamPageObjects.js","sourceRoot":"","sources":["../../src/build/publishUtamPageObjects.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ const PACKAGE_CHANGED_GATED_JOBS = new Set([
22
22
  'delete-scratch',
23
23
  'create-package-version',
24
24
  'publish-utam-page-objects',
25
+ 'publish-aer-package',
25
26
  ]);
26
27
  /**
27
28
  * Returns a warning message (and thus "should skip") if `job` should be skipped given the current
@@ -1 +1 @@
1
- {"version":3,"file":"skipGuard.js","sourceRoot":"","sources":["../../src/build/skipGuard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,0EAA0E;AAC1E,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IACzC,gBAAgB;IAChB,sBAAsB;IACtB,cAAc;IACd,cAAc;IACd,gBAAgB;IAChB,wBAAwB;IACxB,2BAA2B;CAC5B,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,IAAI,0BAA0B,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,OAAO,EAAE,CAAC;QACnF,OAAO,sEAAsE,GAAG,EAAE,CAAC;IACrF,CAAC;IAED,IAAI,GAAG,KAAK,qBAAqB,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,MAAM,EAAE,CAAC;QAC5E,OAAO,kFAAkF,CAAC;IAC5F,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"skipGuard.js","sourceRoot":"","sources":["../../src/build/skipGuard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,0EAA0E;AAC1E,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IACzC,gBAAgB;IAChB,sBAAsB;IACtB,cAAc;IACd,cAAc;IACd,gBAAgB;IAChB,wBAAwB;IACxB,2BAA2B;IAC3B,qBAAqB;CACtB,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,IAAI,0BAA0B,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,OAAO,EAAE,CAAC;QACnF,OAAO,sEAAsE,GAAG,EAAE,CAAC;IACrF,CAAC;IAED,IAAI,GAAG,KAAK,qBAAqB,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,MAAM,EAAE,CAAC;QAC5E,OAAO,kFAAkF,CAAC;IAC5F,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}