diff --git a/appmanager/BUILD b/appmanager/BUILD
index 9faa2ab..ac84729 100644
--- a/appmanager/BUILD
+++ b/appmanager/BUILD
@@ -1,4 +1,6 @@
 load("//:bazel_tools/docker.bzl", "docker_image")
+load("//:bazel_tools/helm.bzl", "helm_install")
+load("@rules_pkg//:pkg.bzl", "pkg_tar")
 
 # TODO(lekva): figure out how to build py_binary with pip dependencies and
 # migrate off docker_image rule
@@ -10,3 +12,21 @@
 	dockerfile = "Dockerfile",
 	srcs = glob(["**"], exclude=["Dockerfile"]),
 )
+
+pkg_tar(
+	name = "chart",
+	srcs = glob(["chart/**"]),
+	extension = "tar.gz",
+	strip_prefix = "./chart",
+)
+
+helm_install(
+	name = "install",
+	namespace = "pcloud-app-manager",
+	release_name = "init",
+	chart = ":chart",
+	args = {
+	     "image.name": "localhost:30500/giolekva/pcloud-app-manager",
+     	     "image.pullPolicy": "Always",
+	},
+)
diff --git a/apps/face_detection/BUILD b/apps/face_detection/BUILD
index 8a61786..d59b2e6 100644
--- a/apps/face_detection/BUILD
+++ b/apps/face_detection/BUILD
@@ -1,4 +1,5 @@
 load("//:bazel_tools/docker.bzl", "docker_image")
+load("@rules_pkg//:pkg.bzl", "pkg_tar")
 
 # TODO(lekva): figure out how to build py_binary with pip dependencies and
 # migrate off docker_image rule
diff --git a/bazel_tools/helm.bzl b/bazel_tools/helm.bzl
new file mode 100644
index 0000000..7b71492
--- /dev/null
+++ b/bazel_tools/helm.bzl
@@ -0,0 +1,56 @@
+__HELM_INSTALL_TMPL = """
+#!/bin/sh
+# --- begin runfiles.bash initialization ---
+# Copy-pasted from Bazel's Bash runfiles library (tools/bash/runfiles/runfiles.bash).
+set -euo pipefail
+if [[ ! -d "\$${{RUNFILES_DIR:-/dev/null}}" && ! -f "\$${{RUNFILES_MANIFEST_FILE:-/dev/null}}" ]]; then
+    if [[ -f "\$$0.runfiles_manifest" ]]; then
+        export RUNFILES_MANIFEST_FILE="\$$0.runfiles_manifest"
+    elif [[ -f "\$$0.runfiles/MANIFEST" ]]; then
+        export RUNFILES_MANIFEST_FILE="\$$0.runfiles/MANIFEST"
+    elif [[ -f "\$$0.runfiles/bazel_tools/tools/bash/runfiles/runfiles.bash" ]]; then
+        export RUNFILES_DIR="\$$0.runfiles"
+    fi
+fi
+if [[ -f "\$${{RUNFILES_DIR:-/dev/null}}/bazel_tools/tools/bash/runfiles/runfiles.bash" ]]; then
+    source "\$${{RUNFILES_DIR}}/bazel_tools/tools/bash/runfiles/runfiles.bash"
+elif [[ -f "\$${{RUNFILES_MANIFEST_FILE:-/dev/null}}" ]]; then
+    source "\$$(grep -m1 "^bazel_tools/tools/bash/runfiles/runfiles.bash " \
+    	                 "\$$RUNFILES_MANIFEST_FILE" | cut -d ' ' -f 2-)"
+else
+    echo >&2 "ERROR: cannot find @bazel_tools//tools/bash/runfiles:runfiles.bash"
+    exit 1
+fi
+# --- end runfiles.bash initialization ---
+CHART_TARBALL=\$$(rlocation __main__/{package}/{chart})
+helm --namespace={namespace} install --create-namespace {release_name} \$$CHART_TARBALL {args}
+"""
+
+def helm_install(name, namespace, release_name, chart, args):
+    args_str = ""
+    for arg, value in args.items():
+        args_str += "--set %s=%s " % (arg, value)
+    native.genrule(
+	name = "%s.sh" % name,
+	executable = False,
+	srcs = [chart,],
+	outs = ["helm_install.sh",],
+	cmd = """cat > $@ <<EOM
+%s
+EOM
+""" % __HELM_INSTALL_TMPL.format(
+		namespace = namespace,
+		release_name = release_name,
+		package = native.package_name(),
+		chart = "%s.tar.gz" % chart.split(":")[1],
+		args = args_str,
+	))
+    native.sh_binary(
+	name = name,
+	srcs = ["helm_install.sh",],
+	data = [
+	     chart,
+	],
+	deps = [
+	     "@bazel_tools//tools/bash/runfiles",
+	])
diff --git a/controller/BUILD b/controller/BUILD
index bfdf0b1..48e6b37 100644
--- a/controller/BUILD
+++ b/controller/BUILD
@@ -1,4 +1,6 @@
 load("//:bazel_tools/docker.bzl", "docker_image")
