Project

General

Profile

Bug #5203

There is no way to remove a Directive based on a Technique that no longer exists

Added by Matthieu CERDA over 3 years ago. Updated about 2 months ago.

Status:
Released
Priority:
4
Category:
Web - Config management
Target version:
Target version (plugin):
Severity:
Major - prevents use of part of Rudder | no simple workaround
User visibility:
Getting started - demo | first install | level 1 Techniques
Effort required:
Priority:
60

Description

I tried to update my Techniques, but in the process also removed a Technique that was here before (a custom one).

Problem is, the deployement does not work anymore, and I can not remove the Directive that breaks it as there is no more a Delete button :)

Please see the attached screenshot.

oops.png - Broken directive without delete button (32.1 KB) Matthieu CERDA, 2014-07-02 17:11

2017-10-18_18.24.04-Rudder_-_Directives_Management.png - No version of the Technique available (124 KB) François ARMAND, 2017-10-18 18:55

2017-10-18_18.52.41-Rudder_-_Directives_Management.png - Automatic migration toward most recent available version (148 KB) François ARMAND, 2017-10-18 18:55


Related issues

Related to ncf - Bug #5366: Deleting a Technique from ncf-builder will not remove Technique from Rudder Rejected 2014-08-06
Related to Rudder - Bug #5808: Correctly display technique removed from source library Released 2014-11-24
Related to Rudder - Bug #11649: No way to delete stale entries from the Reference Technique library New
Duplicated by Rudder - Bug #6191: Allow to migrate or delete Directive based on a missing Technique Rejected

Associated revisions

Revision 38b1ef27
Added by François ARMAND about 2 months ago

Fixes #5203: There is no way to remove a Directive based on a Technique that no longer exists

History

#1 Updated by Matthieu CERDA over 3 years ago

  • Description updated (diff)

#2 Updated by Matthieu CERDA over 3 years ago

For me, the error under "About this Directive" is relevant and needs to stay. However, the message at the botton is meaningless for an end user, duplicates what is "nicely" said in the upper one and should maybe be replaced by a "migrate to another version or delete" choice :)

I did not verify if the same problem happens if there is another version available for this Technique, the behavior might not be the same ?

#3 Updated by François ARMAND over 3 years ago

  • Priority changed from 2 to 4

I think I agree with the qualification.
I'm not sure where the error message should go, but clearly, we have to provide the user with a way to get out of that situation (without relying on any LDAP/cmd line wizardry).

The very first step seems to let the promise generation process runs even in that case. We could for example disable directives with broken techniques.

The second step is to allow to delete the directive. Migration would be nice but may be more difficult.

The good news it that there is a simple workaround: just revert the commit that removed the Technique, then reload Techniques library, then delete Directives based on the Technique, the delete back the Technique.

I lowered the priority to 4 because 1/ it is not a really frequent use case and 2/ the workaround is simple.

#4 Updated by Nicolas PERRON over 3 years ago

  • Target version changed from 2.10.4 to 2.10.5

#5 Updated by Vincent MEMBRÉ over 3 years ago

  • Target version changed from 2.10.5 to 2.10.6

#6 Updated by Matthieu CERDA about 3 years ago

  • Target version changed from 2.10.6 to 2.10.7

#7 Updated by Vincent MEMBRÉ about 3 years ago

  • Target version changed from 2.10.7 to 2.10.8

#8 Updated by Vincent MEMBRÉ about 3 years ago

  • Target version changed from 2.10.8 to 2.10.9

#9 Updated by Vincent MEMBRÉ almost 3 years ago

  • Target version changed from 2.10.9 to 2.10.10

#10 Updated by Vincent MEMBRÉ almost 3 years ago

  • Target version changed from 2.10.10 to 2.10.11

#11 Updated by Vincent MEMBRÉ almost 3 years ago

  • Target version changed from 2.10.11 to 2.10.12

#12 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.10.12 to 2.10.13

#13 Updated by Benoît PECCATTE over 2 years ago

  • Status changed from 8 to New

#14 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.10.13 to 2.10.14

#15 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.10.14 to 2.10.15

#16 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.10.15 to 2.10.16

#17 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.10.16 to 2.10.17

#18 Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 2.10.17 to 2.10.18

