Skip to content

Commit f3ccd03

Browse files
committed
[local-preview] Run gitpod-telemetry during exit
While #11077 adds a way to send telemetry once a `local-preview` instance is instantiated and is running, The user data is not very useful here as the user hasn't performed any actions, etc. This data is only useful right now to know that a new install has been performed. This PR updates the `local-preview` to also do the same whenever a exit signal is created, By doing this we also get the same data once a instance is being closed and hence giving use anonymous info on the usage. Signed-off-by: Tarun Pothulapati <[email protected]>
1 parent c719aa9 commit f3ccd03

File tree

2 files changed

+18
-11
lines changed

2 files changed

+18
-11
lines changed

install/preview/entrypoint.sh

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,6 @@
44

55
set -e
66

7-
if [ "$1" != "logging" ]; then
8-
$0 logging 2>&1 | /prettylog
9-
exit
10-
fi
11-
127
# check for minimum requirements
138
REQUIRED_MEM_KB=$((6 * 1024 * 1024))
149
total_mem_kb=$(awk '/MemTotal:/ {print $2}' /proc/meminfo)
@@ -136,8 +131,7 @@ yq eval-all -i 'del(.spec.template.spec.initContainers[0])' /var/lib/rancher/k3s
136131
for f in /var/lib/rancher/k3s/server/manifests/gitpod/*.yaml; do (cat "$f"; echo) >> /var/lib/rancher/k3s/server/manifests/gitpod.yaml; done
137132
rm -rf /var/lib/rancher/k3s/server/manifests/gitpod
138133

139-
# waits for gitpod pods to be ready, and manually runs the `gitpod-telemetry` cronjob
140-
run_telemetry(){
134+
run_init_telemetry(){
141135
# wait for the k3s cluster to be ready and Gitpod workloads are added
142136
sleep 100
143137
# indefinitely wait for Gitpod pods to be ready
@@ -146,11 +140,24 @@ run_telemetry(){
146140
kubectl create job gitpod-telemetry-init --from=cronjob/gitpod-telemetry
147141
}
148142

149-
run_telemetry 2>&1 &
143+
run_exit_telemetry(){
144+
145+
sleep 100
146+
# wait for Gitpod pods to be ready
147+
kubectl wait --timeout=-1s --for=condition=ready pod -l app=gitpod,component!=migrations
148+
# manually tun the cronjob
149+
kubectl create job gitpod-telemetry-exit --from=cronjob/gitpod-telemetry
150+
# wait for the job to finish
151+
sleep 30
152+
}
153+
154+
trap 'run_exit_telemetry 2>&1' EXIT INT HUP
155+
156+
run_init_telemetry 2>&1 &
150157

151-
/bin/k3s server --disable traefik \
158+
exec /bin/k3s server --disable traefik \
152159
--node-label gitpod.io/workload_meta=true \
153160
--node-label gitpod.io/workload_ide=true \
154161
--node-label gitpod.io/workload_workspace_services=true \
155162
--node-label gitpod.io/workload_workspace_regular=true \
156-
--node-label gitpod.io/workload_workspace_headless=true
163+
--node-label gitpod.io/workload_workspace_headless=true || true

install/preview/leeway.Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,4 @@ COPY --from=prettylog /app/prettylog /prettylog
2626

2727
COPY entrypoint.sh /entrypoint.sh
2828

29-
ENTRYPOINT [ "/tini", "--", "/entrypoint.sh" ]
29+
ENTRYPOINT [ "/entrypoint.sh" ]

0 commit comments

Comments
 (0)