From e909258fe80668f531862871310fed182b59bf6f Mon Sep 17 00:00:00 2001 From: Adam Reese <adam@reese.io> Date: Thu, 12 Apr 2018 15:34:15 -0700 Subject: [PATCH] remove rudder build infra --- Makefile | 14 --- cmd/rudder/rudder.go | 158 --------------------------------- rootfs/Dockerfile.experimental | 26 ------ rootfs/Dockerfile.rudder | 25 ------ versioning.mk | 2 - 5 files changed, 225 deletions(-) delete mode 100644 cmd/rudder/rudder.go delete mode 100644 rootfs/Dockerfile.experimental delete mode 100644 rootfs/Dockerfile.rudder diff --git a/Makefile b/Makefile index 2dfbd2c3c..4dd5f2d95 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,6 @@ DOCKER_REGISTRY ?= gcr.io IMAGE_PREFIX ?= kubernetes-helm SHORT_NAME ?= tiller -SHORT_NAME_RUDDER ?= rudder TARGETS ?= darwin/amd64 linux/amd64 linux/386 linux/arm linux/arm64 linux/ppc64le windows/amd64 DIST_DIRS = find * -type d -exec APP = helm @@ -67,19 +66,6 @@ docker-build: check-docker docker-binary docker build --rm -t ${IMAGE} rootfs docker tag ${IMAGE} ${MUTABLE_IMAGE} -.PHONY: docker-binary-rudder -docker-binary-rudder: BINDIR = ./rootfs -docker-binary-rudder: GOFLAGS += -a -installsuffix cgo -docker-binary-rudder: - GOOS=linux GOARCH=amd64 CGO_ENABLED=0 $(GO) build -o $(BINDIR)/rudder $(GOFLAGS) -tags '$(TAGS)' -ldflags '$(LDFLAGS)' k8s.io/helm/cmd/rudder - -.PHONY: docker-build-experimental -docker-build-experimental: check-docker docker-binary docker-binary-rudder - docker build --rm -t ${IMAGE} rootfs -f rootfs/Dockerfile.experimental - docker tag ${IMAGE} ${MUTABLE_IMAGE} - docker build --rm -t ${IMAGE_RUDDER} rootfs -f rootfs/Dockerfile.rudder - docker tag ${IMAGE_RUDDER} ${MUTABLE_IMAGE_RUDDER} - .PHONY: test test: build test: TESTFLAGS += -race -v diff --git a/cmd/rudder/rudder.go b/cmd/rudder/rudder.go deleted file mode 100644 index 30ece3998..000000000 --- a/cmd/rudder/rudder.go +++ /dev/null @@ -1,158 +0,0 @@ -/* -Copyright 2017 The Kubernetes Authors All rights reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package main - -import ( - "bytes" - "fmt" - "net" - - "golang.org/x/net/context" - "google.golang.org/grpc" - "google.golang.org/grpc/grpclog" - "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset" - - "github.com/spf13/pflag" - "k8s.io/helm/pkg/kube" - rudderAPI "k8s.io/helm/pkg/proto/hapi/rudder" - "k8s.io/helm/pkg/tiller" - "k8s.io/helm/pkg/version" -) - -var kubeClient *kube.Client -var clientset internalclientset.Interface - -type options struct { - listen string -} - -func (opts *options) registerFlags() { - pflag.StringVarP(&opts.listen, "listen", "l", "127.0.0.1:10001", - "Socket for rudder grpc server (default: 127.0.0.1:10001).") -} - -func (opts *options) parseFlags() { - pflag.Parse() -} - -func (opts *options) regAndParseFlags() { - opts.registerFlags() - opts.parseFlags() -} - -func main() { - opts := new(options) - opts.regAndParseFlags() - var err error - kubeClient = kube.New(nil) - clientset, err = kubeClient.ClientSet() - if err != nil { - grpclog.Fatalf("Cannot initialize Kubernetes connection: %s", err) - } - grpclog.Printf("Creating tcp socket on %s\n", opts.listen) - lis, err := net.Listen("tcp", opts.listen) - if err != nil { - grpclog.Fatalf("failed to listen: %v", err) - } - grpcServer := grpc.NewServer() - rudderAPI.RegisterReleaseModuleServiceServer(grpcServer, &ReleaseModuleServiceServer{}) - - grpclog.Printf("Starting server on %s\n", opts.listen) - grpcServer.Serve(lis) -} - -// ReleaseModuleServiceServer provides implementation for rudderAPI.ReleaseModuleServiceServer -type ReleaseModuleServiceServer struct{} - -// Version returns Rudder version based on helm version -func (r *ReleaseModuleServiceServer) Version(ctx context.Context, in *rudderAPI.VersionReleaseRequest) (*rudderAPI.VersionReleaseResponse, error) { - grpclog.Print("version") - return &rudderAPI.VersionReleaseResponse{ - Name: "helm-rudder-native", - Version: version.Version, - }, nil -} - -// InstallRelease creates a release using kubeClient.Create -func (r *ReleaseModuleServiceServer) InstallRelease(ctx context.Context, in *rudderAPI.InstallReleaseRequest) (*rudderAPI.InstallReleaseResponse, error) { - grpclog.Print("install") - b := bytes.NewBufferString(in.Release.Manifest) - err := kubeClient.Create(in.Release.Namespace, b, 500, false) - if err != nil { - grpclog.Printf("error when creating release: %v", err) - } - return &rudderAPI.InstallReleaseResponse{}, err -} - -// DeleteRelease deletes a provided release -func (r *ReleaseModuleServiceServer) DeleteRelease(ctx context.Context, in *rudderAPI.DeleteReleaseRequest) (*rudderAPI.DeleteReleaseResponse, error) { - grpclog.Print("delete") - - resp := &rudderAPI.DeleteReleaseResponse{} - rel := in.Release - vs, err := tiller.GetVersionSet(clientset.Discovery()) - if err != nil { - return resp, fmt.Errorf("Could not get apiVersions from Kubernetes: %v", err) - } - - kept, errs := tiller.DeleteRelease(rel, vs, kubeClient) - rel.Manifest = kept - - allErrors := "" - for _, e := range errs { - allErrors = allErrors + "\n" + e.Error() - } - - if len(allErrors) > 0 { - err = fmt.Errorf(allErrors) - } - - return &rudderAPI.DeleteReleaseResponse{ - Release: rel, - }, err -} - -// RollbackRelease rolls back the release -func (r *ReleaseModuleServiceServer) RollbackRelease(ctx context.Context, in *rudderAPI.RollbackReleaseRequest) (*rudderAPI.RollbackReleaseResponse, error) { - grpclog.Print("rollback") - c := bytes.NewBufferString(in.Current.Manifest) - t := bytes.NewBufferString(in.Target.Manifest) - err := kubeClient.Update(in.Target.Namespace, c, t, in.Force, in.Recreate, in.Timeout, in.Wait) - return &rudderAPI.RollbackReleaseResponse{}, err -} - -// UpgradeRelease upgrades manifests using kubernetes client -func (r *ReleaseModuleServiceServer) UpgradeRelease(ctx context.Context, in *rudderAPI.UpgradeReleaseRequest) (*rudderAPI.UpgradeReleaseResponse, error) { - grpclog.Print("upgrade") - c := bytes.NewBufferString(in.Current.Manifest) - t := bytes.NewBufferString(in.Target.Manifest) - err := kubeClient.Update(in.Target.Namespace, c, t, in.Force, in.Recreate, in.Timeout, in.Wait) - // upgrade response object should be changed to include status - return &rudderAPI.UpgradeReleaseResponse{}, err -} - -// ReleaseStatus retrieves release status -func (r *ReleaseModuleServiceServer) ReleaseStatus(ctx context.Context, in *rudderAPI.ReleaseStatusRequest) (*rudderAPI.ReleaseStatusResponse, error) { - grpclog.Print("status") - - resp, err := kubeClient.Get(in.Release.Namespace, bytes.NewBufferString(in.Release.Manifest)) - in.Release.Info.Status.Resources = resp - return &rudderAPI.ReleaseStatusResponse{ - Release: in.Release, - Info: in.Release.Info, - }, err -} diff --git a/rootfs/Dockerfile.experimental b/rootfs/Dockerfile.experimental deleted file mode 100644 index 990bcde51..000000000 --- a/rootfs/Dockerfile.experimental +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright 2017 The Kubernetes Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -FROM alpine:3.3 - -RUN apk update && apk add ca-certificates && rm -rf /var/cache/apk/* - -ENV HOME /tmp - -COPY tiller /tiller - -EXPOSE 44134 - -CMD ["/tiller", "--experimental-release"] - diff --git a/rootfs/Dockerfile.rudder b/rootfs/Dockerfile.rudder deleted file mode 100644 index 6bb3a2d92..000000000 --- a/rootfs/Dockerfile.rudder +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 2017 The Kubernetes Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -FROM alpine:3.3 - -RUN apk update && apk add ca-certificates && rm -rf /var/cache/apk/* - -ENV HOME /tmp - -COPY rudder /rudder - -EXPOSE 10001 - -CMD ["/rudder"] diff --git a/versioning.mk b/versioning.mk index d1c348f9c..d749ffce2 100644 --- a/versioning.mk +++ b/versioning.mk @@ -26,9 +26,7 @@ LDFLAGS += -X k8s.io/helm/pkg/version.GitCommit=${GIT_COMMIT} LDFLAGS += -X k8s.io/helm/pkg/version.GitTreeState=${GIT_DIRTY} IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${SHORT_NAME}:${DOCKER_VERSION} -IMAGE_RUDDER := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${SHORT_NAME_RUDDER}:${DOCKER_VERSION} MUTABLE_IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${SHORT_NAME}:${MUTABLE_VERSION} -MUTABLE_IMAGE_RUDDER := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${SHORT_NAME_RUDDER}:${MUTABLE_VERSION} DOCKER_PUSH = docker push ifeq ($(DOCKER_REGISTRY),gcr.io) -- GitLab