diff --git a/.gitignore b/.gitignore
index 72f0285..6791346 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 SOURCES/contrib-7fbd252.tar.gz
-SOURCES/kubernetes-52492b4.tar.gz
-SOURCES/ose-86dc49a.tar.gz
+SOURCES/go-bindata-a0ff256.tar.gz
+SOURCES/kubernetes-a9e9cf3.tar.gz
+SOURCES/ose-87d9d8d.tar.gz
diff --git a/.kubernetes.metadata b/.kubernetes.metadata
index 07feba9..0b68104 100644
--- a/.kubernetes.metadata
+++ b/.kubernetes.metadata
@@ -1,3 +1,4 @@
 aeadd20e11fecfec6428039206120bdc91d6ad3c SOURCES/contrib-7fbd252.tar.gz
-a5da27c179948483d8f8ac60a16a1ece8bd7f72c SOURCES/kubernetes-52492b4.tar.gz
-4c12b884335c1347ee240dc6a330e12ef2fcbeba SOURCES/ose-86dc49a.tar.gz
+7d5ccafe85f5c869b7abc6a23e4c193436239468 SOURCES/go-bindata-a0ff256.tar.gz
+40821ce09ece58583663614636a6a60c9e8587d7 SOURCES/kubernetes-a9e9cf3.tar.gz
+14b3675af2541a26459c6040f6f35e2ff6dce28d SOURCES/ose-87d9d8d.tar.gz
diff --git a/SOURCES/Hyperkube-remove-federation-cmds.patch b/SOURCES/Hyperkube-remove-federation-cmds.patch
index 44d2a4b..75f2514 100644
--- a/SOURCES/Hyperkube-remove-federation-cmds.patch
+++ b/SOURCES/Hyperkube-remove-federation-cmds.patch
@@ -1,6 +1,6 @@
-From d110c7554c0cbb54e08007d75469380e4cfc7891 Mon Sep 17 00:00:00 2001
+From 3b2333bac86397a7d913f62e912a953fa548582d Mon Sep 17 00:00:00 2001
 From: Jan Chaloupka <jchaloup@redhat.com>
-Date: Wed, 7 Sep 2016 14:19:03 +0200
+Date: Mon, 12 Dec 2016 17:12:58 +0100
 Subject: [PATCH] Hyperkube: remove federation cmds
 
 ---
@@ -13,12 +13,12 @@ Subject: [PATCH] Hyperkube: remove federation cmds
 
 diff --git a/cmd/hyperkube/federation-apiserver.go b/cmd/hyperkube/federation-apiserver.go
 deleted file mode 100644