+load("//:bazel_tools/helm.bzl", "helm_install")
+load("@rules_pkg//:pkg.bzl", "pkg_tar")
 
 # TODO(lekva): figure out how to build py_binary with pip dependencies and
 # migrate off docker_image rule
@@ -10,3 +12,21 @@
 	dockerfile = "Dockerfile",
 	srcs = glob(["**"], exclude=["Dockerfile"]),
 )
+
+pkg_tar(
+	name = "chart",
+	srcs = glob(["chart/**"]),
+	extension = "tar.gz",
+	strip_prefix = "./chart",
+)
+
+helm_install(
+	name = "install",
+	namespace = "pcloud",
+	release_name = "init",
+	chart = ":chart",
+	args = {
+	     "image.name": "localhost:30500/giolekva/pcloud-api-server",
+     	     "image.pullPolicy": "Always",
+	},
+)
diff --git a/dev/install_core_services.sh b/dev/install_core_services.sh
index d1515c6..28d66f8 100755
--- a/dev/install_core_services.sh
+++ b/dev/install_core_services.sh
@@ -2,28 +2,17 @@
 
 ROOT="$(dirname -- $(pwd))"
 
+# Dgraph
 source $ROOT/apps/dgraph/install.sh
 
 # Knowledge Graph
-cd "$ROOT/controller"
 bazel run //controller:push_to_dev
-kubectl create namespace pcloud
-helm --namespace=pcloud install init chart \
-     --set image.name=localhost:30500/giolekva/pcloud-api-server \
-     --set image.pullPolicy=Always
+bazel run //controller:install
 
 # Application Manager
-cd "$ROOT/appmanager"
 bazel run //appmanager:push_to_dev
-kubectl create namespace pcloud-app-manager
-helm --namespace=pcloud-app-manager install init chart \
-     --set image.name=localhost:30500/giolekva/pcloud-app-manager \
-     --set image.pullPolicy=Always
+bazel run //appmanager:install
 
 # Event Processor
-cd "$ROOT/events"
 bazel run //events:push_to_dev
-kubectl create namespace pcloud-event-processor
-helm --namespace=pcloud-event-processor install init chart \
-     --set image.name=localhost:30500/giolekva/pcloud-event-processor \
-     --set image.pullPolicy=Always
+bazel run //events:install
diff --git a/events/BUILD b/events/BUILD
index a53e460..71bacea 100644
--- a/events/BUILD
+++ b/events/BUILD
@@ -1,4 +1,6 @@
 load("//:bazel_tools/docker.bzl", "docker_image")
+load("//:bazel_tools/helm.bzl", "helm_install")
+load("@rules_pkg//:pkg.bzl", "pkg_tar")
 
 # TODO(lekva): figure out how to build py_binary with pip dependencies and
 # migrate off docker_image rule
@@ -10,3 +12,21 @@
 	dockerfile = "Dockerfile",
 	srcs = glob(["**"], exclude=["Dockerfile"]),
 )
+
+pkg_tar(
+	name = "chart",
+	srcs = glob(["chart/**"]),
+	extension = "tar.gz",
+	strip_prefix = "./chart",
+)
+
+helm_install(
+	name = "install",
+	namespace = "pcloud-event-processor",
+	release_name = "init",
+	chart = ":chart",
+	args = {
+	     "image.name": "localhost:30500/giolekva/pcloud-event-processor",
+     	     "image.pullPolicy": "Always",
+	},
+)
