Issue Tracker: Issueshttps://issues.rudder.io/https://issues.rudder.io/themes/rudder7/favicon/favicon.ico?17096450182018-11-28T01:24:31ZIssue Tracker
Redmine Rudder - User story #13912 (Resolved): Lint JSON objects in variable_dicthttps://issues.rudder.io/issues/139122018-11-28T01:24:31ZFlorian Heigl
<p>Since the JSON methods transfer GUI input of JSON objects to the client it would be easiest to be able to fully validate them on input (and report any such error.<br />It would probably be best done client-side when someone presses "Save" since usually once the upload to git starts things break on error, potentially afterlike a minute (depending on size of NCF objects"</p>
<p>Would totally help to avoid errors and match what the standard methods can do.</p> Rudder - User story #12740 (Released): Make conditions visible in the Technique editorhttps://issues.rudder.io/issues/127402018-06-05T10:25:12ZFlorian Heigl
<p>Hi,</p>
<p>I already suggested this a few times, and you also agreed times it would be useful. But probably there's no story for it so far which might be why it never happened:</p>
<p>If in the NCF editor a condition is set for method, there's no visual way to tell so if the "conditions" area is folder.<br />This is a workflow issue - there is not enough space on the screen, so we need to usually keep it folded.<br />But we might not be aware of the conditions we got until we unfold it.<br />If you got a few methods in the technique you need to go through all of them, etc.</p>
<p>I would be ieasiest if there was a somewhat-subtle-but-not-too-subtle color coding on the conditions/classes area if one is set (other than "any").</p>
<p>I suppose that is a 15 minute hack that would immediately help all users.</p>
<p>A smart bonus would be to scan all those conditions and then also flag in colour all return classes that are currently used somewhere.<br />(need to update on technique save, and now it's not a 15 min hack anymore. but you'd be 1/3 way to a full dependency graph though all of NCF)</p>
<p>Best wishes,<br />Flo</p> Rudder - Enhancement #12739 (New): Searching for method/technique does not split wordshttps://issues.rudder.io/issues/127392018-06-05T10:18:32ZFlorian Heigl
<p>Hi,</p>
<p>currently the search in NCF is string-based:<br />I.e. if I search for</p>
<p>"config flo" It'll find things called</p>
<p>"config flo" <br />"myconfig flo" <br />"myconfig flohasnot"</p>
<p>It'll not find the same if I type</p>
<p>"conf flo" or even<br />"flo onfi"</p>
<p>That would be the 2010+ version though.<br />As far as I can guess without really thinking that is purely eye candy based on splitting the words, and for each searching, then searching again and doing the matches.</p>
<p>It would be much more efficient ("faster") for the user and feel up-to-date.</p> Rudder - User story #11121 (Resolved): Remote safety switchhttps://issues.rudder.io/issues/111212017-07-09T19:13:43ZFlorian Heigl
<p>Hi,</p>
<p>we had this in the sideline of the red button ticket.</p>
<p>I propose a extension of the standard policy</p>
<ul>
<li>Be callable using cf-runagent / relay api</li>
<li>disables the execution of <ins>all non-agent policies</ins></li>
</ul>
<p>Upon closer look, ALL agent policies except those that only concern Rudder:</p>
<ul>
<li>trigger an <strong>inventory</strong> run and <strong>upload</strong></li>
<li>trigger a policy <strong>update</strong></li>
<li>cf-served running and callable (but not able to run anything but these two and the "disable all non agent policies")</li>
</ul>
<p>Optionally one could set red button and disable-agent, and not be able to undo that.<br />Non-Agent policies in this context means anything that is not related to the things mentioned here.<br />The current system techniques do a lot more - i.e. touch syslog, ntp and install xen packages if needed.<br />That would NOT be ok.</p>
<p>As I see it, a toggle switch like this would cover ALL use cases, enable to safely shut down the agent for maintenance or to "freeze" a datacenter, and whatnot.<br />It would allow to do ALL tasks that concern the rudder agent maintenance.<br />So far, there's a few options but each has its limitations that just waste agent run cycles / drive up risks.</p>
<p>As might be obvious, it could be desirable to unify this and the multiple agent flags that exist, each are subset of the update.<br />There an option to have an agent activity level ranging from <br />0 (red-button)<br />1 (disable-agent)<br />2 (update-inventory only???)<br />3 (update-inventory-cf-execd, allowed to raise to higher levels)<br />4 (enabled system policies)<br />5 (enabled all user policies)<br />6 (...????...)</p>
<p>fill in in your mind whatever I have been missing but I hope the general idea makes it through.</p> Rudder - Bug #10779 (New): Memory detection of Xen hosts is incorrecthttps://issues.rudder.io/issues/107792017-05-23T18:22:52ZFlorian Heigl
<p>Fusion Inventory seems to only look at /proc/meminfo to detect the memory a Xen host has.</p>
<p>That will reflect the memory <em>assigned the dom0</em> - likely 2-16GB, whereas <em>all the other ram is managed by the hypervisor</em>.<br />The problem here is that Rudder uses that to fill the field named "Total physical memory (RAM)"</p>
<p>That is wrong. Total physical memory is obtained only via xl info | grep total_memory (newer systems) or xm info | grep total_memory (old systems)</p>
<p>It matters, really:<br />In my example server the difference between the two is just about 990GB.</p>
<p>That way you can't apply any rule-based tuning profiles (not that I have one yet, but not that I could have one, either ;-)</p> Rudder - Bug #9622 (Released): Fusioninventory is not tracked by check-rudder-healthhttps://issues.rudder.io/issues/96222016-11-03T17:02:20ZFlorian Heigl
<p>Rudder has process management in the health checker script.<br />Using that it can detect and kill superfluous processes.<br />I.e. if you have 5 running cf-agent's it'll sort that out.</p>
<p>The problem is that it's not also killing FusionInventory.</p>
<p>A dangerous real-world scenario that can happen is:<br />The system's IPMI/iDRAC module hangs a little bit. <br />That will hang FusionInventory, too.<br />It'll still killable, not in kernel IO.</p>
<p>In the end, you can have multiple <strong>thousand</strong> of those processes.<br />The worst thing is if someone fixes the IPMI issue.<br />Then you have load >2000 and the system becomes unusable.</p>
<p>Can you please extend check-rudder-health to also make sure there's not more than a few FusionInventory processes?<br />It obviously doesn't know locking, so we need to help it. ;-)</p>
<p><code>root 37597 0.0 0.0 11732 1116 ? S Oct01 0:00<br />/bin/sh /opt/rudder/bin/run-inventory --local=/var/rudder/tmp/inventory <br />--scan-homedirs<br />root 37750 0.0 0.0 83784 24188 ? S Oct01 0:00 \_<br />/opt/rudder/bin/perl -I /opt/rudder/lib/perl5<br />/opt/rudder/bin/fusioninventory-agent --config=none --<br />local=/var/rudder/tmp/inventory --scan-homedirs<br />root 37759 0.0 0.0 11316 868<br />? S Oct01 0:00 \_ sh -c ipmitool lan print 2>/dev/null<br />root 37760 0.0 0.0 20228 1152<br />? S Oct01 0:00 \_ ipmitool lan print<br />root 816 0.0 0.0 11732 892 ? S Oct01 0:00<br />/bin/sh /opt/rudder/bin/run-inventory --local=/var/rudder/tmp/inventory <br />--scan-homedirs<br />root 965 0.0 0.0 83784 8676 ? S Oct01 0:00 \_<br />/opt/rudder/bin/perl -I /opt/rudder/lib/perl5<br />/opt/rudder/bin/fusioninventory-agent --config=none --<br />local=/var/rudder/tmp/inventory --scan-homedirs<br />root 974 0.0 0.0 11316 712<br />? S Oct01 0:00 \_ sh -c ipmitool lan print 2>/dev/null<br />root 975 0.0 0.0 20228 1148<br />? S Oct01 0:00 \_ ipmitool lan print<br />root 14720 0.0 0.0 11732 976 ? S Oct01 0:00<br />/bin/sh /opt/rudder/bin/run-inventory --local=/var/rudder/tmp/inventory <br />--scan-homedirs<br />root 14876 0.0 0.0 83784 14012 ? S Oct01 0:00 \_<br />/opt/rudder/bin/perl -I /opt/rudder/lib/perl5<br />/opt/rudder/bin/fusioninventory-agent --config=none --<br />local=/var/rudder/tmp/inventory --scan-homedirs<br />root 14892 0.0 0.0 11316 732<br />? S Oct01 0:00 \_ sh -c ipmitool lan print 2>/dev/null<br />root 14893 0.0 0.0 20228 936<br />? S Oct01 0:00 \_ ipmitool lan print<br />root 15289 0.0 0.0 11732 1096 ? S Oct02 0:00<br />/bin/sh /opt/rudder/bin/run-inventory --local=/var/rudder/tmp/inventory <br />--scan-homedirs<br />root 15400 0.0 0.0 83784 8448 ? S Oct02 0:00 \_<br />/opt/rudder/bin/perl -I /opt/rudder/lib/perl5<br />/opt/rudder/bin/fusioninventory-agent --config=none --<br />local=/var/rudder/tmp/inventory --scan-homedirs<br />root 15418 0.0 0.0 11316 704<br />? S Oct02 0:00 \_ sh -c ipmitool lan print 2>/dev/null<br />root 15419 0.0 0.0 20228 1148<br />? S Oct02 0:00 \_ ipmitool lan print<br />root 29446 0.0 0.0 11732 904 ? S Oct02 0:00<br />/bin/sh /opt/rudder/bin/run-inventory --local=/var/rudder/tmp/inventory <br />--scan-homedirs<br />root 29543 0.0 0.0 83784 9868 ? S Oct02 0:00 \_<br />/opt/rudder/bin/perl -I /opt/rudder/lib/perl5<br />/opt/rudder/bin/fusioninventory-agent --config=none --<br />local=/var/rudder/tmp/inventory --scan-homedirs<br />root 29558 0.0 0.0 11316 728<br />? S Oct02 0:00 \_ sh -c ipmitool lan print 2>/dev/null<br />root 29559 0.0 0.0 20228 896<br />? S Oct02 0:00 \_ ipmitool lan print<br />root 46064 0.0 0.0 11732 964 ? S Oct02 0:00<br />/bin/sh /opt/rudder/bin/run-inventory --local=/var/rudder/tmp/inventory <br />--scan-homedirs<br />root 46173 0.0 0.0 83784 24172 ? S Oct02 0:00 \_<br />/opt/rudder/bin/perl -I /opt/rudder/lib/perl5<br />/opt/rudder/bin/fusioninventory-agent --config=none --<br />local=/var/rudder/tmp/inventory --scan-homedirs<br />root 46186 0.0 0.0 11316 876<br />? S Oct02 0:00 \_ sh -c ipmitool lan print 2>/dev/null<br />root 46187 0.0 0.0 20228 936<br />? S Oct02 0:00 \_ ipmitool lan print<br />root 5262 0.0 0.0 11732 1100 ? S Oct03 0:00<br />/bin/sh /opt/rudder/bin/run-inventory --local=/var/rudder/tmp/inventory <br />--scan-homedirs<br />root 5551 0.0 0.0 83784 24156 ? S Oct03 0:00 \_<br />/opt/rudder/bin/perl -I /opt/rudder/lib/perl5<br />/opt/rudder/bin/fusioninventory-agent --config=none --<br />local=/var/rudder/tmp/inventory --scan-homedirs<br />root 5566 0.0 0.0 11316 876<br />? S Oct03 0:00 \_ sh -c ipmitool lan print 2>/dev/null<br />root 5567 0.0 0.0 20228 1148<br />? S Oct03 0:00 \_ ipmitool lan print<br />root 18636 0.0 0.0 11732 1108 ? S Oct03 0:00<br />/bin/sh /opt/rudder/bin/run-inventory --local=/var/rudder/tmp/inventory <br />--scan-homedirs<br />root 18789 0.0 0.0 83784 9180 ? S Oct03 0:00 \_<br />/opt/rudder/bin/perl -I /opt/rudder/lib/perl5<br />/opt/rudder/bin/fusioninventory-agent --config=none --<br />local=/var/rudder/tmp/inventory --scan-homedirs<br />root 18803 0.0 0.0 11316 704<br />? S Oct03 0:00 \_ sh -c ipmitool lan print 2>/dev/null<br />root 18805 0.0 0.0 20228 1148<br />? S Oct03 0:00 \_ ipmitool lan print</code></p>
<p>We thought we had reported something about this, but I couldn't find it.<br />It's a critical issue, the load spike will cause short outages.</p> Datasources - User story #9284 (New): External Info Plugin frameworkhttps://issues.rudder.io/issues/92842016-10-08T12:03:01ZFlorian Heigl
<p>Hi,</p>
<p>in various cases I've now used rudder-set-node-props.py to inject some info.<br />In my cases it has been very similar:</p>
<ul>
<li>system's usage class (prod/staging/...)</li>
<li>system's applications (can be modeled one or many)</li>
<li>enabling addons to be installed (i.e. have_docker=yes instead of app=docker)</li>
</ul>
<p>I've done that with various providers and they usually got tagging support in different levels of quality.<br />In addition to tags there might also be infrastructure info available, i.e. which datacenter we're running it.</p>
<p>Enterprises will have CMDB's - to be honest that is quite the same info, just with much higher depth.</p>
<p>And the docker crowd tries to have everything in Consul, and still is on an uphill battle to give that higher data quality than the ubiquitous excel system documentation.<br />(lack of constraints in the data model)</p>
<p>Ah, yes, and the excel users.</p>
<p>I think something for the future is to think about a common layer to provide</p>
<ul>
<li>mapping</li>
<li>constraints</li>
<li>multi-node updates (atomic, so you don't have races)</li>
</ul>
<p>idk what else might be coming.<br />right now we're all still working to have better scripts to inject the properties and build rules of them.</p>
<p>this is to raise attention that there might be a need of a stronger interface in the future.</p>
<p>(time for me to test the csv export contrib script, too)</p> Rudder - Bug #9283 (Released): The rpmPackageInstallation technique tries to install package-* in...https://issues.rudder.io/issues/92832016-10-08T00:35:01ZFlorian Heigl
<p>100% reproducible issue, can't install clamav via rudder ncf.</p>
<p><code> error: Package 'clamav' cannot be updated -- no match or not installed<br />rudder info: Installing clamav...<br />rudder info: Q:yum --quiet --setopt ...:Error: clamav-data-empty conflicts with clamav-data-0.99.2-1.el7.noarch<br />rudder info: Q:yum --quiet --setopt ...:Error: clamav-data conflicts with clamav-data-empty-0.99.2-1.el7.noarch<br />rudder info: Q:yum --quiet --setopt ...: You could try using --skip-broken to work around the problem<br />rudder info: Q:yum --quiet --setopt ...:** Found 1 pre-existing rpmdb problem(s), 'yum check' output follows:<br />rudder info: Q:yum --quiet --setopt ...:1:quota-4.01-11.el7_2.1.x86_64 has missing requires of rpcbind<br /> error: Finished command related to promiser 'clamav' -- an error occurred, returned 1<br /> error: Bulk package schedule execution failed somewhere - unknown outcome for 'clamav-*.*'<br />R: [ERROR] Promise could not be repaired, error encountered: Install or update package clamav in version latest<br />error maldet_install Package install clamav Install or update package clamav in version latest could not be repaired<br /> error: Method 'package_install_version_cmp_update' failed in some repairs<br /> error: Method 'package_install_version_cmp' failed in some repairs<br /> error: Method 'package_install_version' failed in some repairs<br /> error: Method 'package_install' failed in some repairs</code></p>
<p>So what I know:<br />Centos7<br />EPEL Repo is the one delivering clamav</p>
<p>The packages available are<br /><code>[root@ip-172-31-13-51 ~]# yum list available| grep clam<br />clamav.x86_64 0.99.2-1.el7 epel <br />clamav-data.noarch 0.99.2-1.el7 epel <br />clamav-data-empty.noarch 0.99.2-1.el7 epel <br />clamav-devel.x86_64 0.99.2-1.el7 epel <br />clamav-filesystem.noarch 0.99.2-1.el7 epel <br />clamav-lib.x86_64 0.99.2-1.el7 epel <br />clamav-milter.x86_64 0.99.2-1.el7 epel <br />clamav-milter-systemd.noarch 0.99.2-1.el7 epel <br />clamav-milter-sysvinit.noarch 0.99.2-1.el7 epel <br />clamav-scanner.noarch 0.99.2-1.el7 epel <br />clamav-scanner-systemd.noarch 0.99.2-1.el7 epel <br />clamav-scanner-sysvinit.noarch 0.99.2-1.el7 epel <br />clamav-server.x86_64 0.99.2-1.el7 epel <br />clamav-server-systemd.noarch 0.99.2-1.el7 epel <br />clamav-server-sysvinit.noarch 0.99.2-1.el7 epel <br />clamav-unofficial-sigs.noarch 3.7.2-1.el7 epel <br />clamav-update.x86_64 0.99.2-1.el7 epel </code></p>
<p>only clamav is mentioned in that technique.</p>
<p>manually doing yum -y install clamav <ins>works flawless</ins>, this is a bug.<br />I'm 90% sure it's related to the number of dashes in packages if they share a common name part.</p>
<p>@Including mirror: mirror2.hs-esslingen.de<br />Including mirror: ftp.uni-bayreuth.de<br />Including mirror: mirror.cuegee.de<br />Including mirror: mirror.fraunhofer.de<br />Resolving Dependencies<br />--> Running transaction check<br />---> Package clamav.x86_64 0:0.99.2-1.el7 will be installed<br />--> Processing Dependency: clamav-lib = 0.99.2-1.el7 for package: clamav-0.99.2-1.el7.x86_64<br />--> Processing Dependency: libclamav.so.7(CLAMAV_PUBLIC)(64bit) for package: clamav-0.99.2-1.el7.x86_64<br />--> Processing Dependency: libclamav.so.7(CLAMAV_PRIVATE)(64bit) for package: clamav-0.99.2-1.el7.x86_64<br />--> Processing Dependency: data(clamav) for package: clamav-0.99.2-1.el7.x86_64<br />--> Processing Dependency: libclamav.so.7()(64bit) for package: clamav-0.99.2-1.el7.x86_64<br />--> Running transaction check<br />---> Package clamav-data.noarch 0:0.99.2-1.el7 will be installed<br />--> Processing Dependency: clamav-filesystem = 0.99.2-1.el7 for package: clamav-data-0.99.2-1.el7.noarch<br />---> Package clamav-lib.x86_64 0:0.99.2-1.el7 will be installed<br />--> Running transaction check<br />---> Package clamav-filesystem.noarch 0:0.99.2-1.el7 will be installed<br />--> Finished Dependency Resolution</p>
<p>Dependencies Resolved</p>
<p>=======================================================================================================================================================================================================================<br /> Package Arch Version Repository Size
=======================================================================================================================================================================================================================<br />Installing:<br /> clamav x86_64 0.99.2-1.el7 epel 845 k<br />Installing for dependencies:<br /> clamav-data noarch 0.99.2-1.el7 epel 111 M<br /> clamav-filesystem noarch 0.99.2-1.el7 epel 20 k<br /> clamav-lib x86_64 0.99.2-1.el7 epel 3.8 M</p>
<p>Transaction Summary
=======================================================================================================================================================================================================================<br />Install 1 Package (+3 Dependent packages)</p>
<p>Total download size: 115 M<br />Installed size: 124 M<br />Is this ok [y/d/N]: y<br />Downloading packages:<br />(1/4): clamav-0.99.2-1.el7.x86_64.rpm | 845 kB 00:00:00<br />(2/4): clamav-data-0.99.2-1.el7.noarch.rpm | 111 MB 00:00:07<br />(3/4): clamav-filesystem-0.99.2-1.el7.noarch.rpm | 20 kB 00:00:00<br />(4/4): clamav-lib-0.99.2-1.el7.x86_64.rpm | 3.8 MB 00:00:00<br />-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br />Total 14 MB/s | 115 MB 00:00:07<br />Running transaction check<br />Running transaction test<br />Transaction test succeeded<br />Running transaction<br />etckeeper: pre transaction commit<br /> Installing : clamav-filesystem-0.99.2-1.el7.noarch 1/4<br /> Installing : clamav-data-0.99.2-1.el7.noarch 2/4<br /> Installing : clamav-lib-0.99.2-1.el7.x86_64 3/4<br /> Installing : clamav-0.99.2-1.el7.x86_64 4/4<br />etckeeper: post transaction commit<br /> Verifying : clamav-filesystem-0.99.2-1.el7.noarch 1/4<br /> Verifying : clamav-lib-0.99.2-1.el7.x86_64 2/4<br /> Verifying : clamav-data-0.99.2-1.el7.noarch 3/4<br /> Verifying : clamav-0.99.2-1.el7.x86_64 4/4</p>
<p>Installed:<br /> clamav.x86_64 0:0.99.2-1.el7</p>
<p>Dependency Installed:<br /> clamav-data.noarch 0:0.99.2-1.el7 clamav-filesystem.noarch 0:0.99.2-1.el7 clamav-lib.x86_64 0:0.99.2-1.el7</p>
<p>Complete!<br />@</p> Rudder - User story #9075 (Rejected): Add agent version to Node Summary -> Node characteristcshttps://issues.rudder.io/issues/90752016-09-16T12:06:16ZFlorian Heigl
<a name="It-would-be-helpful"></a>
<h1 >It would be helpful.<a href="#It-would-be-helpful" class="wiki-anchor">¶</a></h1>
<p>many issues are solved by having a newer agent.</p>
<a name="It-would-be-helpful-2"></a>
<h1 >It would be helpful.<a href="#It-would-be-helpful-2" class="wiki-anchor">¶</a></h1>
<p>but you can't tell without logging onto the remote system.</p>
<a name="It-would-be-helpful-3"></a>
<h1 >It would be helpful.<a href="#It-would-be-helpful-3" class="wiki-anchor">¶</a></h1> Rudder - Architecture #8759 (Rejected): Document how to build a standard agent to allow easier us...https://issues.rudder.io/issues/87592016-07-26T15:42:22ZFlorian Heigl
<p>Hi,</p>
I think the best route forward would be to break out the thin agent as something that is maintained like a normal distro package and not a rudder component.<br />This would mean
<ul>
<li>A separate repo</li>
<li>SPEC and Deb files</li>
<li>A single version supported (if you check out 3.2.4 you can only build the 3.2.4 agent)</li>
</ul>
It would allow for the following things:
<ul>
<li>upstreaming in distros since it would be a normal package without magic</li>
<li>safely moving to distro openssl etc</li>
<li>easier porting to newer OS releases and architectures</li>
<li>easier to port to new OS</li>
<li>public CI builds and tests of the agent</li>
</ul>
<p>The full agent wouldn't need to go through this procedure since it is too specific to be upstreamed anywhere anyway</p> Rudder - Bug #8739 (Released): group management technique doesn't ensure optional user is in grouphttps://issues.rudder.io/issues/87392016-07-21T20:49:15ZFlorian Heigl
<p>if the group already exists<br />"option Users included in the group (optional)" <br />doesn't work UNLESS you also select enforce the content of the group</p> Rudder - Bug #8606 (Rejected): Condition from command: false codes is actually "repaired"https://issues.rudder.io/issues/86062016-06-27T00:10:23ZFlorian Heigl
<p>Hi,</p>
<p>there's a mismatch in "Condition from command", it behaves much like "command execution result" <br />The help says:</p>
<p>false_codes: <br />List of codes that produce a false status separated with commas (ex: 3,4,6)<br />(I entered "1")</p>
<p>But if you look at the agent output you'll find this:<br /><code>rudder info: Command related to promiser 'grep -qw /var/lib/one /proc/mounts' returned code defined as promise repaired 1</code></p>
<p>This looks like a bug.</p> Rudder - Bug #8023 (Rejected): command_exection_result defaulting to 'error' state is not documentedhttps://issues.rudder.io/issues/80232016-03-01T17:26:41ZFlorian Heigl
<p>This class can define a repair and a kept outcome.<br />It cannot define an error.</p>
<p>This is kind of, umm, problematic.</p>
<p>I have failing commands that are interpreted as happy commands.</p>
<p>(If possible, make it so that one is able to configure it so that any unexpected state means an error.<br />Doesn't need to be default, but that was the one big PITA from start with the normal scheduler.</p>
<p>We use script wrappers for this now.)</p> Rudder tools - User story #7242 (Rejected): rudder-vagrant: modify server cert to be valid for lo...https://issues.rudder.io/issues/72422015-10-05T13:03:21ZFlorian Heigl
<p>Since rudder-vagrant tells you to access it using <a class="external" href="https://localhost">https://localhost</a> we will immediately run into a cert error (not all can be removed, but a part of it <strong>can</strong>)</p>
<p>So it should have "server" as CN and also SAN entries for DNS: localhost and IP: 127.0.0.1<br />As usual, bonus points if it includes "lolcathost" ;)</p>
<p>If you need more details about making SAN certs, contact me.</p> Rudder - Enhancement #7008 (Released): After deleting a node, the user should be redirected to no...https://issues.rudder.io/issues/70082015-07-17T11:59:32ZFlorian Heigl
<p>Hi,</p>
<p>a simple but nice one...</p>
<ol>
<li>You go to node list</li>
<li>You're in node list and see the list of nodes</li>
<li>You delete a node</li>
<li>You're in node search with an empty search</li>
</ol>
<p>You should be in node list (still) and see the list of nodes</p>