-index 6093dc5..0000000
+index 25c0f20..0000000
 --- a/cmd/hyperkube/federation-apiserver.go
 +++ /dev/null
 @@ -1,38 +0,0 @@
 -/*
--Copyright 2016 The Kubernetes Authors All rights reserved.
+-Copyright 2016 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.
@@ -37,13 +37,13 @@ index 6093dc5..0000000
 -
 -import (
 -	"k8s.io/kubernetes/federation/cmd/federation-apiserver/app"
--	genericoptions "k8s.io/kubernetes/pkg/genericapiserver/options"
+-	"k8s.io/kubernetes/federation/cmd/federation-apiserver/app/options"
 -)
 -
 -// NewFederationAPIServer creates a new hyperkube Server object that includes the
 -// description and flags.
 -func NewFederationAPIServer() *Server {
--	s := genericoptions.NewServerRunOptions()
+-	s := options.NewServerRunOptions()
 -
 -	hks := Server{
 -		SimpleUsage: "federation-apiserver",
@@ -57,12 +57,12 @@ index 6093dc5..0000000
 -}
 diff --git a/cmd/hyperkube/federation-controller-manager.go b/cmd/hyperkube/federation-controller-manager.go
 deleted file mode 100644
-index d7a2af1..0000000
+index e445f87..0000000
 --- a/cmd/hyperkube/federation-controller-manager.go
 +++ /dev/null
 @@ -1,38 +0,0 @@
 -/*
--Copyright 2016 The Kubernetes Authors All rights reserved.
+-Copyright 2016 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.
@@ -100,10 +100,10 @@ index d7a2af1..0000000
 -	return &hks
 -}
 diff --git a/cmd/hyperkube/main.go b/cmd/hyperkube/main.go
-index 460d011..4d9c499 100644
+index df6d239..998c099 100644
 --- a/cmd/hyperkube/main.go
 +++ b/cmd/hyperkube/main.go
-@@ -38,9 +38,5 @@ func main() {
+@@ -41,9 +41,5 @@ func main() {
  	hk.AddServer(NewKubelet())
  	hk.AddServer(NewKubeProxy())
  
@@ -114,5 +114,5 @@ index 460d011..4d9c499 100644
  	hk.RunToExit(os.Args)
  }
 -- 
-1.9.3
+2.7.4
 
diff --git a/SOURCES/build-with-debug-info.patch b/SOURCES/build-with-debug-info.patch
index a875233..b5df85d 100644
--- a/SOURCES/build-with-debug-info.patch
+++ b/SOURCES/build-with-debug-info.patch
@@ -1,6 +1,6 @@
-From b2a5ea771b9aa2206d4a4445fe032a2c99038c28 Mon Sep 17 00:00:00 2001
+From ac604e01ffe629078c1f3508d6ac4d2e93a7eea9 Mon Sep 17 00:00:00 2001
 From: Jan Chaloupka <jchaloup@redhat.com>
-Date: Mon, 4 Jan 2016 06:44:01 +0100
+Date: Mon, 12 Dec 2016 16:15:17 +0100
 Subject: [PATCH] build with debug info
 
 ---
@@ -8,27 +8,27 @@ Subject: [PATCH] build with debug info
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/hack/lib/golang.sh b/hack/lib/golang.sh
-index 04c56cc..26a8dc2 100755
+index c0b5f54..b306fb9 100755
 --- a/hack/lib/golang.sh
 +++ b/hack/lib/golang.sh
-@@ -371,7 +371,7 @@ kube::golang::build_binaries_for_platform() {
-       local outfile=$(kube::golang::output_filename_for_binary "${binary}" "${platform}")
+@@ -499,7 +499,7 @@ kube::golang::build_binaries_for_platform() {
        CGO_ENABLED=0 go build -o "${outfile}" \
          "${goflags[@]:+${goflags[@]}}" \
+         -gcflags "${gogcflags}" \
 -        -ldflags "${goldflags}" \
 +        -ldflags "-B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') ${goldflags}" \
          "${binary}"
        kube::log::progress "*"
      done
-@@ -379,7 +379,7 @@ kube::golang::build_binaries_for_platform() {
-       local outfile=$(kube::golang::output_filename_for_binary "${binary}" "${platform}")
+@@ -508,7 +508,7 @@ kube::golang::build_binaries_for_platform() {
        go build -o "${outfile}" \
          "${goflags[@]:+${goflags[@]}}" \
+         -gcflags "${gogcflags}" \
 -        -ldflags "${goldflags}" \
 +        -ldflags "-B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') ${goldflags}" \
          "${binary}"
        kube::log::progress "*"
      done
 -- 
-1.9.3
+2.7.4
 
diff --git a/SOURCES/hack-test-cmd.sh.patch b/SOURCES/hack-test-cmd.sh.patch
index f2dcf0c..c1a76e6 100644
--- a/SOURCES/hack-test-cmd.sh.patch
+++ b/SOURCES/hack-test-cmd.sh.patch
@@ -1,6 +1,6 @@
-From e682bfc7b77b6d22719472885a4334846a95f501 Mon Sep 17 00:00:00 2001
+From 254d3d9ca235888e97416ffb916fb3ae6b3fe0f1 Mon Sep 17 00:00:00 2001
 From: Jan Chaloupka <jchaloup@redhat.com>
-Date: Wed, 7 Sep 2016 13:50:54 +0200
+Date: Mon, 12 Dec 2016 17:07:32 +0100
 Subject: [PATCH] hack hack/test-cmd.sh
 
 ---
@@ -8,12 +8,12 @@ Subject: [PATCH] hack hack/test-cmd.sh
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/hack/lib/init.sh b/hack/lib/init.sh
-index 3464a96..c6446ac 100644
+index 4aafe51..e0934fb 100644
 --- a/hack/lib/init.sh
 +++ b/hack/lib/init.sh
-@@ -41,7 +41,7 @@ source "${KUBE_ROOT}/hack/lib/etcd.sh"
- 
- KUBE_GIT_UPSTREAM="${KUBE_GIT_UPSTREAM:-upstream}"
+@@ -42,7 +42,7 @@ source "${KUBE_ROOT}/hack/lib/version.sh"
+ source "${KUBE_ROOT}/hack/lib/golang.sh"
+ source "${KUBE_ROOT}/hack/lib/etcd.sh"
  
 -KUBE_OUTPUT_HOSTBIN="${KUBE_OUTPUT_BINPATH}/$(kube::util::host_platform)"
 +KUBE_OUTPUT_HOSTBIN="/usr/bin"
@@ -21,5 +21,5 @@ index 3464a96..c6446ac 100644
  # This emulates "readlink -f" which is not available on MacOS X.
  # Test:
 -- 
-1.9.3
+2.7.4
 
diff --git a/SOURCES/reenable-ui.patch b/SOURCES/reenable-ui.patch
index 8067333..4703ceb 100644
--- a/SOURCES/reenable-ui.patch
+++ b/SOURCES/reenable-ui.patch
@@ -1,6 +1,6 @@
-From 6900ee592a90a51b45ccb68083f932300584490e Mon Sep 17 00:00:00 2001
+From f35635c61679f69e109bd793b288042470326e44 Mon Sep 17 00:00:00 2001
 From: Jan Chaloupka <jchaloup@redhat.com>
-Date: Wed, 7 Sep 2016 13:47:35 +0200
+Date: Mon, 12 Dec 2016 17:45:42 +0100
 Subject: [PATCH] reenable /ui
 
 ---
@@ -8,20 +8,20 @@ Subject: [PATCH] reenable /ui
  1 file changed, 4 insertions(+), 3 deletions(-)
 
 diff --git a/pkg/genericapiserver/genericapiserver.go b/pkg/genericapiserver/genericapiserver.go
-index fd27de1..ec6f3f4 100644
+index d966e78..0b17cdb 100644
 --- a/pkg/genericapiserver/genericapiserver.go
 +++ b/pkg/genericapiserver/genericapiserver.go
-@@ -45,6 +45,7 @@ import (
+@@ -56,6 +56,7 @@ import (
  	"k8s.io/kubernetes/pkg/registry/generic/registry"
  	ipallocator "k8s.io/kubernetes/pkg/registry/service/ipallocator"
  	"k8s.io/kubernetes/pkg/runtime"
 +	"k8s.io/kubernetes/pkg/ui"
  	"k8s.io/kubernetes/pkg/util"
+ 	"k8s.io/kubernetes/pkg/util/async"
  	"k8s.io/kubernetes/pkg/util/crypto"
- 	utilnet "k8s.io/kubernetes/pkg/util/net"
-@@ -444,9 +445,9 @@ func (s *GenericAPIServer) init(c *Config) {
+@@ -471,9 +472,9 @@ func (s *GenericAPIServer) init(c *Config) {
  	if c.EnableLogsSupport {
- 		apiserver.InstallLogsSupport(s.MuxHelper)
+ 		apiserver.InstallLogsSupport(s.MuxHelper, s.HandlerContainer)
  	}
 -	// if c.EnableUISupport {
 -	// 	ui.InstallSupport(s.MuxHelper, s.enableSwaggerSupport && s.enableSwaggerUI)
@@ -33,5 +33,5 @@ index fd27de1..ec6f3f4 100644
  	if c.EnableProfiling {
  		s.mux.HandleFunc("/debug/pprof/", pprof.Index)
 -- 
-1.9.3
+2.7.4
 
diff --git a/SPECS/kubernetes.spec b/SPECS/kubernetes.spec
index b4c9476..8f2ba4d 100644
--- a/SPECS/kubernetes.spec
+++ b/SPECS/kubernetes.spec
@@ -21,7 +21,7 @@
 # https://github.com/openshift/ose
 %global provider_prefix	%{provider}.%{provider_tld}/%{project}/%{repo}
 %global import_path     k8s.io/kubernetes
-%global commit		86dc49aa137175378ac7fba7751c3d3e7f18e5fc
+%global commit		87d9d8d7bc5aa35041a8ddfe3d4b367381112f89
 %global shortcommit	%(c=%{commit}; echo ${c:0:7})
 
 %global openshift_ip    github.com/openshift/origin
@@ -32,7 +32,7 @@
 %global k8s_repo            kubernetes
 # https://github.com/kubernetes/kubernetes
 %global k8s_provider_prefix %{k8s_provider}.%{k8s_provider_tld}/%{k8s_project}/%{k8s_repo}
-%global k8s_commit      52492b4bff99ef3b8ca617d385a3ff0612f9402d
+%global k8s_commit      a9e9cf3b407c1d315686c452bdb918c719c3ea6e
 %global k8s_shortcommit %(c=%{k8s_commit}; echo ${c:0:7})
 %global k8s_src_dir     Godeps/_workspace/src/k8s.io/kubernetes/
 %global k8s_src_dir_sed Godeps\\/_workspace\\/src\\/k8s\\.io\\/kubernetes\\/
@@ -46,11 +46,20 @@
 %global con_commit      7fbd2520863b3c6a1d4a2e503cd76497f3ebc0e2
 %global con_shortcommit %(c=%{con_commit}; echo ${c:0:7})
 
+%global bindata_provider        github
+%global bindata_provider_tld    com
+%global bindata_project         jteeuwen
+%global bindata_repo            go-bindata
+# https://github.com/jteeuwen/go-bindata
+%global bindata_provider_prefix %{bindata_provider}.%{bindata_provider_tld}/%{bindata_project}/%{bindata_repo}
+%global bindata_commit      a0ff2567cfb70903282db057e799fd826784d41d
+%global bindata_shortcommit %(c=%{bindata_commit}; echo ${c:0:7})
+
 %global O4N_GIT_MAJOR_VERSION 3
-%global O4N_GIT_MINOR_VERSION 3+
-%global O4N_GIT_VERSION       v3.3.1.3
-%global K8S_GIT_VERSION       v1.3.0-178-g52492b4
-%global kube_version          1.3.0
+%global O4N_GIT_MINOR_VERSION 4+
+%global O4N_GIT_VERSION       v3.4.0.34
+%global K8S_GIT_VERSION       v1.4.0-57-g776c994
+%global kube_version          1.4.0
 %global kube_git_version      v%{kube_version}
 
 #I really need this, otherwise "version_ldflags=$(kube::version_ldflags)"
@@ -60,7 +69,7 @@
 
 Name:		kubernetes
 Version:	%{kube_version}
-Release:	0.3.git%{shortcommit}%{?dist}
+Release:	0.1.git%{shortcommit}%{?dist}
 Summary:        Container cluster management
 License:        ASL 2.0
 URL:            %{import_path}
@@ -69,6 +78,7 @@ Source0:        https://%{provider_prefix}/archive/%{commit}/%{repo}-%{shortcomm
 Source1:        https://%{k8s_provider_prefix}/archive/%{k8s_commit}/%{k8s_repo}-%{k8s_shortcommit}.tar.gz
 Source2:        https://%{con_provider_prefix}/archive/%{con_commit}/%{con_repo}-%{con_shortcommit}.tar.gz
 Source3:        kubernetes-accounting.conf
+Source4:        https://%{bindata_provider_prefix}/archive/%{bindata_commit}/%{bindata_repo}-%{bindata_shortcommit}.tar.gz
 
 Source33:       genmanpages.sh
 Patch0:         build-with-debug-info.patch
@@ -144,6 +154,7 @@ BuildRequires: golang-github-cpuguy83-go-md2man
 Requires(pre): shadow-utils
 Requires: socat
 Requires: kubernetes-client = %{version}-%{release}
+Requires: conntrack-tools
 
 # if master is installed with node, version and release must be the same
 Conflicts: kubernetes-master < %{version}-%{release}
@@ -165,9 +176,12 @@ Kubernetes client tools like kubectl
 %if 0%{?with_debug}
 %patch0 -p1
 %endif
+
 # Hack test-cmd.sh to be run with os binaries
 %patch9 -p1
 
+%setup -q -n %{bindata_repo}-%{bindata_commit} -T -b 4
+
 %setup -q -n %{con_repo}-%{con_commit} -T -b 2
 %patch1 -p1
 
@@ -203,22 +217,42 @@ cp ../%{k8s_repo}-%{k8s_commit}/*.md .
 cp -r ../%{k8s_repo}-%{k8s_commit}/cmd/hyperkube cmd/.
 # copy swagger
 cp -r ../%{k8s_repo}-%{k8s_commit}/pkg/ui/data/swagger pkg/ui/data/.
+# copy Makefiles
+cp -r ../%{k8s_repo}-%{k8s_commit}/Makefile .
+cp -r ../%{k8s_repo}-%{k8s_commit}/Makefile.generated_files .
+cp -r ../%{k8s_repo}-%{k8s_commit}/test .
 
 # reenable /ui
 %patch12 -p1
-
 %patch2 -p1
 
 # Drop apiserver from hyperkube
 %patch13 -p1
 %patch17 -p1
 
+# Move all the code under src/k8s.io/kubernetes directory
+mkdir -p src/k8s.io/kubernetes
+mv $(ls | grep -v "^src$") src/k8s.io/kubernetes/.
+
+mkdir -p src/%{bindata_provider_prefix}
+cp -r ../%{bindata_repo}-%{bindata_commit}/* src/%{bindata_provider_prefix}/.
+
 %build
+export GOPATH=$(pwd)
+go build -o go-bindata %{bindata_provider_prefix}/go-bindata
+export PATH=${PATH}:$(pwd)
+
+pushd src/k8s.io/kubernetes/
 export KUBE_GIT_TREE_STATE="clean"
 export KUBE_GIT_COMMIT=%{commit}
 export KUBE_GIT_VERSION=%{kube_git_version}
+export KUBE_EXTRA_GOPATH=$(pwd)/Godeps/_workspace
 
-hack/build-go.sh --use_go_build cmd/hyperkube cmd/kube-apiserver
+# https://bugzilla.redhat.com/show_bug.cgi?id=1392922#c1
+%ifarch ppc64le
+export GOLDFLAGS='-linkmode=external'
+%endif
+make WHAT="--use_go_build cmd/hyperkube cmd/kube-apiserver"
 
 # convert md to man
 pushd docs
@@ -230,10 +264,15 @@ bash genmanpages.sh
 popd
 
 %install
+pushd src/k8s.io/kubernetes/
 . hack/lib/init.sh
 kube::golang::setup_env
 
+%ifarch ppc64le
+output_path="${KUBE_OUTPUT_BINPATH}"
+%else
 output_path="${KUBE_OUTPUT_BINPATH}/$(kube::golang::current_platform)"
+%endif
 
 install -m 755 -d %{buildroot}%{_bindir}
 
@@ -279,25 +318,24 @@ install -d -m 0755 %{buildroot}/run/%{name}/
 install -d -m 0755 %{buildroot}/%{_sysconfdir}/systemd/system.conf.d
 install -p -m 0644 -t %{buildroot}/%{_sysconfdir}/systemd/system.conf.d %{SOURCE3}
 
-# place files for unit-test rpm
-install -d -m 0755 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/
-pushd ../%{k8s_repo}-%{k8s_commit}
-# only files for hack/test-cmd.sh atm
-for d in docs examples hack cluster; do
-  cp -a $d %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/
-done
-popd
-
 # rpmdiff issues
-chmod 0644 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/docs/admin/ovs-networking.png
-chmod 0644 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/docs/admin/resource-quota.md
-chmod 0644 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/docs/devel/scheduler.md
-chmod 0644 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/docs/devel/scheduler_algorithm.md
-chmod 0755 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/hack/build-ui.sh
-chmod 0644 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/hack/lib/util.sh
-chmod 0644 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/docs/user-guide/ui.md
+#chmod 0755 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/hack/build-ui.sh
+#chmod 0644 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/hack/lib/util.sh
 chmod 0755 %{buildroot}%{_datadir}/bash-completion/completions/kubectl
-chmod 0644 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/cluster/gce/coreos/configure-node.sh
+popd
+
+mv src/k8s.io/kubernetes/*.md .
+mv src/k8s.io/kubernetes/LICENSE .
+
+# place files for unit-test rpm
+install -d -m 0755 %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/
+# basically, everything from the root directory is needed
+# unit-tests needs source code
+# integration tests needs docs and other files
+# test-cmd.sh atm needs cluster, examples and other
+cp -a src %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/
+rm -rf %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/src/k8s.io/kubernetes/_output
+cp -a *.md %{buildroot}%{_sharedstatedir}/kubernetes-unit-test/src/k8s.io/kubernetes/
 
 %check
 # Fedora, RHEL7 and CentOS are tested via unit-test subpackage
@@ -408,6 +446,12 @@ fi
 %systemd_postun
 
 %changelog
+* Mon Dec 12 2016 Jan Chaloupka <jchaloup@redhat.com> - 1.4.0-0.1.git87d9d8d
+- Update to ose v3.4.0.34
+  resolves: #1403892
+- Add missing dependency of kube-proxy on conntrack-tools
+  resolves: #1403196
+
 * Tue Nov 01 2016 jchaloup <jchaloup@redhat.com> - 1.3.0-0.3.git86dc49a
 - Update to ose v3.3.1.3
   resolves: #1390548