diff --git a/cli/azd/docs/extensions/extension-framework.md b/cli/azd/docs/extensions/extension-framework.md index 0c76569e4a3..06827531733 100644 --- a/cli/azd/docs/extensions/extension-framework.md +++ b/cli/azd/docs/extensions/extension-framework.md @@ -73,6 +73,7 @@ azd extension source add -n azd -t url -l "https://aka.ms/azd/extensions/registr A shared development registry can be added to your `azd` configuration. This registry contains extensions that are experiments and also used for internal testing before shipping official extensions. +The registry is hosted in the [`azd` GitHub repo](https://github.com/Azure/azure-dev/blob/main/cli/azd/extensions/registry.dev.json). To opt-in for the development registry run the following command: diff --git a/cli/azd/extensions/registry.dev.json b/cli/azd/extensions/registry.dev.json new file mode 100644 index 00000000000..f2b45f14731 --- /dev/null +++ b/cli/azd/extensions/registry.dev.json @@ -0,0 +1,4 @@ +{ + "schemaVersion": "1.0", + "extensions": [] +} diff --git a/cli/azd/pkg/extensions/registry_files_test.go b/cli/azd/pkg/extensions/registry_files_test.go new file mode 100644 index 00000000000..59eb41301c3 --- /dev/null +++ b/cli/azd/pkg/extensions/registry_files_test.go @@ -0,0 +1,26 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +package extensions + +import ( + "encoding/json" + "os" + "path/filepath" + "testing" + + "github.com/stretchr/testify/require" +) + +func TestDevRegistryFileIsValid(t *testing.T) { + registryPath := filepath.Join("..", "..", "extensions", "registry.dev.json") + data, err := os.ReadFile(registryPath) + require.NoError(t, err) + + var registry Registry + require.NoError(t, json.Unmarshal(data, ®istry)) + require.Equal(t, CurrentRegistrySchemaVersion, registry.SchemaVersion) + + result := ValidateRegistry(®istry, false) + require.True(t, result.Valid, "registry.dev.json failed validation: %+v", result) +} diff --git a/docs/architecture/extension-framework.md b/docs/architecture/extension-framework.md index 5d0f31e8171..4e60d671d1e 100644 --- a/docs/architecture/extension-framework.md +++ b/docs/architecture/extension-framework.md @@ -24,7 +24,7 @@ azd (host) Extensions are discovered from registries — JSON manifests that list available extensions with their versions, capabilities, and download URLs. - **Official registry:** `https://aka.ms/azd/extensions/registry` -- **Dev registry:** `https://aka.ms/azd/extensions/registry/dev` (unsigned builds) +- **Dev registry:** `https://aka.ms/azd/extensions/registry/dev` (unsigned builds, backed by `cli/azd/extensions/registry.dev.json`) - **Local sources:** File-based manifests for development ### Lifecycle