* Store info about the installation type for later retrieval.
* Properly handle install type on updates.
* Restructure install type values for easier parsing.
* Fix checksums.
* Fix .gitignore check.
* Added support for claiming nodes as part of installation.
This adds four new options to the `netdata-installer.sh` script:
* `--claim-token`
* `--claim-rooms`
* `--claim-uri`
* `--claim-proxy`
These directly correspond to the `-token`, `-rooms`, `-uri`, and `-proxy`
options for the `netdata-claim.sh` script. They have the following
associated logic:
* If any are specified and the `--disable-cloud` option is also
specified, we bail and tell the user to either enable the cloud or
remove the claiming options.
* If only some but not all of the token, rooms, and uri options are
specified, we bail and tell the user that they must pass all three.
* If all three of the token, rooms, and uri are specified, we invoke the
`netdata-claim.sh` script for the install itself as one of the last
steps in the installation process, using the values passed to these
options.
This allows users to directly claim the agent as part of the install,
which is useful for automated installation scenarios.
* Add missing space as suggested by @knatsakis
* Properly handle installs in /.
* Properly handle unprefixed installs.
* Fix another spelling error in an option name.
* Properly fix option naming.
* Move claiming into kickstart script instead of netdata-installer.
This makes us more future-proof.
The required changes also fix some buggy behavior in the option parsing
code in the kickstart scripts.
* Fix checksums.
* Sanely handle the daemon not running during the claiming process.
* Silence incorrect shellcheck warning.
* Simplify condition as suggested by @vkalintiris.
* Clean up old changes that should not be here anymore.
These are leftovers from an earlier revision, they are not actually
needed.
* Add ID generation logic to the claiming script.
This lets it reliably claim nodes which have not yet had the daemon run.
Also fixes a consistency issue in the claiming logic in the Docker
entrypoint.
* Updated messages about checksum validation failures on install.
They now explain the most common cause of the failures and suggest the
most direct way to fix the situation.
* Fix checksums.
* Clean up messages as suggested by @joelhans.
* Fixed option parsing in kickstart.sh.
The existing code is dependent on options specifically for the kickstart
script coming before any options to be passed to the installer,
resulting in some options being ignored if the wyere ordered in certain
ways.
This fixes the parsing to explicitly parse _all_ options so that we are
not dependent on option order.
* Fix checksums.
* Fix authroship and copyright information in updater.
* Better handle lack of executable installer script during updates.
* Attempt to update the updater prior to running updates.
* Fix kickstart script checksum.
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.
* Properly allow for offline installs.
If the user specifies a local trball to use instead of downloading the
code remotely, use the reinstall code path.
* Updated checksums.
* Added an option to explicitly allow a reinstall over an existing
install that would normally be updated.
* Fixed the duplicate install handling code to run after the option
parsing code. Previously it ran before it, and thus some cases did not
work at all.
* Added more robust handling of the case of attempting to do a duplicate
install with a different install type than the original install.
* Add proper handling for updater script in installers.
Our updater script has a built-in random delay of up to 1 hour when run
non-interactively to avoid a stampede effect for reconnections to
Netdata Cloud due to auto-updates. Due to an oversight in handling of
updates to existing installs in the installer scripts, this delay was
also occuring when the installer scripts were run non-interactively.
This commit fixes that so that non-interactive runs complete without a
delay.
* Update checksums in documentation.
* Added better checks for existing installs to the kickstart scripts.
This adds more robust checks to our Kickstart install scripts to prevent
users from accidentally installing Netdata over top of an existing
install (which can lead to all kinds of problematic situations).
The logic for these checks works as follows:
- See if `netdata` is located somewhere in `$PATH` (using `command -v`),
and if present assume there's an existing install.
- Otherwise, check if `/opt/netdata/bin/netdata` exists, if so assume
there's an existing install, otherwise continue under the assumption
there isn't.
- If there is an existing install, check if it's one done through our
install scripts, if not stop the installation process.
- If it is one of our installs, look for and attempt to use the updater
script to update the existing install (exiting with an error message
if that fails).
This also adds a switch called '--allow-duplicate-install' which will
cause the install to continue if it would normally refuse to continue
due to an existing install.
* Update checksums.
* Address feedback from @prologic.
* 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
* Fixed a few more links
* Remove old syntax
* Abs-relative links to files in docs folder
* Trying to fix nother doc learn link
* Fix a few more links
* Add testing doc
* Tracking down mysteries
* Cleanup
* Update broken external links
* Remove index.html that appeared from testing
* Fix remainder of links
* Removed extra printed `\n`
When running the installation script, a lot of `\n` got printed before the return status `[OK]` or `[ERROR]`.
* Update md5sum of packaging/installer/kickstart.sh in packaging/installer/methods/kickstart.md
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
* Initial commit to bring new branch up to speed with previous work
* Initial commit to bring new branch up to speed with previous work
* Pass through for grammar and typos
* Pass through for grammar and typos
* First additions
* Improvements to installation page plus new separate kickstart page
* Lots of new pages, lots of improvements
* Continued work
* Fixing the install grid
* Added methods to nav
* Fix typo and add kickstart to nav
* CSS cleanup
* Various cleanup
* Cleanup on update/uninstall pages
* Add responsiveness to install grid
* Update checking of the kickstart files MD5 checksusm.
This updates the CI script used to verify the MD5 checksums of the
kickstart files as being correct in the documentation to use the new
locations for the respective checksums.
This is more involved than a simple path update because the existing
script assumes that both checksums are listed in the same file, which is
no longer the case.
Any future updates that move the location of the checksums just need to
modify the lines in tests/installer/checksums.sh that start with
`check_checksum` to point to the correct files.
* Added Alpine package for James
* Add packages to top of installation page
* Fix for Chris
* Telemetry fixes
* Trying to fix CI
* Changing checksums
* Fix CI checks for kickstart checksums.
The changed wording was confusing the code that parsed the checksum out
of the documentation, this fixes the code to handle this new wording
correctly.
* Update kickstart-static64 checksum
* Update 64 checksum
Co-authored-by: Austin S. Hemmelgarn <ahferroin7@gmail.com>