Commit Graph

596 Commits

Author SHA1 Message Date
Jean Flach 0f6dc1289b Add quit, exit and help 2018-01-15 14:12:22 +01:00
Gunnar Beutner a36e847c6c Allocate ConfigItemBuilder objects on the stack 2018-01-11 10:52:26 +01:00
Gunnar Beutner e3ad0be769 Apply clang-tidy fix 'modernize-use-auto' 2018-01-04 12:24:57 +01:00
Gunnar Beutner 621eed3f13 Apply clang-tidy fix 'modernize-pass-by-value' 2018-01-04 12:24:57 +01:00
Gunnar Beutner 9ca682496c Apply clang-tidy fix 'modernize-use-override' 2018-01-04 12:24:57 +01:00
Gunnar Beutner ac155d1dda Apply clang-tidy fix 'modernize-redundant-void-arg' 2018-01-04 12:24:57 +01:00
Gunnar Beutner efe99a3e5e Add the final keyword to classes 2018-01-04 05:20:20 +00:00
Michael Friedrich cd33b8b508
Merge pull request #5936 from Icinga/feature/source-lists
Clean up source lists in the CMakeLists.txt files
2018-01-03 11:59:35 +01:00
Gunnar Beutner 75e2473616 Clean up source lists in the CMakeLists.txt files 2018-01-03 11:47:46 +01:00
Michael Friedrich 0e6f4b1966
Merge pull request #5939 from Icinga/fix/build-fix-wheezy
Build fix for Debian wheezy
2018-01-03 11:28:57 +01:00
Michael Friedrich 27a2d95338
Merge pull request #5932 from Icinga/feature/copyright-header
Fix copyright header in cli/troubleshootcommand.hpp
2018-01-03 10:56:07 +01:00
Gunnar Beutner abe3f8a959 Build fix for Debian wheezy 2018-01-03 10:32:33 +01:00
Gunnar Beutner 803dc0c05d Fix copyright header in cli/troubleshootcommand.hpp 2018-01-03 01:19:02 +01:00
Gunnar Beutner 90496b5456 Build libraries as static libraries 2018-01-02 23:29:48 +01:00
Michael Insel 158ae2188e Change copyright header for 2018 2018-01-02 12:08:55 +01:00
Jean Flach 2636e6a77a Whitespace fix
What does this change?
* Remove use of spaces for formatting
These could be found by using `grep -r -l -P '^\t+ +[^*]'
* Removal of training whitespaces
* A few lines longer than 120 chars
2017-12-20 14:53:52 +01:00
Michael Friedrich 5b44bfb125
Merge pull request #5868 from Icinga/feature/expression-ptr
Use std::unique_ptr for Expression objects
2017-12-18 09:54:30 +01:00
Gunnar Beutner 5d96196f08 Replace incorrect fclose() call with pclose() 2017-12-15 22:25:08 +01:00
Gunnar Beutner ab8386cf5c Use std::unique_ptr for Expression objects 2017-12-15 10:44:54 +01:00
Gunnar Beutner 1ad83886ac Replace a few more NULLs with nullptr 2017-12-14 15:37:20 +01:00
Gunnar Beutner 96e214221d Remove unused variables 2017-12-14 08:50:09 +01:00
Gunnar Beutner 3ce68b49c7 Fix compiler warning introduced by #5811 2017-12-12 11:54:47 +01:00
Michael Friedrich aec231b119
Merge pull request #5811 from Icinga/feature/update-constants-conf-api-setup
Update NodeName/ZoneName constants with 'api setup'
2017-12-07 17:35:46 +01:00
Gunnar Beutner 325e4a2fb9 Use nullptr instead of <Type>::Ptr() 2017-11-30 17:47:09 +01:00
Gunnar Beutner 3c60fbf75d Use std::vector::emplace_back instead of std::vector::push_back 2017-11-30 17:47:09 +01:00
Gunnar Beutner 2e87c280ed Use initializer lists instead of std::vector::push_back 2017-11-30 17:47:09 +01:00
Gunnar Beutner 9ce950b0f1 Replace boost::ref/boost::cref with std::ref/std::cref 2017-11-30 17:47:09 +01:00
Gunnar Beutner 6d09efc907 Use std::shared_ptr instead of boost::shared_ptr 2017-11-30 17:41:00 +01:00
Michael Friedrich f267135711 Update NodeName/ZoneName constants with 'api setup'
This commit also moves the constants.conf backup logic
into NodeUtility::UpdateConstant() where it belongs.

Logging has been slightly adopted too.

fixes #5763
2017-11-28 13:38:53 +01:00
Gunnar Beutner 858873b940 Replace boost::bind/boost::function with std::bind/std::function 2017-11-27 15:15:11 +01:00
Gunnar Beutner 81ae14cd17
Merge pull request #5729 from Icinga/fix/correct-node-wizard-output-formatting
Correct node wizard output formatting
2017-11-27 10:19:12 +01:00
Gunnar Beutner 65bc62266d Fix error reporting for 'icinga2 console -r' 2017-11-24 12:56:42 +01:00
Noah Hilverling e6f94ff203 Correct node wizard output formatting 2017-11-08 09:04:25 +01:00
Michael Friedrich 260c6d7438 Node setup: ticket parameter is now optional
refs #5681
2017-11-03 14:10:45 +01:00
Michael 86cdc5bc53 Include default global zones during node wizard/setup
This changes the GenerateNodeMasterIcingaConfig and GenerateNodeIcingaConfig
functions inside the nodeutillity class to the effect, that the default global
zones global-templates and director-global will be written to the generated
zones.conf that is created during the node wizard/setup.

refs #5707

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-10-31 12:07:12 +01:00
Gunnar Beutner f2d437e96c Implement support for migrating certificates to /var/lib/icinga2/certs
This commit includes documentation too.

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-10-20 14:06:02 +02:00
Michael Friedrich 9d68ae9f1f Merge pull request #5602 from Icinga/fix/config-validation-fails-on-windows-with-unprivileged-account-5515
Add windows process elevation and log message if user does not have privileges to read/write files
2017-10-13 16:31:12 +02:00
Michael Friedrich a521f49803 Fix debug builds on Apple Clang 9.0.0 (macOS High Sierra) 2017-10-02 13:49:42 +02:00
Michael Friedrich 11c41cd747 Drop unused code from NodeUtility class
refs #4799
2017-09-22 14:05:08 +02:00
Michael Friedrich 601c10b997 Remove bottom-up CLI commands
refs #4799
2017-09-22 14:04:43 +02:00
Noah Hilverling aab50f669c Add process elevation & log message if user does not have enough privileges
refs #5515
2017-09-22 10:25:17 +02:00
Gunnar Beutner 80421e4619 Build fix for OpenSSL < 1.0.2
refs #5450
2017-09-12 13:09:16 +02:00
Michael Friedrich 0a85977831 Node Wizard: Tell the user to put ca.crt if no connection to parent is selected
This also fixes the choice tree for connection-less questions
and prevents empty tickets being stored on disk.

refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner f43516a097 Implement the --verbose option for "node wizard"
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich e424017c15 Refactor the node wizard/setup CLI commands
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich ce88e89cc0 Fix wrong cert path for CLI commands
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner a7fe6467ba Improve log messages for the 'pki save-cert' command
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich 8040bda2e1 Change directory layout to /var/lib/icinga2/{ca,certs,certificate_requests}
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner c02742925e Refactor PkiUtility class
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich 1e7860f2b1 Implement ApiListener::Get*Dir() functions
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 6a533796e5 Update output format for the new CLI commands
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 774936bfe8 Implement support for pki::UpdateCertificate messages
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 439251532e Implement support for saving client tickets
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner cdff792c11 Make the ticket optional in 'icinga2 node wizard'
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 8d05fc99c9 Improve message formatting for the 'icinga2 node wizard' command
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner a4684d1bfd Implement support for sending pki::RequestCertificate messages in the cluster
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner b08f5477dc Change PKI path from /etc/icinga2/pki to /var/lib/icinga2/pki
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner abdd4b307b Implement the 'ca list' and 'ca sign' CLI commands
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 510e2d622a Implement support for ticket-less certificate requests
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 4d943c7f5c Implement additional functions for printing values with LLDB/GDB 2017-08-10 08:26:22 +02:00
Michael I 3e54e34147 Update featurelistcommand.cpp
refs #5431
2017-07-25 13:35:20 +02:00
mcktr 53908b7080 Fixed missing closing bracket in CLI command pki new-cert. 2017-06-18 15:13:16 +02:00
Gunnar Beutner d05b7c4178 Allow expressions for the type in object/template declarations 2017-05-11 14:21:30 +02:00
Gunnar Beutner 4134f7fe42 Make sure modified attributes are applied before calling the objects' Start method
refs #4696
2017-05-03 12:02:19 +02:00
Benedikt Heine 9337135249 Give only CLI warnings if feature is already disabled
refs #121
refs #4909

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-02-02 14:17:47 +01:00
Michael Friedrich 763fb64fff Update issue tracker to GitHub
fixes #4923
2017-01-17 16:50:22 +01:00
Michael Friedrich b7caf0820d Ensure that *.icinga.com is used everywhere
fixes #13897
fixes #13277
2017-01-10 17:19:12 +01:00
Michael Friedrich c036bfaa94 Fix wrong help string in node setup CLI command
fixes #13419
2016-12-06 11:22:24 +01:00
Michael Friedrich dc2992443f Deprecate the client 'bottom up' mode w/ node update-config
This includes deprecation warnings and migration documentation.

fixes #13255
2016-11-23 15:33:28 +01:00
Konstantin Kelemen a2a6ee82d7 Fix some spelling mistakes
fixes #12822

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-09-29 08:27:38 +02:00
Gunnar Beutner fa1fa23c55 Fix crash in NodeUtility::CollectNodes
fixes #12741
2016-09-19 06:34:37 +02:00
Gunnar Beutner a2e70955e1 Fix command line parser for "icinga2 --version"
fixes #12632
2016-09-04 17:01:46 +02:00
Gunnar Beutner 5304b08c2d Improve error handling for invalid CLI commands
fixes #12596
2016-09-01 07:41:23 +02:00
Gunnar Beutner 06cb3cf875 Another build fix for Windows
refs #9182
2016-08-31 13:43:50 +02:00
Gunnar Beutner 68dceaab06 Replace boost::exception_ptr with std::exception_ptr
refs #9182
2016-08-30 20:46:23 +02:00
Gunnar Beutner 69bb90403d Add missing default import AST node for the application object
refs #12575
2016-08-28 11:00:27 +02:00
Gunnar Beutner e8b0797ec4 Use 'auto' keyword for iterator declarations (part 2)
refs #12561
2016-08-27 19:56:12 +02:00
Gunnar Beutner b5b09216c6 Use lambda functions for INITIALIZE_ONCE
fixes #12562
2016-08-27 09:48:36 +02:00
Gunnar Beutner 5058c5d75b Use 'auto' for iterator declarations
fixes #12561
2016-08-27 08:37:19 +02:00
Gunnar Beutner 1236495dd3 Implement the --file and --syntax-only options for "icinga2 console"
fixes #12554
fixes #10675
2016-08-25 19:14:54 +02:00
Gunnar Beutner 30762e5330 Set versions for all internal libraries
fixes #12552
2016-08-25 17:56:18 +02:00
Gunnar Beutner 8ed21fcdad Fix compiler warning in dbg_eval
refs #12534
2016-08-25 06:46:24 +02:00
Gunnar Beutner 288413f046 Replace BOOST_FOREACH with range-based for loops
fixes #12538
2016-08-25 06:46:17 +02:00
Gunnar Beutner 429d11daa8 Fix compiler warnings
fixes #12534
2016-08-24 20:33:34 +02:00
Gunnar Beutner ae1ab5f865 Implement unit tests for state changes
fixes #12530
2016-08-24 19:45:52 +02:00
Rune Darrud d1dc1188e1 Remove obsolete reference to serial.txt
fixes #12467

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-08-17 16:19:24 +02:00
Gunnar Beutner ec87b9e795 Use hash-based serial numbers for new certificates
fixes #12453
2016-08-16 15:03:01 +02:00
Michael Friedrich 186fcb3724 Fix log message for WriteCert()
refs #12422
2016-08-14 09:28:55 +02:00
Michael Friedrich a83d81a71d Fix that pki sign-csr is not logging the certificate file location
fixes #12422
2016-08-14 09:22:18 +02:00
Gunnar Beutner 76ed38fbfe Implement support for inspecting variables with LLDB/GDB
fixes #12407
2016-08-12 11:00:19 +02:00
Gunnar Beutner f3bb628d6e Improve logging for the WorkQueue class
fixes #12336
2016-08-09 12:39:07 +02:00
Gunnar Beutner 26821d1a79 Don't add empty lines to libedit's history
refs #12234
2016-08-08 08:01:52 +02:00
Gunnar Beutner 46f8c7eb59 Remove temporary icinga2.debug file in case the config validation fails
fixes #12318
2016-08-05 09:15:17 +02:00
Markus Frosch d0183edc51 Fix build with OpenSSL 1.1
error: cannot convert ‘const boost::shared_ptr<x509_st>’ to ‘X509* {aka
x509_st*}’ for argument ‘1’ to ‘ASN1_TIME* X509_get_notBefore(X509*)’

refs #12044
2016-08-01 09:54:51 +02:00
Gunnar Beutner aaa4878017 Don't write empty lines to the history file
refs #12234
2016-07-29 13:55:07 +02:00
Gunnar Beutner a02d7d7502 Implement history support for 'icinga2 console'
fixes #12234
2016-07-29 13:45:16 +02:00
Michael Friedrich 915ebe17cd ConfigCompiler should not log included files by default
fixes #11419
2016-07-05 15:43:48 +02:00
Michael Friedrich 8b742e841f Ensure that obsolete comment/downtime objects are deleted after activating objects
Config validation shouldn't be able to purge the files, only on
restart.

fixes #11890
2016-06-06 13:07:49 +02:00
Gunnar Beutner 0bc139af93 Improve timing behavior for UpdateObjectAuthority calls
refs #11765
2016-05-11 13:04:39 +02:00
Gunnar Beutner fc1168ed3e Only activate HARunOnce objects once there's a cluster connection
fixes #11765
2016-05-11 12:50:40 +02:00
Michael Friedrich 2faf121ff4 Remove commentsand downtimes with reference to deleted checkable objects
Silence the warning message and change the log level to notice as well.

fixes #10717
2016-05-03 11:30:02 +02:00
Gunnar Beutner c54de4b615 Implement SNI support for the CLI commands
fixes #11651
2016-04-21 15:44:51 +02:00
Gunnar Beutner 112f024810 Build fix for GCC
refs #9839
2016-03-29 14:52:48 +02:00
Gunnar Beutner 0e18acbf9d Don't use semi-colons in auto-generated config files
fixes #11438
2016-03-23 09:29:27 +01:00
Gunnar Beutner 4066ab730a Fix error handling for FeatureUtility::GetFeatures
fixes #11349
2016-03-14 08:45:12 +01:00
Michael Friedrich 4746b214d6 Fix: Common name in node wizard isn't case sensitive
fixes #11159
2016-03-11 14:22:24 +01:00
Michael Friedrich 894aaaecb1 Ensure that config files are readable by the daemon
refs #11212
refs #11211
2016-02-24 14:24:08 +01:00
Michael Friedrich 47c5425137 Fix permissions for temporary files
fixes #11212
fixes #11211
2016-02-24 11:00:44 +01:00
Michael Friedrich 272d9541be Fix wrong log message in 'node setup' cli command
fixes #11209
2016-02-23 16:55:45 +01:00
Michael Friedrich 4cb5b97e52 Fix unique creation of temp files
fixes #10948
2016-02-23 12:30:59 +01:00
Gunnar Beutner 74d1d68893 Fix: "node setup" tries to chown() files before they're created
fixes #11204
2016-02-23 08:42:05 +01:00
Jean Flach 58a31e8166 Use ConfigWriter class in repositoryutility.cpp
refs #10989
2016-02-09 15:59:19 +01:00
Jean Flach fa1d633484 Rephrase some log messages
refs #11122
2016-02-09 15:59:19 +01:00
Jean Flach 4d87c96d06 Refactor String-Escape in repositoryutility
fixes #10989
2016-02-09 09:38:12 +01:00
Gunnar Beutner fa7d0448f9 Decode cluster messages in the WorkQueue threads
refs #11014
2016-01-27 16:52:01 +01:00
Michael Friedrich ddc1b251a6 Fix: Escaped sequences not properly generated with 'node update-config'
fixes #10989
2016-01-21 18:14:53 +01:00
Gunnar Beutner 599929b0f6 Update copyright headers for 2016 2016-01-12 08:29:59 +01:00
Michael Friedrich 79899d726a Change log level for authoritative zone config includes
LogWarning will make users wonder about a problem each time
Icinga 2 starts.

refs #10819
2015-12-18 11:53:56 +01:00
Michael Friedrich af3458dfec Fix that "repository add" writes invalid "type" attribute
fixes #10867
2015-12-17 10:20:41 +01:00
Michael Friedrich 8b6d3350b8 Fix failed reload via systemd
fixes #10226
2015-12-16 15:57:59 +01:00
Michael Friedrich 8055f05d5e Fix cluster config sync for (non-)authoritative configs
Details: https://dev.icinga.org/issues/10819#note-39

refs #10819
2015-12-12 12:16:00 +01:00
Gunnar Beutner eb4f68f28d Remove the local zone name question in node wizard
fixes #10724
2015-11-30 08:25:37 +01:00
Jean Flach 6a83703549 Update default port behaviour in node wizard
fixes #10728
2015-11-27 16:44:57 +01:00
Jean Flach 356d11b40d Fix return value in PkiUtility
refs #10632
2015-11-26 11:19:53 +01:00
Jean Flach b297e8cfa7 Update node wizard
The wizard now displays basic information on the to-be-imported master
certificate and asks the user for confirmation.

fixes #10632
2015-11-26 10:09:13 +01:00
Gunnar Beutner 7f9337eee8 Use the NodeName constant in 'api setup'
fixes #10641
2015-11-26 08:11:02 +01:00
Gunnar Beutner 4169bf013b Hide the --master_zone option in --help because it's not currently implemented
fixes #10720
2015-11-25 19:00:07 +01:00
Gunnar Beutner b76fee5b98 Use the ZoneName and NodeName constants for 'node setup' and 'node wizard'
refs #10716
2015-11-25 17:43:12 +01:00
Jean Flach 7029bb3aea Fix master zone name
fixes #10716
2015-11-24 14:32:07 +01:00
Gunnar Beutner a805936f8f Fix: CLI command 'repository add' doesn't work
fixes #10690
2015-11-20 15:53:24 +01:00
Gunnar Beutner 3505ca3c16 Fix race condition in the ConfigItem class
fixes #10643
2015-11-19 19:38:49 +01:00
Michael Friedrich 530c7c7fcc Fix pki new-ca not checking for existing ca files
fixes #10677
2015-11-19 17:06:41 +01:00
Gunnar Beutner 2d2e7ecdb2 Improve location information for exceptions
fixes #10568
2015-11-10 17:05:40 +01:00
Gunnar Beutner 679983dd9a Rename $quit to $continue
refs #10559
2015-11-09 11:08:35 +01:00
Michael Friedrich b7f923dd01 'api setup' must not override existing certificate and api-users.conf file
fixes #10560
2015-11-08 14:19:06 +01:00
Michael Friedrich 1c8531fc0d Fix: 'api setup' should create a user even when api feature is already enabled
fixes #10560
2015-11-08 14:06:36 +01:00
Gunnar Beutner 9830ea6ea7 Remove duplicate text in an error message
refs #10559
2015-11-07 10:31:09 +01:00
Gunnar Beutner dcfc171c61 Improve messages for the debugger
refs #10559
2015-11-07 10:22:55 +01:00
Gunnar Beutner a6c411c6cb Fix: Autocompletion doesn't work in the debugger
fixes #10559
2015-11-07 10:17:55 +01:00
Gunnar Beutner 7621870278 Implement a debugger for Icinga scripts
fixes #10547
2015-11-05 14:29:45 +01:00
Gunnar Beutner 701961b73b Fix the 'type' attribute for the Object class
refs #10387
2015-11-05 10:29:02 +01:00
Michael Friedrich 5d46f661ea Implement 'console' cli command using the API
fixes #10387
2015-11-04 16:01:06 +01:00
Gunnar Beutner e3efe208bb Fix spelling mistake in 'node wizard' 2015-10-29 08:14:56 +01:00
Gunnar Beutner 15addb4e7c Use the correct zone name for parent_zone when running 'icinga2 node update-config'
fixes #10479
2015-10-29 08:14:55 +01:00
Gunnar Beutner dd77863910 Implement Array::ToString and Dictionary::ToString
fixes #10329
2015-10-26 11:05:24 +01:00
Mhd Sulhan 977d94839b CLI: Hide "Command options" if command is null
Before this commit, if icinga2 command executed without any argument,
the program will print empty "Command options".

While at it, clean the whitespaces.

fixes #10439

Signed-off-by: Gunnar Beutner <gunnar@beutner.name>
2015-10-26 08:05:09 +01:00
Gunnar Beutner 12015e0eca Clean up the 'api setup' command a bit more
refs #9471
2015-10-26 07:03:41 +01:00
Gunnar Beutner b72ba2b63a Fix incorrect return value for ApiSetupUtility::SetupMaster
refs #9471
2015-10-25 19:57:57 +01:00
Gunnar Beutner f31837a6ba Clean up the 'api setup' command
refs #9471
2015-10-22 16:03:26 +02:00
Gunnar Beutner 3c6f0e31d9 Make sure the timer thread is gone when calling fork()
refs #10410
2015-10-20 23:02:11 +02:00