Skip to content

Commit

Permalink
drop bazel from kind build node-image
Browse files Browse the repository at this point in the history
Preparing to rework node image building, dropping bazel as we no longer have a reason to support this.

See: kubernetes/enhancements#2420
  • Loading branch information
BenTheElder authored and coutinhop committed Aug 18, 2022
1 parent 389f4e8 commit 37412f2
Show file tree
Hide file tree
Showing 6 changed files with 4 additions and 230 deletions.
4 changes: 1 addition & 3 deletions pkg/build/nodeimage/build.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ import (
func Build(options ...Option) error {
// default options
ctx := &buildContext{
mode: DefaultMode,
image: DefaultImage,
baseImage: DefaultBaseImage,
logger: log.NoopLogger{},
Expand Down Expand Up @@ -58,7 +57,7 @@ func Build(options ...Option) error {
}

// initialize bits
builder, err := kube.NewNamedBuilder(ctx.logger, ctx.mode, ctx.kubeRoot, ctx.arch)
builder, err := kube.NewDockerBuilder(ctx.logger, ctx.kubeRoot, ctx.arch)
if err != nil {
return err
}
Expand All @@ -84,7 +83,6 @@ func supportedArch(arch string) bool {
// build configuration
type buildContext struct {
// option fields
mode string
image string
baseImage string
logger log.Logger
Expand Down
4 changes: 0 additions & 4 deletions pkg/build/nodeimage/defaults.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,3 @@ const DefaultImage = "kindest/node:latest"

// DefaultBaseImage is the default base image used
const DefaultBaseImage = "kindest/base:v20210315-64ac2e7f@sha256:d93111ce508dd3134141449d0658de71b6789c01ad73aa340c98b7e640e74ed8"

// DefaultMode is the default kubernetes build mode for the built image
// see pkg/build/kube.Bits
const DefaultMode = "docker"
32 changes: 0 additions & 32 deletions pkg/build/nodeimage/internal/kube/builder.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,6 @@ limitations under the License.

package kube

import (
"sigs.k8s.io/kind/pkg/errors"
"sigs.k8s.io/kind/pkg/log"
)

// Builder represents and implementation of building Kubernetes
// building may constitute downloading a release
type Builder interface {
Expand All @@ -29,30 +24,3 @@ type Builder interface {
// an existing build instead
Build() (Bits, error)
}

// NewNamedBuilder returns a new Builder by named implementation
// currently this includes:
// "bazel" -> NewBazelBuilder(kubeRoot)
// "docker" or "make" -> NewDockerBuilder(kubeRoot)
func NewNamedBuilder(logger log.Logger, name, kubeRoot, arch string) (Builder, error) {
fn, err := nameToImpl(name)
if err != nil {
return nil, err
}
return fn(logger, kubeRoot, arch)
}

func nameToImpl(name string) (func(log.Logger, string, string) (Builder, error), error) {
switch name {
case "bazel":
return NewBazelBuilder, nil
// TODO: docker builder should be as-dockerized as possible, make builder
// should use host go etc.
case "docker":
return NewDockerBuilder, nil
case "make":
return NewDockerBuilder, nil
default:
}
return nil, errors.Errorf("no Bits implementation with name: %s", name)
}
182 changes: 0 additions & 182 deletions pkg/build/nodeimage/internal/kube/builder_bazel.go

This file was deleted.

8 changes: 0 additions & 8 deletions pkg/build/nodeimage/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,6 @@ func WithBaseImage(image string) Option {
})
}

// WithMode sets the kubernetes build mode
func WithMode(mode string) Option {
return optionAdapter(func(b *buildContext) error {
b.mode = mode
return nil
})
}

// WithKuberoot sets the path to the Kubernetes source directory (if empty, the path will be autodetected)
func WithKuberoot(root string) Option {
return optionAdapter(func(b *buildContext) error {
Expand Down
4 changes: 3 additions & 1 deletion pkg/cmd/kind/build/nodeimage/nodeimage.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@ func NewCommand(logger log.Logger, streams cmd.IOStreams) *cobra.Command {
Short: "Build the node image",
Long: "Build the node image which contains Kubernetes build artifacts and other kind requirements",
RunE: func(cmd *cobra.Command, args []string) error {
if cmd.Flags().Lookup("type").Changed {
return errors.New("--type is no longer supported, please remove this flag")
}
return runE(logger, flags)
},
}
Expand Down Expand Up @@ -70,7 +73,6 @@ func NewCommand(logger log.Logger, streams cmd.IOStreams) *cobra.Command {

func runE(logger log.Logger, flags *flagpole) error {
if err := nodeimage.Build(
nodeimage.WithMode(flags.BuildType),
nodeimage.WithImage(flags.Image),
nodeimage.WithBaseImage(flags.BaseImage),
nodeimage.WithKuberoot(flags.KubeRoot),
Expand Down

0 comments on commit 37412f2

Please sign in to comment.