Azure / Azure/bicep

Tooling support for download of module from registry

Open
#5,211 0 comments 5 reactions 0 assignees View on GitHub
enhancement story: refactoring
Dominant language
Bicep
Stars
3.6k
Forks
830
Avg merge
1d 21m
Merged PRs (30d)
79

Description

**Is your feature request related to a problem? Please describe.**

Modules are super useful, and now that we have the registry we can all envision a range of modules that operate at different levels of sophistication.

The thing I'm focused on is what happens when you need to change *one thing* about a module you're using. Each module is a closed system. If you are using a module but you need to configure something that is not parameterized, you have to:

- find the code for the module
- download it (assuming you can find it)
- and then update your code to use it in the new location
- and finally you can make your edits.

**Describe the solution you'd like**

Suppose I'm using a module "br:rynowak/aks-with-good-defaults:1.0.0`. I like what this does overall, but now I need to enable the Azure ML AKS addon. This would just be adding a few lines of code, but the module I'm using didn't provide extensions as a parameter so I'm out of luck.

I'd like to:

- Right click or `ctrl+.` the module declaration in the editor
- Select "Convert to local module"
- See the module declaration change to "./aks-with-good-defaults.bicep`
- See `aks-with-good-defaults.bicep` in the same folder as my code that's using it

Now I'm ready to customize this as I see fit. This automated 3 steps I would have had to do manually, and one of those steps might be quite hard or impossible (finding the original source code).

Contributor guide

Open the contributing guide

Research direction

No files, tests, or concrete entry points are named. Start by locating how the editor handles module declarations and commands, then trace registry module retrieval and local-file creation. Done means a registry module can be converted through the editor, the declaration points to the generated local file, and the module source is placed beside the using file.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure
Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.