Pipeline Config: Eliminate the "isConstant" AST/JSON field

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      We've got a field for values called "isConstant" that doesn't serve a very clear purpose - right now, it's basically just used in two places - to determine whether to actually try type-casting in validation and to decide which subtype of ConfigASTValue is used when parsing from JSON. So...we probably don't need it, or if we do need it, we need to actually do something more useful and determinant with it.

      In the first case, which is probably the one that actually matters, since that's what cares which ConfigASTValue subtype is used, we use it to determine whether to try casting for parameter validation. Without that check, we end up with errors for things like [$class: ...] legacy metastep syntax, which are String when they get to us in validation currently, so can't be cast to Map as they'd need to be. So beyond the confusion of isConstant, we're also not actually doing validation of legacy metastep syntax!

            Assignee:
            Andrew Bayer
            Reporter:
            Andrew Bayer
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Resolved:
              Archived: