mirror of
https://github.com/portainer/portainer.git
synced 2025-07-19 21:39:40 +02:00
Some checks are pending
ci / build_images (map[arch:amd64 platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:amd64 platform:windows version:1809]) (push) Waiting to run
ci / build_images (map[arch:amd64 platform:windows version:ltsc2022]) (push) Waiting to run
ci / build_images (map[arch:arm platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:arm64 platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:ppc64le platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:s390x platform:linux version:]) (push) Waiting to run
ci / build_manifests (push) Blocked by required conditions
/ triage (push) Waiting to run
Lint / Run linters (push) Waiting to run
Test / test-client (push) Waiting to run
Test / test-server (map[arch:amd64 platform:linux]) (push) Waiting to run
Test / test-server (map[arch:amd64 platform:windows version:1809]) (push) Waiting to run
Test / test-server (map[arch:amd64 platform:windows version:ltsc2022]) (push) Waiting to run
Test / test-server (map[arch:arm64 platform:linux]) (push) Waiting to run
25 lines
814 B
Go
25 lines
814 B
Go
package git
|
|
|
|
import (
|
|
"github.com/asaskevich/govalidator"
|
|
|
|
gittypes "github.com/portainer/portainer/api/git/types"
|
|
httperrors "github.com/portainer/portainer/api/http/errors"
|
|
)
|
|
|
|
func ValidateRepoConfig(repoConfig *gittypes.RepoConfig) error {
|
|
if len(repoConfig.URL) == 0 || !govalidator.IsURL(repoConfig.URL) {
|
|
return httperrors.NewInvalidPayloadError("Invalid repository URL. Must correspond to a valid URL format")
|
|
}
|
|
|
|
return ValidateRepoAuthentication(repoConfig.Authentication)
|
|
|
|
}
|
|
|
|
func ValidateRepoAuthentication(auth *gittypes.GitAuthentication) error {
|
|
if auth != nil && len(auth.Password) == 0 && auth.GitCredentialID == 0 {
|
|
return httperrors.NewInvalidPayloadError("Invalid repository credentials. Password or GitCredentialID must be specified when authentication is enabled")
|
|
}
|
|
|
|
return nil
|
|
}
|