private void injectExternalConfigActivation(ImageConfiguration unresolvedConfig, MavenProject project) {
        // Allow external activation of property configuration
        String mode = ConfigHelper.getExternalConfigActivationProperty(project);

        if(mode == null) {
            return;
        }

        Map<String, String> externalConfig = unresolvedConfig.getExternalConfig();
        if(externalConfig == null) {
            externalConfig = new HashMap<>();
            externalConfig.put("type", propertyConfigHandler.getType());
            externalConfig.put("mode", mode);
            unresolvedConfig.setExternalConfiguration(externalConfig);

            log.verbose(Logger.LogVerboseCategory.BUILD,"Global %s=%s property activates property configuration for image", ConfigHelper.EXTERNALCONFIG_ACTIVATION_PROPERTY, mode);
        }
        else
        {
            log.verbose(Logger.LogVerboseCategory.BUILD,"Ignoring %s=%s property, image has <external> in POM which takes precedence", ConfigHelper.EXTERNALCONFIG_ACTIVATION_PROPERTY, mode);
        }
    }
Resolve an image configuration. If it contains a reference to an external configuration
the corresponding resolver is called and the resolved image configurations are returned (can
be multiple).

If no reference to an external configuration is found, the original configuration
is returned directly.

@param unresolvedConfig the configuration to resolve
@param project project used for resolving
@param session
@return list of resolved image configurations
@throws IllegalArgumentException if no type is given when an external reference configuration is provided
or when the type is not known (i.e. no handler is registered for this type).
src/main/java/io/fabric8/maven/docker/config/handler/ImageConfigResolver.java