Skip to content

Commit

Permalink
NO-ISSUE: Update OKD images to 4.16 (#6231)
Browse files Browse the repository at this point in the history
The goal is to have an assisted installer job on master that installs
OKD.
  • Loading branch information
adriengentil authored and danmanor committed Apr 24, 2024
1 parent a03cd2c commit e546277
Show file tree
Hide file tree
Showing 10 changed files with 306 additions and 251 deletions.
14 changes: 6 additions & 8 deletions cmd/main.go
Expand Up @@ -336,19 +336,17 @@ func main() {
instructionApi := hostcommands.NewInstructionManager(log.WithField("pkg", "instructions"), db, hwValidator,
releaseHandler, Options.InstructionConfig, connectivityValidator, eventsHandler, versionHandler, osImages, Options.EnableKubeAPI)

images := []string{
publicRegistries := map[string]bool{}
validations.ParsePublicRegistries(publicRegistries, Options.ValidationsConfig.PublicRegistries)
pullSecretValidator, err := validations.NewPullSecretValidator(
publicRegistries,
authHandler,
Options.ReleaseImageMirror,
Options.BMConfig.AgentDockerImg,
Options.InstructionConfig.InstallerImage,
Options.InstructionConfig.ControllerImage,
Options.InstructionConfig.AgentImage,
}

for _, releaseImage := range releaseImagesArray {
images = append(images, *releaseImage.URL)
}

pullSecretValidator, err := validations.NewPullSecretValidator(Options.ValidationsConfig, authHandler, images...)
)
failOnError(err, "failed to create pull secret validator")

log.Println("DeployTarget: " + Options.DeployTarget)
Expand Down
14 changes: 7 additions & 7 deletions internal/bminventory/inventory.go
Expand Up @@ -177,7 +177,7 @@ type InstallerInternals interface {
GetKnownHostApprovedCounts(clusterID strfmt.UUID) (registered, approved int, err error)
HostWithCollectedLogsExists(clusterId strfmt.UUID) (bool, error)
GetKnownApprovedHosts(clusterId strfmt.UUID) ([]*common.Host, error)
ValidatePullSecret(secret string, username string) error
ValidatePullSecret(secret string, username string, releaseImageURL string) error
GetInfraEnvInternal(ctx context.Context, params installer.GetInfraEnvParams) (*common.InfraEnv, error)
V2UpdateHostInstallProgressInternal(ctx context.Context, params installer.V2UpdateHostInstallProgressParams) error
}
Expand Down Expand Up @@ -285,8 +285,8 @@ func NewBareMetalInventory(
}
}

func (b *bareMetalInventory) ValidatePullSecret(secret string, username string) error {
return b.secretValidator.ValidatePullSecret(secret, username)
func (b *bareMetalInventory) ValidatePullSecret(secret string, username string, releaseImageURL string) error {
return b.secretValidator.ValidatePullSecret(secret, username, releaseImageURL)
}

func (b *bareMetalInventory) updatePullSecret(pullSecret string, log logrus.FieldLogger) (string, error) {
Expand Down Expand Up @@ -633,7 +633,7 @@ func (b *bareMetalInventory) RegisterClusterInternal(
}

pullSecret := swag.StringValue(params.NewClusterParams.PullSecret)
err = b.ValidatePullSecret(pullSecret, ocm.UserNameFromContext(ctx))
err = b.ValidatePullSecret(pullSecret, ocm.UserNameFromContext(ctx), *releaseImage.URL)
if err != nil {
err = errors.Wrap(secretValidationToUserError(err), "pull secret for new cluster is invalid")
return nil, common.NewApiError(http.StatusBadRequest, err)
Expand Down Expand Up @@ -1847,7 +1847,7 @@ func (b *bareMetalInventory) validateAndUpdateClusterParams(ctx context.Context,
log := logutil.FromContext(ctx, b.log)

if swag.StringValue(params.ClusterUpdateParams.PullSecret) != "" {
if err := b.ValidatePullSecret(*params.ClusterUpdateParams.PullSecret, ocm.UserNameFromContext(ctx)); err != nil {
if err := b.ValidatePullSecret(*params.ClusterUpdateParams.PullSecret, ocm.UserNameFromContext(ctx), cluster.OcpReleaseImage); err != nil {
log.WithError(err).Errorf("Pull secret for cluster %s is invalid", params.ClusterID)
return installer.V2UpdateClusterParams{}, err
}
Expand Down Expand Up @@ -4645,7 +4645,7 @@ func (b *bareMetalInventory) RegisterInfraEnvInternal(
}

pullSecret := swag.StringValue(params.InfraenvCreateParams.PullSecret)
err = b.ValidatePullSecret(pullSecret, ocm.UserNameFromContext(ctx))
err = b.ValidatePullSecret(pullSecret, ocm.UserNameFromContext(ctx), "")
if err != nil {
err = errors.Wrap(secretValidationToUserError(err), "pull secret for new infraEnv is invalid")
return common.NewApiError(http.StatusBadRequest, err)
Expand Down Expand Up @@ -5109,7 +5109,7 @@ func (b *bareMetalInventory) validateAndUpdateInfraEnvParams(ctx context.Context
log := logutil.FromContext(ctx, b.log)

if params.InfraEnvUpdateParams.PullSecret != "" {
if err := b.ValidatePullSecret(params.InfraEnvUpdateParams.PullSecret, ocm.UserNameFromContext(ctx)); err != nil {
if err := b.ValidatePullSecret(params.InfraEnvUpdateParams.PullSecret, ocm.UserNameFromContext(ctx), ""); err != nil {
log.WithError(err).Errorf("Pull secret for infraEnv %s is invalid", params.InfraEnvID)
return installer.UpdateInfraEnvParams{}, err
}
Expand Down
52 changes: 26 additions & 26 deletions internal/bminventory/inventory_test.go

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions internal/bminventory/mock_installer_internal.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions internal/cluster/validations/mock_validations.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit e546277

Please sign in to comment.