clean-install.Dockerfile 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. ARG DISTRO=arch
  2. ARG VERSION=current
  3. FROM netdata/package-builders:${DISTRO}${VERSION}
  4. ARG ACLK=no
  5. ARG EXTRA_CFLAGS
  6. COPY . /opt/netdata/source
  7. WORKDIR /opt/netdata/source
  8. RUN git config --global user.email "root@container"
  9. RUN git config --global user.name "Fake root"
  10. # RUN make distclean -> not safe if tree state changed on host since last config
  11. # Kill everything that is not in .gitignore preserving any fresh changes, i.e. untracked changes will be
  12. # deleted but local changes to tracked files will be preserved.
  13. RUN if git status --porcelain | grep '^[MADRC]'; then \
  14. git stash && git clean -dxf && (git stash apply || true) \
  15. else \
  16. git clean -dxf ; \
  17. fi
  18. # Not everybody is updating distclean properly - fix.
  19. RUN find . -name '*.Po' -exec rm \{\} \;
  20. RUN rm -rf autom4te.cache
  21. RUN rm -rf .git/
  22. RUN find . -type f >/opt/netdata/manifest
  23. RUN CFLAGS="-O1 -ggdb -Wall -Wextra -Wformat-signedness -DNETDATA_INTERNAL_CHECKS=1\
  24. -DNETDATA_VERIFY_LOCKS=1 ${EXTRA_CFLAGS}" ./netdata-installer.sh --disable-lto
  25. RUN ln -sf /dev/stdout /var/log/netdata/access.log && \
  26. ln -sf /dev/stdout /var/log/netdata/debug.log && \
  27. ln -sf /dev/stderr /var/log/netdata/error.log && \
  28. ln -sf /dev/stdout /var/log/netdata/fluentbit.log
  29. RUN rm /var/lib/netdata/registry/netdata.public.unique.id
  30. CMD ["/usr/sbin/netdata","-D"]
  31. ENTRYPOINT []