| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -17,19 +17,25 @@ limitations under the License.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					package rudder // import "k8s.io/helm/pkg/rudder"
 | 
					 | 
					 | 
					 | 
					package rudder // import "k8s.io/helm/pkg/rudder"
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import (
 | 
					 | 
					 | 
					 | 
					import (
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
						"fmt"
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						"golang.org/x/net/context"
 | 
					 | 
					 | 
					 | 
						"golang.org/x/net/context"
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						"google.golang.org/grpc"
 | 
					 | 
					 | 
					 | 
						"google.golang.org/grpc"
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						"k8s.io/helm/pkg/proto/hapi/release"
 | 
					 | 
					 | 
					 | 
						"k8s.io/helm/pkg/proto/hapi/release"
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					)
 | 
					 | 
					 | 
					 | 
					)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// GrpcAddr is an address that should be used to access Rudder service
 | 
					 | 
					 | 
					 | 
					// GrpcPort specifies port on which rudder will spawn a server
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					const GrpcAddr = "127.0.0.1:10001"
 | 
					 | 
					 | 
					 | 
					const (
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
						GrpcPort = 10001
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					var grpcAddr = fmt.Sprintf("127.0.0.1:%d", GrpcPort)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// InstallRelease calls Rudder InstallRelease method which should create provided release
 | 
					 | 
					 | 
					 | 
					// InstallRelease calls Rudder InstallRelease method which should create provided release
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					func InstallRelease(rel *release.InstallReleaseRequest) (*release.InstallReleaseResponse, error) {
 | 
					 | 
					 | 
					 | 
					func InstallRelease(rel *release.InstallReleaseRequest) (*release.InstallReleaseResponse, error) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						//TODO(mkwiek): parametrize this
 | 
					 | 
					 | 
					 | 
						//TODO(mkwiek): parametrize this
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						conn, err := grpc.Dial(GrpcAddr, grpc.WithInsecure())
 | 
					 | 
					 | 
					 | 
						conn, err := grpc.Dial(grpcAddr, grpc.WithInsecure())
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						if err != nil {
 | 
					 | 
					 | 
					 | 
						if err != nil {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							return nil, err
 | 
					 | 
					 | 
					 | 
							return nil, err
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						}
 | 
					 | 
					 | 
					 | 
						}
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -41,7 +47,7 @@ func InstallRelease(rel *release.InstallReleaseRequest) (*release.InstallRelease
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// UpgradeRelease calls Rudder UpgradeRelease method which should perform update
 | 
					 | 
					 | 
					 | 
					// UpgradeRelease calls Rudder UpgradeRelease method which should perform update
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					func UpgradeRelease(req *release.UpgradeReleaseRequest) (*release.UpgradeReleaseResponse, error) {
 | 
					 | 
					 | 
					 | 
					func UpgradeRelease(req *release.UpgradeReleaseRequest) (*release.UpgradeReleaseResponse, error) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						conn, err := grpc.Dial(GrpcAddr, grpc.WithInsecure())
 | 
					 | 
					 | 
					 | 
						conn, err := grpc.Dial(grpcAddr, grpc.WithInsecure())
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						if err != nil {
 | 
					 | 
					 | 
					 | 
						if err != nil {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							return nil, err
 | 
					 | 
					 | 
					 | 
							return nil, err
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						}
 | 
					 | 
					 | 
					 | 
						}
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -52,7 +58,7 @@ func UpgradeRelease(req *release.UpgradeReleaseRequest) (*release.UpgradeRelease
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// RollbackRelease calls Rudder RollbackRelease method which should perform update
 | 
					 | 
					 | 
					 | 
					// RollbackRelease calls Rudder RollbackRelease method which should perform update
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					func RollbackRelease(req *release.RollbackReleaseRequest) (*release.RollbackReleaseResponse, error) {
 | 
					 | 
					 | 
					 | 
					func RollbackRelease(req *release.RollbackReleaseRequest) (*release.RollbackReleaseResponse, error) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						conn, err := grpc.Dial(GrpcAddr, grpc.WithInsecure())
 | 
					 | 
					 | 
					 | 
						conn, err := grpc.Dial(grpcAddr, grpc.WithInsecure())
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						if err != nil {
 | 
					 | 
					 | 
					 | 
						if err != nil {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							return nil, err
 | 
					 | 
					 | 
					 | 
							return nil, err
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						}
 | 
					 | 
					 | 
					 | 
						}
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
 
 |