Skip to content

Commit a8f8e83

Browse files
authored
Merge pull request #6320 from Shopify/08-26-fix_uid_generation_for_new_extensions
Fix uid generation for new extensions
2 parents 3054976 + 38734bc commit a8f8e83

File tree

2 files changed

+5
-10
lines changed

2 files changed

+5
-10
lines changed

packages/app/src/cli/services/generate/extension.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,7 @@ describe('initialize a extension', async () => {
264264
name,
265265
handle: slugify(name),
266266
flavor,
267+
uid: 'ba7c20a9-578d-6fee-8cd2-044af992dabd92d8bbfe',
267268
})
268269
})
269270
},

packages/app/src/cli/services/generate/extension.ts

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import {downloadGitRepository} from '@shopify/cli-kit/node/git'
1919
import {fileExists, inTemporaryDirectory, mkdir, moveFile, removeFile, glob} from '@shopify/cli-kit/node/fs'
2020
import {joinPath, relativizePath} from '@shopify/cli-kit/node/path'
2121
import {slugify} from '@shopify/cli-kit/common/string'
22-
import {randomUUID} from '@shopify/cli-kit/node/crypto'
22+
import {nonRandomUUID} from '@shopify/cli-kit/node/crypto'
2323

2424
export interface GenerateExtensionTemplateOptions {
2525
app: AppLinkedInterface
@@ -72,7 +72,6 @@ interface ExtensionInitOptions {
7272
type: string
7373
name: string
7474
extensionFlavor: ExtensionFlavor | undefined
75-
uid: string | undefined
7675
onGetTemplateRepository: (url: string, destination: string) => Promise<void>
7776
}
7877

@@ -87,15 +86,13 @@ export async function generateExtensionTemplate(
8786
const directory = await ensureExtensionDirectoryExists({app: options.app, name: extensionName})
8887
const url = options.cloneUrl ?? options.extensionTemplate.url
8988

90-
const uid = options.developerPlatformClient.supportsAtomicDeployments ? randomUUID() : undefined
9189
const initOptions: ExtensionInitOptions = {
9290
directory,
9391
url,
9492
app: options.app,
9593
type: options.extensionTemplate.type,
9694
name: extensionName,
9795
extensionFlavor,
98-
uid,
9996
onGetTemplateRepository:
10097
options.onGetTemplateRepository ??
10198
(async (url, destination) => {
@@ -133,7 +130,6 @@ async function themeExtensionInit({
133130
type,
134131
name,
135132
extensionFlavor,
136-
uid,
137133
onGetTemplateRepository,
138134
}: ExtensionInitOptions) {
139135
return inTemporaryDirectory(async (tmpDir) => {
@@ -143,7 +139,7 @@ async function themeExtensionInit({
143139
tmpDir,
144140
onGetTemplateRepository,
145141
)
146-
await recursiveLiquidTemplateCopy(templateDirectory, directory, {name, type, uid})
142+
await recursiveLiquidTemplateCopy(templateDirectory, directory, {name, type, uid: nonRandomUUID(slugify(name))})
147143
})
148144
}
149145

@@ -153,7 +149,6 @@ async function functionExtensionInit({
153149
app,
154150
name,
155151
extensionFlavor,
156-
uid,
157152
onGetTemplateRepository,
158153
}: ExtensionInitOptions) {
159154
const templateLanguage = getTemplateLanguage(extensionFlavor?.value)
@@ -173,7 +168,7 @@ async function functionExtensionInit({
173168
name,
174169
handle: slugify(name),
175170
flavor: extensionFlavor?.value,
176-
uid,
171+
uid: nonRandomUUID(slugify(name)),
177172
})
178173
})
179174

@@ -221,7 +216,6 @@ async function uiExtensionInit({
221216
app,
222217
name,
223218
extensionFlavor,
224-
uid,
225219
onGetTemplateRepository,
226220
}: ExtensionInitOptions) {
227221
const templateLanguage = getTemplateLanguage(extensionFlavor?.value)
@@ -244,7 +238,7 @@ async function uiExtensionInit({
244238
name,
245239
handle: slugify(name),
246240
flavor: extensionFlavor?.value ?? '',
247-
uid,
241+
uid: nonRandomUUID(slugify(name)),
248242
})
249243
})
250244

0 commit comments

Comments
 (0)