microcks / microcks/microcks-cli
bug: `import-url` doesn't validate URL scheme, fails with misleading error instead
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Go
- Sterne
- 52
- Forks
- 68
- Ø Merge
- 6 Std. 54 Min.
- Gemergte PRs (30 T.)
- 10
Beschreibung
### Describe the bug
`parseImportURLArg` in `cmd/import_url.go` only parses the `:mainArtifact:secret` suffix when the input starts with `http://` or `https://`. If it doesn't, there's no else, the string just passes through unchanged and gets sent straight to `mc.DownloadArtifact(...)`, which then fails with an unrelated, confusing error.
### How to Reproduce?
```
./microcks import-url "spec.yaml:true:mysecret"
```
### Actual behavior
### Expected behavior
Something like:
```
Error: invalid artifact URL 'spec.yaml:true:mysecret': must start with http:// or https://
```
### Microcks version or git rev
1.0.3
### Install method (`docker-compose`, `helm chart`, `operator`, `docker-desktop extension`,...)
_No response_
### Additional information
Fix for this would be to validate the scheme at the top of `parseImportURLArg `and return an error instead of silently falling through, then propagate it in RunE.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginnen Sie in cmd/import_url.go bei parseImportURLArg und dem RunE-Handler des Befehls. Reproduzieren Sie den import-url-Befehl mit einem Nicht-HTTP(S)-Wert, validieren Sie anschließend das URL-Schema und geben Sie den zurückgegebenen Fehler weiter, sodass der Befehl meldet, dass die Artifact-URL mit http:// oder https:// beginnen muss.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- go
- Bereich
- cli
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Aktiv
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 86/100