@cryptotaxi247 / netdata-1 / commits / 36a9d7088

Add flag to mark containers as created from official images in analytics. (#11606)

* Add flag to mark containers as created from official images in analytics. * Fix CI. * process NETDATA_CONTAINER_IS_OFFICIAL_IMAGE variable from system info and export to anonymous-statistics script Co-authored-by: Emmanuel Vasilakis <mrzammler@mm.st>

Austin S. Hemmelgarn committed Oct 19, 2021 at 07:29 UTC 36a9d70880b3ced36e0f095f672927893fad23c9
5 files changed +14
.github/workflows/docker.yml
+4
@@ -84,6 +84,9 @@ jobs:
84 if: github.event.inputs.version == 'nightly'
85 run: |
86 echo "tags=netdata/netdata:latest,netdata/netdata:edge" >> $GITHUB_ENV
87 + - name: Mark image as official
88 + if: github.repository == 'netdata/netdata'
89 + run: echo "OFFICIAL_IMAGE=true" >> $GITHUB_ENV
90 - name: Setup QEMU
91 uses: docker/setup-qemu-action@v1
92 - name: Setup Buildx
@@ -99,6 +102,7 @@ jobs:
102 platforms: linux/amd64,linux/i386,linux/arm/v7,linux/arm64,linux/ppc64le
103 push: true
104 tags: ${{ env.tags }}
105 + build-args: OFFICIAL_IMAGE=${{ env.OFFICIAL_IMAGE }}
106 - name: Failure Notification
107 uses: rtCamp/action-slack-notify@v2
108 env:
daemon/anonymous-statistics.sh.in
+1
@@ -106,6 +106,7 @@ REQ_BODY="$(cat << EOF
106 "container_os_version": "${NETDATA_CONTAINER_OS_VERSION}",
107 "container_os_version_id": "${NETDATA_CONTAINER_OS_VERSION_ID}",
108 "container_os_detection": "${NETDATA_CONTAINER_OS_DETECTION}",
109 + "container_is_official_image": ${NETDATA_CONTAINER_IS_OFFICIAL_IMAGE},
110 "system_cpu_detection": "${NETDATA_SYSTEM_CPU_DETECTION}",
111 "system_cpu_freq": "${NETDATA_SYSTEM_CPU_FREQ}",
112 "system_cpu_logical_cpu_count": "${NETDATA_SYSTEM_CPU_LOGICAL_CPU_COUNT}",
daemon/system-info.sh
+2
@@ -12,6 +12,7 @@ ARCHITECTURE="$(uname -m)"
12
13 CONTAINER="unknown"
14 CONT_DETECTION="none"
15 +CONTAINER_IS_OFFICIAL_IMAGE="${NETDATA_OFFICIAL_IMAGE:-false}"
16
17 if [ -z "${VIRTUALIZATION}" ]; then
18 VIRTUALIZATION="unknown"
@@ -381,6 +382,7 @@ echo "NETDATA_CONTAINER_OS_ID_LIKE=${CONTAINER_ID_LIKE}"
382 echo "NETDATA_CONTAINER_OS_VERSION=${CONTAINER_VERSION}"
383 echo "NETDATA_CONTAINER_OS_VERSION_ID=${CONTAINER_VERSION_ID}"
384 echo "NETDATA_CONTAINER_OS_DETECTION=${CONTAINER_OS_DETECTION}"
385 +echo "NETDATA_CONTAINER_IS_OFFICIAL_IMAGE=${CONTAINER_IS_OFFICIAL_IMAGE}"
386 echo "NETDATA_HOST_OS_NAME=${HOST_NAME}"
387 echo "NETDATA_HOST_OS_ID=${HOST_ID}"
388 echo "NETDATA_HOST_OS_ID_LIKE=${HOST_ID_LIKE}"
database/rrdhost.c
+2
@@ -1640,6 +1640,8 @@ int rrdhost_set_system_info_variable(struct rrdhost_system_info *system_info, ch
1640 return res;
1641 else if (!strcmp(name, "NETDATA_SYSTEM_DISK_DETECTION"))
1642 return res;
1643 + else if (!strcmp(name, "NETDATA_CONTAINER_IS_OFFICIAL_IMAGE"))
1644 + return res;
1645 else {
1646 res = 1;
1647 }
packaging/docker/Dockerfile
+5
@@ -57,6 +57,9 @@ RUN mkdir -p /app/usr/sbin/ \
57 # hadolint ignore=DL3007
58 FROM netdata/base:latest as base
59
60 +ARG OFFICIAL_IMAGE=false
61 +ENV NETDATA_OFFICIAL_IMAGE=$OFFICIAL_IMAGE
62 +
63 # Configure system
64 ARG NETDATA_UID=201
65 ARG NETDATA_GID=201
@@ -115,3 +118,5 @@ EXPOSE $NETDATA_LISTENER_PORT
118 ENTRYPOINT ["/usr/sbin/run.sh"]
119
120 HEALTHCHECK --interval=60s --timeout=10s --retries=3 CMD /usr/sbin/health.sh
121 +
122 +ONBUILD ENV NETDATA_OFFICIAL_IMAGE=false