protected @NonNull Mapping compare(T instance, T reference, ConfigurationContext context) throws Exception {

        Mapping mapping = new Mapping();
        for (Attribute attribute : getAttributes()) {
            if (attribute.equals(instance, reference)) {
                continue;
            }
            mapping.put(attribute.getName(), attribute.describe(instance, context));
        }
        return mapping;
    }
Run configuration process on the target instance
@param config configuration to apply. Can be partial if {@link #instance(Mapping, ConfigurationContext)} did already used some entries
@param instance target instance to configure
@param dryrun only check configuration is valid regarding target component. Don't actually apply changes to jenkins controller instance
@param context Fully configured Jenkins object used as the starting point for this configuration.
@throws ConfiguratorException something went wrong...
plugin/src/main/java/io/jenkins/plugins/casc/BaseConfigurator.java