#19 Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 2.10.18 to 2.10.19

#20 Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 2.10.19 to 2.10.20

#21 Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 2.10.20 to 277

#22 Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 277 to 2.11.18

#23 Updated by Vincent MEMBRÉ almost 2 years ago

  • Target version changed from 2.11.18 to 2.11.19

#24 Updated by Vincent MEMBRÉ almost 2 years ago

  • Target version changed from 2.11.19 to 2.11.20

#25 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 2.11.20 to 2.11.21

#26 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 2.11.21 to 2.11.22

#27 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 2.11.22 to 2.11.23

#28 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 2.11.23 to 2.11.24

#29 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 2.11.24 to 308

#30 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 308 to 3.1.14

#31 Updated by Vincent MEMBRÉ about 1 year ago

  • Target version changed from 3.1.14 to 3.1.15

#32 Updated by Vincent MEMBRÉ about 1 year ago

  • Target version changed from 3.1.15 to 3.1.16

#33 Updated by Vincent MEMBRÉ about 1 year ago

  • Target version changed from 3.1.16 to 3.1.17

#34 Updated by Vincent MEMBRÉ about 1 year ago

  • Target version changed from 3.1.17 to 3.1.18

#35 Updated by Vincent MEMBRÉ 10 months ago

  • Target version changed from 3.1.18 to 3.1.19

#36 Updated by François ARMAND 9 months ago

  • Severity set to Major - prevents use of part of Rudder | no simple workaround
  • User visibility set to Getting started - demo | first install | level 1 Techniques
  • Priority set to 45

#37 Updated by Vincent MEMBRÉ 8 months ago

  • Target version changed from 3.1.19 to 3.1.20

#38 Updated by Jonathan CLARKE 8 months ago

  • Assignee deleted (François ARMAND)

#39 Updated by Benoît PECCATTE 8 months ago

Tested in 4.1, this bug is still there

#40 Updated by Benoît PECCATTE 8 months ago

when we detect this we should have a simple page that contains : "Please bring back the technique via git or click this button to remove the directive from Rudder"

#41 Updated by Vincent MEMBRÉ 7 months ago

  • Target version changed from 3.1.20 to 3.1.21

#42 Updated by Vincent MEMBRÉ 6 months ago

  • Target version changed from 3.1.21 to 3.1.22

#43 Updated by Benoît PECCATTE 6 months ago

  • Priority changed from 45 to 58

#44 Updated by Vincent MEMBRÉ 4 months ago

  • Target version changed from 3.1.22 to 3.1.23
  • Priority changed from 58 to 59

#45 Updated by Vincent MEMBRÉ 4 months ago

  • Target version changed from 3.1.23 to 3.1.24

#46 Updated by Benoît PECCATTE 2 months ago

  • Assignee set to François ARMAND
  • Priority changed from 59 to 60

#47 Updated by François ARMAND about 2 months ago

The proposed change allows to delete a Directive when no version of the technique is availabe at all:

No version of the Technique available

When at least one version of the technique is available, a migration towards it is done with that warning message:

Automatic migration toward most recent available version

#48 Updated by François ARMAND about 2 months ago

  • Status changed from New to In progress

#49 Updated by François ARMAND about 2 months ago

  • Status changed from In progress to Pending technical review
  • Assignee changed from François ARMAND to Vincent MEMBRÉ
  • Pull Request set to https://github.com/Normation/rudder/pull/1760

#50 Updated by François ARMAND about 2 months ago

  • Status changed from Pending technical review to Pending release

#51 Updated by François ARMAND about 2 months ago

  • Related to Bug #6191: Allow to migrate or delete Directive based on a missing Technique added

#52 Updated by François ARMAND about 2 months ago

  • Related to deleted (Bug #6191: Allow to migrate or delete Directive based on a missing Technique)

#53 Updated by François ARMAND about 2 months ago

  • Duplicated by Bug #6191: Allow to migrate or delete Directive based on a missing Technique added

#54 Updated by François ARMAND about 2 months ago

  • Related to Bug #11649: No way to delete stale entries from the Reference Technique library added

#55 Updated by Vincent MEMBRÉ about 2 months ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 3.1.24, 4.1.8 and 4.2.1 which were released today.

Also available in: Atom PDF