|
|
@ -82,6 +82,19 @@ func (m *Manager) Build() error {
|
|
|
|
|
|
|
|
|
|
|
|
// Check that all of the repos we're dependent on actually exist.
|
|
|
|
// Check that all of the repos we're dependent on actually exist.
|
|
|
|
req := c.Metadata.Dependencies
|
|
|
|
req := c.Metadata.Dependencies
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// If using apiVersion v1, calculate the hash before resolve repo names
|
|
|
|
|
|
|
|
// because resolveRepoNames will change req if req uses repo alias
|
|
|
|
|
|
|
|
// and Helm 2 calculate the digest from the original req
|
|
|
|
|
|
|
|
// Fix for: https://github.com/helm/helm/issues/7619
|
|
|
|
|
|
|
|
var v2Sum string
|
|
|
|
|
|
|
|
if c.Metadata.APIVersion == chart.APIVersionV1 {
|
|
|
|
|
|
|
|
v2Sum, err = resolver.HashV2Req(req)
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
return errors.New("the lock file (requirements.lock) is out of sync with the dependencies file (requirements.yaml). Please update the dependencies")
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if _, err := m.resolveRepoNames(req); err != nil {
|
|
|
|
if _, err := m.resolveRepoNames(req); err != nil {
|
|
|
|
return err
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -92,7 +105,7 @@ func (m *Manager) Build() error {
|
|
|
|
// Fix for: https://github.com/helm/helm/issues/7233
|
|
|
|
// Fix for: https://github.com/helm/helm/issues/7233
|
|
|
|
if c.Metadata.APIVersion == chart.APIVersionV1 {
|
|
|
|
if c.Metadata.APIVersion == chart.APIVersionV1 {
|
|
|
|
log.Println("warning: a valid Helm v3 hash was not found. Checking against Helm v2 hash...")
|
|
|
|
log.Println("warning: a valid Helm v3 hash was not found. Checking against Helm v2 hash...")
|
|
|
|
if sum, err := resolver.HashV2Req(req); err != nil || sum != lock.Digest {
|
|
|
|
if v2Sum != lock.Digest {
|
|
|
|
return errors.New("the lock file (requirements.lock) is out of sync with the dependencies file (requirements.yaml). Please update the dependencies")
|
|
|
|
return errors.New("the lock file (requirements.lock) is out of sync with the dependencies file (requirements.yaml). Please update the dependencies")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|