MCPcopy Create free account
hub / github.com/docker/secrets-engine / newRepoData

Function newRepoData

x/release/command.go:180–213  ·  view source on GitHub ↗
(versionExtraAllowList []string)

Source from the content-addressed store, hash-verified

178}
179
180func newRepoData(versionExtraAllowList []string) (helper.RepoData, error) {
181 cwd, err := os.Getwd()
182 if err != nil {
183 return helper.RepoData{}, err
184 }
185 root := os.DirFS(cwd)
186 modules := helper.RepoData{}
187 err = fs.WalkDir(root, ".", func(path string, d fs.DirEntry, err error) error {
188 if err != nil {
189 return err
190 }
191 if d.IsDir() && d.Type()&fs.ModeSymlink != 0 {
192 return fs.SkipDir
193 }
194 if !d.IsDir() {
195 return nil
196 }
197 mod := path
198 if _, err := os.Stat(filepath.Join(mod, "go.mod")); err != nil {
199 return nil
200 }
201 latest, err := getLatestVersion(mod)
202 if err != nil {
203 return err
204 }
205 deps, err := getDirectProjectDependencies(mod)
206 if err != nil {
207 return err
208 }
209 modules.AddMod(mod, helper.Version{Current: latest, KeepExtra: slices.Contains(versionExtraAllowList, mod)}, deps)
210 return nil
211 })
212 return modules, err
213}
214
215func getDirectProjectDependencies(mod string) ([]string, error) {
216 modPath := filepath.Join(mod, "go.mod")

Callers 1

ReleaseCommandFunction · 0.85

Calls 4

AddModMethod · 0.95
getLatestVersionFunction · 0.85
TypeMethod · 0.45

Tested by

no test coverage detected