summaryrefslogtreecommitdiffstats
path: root/netdata-installer.sh
AgeCommit message (Collapse)Author
2020-12-08Use `glibtoolize` on macOS instead of regular `libtoolize`. (#10346)Austin S. Hemmelgarn
* Use `glibtoolize` on macOS instead of regular `libtoolize`. This ensures we get the version from Homebrew instead of the version from XCode. * Update install documentation for macOS.
2020-12-08Added patch to build LWS properly on macOS. (#10333)Austin S. Hemmelgarn
2020-11-06Fixed two bugs related to version handling in install and update code. (#10162)Austin S. Hemmelgarn
* Try to update local tags during build to ensure consistent version. By default, `git` does not update the list of tags for a repository after it is first cloned unless you explicitly tell it to do so. Because we use the most recent tag as the first part of our version number, this can lead to strange ancient-looking version numbers that are actually far more recent (for example, `v1.11.1-2915-g6106dd7`, which is actually from v1.21.1 sources), potentially causing confusion with respect to support. This adds code to `netdata-installer.sh` to try to update the local repo with the remote tags to ensure that we actually have sane version numbers. * Use 5 digits for commit count in version number comparison. The original code in `netdata-updater.sh` includes a hard-coded assumption that a version number will never have more than 3 digits for the commit count. This is of course wrong in a handful of cases, which will then get stuck on the older version because of the effects of digit counts on comparisons. This updates from our current 999 commit limit to a limit of 99999 commits, which is a reasonable expectation that we should never get _that_ far.
2020-11-06Fixed builds using particular versions of Clang. (#10155)Austin S. Hemmelgarn
* Add a CI check for building against Clang * Fix CFLAGS for libmosquitto/libwebsockets so builds work with Clang * Add fixes for libbpf, judy, and JSON-C. Co-authored-by: James Mills <prologic@shortcircuit.net.au>
2020-10-30allows use of system libwebsockets instead of bundled one (#9984)Timotej S
* allows usage of system libwebsockets * fixes problems that were preventing ACLK to work with LWS `4.1.` * add LWS info to buildinfo Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud>
2020-09-30Add a few changes that were missed by the systemd updater support. (#10007)Austin S. Hemmelgarn
* Add a check to ensure that the install leaves a clean repo. * Add a few changes that were missed by the systemd updater support.
2020-09-28Added improved auto-update support. (#9966)Austin S. Hemmelgarn
* Add systemd timer unit to handle auto updates. This adds a systemd timer unit and associated service for running the updaterscript. This allows better support for auto-updates on systems that use systemd, removing the need for cron or special shims to handle periodic tasks. This will be used in preference to our existing auto-update support on systems running systemd unless the user overrides this behavior. * Add an option to the installer to override auto-updater type detection. This allows users to specify what auto-updater scheduling mechanism to use. This wil persist the selection to updates as well. Supported values are: * systemd': Uses a systemd timer unit and service to handle automatic updates. * 'interval': Uses a script in /etc/cron.daily or /etc/periodic/daily. * `crontab`: Uses a crontab file in /etc/cron.d. * Change priority of systemd support. This way existing users won't get converted, and by default you'll still get emails on failures. * Case-normalize the value passed to --auto-update-type. * Fix incorrect naming of crontab file. * Fixed function naming.
2020-09-21Fix typo inside netdata-installer.sh (#9962)thiagoftsm
2020-09-09Fixed another typo in the libJudy bundling code. (#9904)Austin S. Hemmelgarn
* Fixed libJudy bundling code. There was a typo in the installer which was causing the configure script to not find the library. * Persist libJudy CFLAGS into build environment.
2020-09-08Fixed typo in option name used to use bundled libJudy (#9893)James Mills
2020-09-01Added code to bundle libJudy on systems which do not provide a usable copy ↵Austin S. Hemmelgarn
of it. (#9776) * Add installer code to bundle libJudy. * Update libJudy build to work on more systems. * Added libtool to deps. * First part of configure changes - detection of library * Configure change part two: integrating flags into the build I've tested the build works and that the symbols end up correct in the compiled binary, but I have not tested that dbengine is working properly after the changes. * Add required configure options for bundling libJudy. * Bail early if a libJudy build step fails. * Added messges for specific reasons libJudy is being built. * Fix bail condition for bundling failures. We don't care about whether the cloud is required or not, just whether the user asked for a local build of libJudy or not. * Fix logic for deciding when to bundle libJudy. * Fix judy build to clean up properly if it fails. Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com>
2020-08-31Don't install eBPF plugin components when they shouldn't be installed (#9844)Vladimir Kobal
2020-08-31Use printf instead of echo for better POSIX compliance. (#9842)Austin S. Hemmelgarn
2020-08-27Improved temporary directory checking in installer and updater. (#9797)Austin S. Hemmelgarn
Update temporary directory checking in installer. This updates the checks that our installer and updater make to choose what to use for a temporary directory to be both more robust and more portable. The new checks use the following logic: * For each directory to be checked, verify that it is both writable by the current user, and that the current user can execute files they write there. * If `$TMPDIR` is set, preferentially use that. * If that fials, try `/tmp`. * If that also fails, fall back to `$PWD`. * If all checks fail, bail early with an explanation instead of failing when we first tryto do things with the directory. It also adds the same checks to the `netdata-installer.sh` script, which was previously completely missing them.
2020-08-14Update netdata-installer.sh to fix #8862 (#9360)マティアス
Added an LDFLAG export to macOS to properly find openssl when compiling with netdata-cloud.
2020-08-06Remove obsoleted libraries from install/uninstall scripts (#9661)Vladimir Kobal
2020-08-06Fix Static Netdata to correctly build with Netdata Cloud support. (#9381)James Mills
* Revert "Revert "Override linker and include paths for static builds. (#9311)" (#9343)" This reverts commit 36d5e40dca91a93963e4d96f07af3e38803615d0. * Run git clean before building anything * Fix checking out openssl and skip if bind-mounted sources already exist at the given path * Add --require-cloud flag to the static build scripts * Add CMAKEFLAGS support to the installer to customize how to build libwebsockets for static builds * Update packaging/makeself/jobs/50-bash-4.4.18.install.sh Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com> * Fix remaining other two tyos Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com>
2020-08-03installer: fix `govercomp` (#9646)Ilya Mashchenko
2020-08-03Fetch libbpf from netdata fork (#9637)Vladimir Kobal
2020-07-16Use the libbpf library for the eBPF plugin (#9490)Vladimir Kobal
2020-07-01Fix typo in netdata-installer.sh (#9433)meesaltena
* [ci skip] create nightly packages and update changelog * [Package amd64 DEB][Build latest] Package build process trigger * [Package i386 DEB][Build latest] Package build process trigger * [Package amd64 RPM][Build latest] Package build process trigger * Stop reading from /proc/sys/kernel/osrelease at trailing newline. (#9374) Remove new line that was creating wrong log information. * fixed typo Co-authored-by: netdatabot <bot@netdata.cloud> Co-authored-by: Jeff Cook <jeff@jeffcook.io>
2020-07-01Add first class support for FreeBSD (#9413)James Mills
* Add FreeBSD system detection and package manager support * Add suitable package selections for FreeBSD * Add non-interactive mode for pkg * Use gmake to buiold on FreeBSD and --disable-dependency-tracking
2020-06-16Revert "Override linker and include paths for static builds. (#9311)" (#9343)Austin S. Hemmelgarn
This reverts commit f81b19fc242a0e199e10f1d23e2a8adff967e48a.
2020-06-12Override linker and include paths for static builds. (#9311)Austin S. Hemmelgarn
2020-06-11Added dummy `--enable-ebpf` flag to avoid breaking updates. (#9310)Austin S. Hemmelgarn
2020-06-03Fix reliability of kickstart/kickstart-static64 with checksums sometimes ↵James Mills
failing (#9165) * Add tool to build the dist and static x864_64 artifacts * Add support for overriding the URL for installing/updating from nightlies * Refactor curl/wget usage into less places. Use curl -q and --output and -O options instead of redirecting stdout * Update md5sum(s) of kickstart/kickstart-static64
2020-05-29Add support for eBPF for Netdata static64 (kickstart-static64.sh) (#9104)James Mills
* Add tool to build the dist and static x864_64 artifacts * Add tool to bump the Netdata packaging version * Cleanup all the makeself scripts and update to Alpine 3.11 * Add zgrep and xz to Alpine 3.7 container used to build x86_64 static Netdata so check-kernel-config.sh does not fail * Explicitly bundle the -static varient of the eBPF kernel-collector library/programs
2020-05-27Fix missing ebpf packaging files from dist archive (#9182)James Mills
* Install/Bundle the eBPF kernel-collector library / eBPF programs anyway even if the Kernel check fails (just warn the user) * Fix missing check-kernel-config.sh from dist (breaking kickstart.sh installs) * Add missing packaging/ebpf.version and packaging/ebpf.cehcksums to dist source archive
2020-05-23Revert "Fix macOS builds building and linking against openssl (#8865)" (#9137)James Mills
This reverts commit 5675f2f48ae4b66526e739c4c5094da1b85ce0e9.
2020-05-21Fix macOS builds building and linking against openssl (#8865)James Mills
* Fix macOS builds building and linking against openssl * Add suggestions from @knatsakis
2020-05-19install and enable eBPF Plugin by default (#8665)Austin S. Hemmelgarn
* netdata_installer_kernels: New kernels This commit brings new kernels for our netdata-installer * RH detection This commit brings the RH detection to netdata-installer, but it cannot be tested yet until we merge a PR on kernel-collector * netdata_installer_kernels: RH kernels This commit brings updates that allows to install and run the collectors on RH * netdata_installer_kernels: Kernel variables This commit brings definitions instead magic number to the isntaller * netdata_installer_kernels: remove echo This commit removes echo to avoid new line * netdata_installer_kernels: Move C code This commit removes the C code that will be inserted in another PR * Update eBPF install to use released version. This updates the install code for the eBPF plugin to properly utilize (and verify) a tagged release of the plugin instead of pulling the upstream master branch. It also adds support for using a local copy of the tarball, and switchs the default behavior to install the eBPF plugin instead of not installing it. * Tidy-up messages relating to eBPF. * Fix typos in error handling functions. * ebpf-release: New kernels This commit brings the kernels necessary to support Debian 10.0 * ebpf-release: Bring support for new package format * ebpf-release: collector as loader This commit brings the necessary changes for the collector loads all the nfiles depending of the kernel it is running * Update eBPF install to use released version. This updates the install code for the eBPF plugin to properly utilize (and verify) a tagged release of the plugin instead of pulling the upstream master branch. It also adds support for using a local copy of the tarball, and switchs the default behavior to install the eBPF plugin instead of not installing it. * netdata_installer_kernels: New kernels This commit brings new kernels for our netdata-installer * RH detection This commit brings the RH detection to netdata-installer, but it cannot be tested yet until we merge a PR on kernel-collector * netdata_installer_kernels: RH kernels This commit brings updates that allows to install and run the collectors on RH * netdata_installer_kernels: Kernel variables This commit brings definitions instead magic number to the isntaller * netdata_installer_kernels: remove echo This commit removes echo to avoid new line * netdata_installer_kernels: Move C code This commit removes the C code that will be inserted in another PR * Tidy-up messages relating to eBPF. * Fix typos in error handling functions. * ebpf-release: New kernels This commit brings the kernels necessary to support Debian 10.0 * ebpf-release: Bring support for new package format * ebpf-release: collector as loader This commit brings the necessary changes for the collector loads all the nfiles depending of the kernel it is running * Fix package name handling. * Bump eBPF kernel-collector to v0.1.0 * Update --help to state eBPF is enabled by default and add --disable-ebpf option in --help output * Remove deprecated kernel version compatibility checks * Fix EBPF_TARBALL * Remove libc path detection logic (deprecated0 * Use the new package structure of kernel-collector * Relax the glob on netdata_ebpf as we may develop/distirbute other types of ebpf programs * Fix ownership of ebpf libraries/programs * Make the check-kernel-config.sh local to the installer * Make plugins.ebpf = yes (by default) Co-authored-by: Thiago Marques <thiagoftsm@gmail.com> Co-authored-by: James Mills <prologic@shortcircuit.net.au>
2020-05-13Rename eBPF collector (#8822)thiagoftsm
We renamed eBPF collector for a more meaningful name.
2020-05-11Enable support for Netdata Cloud.Andrew Moss
This PR merges the feature-branch to make the cloud live. It contains the following work: Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com(opens in new tab)> Co-authored-by: Jacek Kolasa <jacek.kolasa@gmail.com(opens in new tab)> Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud(opens in new tab)> Co-authored-by: James Mills <prologic@shortcircuit.net.au(opens in new tab)> Co-authored-by: Markos Fountoulakis <44345837+mfundul@users.noreply.github.com(opens in new tab)> Co-authored-by: Timotej S <6674623+underhood@users.noreply.github.com(opens in new tab)> Co-authored-by: Stelios Fragkakis <52996999+stelfrag@users.noreply.github.com(opens in new tab)> * dashboard with new navbars, v1.0-alpha.9: PR #8478 * dashboard v1.0.11: netdata/dashboard#76 Co-authored-by: Jacek Kolasa <jacek.kolasa@gmail.com(opens in new tab)> * Added installer code to bundle JSON-c if it's not present. PR #8836 Co-authored-by: James Mills <prologic@shortcircuit.net.au(opens in new tab)> * Fix claiming config PR #8843 * Adds JSON-c as hard dep. for ACLK PR #8838 * Fix SSL renegotiation errors in old versions of openssl. PR #8840. Also - we have a transient problem with opensuse CI so this PR disables them with a commit from @prologic. Co-authored-by: James Mills <prologic@shortcircuit.net.au(opens in new tab)> * Fix claiming error handling PR #8850 * Added CI to verify JSON-C bundling code in installer PR #8853 * Make cloud-enabled flag in web/api/v1/info be independent of ACLK build success PR #8866 * Reduce ACLK_STABLE_TIMEOUT from 10 to 3 seconds PR #8871 * remove old-cloud related UI from old dashboard (accessible now via /old suffix) PR #8858 * dashboard v1.0.13 PR #8870 * dashboard v1.0.14 PR #8904 * Provide feedback on proxy setting changes PR #8895 * Change the name of the connect message to update during an ongoing session PR #8927 * Fetch active alarms from alarm_log PR #8944
2020-05-07Fix missing NETDATA_STOP_CMD in netdata-installer.sh (#8897)James Mills
* Fix missing NETDATA_STOP_CMD in netdata-installer.sh * Fix shellcheck warnings * Fix more shellcheck warnings
2020-04-27Fix typo in netdata-installer (#8811)Adam Wolf
* Fix typo in netdata-installer * Add missing whitespace
2020-04-27Removed old function call in netdata-installer.sh (#8824)Austin S. Hemmelgarn
When updating the dashboard handling code, I forgot to remove this call to a now nonexistent function.
2020-04-24Use a prefix for the old dashboard. (#8752)Austin S. Hemmelgarn
* Use a prefix for the old dashboard. This switches the code for handling of the new React dashboard to use a prefix for accessing the old dashboard instead of relying on a switching script to handle selecting the desired dashboard implementation. It also adds proper support to the packaging code to bundle the React dashboard. * Fixed typos in web/gui/Makefile.am. * Tidy up prefixed dashboard. This is based on discussion with cakrit about how to handle this more sanely. * use /old suffix for streamed nodes links in dropdown menu * fix fetching dynamic vendor files with /old suffix Co-authored-by: Jacek Kolasa <jacek.kolasa@gmail.com>
2020-04-21Added JSON-C dependency handling to instlal and packaging. (#8776)Austin S. Hemmelgarn
* Add JSON-C dependency handling to instlal and packaging. * Update build failure message.
2020-04-17Added support for building libmosquitto on FreeBSD/macOS. (#8254)Austin S. Hemmelgarn
* Add support for building libmosquitto on BSD/macOS. This takes advantage fo the fact that cmake is now a required buil ddependency to allow building libmosquitto on BSD and macOS systems. * Fix builds on macOS without brew sh Co-authored-by: James Mills <prologic@shortcircuit.net.au>
2020-04-01Fix regressions in cloud functionality (build, CI, claiming) (#8568)Timo
Fixes regressions in the configure script and build introduced by last night's patch (underhood). Improved the CI/CD to test ACLK builds + Installer changes (ferroin). Removed TLS from libmosquitto. Fixed a problem with user accounts for claiming. (amoss) Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud> Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com>
2020-03-31Bail early on LWS build if cmake is not presen. (#8559)Austin S. Hemmelgarn
2020-03-31Switching over to soft feature flag (#8545)Andrew Moss
Preparing for the cloud release. This changes how we handle the feature flag so that it no longer requires installer switches and can be set from the config file. This still requires internal access to use and is not ready for public access yet.
2020-03-31Switched to the new React dashboard code as the default dashboard. (#8363)Austin S. Hemmelgarn
* Initial installer components for new dashboard. * Add script to switch between react and classic dashboards. * Update to newest version of react dashboard. * Properly substitute webdir. * Fix installation of dashboard switch script. * Properly handle file ownership and permissions. * Fix install of react dashboard. * Add dashboard_info.js to the react dashboard tree. * Update to version 0.3.2 of the React dashboard. * Switch using file lists instead of nuking old directory. * Properly handle updates. * Fix variable naming in switching script. * Fix copying of files in switching script. * Fix switching script invocation in installer. * update dashboard to v0.4.0 * v0.4.1 gauge & easypiechart width update proper centering when clicking alarm in alarms-log keep loader until react app is ready fix top bar not showing when highlighting (few lines of code) "check known URLs" issue "reset" options is not hooked up go to host node from streamed node (low priority, because that's removed on release) * Persist user selection of dashboard across updates. * update dashboard to v0.4.2 (temperature, units options fixed) * v0.4.5 fixed print modal progress text force reload on sync-selection option change * fix memory leak on firefox * fix active-alarms number in main.js header fix "back to normal" notifications constantly throwing in loop * fix active-alarms fetching * support subpaths Co-authored-by: Jacek Kolasa <jacek.kolasa@gmail.com>
2020-03-25minor - makes ACLK build fail more prominent (#8470)Timo
2020-03-19Fix the ACLK installation with the installer switch (#8443)Andrew Moss
2020-03-19Fix the new cloud info in the info endpoint (#8430)Andrew Moss
2020-03-12Add deferred error message handling to the installer. (#8381)Austin S. Hemmelgarn
This adds handling for deferring non-fatal error messages so that they get shown at the end of the install. It also adds code to do this for failures to fetch, build, or install libmosquitto, LWS, and the go.d plugin.
2020-03-06Removed extra printed `\n` (#8326)Jonathan Barda
When running the installation script, a lot of `\n` got printed before the return status `[OK]` or `[ERROR]`.
2020-02-27Adding support for ACLK build-configuration (#8223)Andrew Moss
* Fixes for issues not caught at review in #8144. (#8211) * Properly scrub build environment for external dependencies. * Remove LWS from our system-level dependencies. We've decided to just always bundle it in the installer. * Add missing dependency for Docker build process. * Use static-build of LWS library created by installer (#8157) * link static lib of LWS * only use static LWS by installer * handle -lcap * fix problem on debian without lcap * fix lws check Co-authored-by: Austin S. Hemmelgarn <ahferroin7@gmail.com> Co-authored-by: Timo <6674623+underhood@users.noreply.github.com>
2020-02-27packaging/installer: fix bundle_libwebsockets (#8219)Ilya Mashchenko