Changelog ========= | `2.0-728-g99e3cce6c `_ Merge pull request #136 from cgalibern/master | `2.0-727-g1933cdd68 `_ Update diag message when 'print config --eval' fails because of config errors | `2.0-726-g197512e35 `_ Merge pull request #137 from cvaroqui/master | `2.0-725-gf707f2567 `_ Fix ignored tasks "on_error" trigger | `2.0-724-g1b34af418 `_ Merge pull request #134 from cvaroqui/master | `2.0-723-g630f89b45 `_ Fix scalers no longer scaling (part 2) | `2.0-722-ga9dee96b8 `_ Fix app#0.script=foo trying to replace foo by a volume mount path | `2.0-721-gcb6ee11d4 `_ Fix scalers no longer scaling | `2.0-720-g8c9092416 `_ Fix undue rollback of e1d50d0a2144e87155910b21f1eef09022d5ed57 | `2.0-719-g6033e3420 `_ Log the object path in "skip service status refresh on foreign service" | `2.0-718-g640358780 `_ Fix objects instances in n/a availstatus lingering global_expect | `2.0-717-g7bb31a626 `_ Merge pull request #132 from cgalibern/fix-stop-backport | `2.0-716-gd55671cbb `_ Backport fix app.simple stop when the script is not accessible (Solaris Only) | `2.0-715-g048a4d1e3 `_ Merge pull request #129 from cvaroqui/master | `2.0-714-ge1d50d0a2 `_ Add a configured key to each daemon thread status dataset | `2.0-713-gef01798c3 `_ Merge pull request #128 from cvaroqui/master | `2.0-712-g6261bd31c `_ Don't overwrite configuration files, create a tempfile and atomically rename | `2.0-711-g653b1e940 `_ Merge pull request #127 from cvaroqui/master | `2.0-710-gd49e91a82 `_ Allow user-defined system/svc/vip ip#0.tags to persist | `2.0-709-g3eb006a8b `_ Merge pull request #126 from cvaroqui/master | `2.0-708-gff2ee9bc3 `_ Fix a potential stack on Volume::chown() when mount_point is None | `2.0-707-gaaa001cbf `_ Merge pull request #125 from cvaroqui/master | `2.0-705-g318501673 `_ Set a longer timeout for the cni global lock acquire on ip.cni start | `2.0-705-g79b8fe890 `_ Merge pull request #124 from cvaroqui/master | `2.0-704-g3711b34a4 `_ Add a global lock to serialize CNI start actions | `2.0-703-g0498a318e `_ Add a status.json purge on daemon init, before running the boot action | `2.0-702-g7361f6b8a `_ Don't ask the daemon to resolve the boot action object selector | `2.0-701-g811f748a1 `_ Merge pull request #122 from cvaroqui/master | `2.0-700-g820e0c647 `_ Fix a next-ism in the SIGUSR1 backport | `2.0-699-gda86ff237 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-697-gcfd656ac8 `_ Do a daemon threads stack print on SIGUSR1 | `2.0-697-g610aa2e04 `_ Merge pull request #120 from cvaroqui/master | `2.0-696-ge2adbb693 `_ Backport the "run --confirm" option from next | `2.0-695-g27dc784e4 `_ Fix the fs.flag provisioning backport from next | `2.0-694-gea02cd70a `_ Add /usr/lib/cni to the candidate path for CNI binaries | `2.0-693-g4d93945d4 `_ Fix a import next-ism introduced in resApp | `2.0-692-g07e56d6d7 `_ Backports from 2.1 | `2.0-691-g7df9a4b62 `_ Merge pull request #118 from cvaroqui/master | `2.0-690-g64098d5e9 `_ Add the "run" lock intent to the task resource lock | `2.0-689-g6a948f88c `_ Fix undue tasks "task is a already running" errors | `2.0-688-gbda6fbab3 `_ Add the lock file path to the information displayed on str(LockingError) | `2.0-687-gcbce55b81 `_ Merge pull request #114 from cvaroqui/master | `2.0-686-g61fee288d `_ Fix a pylint error in rcUtilities.create_protected_file() | `2.0-685-g9e658b22a `_ Support volume path translation in app resource keywords | `2.0-684-g76187358a `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-682-g726e988b4 `_ Fix the "key not editable" error condition on "edit --key" action on py3 | `2.0-682-g15e77e7b6 `_ Merge pull request #105 from cvaroqui/master | `2.0-681-g583be4e5f `_ Fix "om edit --key ..." on py3 for keys injected from file | `2.0-680-g73e89e8ce `_ Merge pull request #101 from cvaroqui/master | `2.0-679-g1c164ce06 `_ Fix a py 3.8 warning | `2.0-678-g41b56f594 `_ Merge pull request #100 from cgalibern/master | `2.0-677-ga4a7f3a5a `_ Fix http2 api create object error (wrong function call) | `2.0-676-g75baeb19e `_ Merge pull request #99 from arnaudveron/master | `2.0-675-g0164027a0 `_ Fix duplicate documentation entries | `2.0-674-gf89125b90 `_ Merge pull request #93 from cgalibern/master | `2.0-673-gf432dd606 `_ Add tests for 'om cfg/name add --from' | `2.0-672-g7a8ce65ea `_ Prevent volume provision stack on freshly created volume | `2.0-671-gba04cb454 `_ Prevent set_smon() from wake up monitor if nothing change (fix monitor loop) | `2.0-670-g9dfa3deee `_ Merge pull request #97 from cvaroqui/master | `2.0-669-g177c19a2b `_ Don't return down as a fs resource status when we can't read mounts | `2.0-668-gbe3b542f7 `_ Don't parse "mount -p" on solaris fs resource add, from resource class init | `2.0-667-g4b70ec361 `_ Merge pull request #95 from cvaroqui/master | `2.0-666-g495c0d8ba `_ Fix rbac too restrictive for handlers using namespace from path and obj in root ns | `2.0-665-g64cca2d1f `_ Merge pull request #94 from cvaroqui/master | `2.0-664-g298e256c1 `_ Add the "sc" metadata to objects log lines | `2.0-663-gb20c929ae `_ Merge pull request #92 from cvaroqui/master | `2.0-662-g3aba4e62c `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-660-g7b4a80427 `_ Merge pull request #90 from cgalibern/master | `2.0-659-g42b368b16 `_ Ensure edited key temp files are not readable by group or other | `2.0-658-g7381536fb `_ Remove unused function edit_cf() from node.py | `2.0-657-g6ce74dbe8 `_ Always use same method to detect editor | `2.0-656-g9fe0a425f `_ Lint data.py | `2.0-655-ge95fae448 `_ Reformat data.py | `2.0-654-g51564c82e `_ Remove unused import from data.py | `2.0-653-gfefab51b4 `_ Merge pull request #91 from cvaroqui/master | `2.0-653-g9b9925f6c `_ Fix stack in rbac for objects in the root namespace | `2.0-652-g9692f79b3 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-650-gd23601249 `_ Merge pull request #89 from cvaroqui/master | `2.0-650-gab243c2f4 `_ Fix GET /key stack json-dumping bytes | `2.0-649-g6cf4caed5 `_ Update AUTHORS file | `2.0-648-g6396a2d9d `_ Obfuscate the logged value of sec and usr key on add action | `2.0-647-g996d3abfd `_ Fix rbac of the object_action with the "set" action | `2.0-646-gf296d4bb2 `_ Merge pull request #88 from cgalibern/master | `2.0-645-g9e793197a `_ [Test] Refacto to test_mgr, to avoid use of mock_argv | `2.0-644-ga804e2e71 `_ [Test] Verify empty keys from '--value ""' or '--from /dev/null' | `2.0-643-g88f761c5e `_ Merge pull request #86 from cvaroqui/master | `2.0-642-g5e25a55ba `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-639-gcbfc874cd `_ Merge pull request #85 from cgalibern/master | `2.0-638-g4b9746e5e `_ [Test] node has an pool with known type | `2.0-637-g50220ed1f `_ Fix provision errors when some pools have errors | `2.0-636-ge44155e8d `_ Fix infinite loop when service volume configs use a cfg object with leading '/' keys | `2.0-635-gc75049024 `_ Use errno variables instead of number in the osvcd listener | `2.0-635-gbf9158de7 `_ Tests service 'provision' install volume configs files | `2.0-634-g31f2dbf27 `_ Update Build status url for travis-ci.com | `2.0-634-g2c369dcc5 `_ Close listener connection on ConnectionAbortedError | `2.0-633-ge1911544f `_ Merge pull request #84 from cvaroqui/master | `2.0-632-gb4f96dc15 `_ Allow empty sec and cfg keys value | `2.0-631-g55b16f276 `_ Merge pull request #83 from cvaroqui/master | `2.0-630-gdedb4932f `_ Add the --blk option to "om pool create volume" | `2.0-629-g431369f50 `_ Fix a stack on "install" action when a src key starts with / | `2.0-628-gbf0760726 `_ Allow the "logs" action on usr, cfg and sec objects | `2.0-627-g3e50e5aaa `_ Merge pull request #81 from cvaroqui/master | `2.0-626-gc37b0ca38 `_ Fix a listener thread method call arguments | `2.0-625-g3a5afe36f `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-623-gec80108dc `_ Don't log an exception on ConnectionAbortedError in the listener main loop | `2.0-622-gbf7072877 `_ Don't hang the client browser accessing the webapp when not installed | `2.0-622-g61c63f92e `_ Merge pull request #79 from cvaroqui/master | `2.0-621-g65dc77a49 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-618-g1bc441c91 `_ Make sec and cfg key install in volume behave more like cp | `2.0-617-gdfdfc71d3 `_ Fix a duplicate declaration of the om executable in the rpm spec file | `2.0-616-g2d0530c24 `_ Optimize redundant calls to Data::resolve_keys() from Volume::_install_data() | `2.0-615-gcca2804c6 `_ Move the is_glob() implementation from rcCollectorCli to rcUtilities | `2.0-614-gb068a3648 `_ Remove a duplicate call to all_keys() in the volume _install_data() codepath | `2.0-613-g2a6e7a5a9 `_ Add more fnmatch pattern hints to the volume resource _install_data() method | `2.0-612-gc08fbe465 `_ Merge pull request #77 from cgalibern/master | `2.0-612-g7b68993a4 `_ Display the key name in addition to the cfg and sec key install destination | `2.0-611-g8600ec16e `_ Small optimisation on osvcd_shared.py | `2.0-611-g5cd82a08b `_ Don't always add a trailing newline to a key value upon sec and cfg key edit | `2.0-610-gdda7677ac `_ Merge pull request #78 from cvaroqui/master | `2.0-609-g2842f01e6 `_ Add mpathpersist support | `2.0-608-gfdfd78d37 `_ Merge pull request #74 from cvaroqui/master | `2.0-606-g6ae2ff637 `_ Merge pull request #76 from cgalibern/master | `2.0-605-gce184f11f `_ [CI-travis] Cache pip | `2.0-604-g34df53603 `_ [PEP8-LINT] Fix some warnings | `2.0-603-g3b23d664a `_ [tox] Add pylint step | `2.0-602-gafd94d2df `_ [Test] Fix transient failures on test_run_loop_forever_when_no_other_daemon_are_here | `2.0-602-g24490dc53 `_ TOC fixes and enhancements on Linux | `2.0-601-g8905aa3ca `_ Merge pull request #73 from cvaroqui/master | `2.0-600-g19fa0259a `_ Disable volume sync#i0 if it contains no resource with files to sync | `2.0-599-g7e0cf61ac `_ Merge pull request #72 from arnaudveron/master | `2.0-598-gc59a6465c `_ Fix systemd unit name dependency for docker | `2.0-597-g7da983046 `_ Merge pull request #71 from cvaroqui/master | `2.0-596-g4dc890dcc `_ Fix podman dns options settings | `2.0-595-g373e95eab `_ Ensure docker/podman --dns-option are set to minimal requirements | `2.0-594-gc9a96da80 `_ Merge pull request #70 from cvaroqui/master | `2.0-593-g9d76dec5b `_ Fix the test for registration keys count | `2.0-592-g121800b9e `_ Merge pull request #69 from cvaroqui/master | `2.0-591-gf9b91dee3 `_ Fix the scsireserv registered count for multi-lun resources | `2.0-590-g7bb37cf77 `_ Merge pull request #68 from cvaroqui/master | `2.0-589-gbf8153597 `_ Fix pylint reported errors | `2.0-588-g95509c44a `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-585-gcc90f123f `_ Add the Huawei Dorado array and pool drivers | `2.0-584-g32e9c1eb5 `_ Handle path returning "Not ready" scsi errors on scsi3 pr inquiries | `2.0-583-gbd6f0bfab `_ Always run configure() after create_disk() | `2.0-582-g8e587027a `_ Add --nodes option to "om pool create volume" | `2.0-581-g51be13143 `_ Log the scanscsi actions instead of printing them | `2.0-580-g85e613944 `_ Fix the scoped disk_id settings in disk.disk provisionning codepath | `2.0-579-gf664904f1 `_ Fix duplicated r1_result in the sym create disk returned dataset | `2.0-578-gf417f82da `_ Fix the daemon unlock handler call parameters | `2.0-577-g7f8b56a59 `_ Fix the "om array" command wrapper Array object lookup by name | `2.0-576-gfa992bd75 `_ Change the "om pool create volume" default behaviour to fmt=True | `2.0-576-g30688a41d `_ Merge pull request #66 from cgalibern/master | `2.0-575-gf8e95c1b6 `_ Test sec and cfg accept camelCase keys | `2.0-575-ged883bae3 `_ Fix daemon lock acquire from unix socket | `2.0-574-ga7b3140a1 `_ Merge pull request #65 from cgalibern/master | `2.0-573-g8701e5887 `_ Tox include slow tests and add py35 | `2.0-572-gdcecd3997 `_ Merge pull request #64 from cgalibern/master | `2.0-571-ge8c098904 `_ Add tox config | `2.0-570-g5fd8d8db9 `_ Merge pull request #63 from cgalibern/master | `2.0-569-ge7b5b10d8 `_ Fix 'print status' errors when terminal columns are too low | `2.0-568-g03ce2be7a `_ Test cleanup travis | `2.0-567-g0e93e8f80 `_ Merge pull request #62 from cvaroqui/master | `2.0-566-g3c0b4796a `_ POST /wake_monitor enhancement | `2.0-565-ge53f7ce67 `_ Fix udevadm hardcoded fullpath | `2.0-564-g192d7abe0 `_ Merge pull request #61 from cgalibern/master | `2.0-563-g92f31e4b5 `_ Improve detection of osvcd process | `2.0-562-gc16c85d2c `_ Test: don't create node.Node() when loading test files | `2.0-561-gf9fcf22d0 `_ Merge pull request #60 from arnaudveron/master | `2.0-560-g182613fea `_ Fix relay query when --node option is not set | `2.0-559-gded627266 `_ Merge pull request #59 from cgalibern/master | `2.0-558-g05d12966a `_ Fix regression on osvc_windservice lock usage | `2.0-557-g39f9916ff `_ Update daemon process detection and prevent multiple run | `2.0-556-g54359d0ab `_ Update daemon process detection and prevent multiple run | `2.0-555-g82e782968 `_ Test: refacto move mock_argv() fixture to conftest.py | `2.0-554-g6f14bdc08 `_ Test: make tests pass on Solaris | `2.0-553-gb6379cac7 `_ Test: Fix lock test on Solaris | `2.0-552-g40f492041 `_ Test: Allow test_fs flag on Solaris | `2.0-551-g68f43668a `_ Merge pull request #58 from cvaroqui/master | `2.0-550-g4c99bb858 `_ Simplify the logger setup in svcBuilder | `2.0-549-gf7a781581 `_ Remove daemon lock testing for wake_monitor() codepaths | `2.0-548-gf238636fa `_ Be more tolerant of locking conflict on osvcd startup | `2.0-547-gad2bf41e8 `_ Do not open() lock files with O_TRUNC | `2.0-546-g550fc45da `_ Accept formatting a local instance status when the daemon is down | `2.0-545-g0ee68ce7d `_ Merge pull request #56 from cvaroqui/master | `2.0-544-g87c68d133 `_ Fix hb stack in _configure() error path | `2.0-543-g09f8deb23 `_ Allow Uppercase in config file keys | `2.0-542-gb4a9c9678 `_ Merge pull request #53 from cgalibern/master | `2.0-539-gaa1eaaf96 `_ Don't retry send actions to daemon when ECONNREFUSED | `2.0-538-g8d7812ff6 `_ Fix RETRYABLE list with errno values | `2.0-537-g527237f92 `_ Merge pull request #55 from cvaroqui/master | `2.0-537-g7ca3ad769 `_ Don't retry send actions to daemon when ECONNREFUSED | `2.0-536-gb46bcaa4a `_ Fix a stack sorting fs.dir and fs.flag resources in the same object | `2.0-536-g5149e1e40 `_ Fix RETRYABLE list with errno values | `2.0-535-g512c9992f `_ Merge pull request #52 from cgalibern/master | `2.0-534-g93a1337e9 `_ Add build status to README | `2.0-533-g9e242a4fb `_ Pep8 resData.py | `2.0-532-gc7601c12f `_ Tests: Ensure fs flag filename is correct | `2.0-531-g4ceeb55a0 `_ Merge pull request #50 from cvaroqui/master | `2.0-530-gcf6bf9156 `_ Don't start/stop task.type=oci containers on start/stop | `2.0-529-gf1fbb3706 `_ Classify "enter" as a no-lock action | `2.0-528-g8e698d503 `_ Merge pull request #48 from cvaroqui/master | `2.0-527-g64409e219 `_ Add the "enter --rid " action | `2.0-526-g8335fb56f `_ Fix a monitor thread stack triggered when a lot of objects are being deleted | `2.0-525-g340599854 `_ Merge pull request #47 from cvaroqui/master | `2.0-524-gb1e45775e `_ Fix an issue in event delivery to clients | `2.0-523-g3569af698 `_ Merge pull request #46 from cvaroqui/master | `2.0-522-ga3b59a33c `_ Allow forwarding to the opensvc backend networks | `2.0-521-g37017be16 `_ Merge pull request #45 from cgalibern/master | `2.0-520-g596297d42 `_ Add opensvc.iml to git ignored files | `2.0-519-g2471cc5c5 `_ Fix lock creation failure when lock directory doesn't exist | `2.0-518-gda11b9be2 `_ Apply pep8 style to lock.py | `2.0-517-g317298de9 `_ Tests: tests lock lib | `2.0-516-g9aea3f0ae `_ Test: refacto mgr tests | `2.0-515-g79564e904 `_ Tests: tests config with lvm service | `2.0-514-g11b2a18fa `_ Merge pull request #44 from cvaroqui/master | `2.0-513-g686849791 `_ Redirect "om ed" to edit config | `2.0-512-g5a0d16494 `_ Merge pull request #43 from cvaroqui/master | `2.0-511-gda23bc135 `_ Use a more coherent display name for parents and children in print status output | `2.0-510-g728a33121 `_ Fix "undef" status of parents in print status output | `2.0-509-g5adcdad20 `_ Merge pull request #42 from cvaroqui/master | `2.0-508-gf0fc8cbfd `_ Fix "om mon" showing out of current namespace objects | `2.0-507-gda4c9f27d `_ Merge pull request #37 from cgalibern/master | `2.0-506-g344b8fac1 `_ Test: run pytest before pylint to have earlier failure status | `2.0-505-g95780a36c `_ Set can_rollback on successful start in the fs.flag driver | `2.0-504-ga4c2039e2 `_ Add fs.flag resource driver for SunOS | `2.0-503-g9e8a46db9 `_ Reformat mgr.py | `2.0-502-gbb92972e4 `_ Add service actions (Tests) | `2.0-501-g65dc0a411 `_ Tests: use capture_stdout fixture | `2.0-500-gd3edede9f `_ Test Linux fs driver honoring the "umount fs with io err" policy | `2.0-499-g949168665 `_ Merge pull request #41 from cvaroqui/master | `2.0-498-g57c8ffee1 `_ Fix the cfg objects add --from path walking algorithm | `2.0-497-g5e7599805 `_ Merge pull request #40 from cvaroqui/master | `2.0-496-gf566e5fdc `_ Fix Svc::resource_handling_dir() stacking on fs drivers with no mount_point | `2.0-495-ga79c01ac2 `_ Set can_rollback on succesful start in the fs.flag driver | `2.0-494-g5d21decba `_ Merge pull request #39 from cvaroqui/master | `2.0-493-g785f4212e `_ Fix the cluster.vip scoped declaration | `2.0-492-g424f4fd8a `_ Merge pull request #38 from cvaroqui/master | `2.0-491-gdbbf8b82c `_ Add the "edit --key " action to sec and cfg objects | `2.0-490-g886567116 `_ Add a fullpem key to the sec object on "gen cert" action | `2.0-489-g55e4cb6bd `_ Support more container image formats | `2.0-488-g040d159e4 `_ Merge pull request #36 from cgalibern/master | `2.0-487-g4a31d65d4 `_ Disable patch coverage | `2.0-486-ge83748c12 `_ Merge pull request #35 from cvaroqui/master | `2.0-485-gdb9c283c9 `_ Fix fs driver not honoring the "umount fs with io err" policy | `2.0-484-gfbc46123d `_ Allow the prkey keyword on fs resources | `2.0-483-g89f5c1d06 `_ Update docs for a volume_mounts keyword help update | `2.0-482-g046b6e131 `_ Apply coding style to the solaris zone container driver | `2.0-481-gf19a63b84 `_ Merge pull request #34 from cgalibern/master | `2.0-480-gde5d66ff6 `_ Tests: re-add some nodemgr tests | `2.0-479-g7bf3c8e20 `_ Do not try to halt a zone in 'unavailable' state | `2.0-478-gab4e8ead9 `_ Fix the fs.flag resource for services in the root namespace | `2.0-477-g77c67de6b `_ Fix the sym array actions | `2.0-476-gd16e7dff0 `_ Python3.8 support | `2.0-475-gfebb2910a `_ Merge pull request #32 from cgalibern/master | `2.0-474-g0587f558b `_ Tests: replace nose by pytest | `2.0-473-gcaa774ead `_ Tests: nose->pytest for test_ci_converters.py | `2.0-472-g6fb5ad555 `_ Tests: nose->pytest for test_ci_storage.py | `2.0-471-g55038ba71 `_ Tests: nose->pytest for test_ci_rcstatus.py | `2.0-470-g4cf2e6ff6 `_ Tests: nose->pytest for test_import.py | `2.0-469-g0f97fbce9 `_ Tests: nose->pytest for freezer.py | `2.0-468-gbb70096cf `_ Tests: prepare nose->pytest for freezer.py | `2.0-467-g3f969aebf `_ Tests: nose->pytest for forest.py | `2.0-466-g13184463e `_ Tests: prepare nose->pytest for forest.py | `2.0-465-ge89bab242 `_ Discard 127.0.1.1 as a ipip tunnel endpoint | `2.0-464-gf73b1c339 `_ Tests: Remove unused future import | `2.0-463-g4ad91acbd `_ Tests: pytest ignore external lib warnings | `2.0-462-g5f069412e `_ Remove some invalid escape sequence in string | `2.0-461-gfe7f3001f `_ Tests use updated sys.path from conftest.py | `2.0-460-gd3f84776b `_ Use code coverage from pytest | `2.0-459-gdb556055b `_ Fix invalid escape sequence warnings | `2.0-458-g14ad7eea7 `_ Fix Default argument value is mutable | `2.0-457-g96b7e4cd2 `_ Update rcUtilities.py with pep8 style | `2.0-456-ga47fa66d5 `_ Fix dump_config_data() trying to replace in non-string values | `2.0-455-gf6739ea8f `_ Don't allow dumping "some_kw=None" in configs | `2.0-454-g1752e77df `_ Fix cloning of an object config with line continuations | `2.0-453-g1c448b7d1 `_ Merge pull request #29 from cgalibern/master | `2.0-452-gffa9bf759 `_ Move test_ci_utilities.py from nose to pytest | `2.0-451-g565ff2074 `_ Allow run tests on Darwin | `2.0-450-gc0af1ac12 `_ Allow import rcUtilitiesLinux on non Linux host | `2.0-449-g794bfa615 `_ Ensure error on dup docker mount destinations | `2.0-448-gdc7c99711 `_ Remove the mount point existence test in stop() of the fs linux driver | `2.0-447-g9864b7b9f `_ Fix a log message reporting a volume status as integer | `2.0-446-gacdb543ea `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-444-g04934a84d `_ Update coverage files | `2.0-443-geaeef4392 `_ Update coverage version to allow py-cov requirements | `2.0-443-g75d890c5c `_ Do not dedup on "set --kw +=", add "set --kw |=" | `2.0-442-g77d81b1c2 `_ Merge branch 'test-dup-dest-in-containter-mounts' into 'master' | `2.0-441-gd770a2620 `_ Add python 2.7 to gitlab-ci tests, add pytest cov | `2.0-440-g9a49be36d `_ Ensure raise an error if volume_mounts contains dup dst mount points | `2.0-439-gb40cbb12a `_ Better dedup on "set 'foo+=a b'" | `2.0-438-gc7dfc38b7 `_ Raise an error if volume_mounts contains dup dst mount points | `2.0-437-g00d230235 `_ Update fixture osvc_path_tests for 2.7 | `2.0-436-ge15709ccf `_ Add tests for nodename abbreviation (for 'om mon' formatting) | `2.0-435-g86cd3f8f9 `_ Update the volume_mounts keyword documentation | `2.0-434-g3e9b928d4 `_ Try gitlab-ci | `2.0-433-ga5ec2b2bc `_ Reformat code | `2.0-432-g19f9951db `_ Update effective container volume_mounts access to respect volume resource access | `2.0-431-g49c812c05 `_ Add an "abort_start" method to the fs.flag driver | `2.0-430-g3791ebe77 `_ Refresh docs | `2.0-429-gceb7fe2cd `_ Add a fs.flag resource driver | `2.0-428-g3b17d5347 `_ Fix a pylint error on python | `2.0-427-g5fc61fa58 `_ Scheduler enhancements | `2.0-426-g08553faf2 `_ Avoid forking a scheduler tasks when not useful | `2.0-425-g7ea31e08c `_ Reset more listener client information when the auth is refused | `2.0-424-gb6efa4bf5 `_ Fix giveback not waiting for frozen instance unfreeze | `2.0-423-g73fd495df `_ Clean up tasks last ret code on start/stop | `2.0-422-g542a87ae7 `_ Don't clear "start failed" while global_expect is set | `2.0-421-g0ee44b90d `_ Toc action fixes | `2.0-420-gea1451523 `_ Clear the "place failed" smon status when the service is up | `2.0-419-gf4ae4f3e3 `_ Add a expected_status kwarg to set_smon() | `2.0-418-g3c8aabf79 `_ Fix the switch monitor action | `2.0-417-g8cbab475c `_ Fix object nodes reduction deleting instances that should remain | `2.0-416-gb44e84d9c `_ Avoid purging too much data from var on "unprovision --rid ..." | `2.0-415-gc5eb5bee5 `_ Log the created record name when using the collector ipam prov | `2.0-414-g8b122160d `_ Fix ip provision when the collector used for ipam | `2.0-413-gb53525beb `_ Use a lcall instead of vcall for "lxc-create --template" | `2.0-412-ge4e00a5f2 `_ Fix logger handlers manipulation via LogAdapter instead of Logger | `2.0-411-gd02eab679 `_ Fix a pylint error in the listener codepath | `2.0-410-gb88dc8150 `_ Don't try all authentication method on new http/2 connections | `2.0-409-g821625863 `_ Log "do ()" even if node.dbopensvc is not set | `2.0-408-gbb3d7c89c `_ Fix 2 uses of log warn() instead of warning() | `2.0-407-g20aa22194 `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-405-g894bdfbb8 `_ Avoid raising ValueError when convert_integer() is fed a non convertible | `2.0-405-g9d665c033 `_ Logging enhancements | `2.0-404-g49ad02d77 `_ Fix "om daemon blacklist clear" | `2.0-403-g23c524149 `_ Add missing red/gray instance status colorization | `2.0-402-gf924b287f `_ Misc fixes related to --status handling | `2.0-401-gb1d0dd0b1 `_ Tweak "om mon" output | `2.0-400-gb79680791 `_ Fix the "unset" action return code | `2.0-399-g5f8f318e4 `_ Fix "om ls|mon" always displaying svc objects, whatever the value | `2.0-398-g44b96744c `_ Fix the {fqdn} reference for svc in the root namespace | `2.0-397-g6d51a6314 `_ Misc small enhancements | `2.0-396-g2fd6a7269 `_ Align the print_status_data_eval() prototype between Svc and BaseSvc | `2.0-395-gbf16aaea9 `_ Make sure we don't use in-mem cached resource status | `2.0-394-g6cf0036ed `_ Exclude "rejoin" from the nmon status preventing status.json rewrite on label changes | `2.0-393-g3d7b43da3 `_ Don't update status.json on label change when in "init" | `2.0-392-ga3b58c7e4 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-390-g1025b7f4a `_ Fix flex_target={#nodes} not updated fast after label changes | `2.0-389-g9053e8b88 `_ Clear config ref caches in Svc::unset_conf_lazy() and Svc::unset_all_lazy() | `2.0-388-gc242536d8 `_ Add a transitions_maxed() method to the monitor thread class | `2.0-387-gcc08fd38c `_ Add a clear_ref_cache() method to ExtConfig | `2.0-387-g3d056a798 `_ Fix wait_dns undue timeouts | `2.0-386-g7e604639b `_ Add the node.dblog node/cluster keyword | `2.0-385-g9f4cf322e `_ Fix ordering of instance info in "om mon" | `2.0-384-g6133b8f1a `_ Add extra warnings in the volume start and status codepaths | `2.0-383-g98d4527c9 `_ Fix empty "om mon" columns | `2.0-382-g9534a520d `_ Abbreviate the nodenames in the "om mon" human-friendly output | `2.0-381-g146861a9d `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-379-ge6297ec91 `_ Don't report an error when requesting a target state already targeted | `2.0-378-g381b472a8 `_ Fix a postinstall stack | `2.0-377-ga842db0f2 `_ Fix a listener multiplexer stack on request on just-deleted objects | `2.0-376-g3750828d8 `_ Use json as the default output format for config evaluation | `2.0-376-g0ab65b017 `_ Add the cluster name to the data reported to the collector | `2.0-375-g16e8f1143 `_ Use paths from rcGlobalEnv in updateclumgr action | `2.0-374-gdb9da3b5c `_ Remove a debug print in the hds array driver | `2.0-373-g0ff34cdf3 `_ Fix the pkcs12, ca and cert extraction to the cert/ shmfs | `2.0-372-g4f0f9c85b `_ Fix the disk.zpool resources status not refreshed after a stop/start | `2.0-371-ga2d9e646b `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-368-gcfc018580 `_ Ignore "comment" internal keyword in "validate config" actions | `2.0-368-g60aa1cd97 `_ Route "set" and "validate_config" actions to any object nodes | `2.0-367-g46ad21a4c `_ Limit the h2 request retry loop logic to retryable errors | `2.0-367-g5f88e2174 `_ Fix app.simple stop when the script is not accessible | `2.0-366-g3e7607023 `_ Fix a pylint error on non-existing BaseSvc::monitor_action | `2.0-365-ga36784dc5 `_ Fix the double-toc detection in the monitor thread | `2.0-364-g4df9aafed `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-362-g953cabed9 `_ Prevent the resource orchestrator from executing multiple toc for the same obj | `2.0-361-g0a510c380 `_ Protect the toc action with the object action lock | `2.0-360-g7dc830139 `_ Implement the retry-loop-until-timeout on h2 "[Errno 146] Connection refused" | `2.0-359-g1a7954422 `_ Fix array driver lookup by array name | `2.0-358-g1a668360f `_ Fix push{hds,sym,xtremio} when other array sections do not support the "name" kw | `2.0-357-g097215690 `_ Add missing "name" keyword declaration in xtreamio and symmetrix arrays | `2.0-357-g468ca1d79 `_ Add support for "environment" keyword in app and task resources | `2.0-356-ga69163726 `_ Fix "om clear" | `2.0-355-g61e4a0035 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-353-g0671ed4d5 `_ Add openssl.cnf search loop | `2.0-353-g1a3e3a2b2 `_ Better error message when piping no data on "om create --config=-" | `2.0-352-g5c8359df9 `_ Daemon scheduler thread status() thread-safety | `2.0-351-ga6189722e `_ Remove unused file | `2.0-350-g8893319a8 `_ Honor expose=/ in ip.cni config when no hostport is specified | `2.0-349-g26700d4de `_ Don't report node as speaker if the collector thr is not running | `2.0-348-g74e87126a `_ Add CNI_CONTAINERID to the stop codepath of ip.cni resources not referencing a container | `2.0-347-g0d928a611 `_ Add deprecated keywords support to oci driver | `2.0-346-g76e837559 `_ Add a GET /object_keys handler | `2.0-345-g374d1c6fc `_ Fix autodetection of the oci driver | `2.0-344-gbd3d22cb4 `_ Update commands man and completion | `2.0-343-g7aee3054e `_ Setup perms and ownership in update_ssh_authorized_keys() | `2.0-342-g12809f740 `_ Add the "om node update ssh authorized keys" command | `2.0-341-g659773c50 `_ Be more restrictive in the object_selector algorithm | `2.0-340-g1aacae863 `_ Don't run the authenticate_client() method for world-usable handlers | `2.0-339-ga26e9f162 `_ Support basic authentication on the h2/tls socket | `2.0-338-ga1ee524a2 `_ Fix the GET /whoami handler stacking when the authentication failed | `2.0-337-g7a979fffd `_ Add a has_key(key) method to all Data class derived objects (sec/cfg/usr) | `2.0-336-gfb52f5b13 `_ Move GET /authinfo as a normal handler | `2.0-335-ge33a8417e `_ Add a fs resources "stat_timeout" keyword | `2.0-334-g53afb0fbe `_ Add the multiplex property to handlers | `2.0-333-gc89561169 `_ Fix the ip drivers dns_wait behaviour | `2.0-332-gf474aa0e6 `_ Add a GET /sync api handler | `2.0-331-g6715d24f3 `_ Fix a possible stack in the scheduler thread | `2.0-330-ge43a3be3a `_ Fixes for "om node wait" without duration | `2.0-329-g0612bfaaa `_ Move the object/node in api path detect to h2_router | `2.0-328-g8cecea0e8 `_ Fix world-usable handlers not authorized before authentication | `2.0-327-g168a34352 `_ Tweak the POST /objet_monitor handler doc | `2.0-326-g5dbd80521 `_ Restore the "options" parameter of POST /{node,object}_action | `2.0-325-g6c1de2265 `_ Fix the namespaces access definition of GET /object_config | `2.0-324-gf12a31b04 `_ Fix the GET /object_config access policy | `2.0-323-gf684a4670 `_ Update the api handlers descriptions | `2.0-322-gcffd5700c `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-320-g2eb185c78 `_ Honor world and namespaces=FROM:path access checks to rbac_requires() | `2.0-319-ga73a777d4 `_ Make sure we test one last time before returning from the GET /wait handler | `2.0-319-g3f0ba6a17 `_ More information in the POST /daemon_shutdown handler description | `2.0-318-g199a69eb1 `_ Fix the disk.zpool warning when zpool status reports "No known data errors" | `2.0-317-g777c304b2 `_ Wait fixes | `2.0-316-g10b7702e7 `_ Fix a stack in the collector thread on object delete | `2.0-315-g864769453 `_ Fix a regression in the non-binary secret decode | `2.0-314-g1407407ac `_ Add the GET /wait handler | `2.0-313-gd684d3fbf `_ Don't join joined node peers when the cluster.nodes is defined in cluster.conf | `2.0-312-gc09ac4238 `_ Add a RLock to prevent locally concurrent joins/leaves | `2.0-311-g3dc4e91c1 `_ Fix a syntax error in the oci container driver | `2.0-310-g34ceb9047 `_ Fix concurrent "daemon join" leading to messed up nodes list | `2.0-309-g3d30c5bff `_ Fix the object_logs api handler no longer feeding from peer nodes | `2.0-308-g5f70d4ef2 `_ Don't drop container hostname if net= | `2.0-307-gde88319e3 `_ Fix a stack in the unicast hb driver | `2.0-306-g479d3308e `_ Add a warning for zpool with suspended i/o | `2.0-305-g56352071d `_ Fix the GET /events handlers accessed via raw+tls | `2.0-304-ga41ab64b3 `_ Set the GET method in daemon_stream() requests | `2.0-303-gec8af2c83 `_ Accepting patching the full dataset received as 1st wait msg | `2.0-302-gc8f952db7 `_ Yet another pip install requirements tweak | `2.0-301-g5761ae1b4 `_ Yet another pip install requirements tweak | `2.0-300-gdf41c8910 `_ Yet another pip install requirements tweak | `2.0-299-g89269dec6 `_ Prevent travis install of astroid 2.2, stacking on infinite recursion | `2.0-298-gf08a1bf44 `_ Fix a pylint error in the "data" module | `2.0-297-g8fa9a3d86 `_ Fix pylint error in the listener codebase | `2.0-296-gff51907c8 `_ Disarm the timeout alarm when the initial full matches the wait condition | `2.0-295-gd20a9f0c0 `_ Add the "stream" property to the api handler class | `2.0-294-g16d389d71 `_ Don't stack on invalid request header | `2.0-293-gcde018228 `_ Don't close listener binded sockets if not necessary | `2.0-292-g57ed50488 `_ Add a "full" parameter to GET /events | `2.0-291-g19de7702e `_ Add a "name" keyword to brocade and hds sections | `2.0-290-g21533591b `_ Fix a secret "gen cert" stack | `2.0-289-g7cf6dd181 `_ Add support for deprecated GET /get_node handler | `2.0-288-g3ad2edc5f `_ Fix a listener stack in the path parser | `2.0-287-g4fac46cb2 `_ Support binaries in secret keys | `2.0-286-ga979b01e3 `_ Support 'om oci ...' as an abstract of 'om docker|podman ...' | `2.0-285-g23d778d18 `_ Add a default "oci" container type | `2.0-284-g8ecd864e1 `_ Fix create/provision from single object template | `2.0-283-g1395dd626 `_ py2 fixes for the listener | `2.0-282-g050e42cb9 `_ Fix the commands rst documentation generation not including global options | `2.0-281-gfebab5301 `_ Split api handlers out of the listener thread codebase | `2.0-280-g78d31293b `_ Add a "remove" action to sec/cfg/usr objects | `2.0-279-g1ea94eadd `_ Fix an error reported by pylint in the lock module | `2.0-278-g591afaae0 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-276-gafa685a04 `_ Implement --verbose and --name for "om pool status" | `2.0-275-gf908a5455 `_ Add a thread status "alerts" key to store thread (re)configuration alerts | `2.0-275-gdd7071cdd `_ Add Slack notifications for Travis builds | `2.0-274-g5bf146e29 `_ Fix the "join" listener codepath | `2.0-273-g2c3ca441e `_ Reset "node wait" alarm when breaking from the event loop | `2.0-272-gccb528e5a `_ Remove a doubled call to convert_duration() in the wait codepath | `2.0-271-g68cd460f2 `_ Allow raw aes comms to drp nodes in another cluster | `2.0-270-gcfc8b828d `_ Fix event wait errors | `2.0-269-g5b57b8d28 `_ Remove locks from OsvcThread::object_data() | `2.0-268-gaa739df04 `_ Fix an init_node() stacking error codepath | `2.0-267-g9510b452f `_ Support @drpnodes keywords scoping in cluster.conf | `2.0-266-g76206fc58 `_ Add the "reset_options=true|false" boolean keyword to sync.rsync | `2.0-265-gbbcf7aa6a `_ Fix drop of events on objects being deleted | `2.0-264-gc68a416b8 `_ Fix the vip secondary instances frozen after service creation | `2.0-263-g4dd185eb9 `_ Don't report 0 for net/blk metrics of empty pg | `2.0-262-gf1d28028c `_ Faster unprovision for zpool resources layered on other resources | `2.0-261-gf21fdd3fb `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-259-ge9ec367e0 `_ Honor the selector passed to the events api handler | `2.0-259-g8f6770c1d `_ Fix event storm during orchestrated provision | `2.0-258-gb7121385e `_ Fix the "sync nodes" and "sync drp" not skipping non-targeted resources | `2.0-257-ge524e6f0c `_ Move the object_data() method from osvcd_lsnr to osvcd_shared | `2.0-256-gd20f80230 `_ Fix a pylint reported error in the ip driver parent class | `2.0-255-gc4e1c0bb3 `_ Provide the client_id in the authinfo api handler resultset | `2.0-254-g4e16b9722 `_ Catch ProcessLookupError when killing running process on daemon shutdown | `2.0-253-gbf2787316 `_ Clarify the "shutdown daemon requested by None" message | `2.0-252-g9b426fb66 `_ Restore the "svcmgr ls" default selection to "all svc" | `2.0-251-ga837a1e8e `_ Fix "do ... ()" not being logged anymore | `2.0-250-gd180005df `_ Add the per-service net metrics to "daemon stats" | `2.0-249-g24db41a00 `_ Fix a stack on "om logs" when peer has no log yet | `2.0-248-g5c28d198f `_ Add a "om pg pids" action | `2.0-247-ga6a74eed9 `_ Add zfs send/receive dataset relocation | `2.0-246-gbded5d0e9 `_ Use /proc/sys/kernel/random/boot_id as source for boot id on Linux | `2.0-245-g186f1a187 `_ Serialize store_rx_data() calls | `2.0-244-g8de636d2c `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-241-g7b3d16671 `_ Add 'raw_grant' to the whoami information | `2.0-240-g927fc8dab `_ Add jwt authentication to the listener | `2.0-239-g547519008 `_ Better cancelation of the ready states after split+rejoin | `2.0-239-g4bd4967ee `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-238-g20cac081e `_ Fix a stack in the multicast heartbeat reconfigure codepath | `2.0-237-g8ed5fd1dd `_ Use synchronous rpc for pushs after register | `2.0-236-gb10563a2f `_ Fix re.sub(..., flags=) for py 2.6 compatibility | `2.0-236-g9c2b77ea9 `_ Embed the pyjwt lib | `2.0-235-gfe0bf5863 `_ Inform api client that the submited node selection is empty | `2.0-234-g6b3ab0a63 `_ Fix error on "om node sysreport" with new CMD | `2.0-233-g110e05c8e `_ Persist routed_bridge subnets assignments | `2.0-232-gdc07659f7 `_ Add ExtConfig::oget_scopes() | `2.0-231-ga34a1135b `_ Fix "'Listener' object has no attribute 'get_namespaces'" | `2.0-230-gff364bf33 `_ Add locking aroung disk.zpool sub_devs cache read and write | `2.0-229-g7b79cd699 `_ Return info from service_action and node_action api handlers | `2.0-228-g0f9518607 `_ Fix multiplex storm on logs --follow | `2.0-227-gd0074af78 `_ Don't exec tasks that require a collector when dbopensvc is not set | `2.0-226-g2d13b528d `_ Serve the webapp index.html whatever the req path if accept:text/html | `2.0-225-g71392634b `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-223-gb1c586adb `_ Shortcut the ssl context init when talking http/2 over uxsock | `2.0-222-gfa14defe9 `_ Fix a use-before-set in the mgr codepath | `2.0-222-g5fdd5f426 `_ Fix hb "beating" attr staying True when the thread is stopped | `2.0-221-g7971c7084 `_ Service logs fixes | `2.0-220-g60b66c27b `_ Fix the alt_names not embedded in the certificate signed by cluster CA issue | `2.0-219-g08f7144fe `_ Add a check=last_run keyword to task drivers | `2.0-218-ge2e67fca9 `_ Don't tag the non-detached container.{podman,docker} "nostatus" | `2.0-217-g868ad7cc3 `_ Fix type=host tasks run_requires not honored | `2.0-216-g59c29a249 `_ Restore http/2 over uxsock as the preferred protocol with the local daemon | `2.0-215-g96097cf82 `_ Simplify a too convoluted method of the Scheduler class | `2.0-214-g47db759d0 `_ Remove two more useless CLUSTER_DATA lock acquires | `2.0-213-g550b5265d `_ Enhance the scheduler precision | `2.0-212-gd9bf26593 `_ Fix a CLUSTER_DATA global access error in the monitor thread reconfigure codepath | `2.0-211-g11341b231 `_ Fix a NODE global access error in the monitor thread reconfigure codepath | `2.0-210-gbf70177e0 `_ Inhibit the scheduler runs random delay for more schedule definitions | `2.0-209-g86342b329 `_ Avoid +1min effect over the defined scheduler task interval | `2.0-208-g843844e55 `_ Fix potential stack on nodes_info.json update | `2.0-207-ge822b1ef9 `_ Fix "undef" status of parents, children and slaves in print status | `2.0-206-g413e06324 `_ Set perms on the /certs directory and private_key | `2.0-205-g791993e45 `_ Use get_solaris_version() instead of get_os_ver() in the zone driver | `2.0-204-g2f9e7f2b1 `_ Don't refresh nodes_info.targets upon full data rx | `2.0-203-g43367eac9 `_ Add a sanity check on the slot attr presence in the hb.disk peer dataset | `2.0-202-g428b18f42 `_ Prefer the raw socket protocol to talk on the unix socket | `2.0-201-gc617ec89d `_ Fix a potential stack in get_all_ns() | `2.0-200-gd44cefce9 `_ Fix a bug in lsnr get_namespaces() codepath | `2.0-199-g0d063bda4 `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-197-g8ba92bc25 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-196-g69b8dd65e `_ Performation optimizations | `2.0-195-g10ca44948 `_ Prevent the "shutdown failed => shutdown" loop | `2.0-194-ga09b088d4 `_ Performance optimizations | `2.0-193-g1557ec568 `_ Fix is_service() for objects ending with "-conf" | `2.0-193-g1ec9c557d `_ Save one call to Node::svcs_selector() in multi-object actions | `2.0-192-g12188c991 `_ Add the "om append --key --value|--from" action | `2.0-191-g69520caf0 `_ Update nodemgr man page | `2.0-190-g5def9fc24 `_ Support "pkcs --password" with usrmgr too | `2.0-189-gfc0278b83 `_ Add "om pkcs --password" argument | `2.0-188-ge4cd43cd8 `_ Prevent thread reconfigure while objects transition | `2.0-187-g37fed083d `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-185-g22b78cde7 `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-184-g2bc880aca `_ Fix "gen cert" action on py3 | `2.0-183-g62fc77f55 `_ Fix non-shared volume resources not rolled-back after prov on non-leader | `2.0-183-g06cdf33fa `_ Remove unused BaseSvc method | `2.0-182-g9746191ab `_ Fix undue rollback of volumes | `2.0-181-gc839decff `_ Use Node::_wait() to wait for orchestrated actions | `2.0-180-g207558ba1 `_ Fix the previous patch logic with --wait | `2.0-179-g34bb138f5 `_ Fix --wait on cluster nodes orchestrated actions | `2.0-178-g9e5b8a8ef `_ Merge branch 'master' of https://github.com/opensvc/opensvc | `2.0-176-g4277cea59 `_ Refresh templates for the new wait_dns keyword | `2.0-176-g1c0f0ef8e `_ Fix object async action --wait | `2.0-175-gb9ee3bb1f `_ Add the wait_dns keyword to ip resources | `2.0-174-g929171dfa `_ Fix purge/unprovision orchestration of objects with child relations | `2.0-173-gd0c430a99 `_ Fix py2/py3 issues with add/decode keys | `2.0-172-g680296327 `_ Avoid multiple PTR per svc instance when a single hostname is set | `2.0-171-g7e36c81a5 `_ Fix the multiplexer for specific service | `2.0-170-g46a351397 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-168-g876433427 `_ Add a missing lock in transition_count() | `2.0-168-g4649b11b7 `_ Support the 'in' operator in 'om node wait' | `2.0-167-ge274e14fc `_ Use "om " instead of "mgr" in the rst docs | `2.0-166-ge3319eb52 `_ Add a lock debugging RLock class | `2.0-165-g05adcf794 `_ Better logging of node async action requests | `2.0-164-g8d33a7af5 `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-162-gc74ec6dfc `_ Fix the pool and access kw setting in the DEFAULT section of vols | `2.0-162-g477db7f66 `_ Output version on stdout instead of stderr and exit 0 instead of 1 | `2.0-161-gb8a0545bb `_ Update usr/share/doc/ templates | `2.0-160-g7312e75f6 `_ Support --sections in "om mon" action | `2.0-159-gdf34bc17e `_ Avoid looping on instance "stop=>stop failed" upon purge | `2.0-158-g494ef2df5 `_ Threading locks optimizations | `2.0-157-g41a6f335d `_ Fix is_service() not honoring OSVC_NAMESPACE | `2.0-156-gc0d27afbe `_ Drop a useless SERVICES_LOCK acquire in get_service() | `2.0-155-g41c7cc353 `_ Drop "wait " svc mon state on "abort" action | `2.0-154-g0c059d6da `_ Optimize the number of unlink(), fstat() and fopen() in app res lock acquire/release | `2.0-153-g1e3c53fdd `_ Don't use jsonpath_ng in the monitor loop | `2.0-152-g058858370 `_ Factorize the node frozen file fstat() calls in the monitor loop | `2.0-151-g32b26346a `_ Don't try to decode cert from buff if buff is None | `2.0-150-g5a733635b `_ Set task.schedule kw default to None, instead of @0 | `2.0-149-g9085fc406 `_ Fix DEFAULT.monitor_schedule not honored | `2.0-148-g476360216 `_ Apply the new alt_names logic to the csr too | `2.0-147-gf062eb1e5 `_ Fix the alt_names sec handling | `2.0-146-g046d3fc3d `_ Don't run gen_cert on usr create if the ca sec does not have a privkey | `2.0-145-g946c47c87 `_ Fix a stack in the "om docker login {as_service} " codepath | `2.0-144-gda31d695f `_ Fix a stack on "om net status" just after a daemon restart | `2.0-143-g356ba4f10 `_ Fix a stack on lsnr status() when called before lsnr init | `2.0-142-g5eca5fc1b `_ Reload grants of lsnr-connected users on usr cksum change | `2.0-141-g4558d0d74 `_ Accept generating a csr on "gen cert" if the cluster ca has no private_key key | `2.0-140-ge18f60976 `_ Support context's cluster without 'certificate_authority' key | `2.0-139-g3c6dd8354 `_ Fix the cluster CA detection in the usr create codepath | `2.0-138-g394f28319 `_ Skip usr 'gen cert' if cluster.ca is not set or does not exist | `2.0-137-g21312c902 `_ Detect the presence of ssl.HAS_ALPN to activate h2 | `2.0-136-g429cf0db4 `_ Add one more shortcut codepath in nodes_selector | `2.0-135-g663e5e94e `_ Don't use shlex.split() on node the selector pattern | `2.0-134-g5f45c4c08 `_ Fix BaseSvc nodes default value in encap when nodes@encapnodes is not defined | `2.0-133-gfc6f6788c `_ Fix creation of objs in a new 'test2' ns when admin:test is granted | `2.0-132-gb74a5e09a `_ Fix the 'om ls' listing all objects when pattern has no match | `2.0-131-g3494ac460 `_ Support the sec and usr pkcs12 command on py3 | `2.0-130-g0edcca7e4 `_ Handle empty string trigger gracefully | `2.0-129-ga012a1255 `_ Honor configs_environment in docker containers | `2.0-128-gad767bf74 `_ Change for a more generic error message | `2.0-127-g6fcb3e5e7 `_ Add kind type to error message | `2.0-126-gb566a7a47 `_ Fix erroneous lowercase of DEFAULT section during keyword parsing | `2.0-125-g0ecfa36e9 `_ Ensure CLUMGR_DIR is created before returning from function | `2.0-124-gfa77b96fd `_ Add advanced routing configuration option to routed_bridge | `2.0-123-gff1488638 `_ Fix the resources logger name | `2.0-122-gd0a7d57c6 `_ Add cluster manager directory in rpm specfile | `2.0-121-gb538b858a `_ Add macaddr keyword in netns resource driver | `2.0-120-ga0351b4bd `_ Fix cluster manager download url | `2.0-119-g27b8f13b2 `_ Fortify the ccfg class against 'name' kwarg passed | `2.0-118-gf5f270584 `_ Factorize rest markup removal code | `2.0-117-g1f133d6b7 `_ Update man pages with rest markup removal | `2.0-116-ga8513835b `_ Update ManPageFormatter to remove rest markup from man pages | `2.0-115-g37bdba606 `_ Update rest markup | `2.0-114-g02fa58113 `_ Add sphinx roles to nodedict | `2.0-113-gb8084b95b `_ Add sphinx roles to secdict | `2.0-112-g14390a2b4 `_ Add sphinx roles to clusterdict | `2.0-111-g57ec06298 `_ Add sphinx roles to cfgdict | `2.0-110-g3cdefd6c7 `_ Add sphinx roles to svcdict | `2.0-109-g1eb1c845b `_ Add usrdict to rst dump script | `2.0-108-g2c57e1cb8 `_ Add sphinx roles to usrdict | `2.0-107-ge9f504fff `_ Add "delete" to the service_action admin actions list | `2.0-106-g3d17f539a `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-103-g8cb3261bd `_ Add missing properties in the keywords dump | `2.0-102-g631ecf63a `_ Fix the get_keywords handler for kind!="ccfg" | `2.0-101-g97efdf853 `_ Remove unused network[routed_bridge].subnet keyword | `2.0-100-g2f881db6c `_ Add 'om node updateclumgr' command | `2.0-99-gbe886479e `_ Include cluster manager to packaging scripts | `2.0-98-g4f02bf3fa `_ Change to keywords dump format to avoid collision between rtypes | `2.0-97-gc1b67f76e `_ Add the keyword types to the keywords dump served by get_keywords | `2.0-96-g9c5589311 `_ Add api version | `2.0-95-g33ea9c2f8 `_ Add the get_keywords listener handler | `2.0-94-gc874693d5 `_ Don't run boot on object kinds other than svc and vol | `2.0-94-g3deefcbb0 `_ Unset Node object cd and private_cd after register | `2.0-93-g03eb23d5e `_ Lowercase the keyword in the set/unset codepaths | `2.0-93-g1b316002f `_ Exit Linux fs resource realdev() early if self.device is None | `2.0-92-g1cc1aee32 `_ Move the elapsed computation and print from _wait() to wait() | `2.0-91-g201090a24 `_ Fix a cert janitor stack in the scheduler thread | `2.0-90-g8fb3ba993 `_ Remove task.task.command duplicate entries in svcdict.py | `2.0-89-gfc780667b `_ Merge branch 'master' of github.com:opensvc/opensvc | `2.0-84-g063d9d3fc `_ Add dedicated class for host tasks | `2.0-83-g4ec514196 `_ Remove duplicate disk.disk.size entry from svcdict.py | `2.0-82-g28932eaef `_ Fix reST indentation issues | `2.0-81-g28c60037a `_ Fix duplicate rst container name | `2.0-80-g859eccf8a `_ Optimize the number of _daemon_status() calls | `2.0-80-g614f5ccfb `_ Merge duplicate node.connect_to | `2.0-79-g417c6329f `_ Remove duplicate brocade password key | `2.0-79-g258ea2ac8 `_ Avoid downgrading from OrderedDict to dict on print_config_data() | `2.0-78-g238f0fc7d `_ Fix rst duplicate target names | `2.0-78-g00a548a0e `_ Avoid sorting json output for ordered dict | `2.0-77-gf56a2e6ff `_ Classify EPIPE as retyable in the comm module | `2.0-77-g70e3303e6 `_ Fix cluster rst files pointing to service rst examples | `2.0-76-gdcb12e17d `_ Use appropriate command line options | `2.0-75-g794bd2c29 `_ Add option to display long commit id | `2.0-74-ge89a9f9e6 `_ Fix changelog to ensure current repository is used | `2.0-73-g728288ae3 `_ Fix a typo in a catched exception name | `2.0-72-g1924a6407 `_ Log exceptions in the monitor thread pre-loop codepath | `2.0-71-g741fd43fa `_ Search and create last_boot_id in /node/ | `2.0-70-g73b0f339f `_ Replace a remaining occurence of Svc::svcname with Svc::name | `2.0-69-g88ed88023 `_ Py2 encoding fix in the set BaseSvc action | `2.0-68-g3d1bba718 `_ Fix encoding error on adding binary data to a cfg | `2.0-67-g4a2fbc3f0 `_ Implement a deepcopy method in Storage() | `2.0-66-g5755c6d71 `_ Change the internal --to arg name to "to" | `2.0-65-g68058f3d0 `_ Move verbose option management in wait() function | `2.0-64-g91a9bc771 `_ Add elapsed time to om node wait command | `2.0-63-g5c535f34f `_ Fix the h2 request multiplexing for list of nodes | `2.0-62-g944f2ce48 `_ Add "slave" and "scale" key to monitor.services when opportune | `2.0-61-g78edb2104 `_ Fix the aes listener socket | `2.0-60-g118927e9a `_ Honor the nodes@encapnodes keyword value when set | `2.0-59-g37ce5bea5 `_ Retry listener socket bind on in-use errors | `2.0-58-g0b801bd52 `_ Add a "synchronous service status eval" after cf fetch | `2.0-57-g56dae82f1 `_ om node wait optmization | `2.0-56-g3ec511eb0 `_ Return a deepcopy of DAEMON_STATUS on daemon_status() | `2.0-55-gf239b3400 `_ Fix a stack in the daemon_status handler codepath | `2.0-54-g2b04628e3 `_ Fix scaling of services in the root ns | `2.0-53-g3f162a888 `_ Reconfigure the service before refresh the status upon set/edit/... | `2.0-52-g97f4d3d4a `_ Fix a pylint error on Node::log lazy masked by Crypt::log attr | `2.0-51-g4977e2aca `_ Fix the initLogger arguments in a call from svcBuilder | `2.0-50-g1c783b622 `_ Support create from template in the create_multiplex() lsnr method | `2.0-49-g7d5bae984 `_ Fix the "om svc1 print config --format json|om svc2 create" pattern | `2.0-48-gb049c3782 `_ Use incremental patching in the "om node wait" codepath | `2.0-47-g1cf720d41 `_ Fix the service logger log routing | `2.0-46-gd24e29589 `_ Support non-namespaced objects in the api handlers router | `2.0-45-gbbbe777d7 `_ Fix the disk hb dev keyword value lost on reconfigure | `2.0-44-g46dc6df5e `_ Fix comments after line continuation introduced in the previous patch | `2.0-43-g83271f482 `_ Fix the pkg type detection for sles15 | `2.0-42-g5ce3c6309 `_ Use patch-event based updates in svcmon | `2.0-41-g7bb7eff5f `_ Add an id to the patch events dataset | `2.0-40-g618adb5c0 `_ Fix a spurious error message in the symmetrix driver | `2.0-39-gaf377c36d `_ Root patch-kind events to the root of the daemon status structure | `2.0-38-g21cc1fdb4 `_ Stop using Storage() in the hb drivers | `2.0-37-g4b800a86f `_ Accept the "template" option in the create handler | `2.0-36-g462ec26f9 `_ Refuse to create "dummy" service on "svcmgr create --template" | `2.0-35-gaf40e7dd0 `_ Preserve the comments in config files | `2.0-34-gfc1713d37 `_ Allow create --template to take env customization via stdin | `2.0-33-g2e406cb2e `_ Monitor thread fixes | `2.0-32-g4f009da0d `_ Avoid a stack on misnamed scaler slaves | `2.0-31-g1b4a498d1 `_ Fix calls to collector rest helpers from the Svc class | `2.0-30-g0ccdf0fcb `_ Fix information leak on agg service status for ns-limited users | `2.0-29-gb4f0c0690 `_ Merge branch 'master' of git+ssh://10.19.0.11/opt/opensvc | `2.0-27-ge0294441f `_ Classify the collector_cli action as runnable on any node | `2.0-27-g37fabdd1a `_ Add new handlers | `2.0-26-gd82706e5b `_ Fix a string wildcard substitution pattern in the listener codepath | `2.0-25-g83644b702 `_ Update docs, man, completion files | `2.0-24-gf26d47d8b `_ Adapt internal and exposed properties to the multi-kind reality | `2.0-23-g9021cd4e1 `_ Filter events based on user privs | `2.0-22-gb1719fa04 `_ Fix rbac denies of tls/raw connections requests | `2.0-21-g770791f04 `_ Add a __str__ method to the ClientHandler class | `2.0-20-g954e1551e `_ Check rbac before multiplexing | `2.0-19-gc6cad80d9 `_ Stop server-sending the index.css, as it will be bundled in the js | `2.0-18-ge019db005 `_ Fix the user_grant() bypass for raw socket protocol | `2.0-17-g183c3df21 `_ Add "fullpem" and "pkcs12" actions to sec and usr objects | `2.0-16-g67785236e `_ Fix and simplify rbac controls | `2.0-15-g72f0d4a4b `_ Add the /whoami api handler | `2.0-14-ga09f7e09f `_ Correctly wait for a stream request to finish sending its data before replying | `2.0-13-gc22a7b654 `_ Compute the Content-Length header in the client-side (get, post, stream) | `2.0-12-gab0bafb5e `_ Avoid short-looping the merge_hb_data on set_smon() always reporting a change | `2.0-11-gf10b10906 `_ Fix a pylint harmless error in the lsnr authentication codepath | `2.0-10-ge0c61d943 `_ Fix undefined variable uses in the node module | `2.0-9-gdbc74c6d7 `_ Fix the daemon_service_action() kwargs in the call from sync.rsync | `2.0-8-g34aa14e6e `_ Avoid running "svcmgr status" on init when there are no objects deployed | `2.0-7-g396cbf94f `_ Fix py2 compat in osvcd listener | `2.0-6-g4a5262681 `_ Catch socket.error from h2_daemon_get:request() | `2.0-5-gb18f72ad7 `_ Fix the "om mon --stats" command | `2.0-4-gcb1337e5f `_ Add a http/2 listener to the daemon | `2.0-3-gf9b854b9d `_ Fix a stack on docker container start when environment has unresolved refs | `2.0-2-g09031a6db `_ Define a http/2 unix socket path | `2.0-1-gf43683ca6 `_ Add modules to implement a http/2 server and client