Creates a plugin loader which can freeze the list of loaded plugins - effectively stopping it from loading new plugins
put into the
directory. How this works is defined in the
Nodes that are in a cluster which is not in
state and have the same build number as the
cluster should freeze their plugins.
Specifically, it should create a freeze file when:
and similarly, it should delete the freeze file when:
Additionally, a node should use the freeze (but not create it) for plugin loading when:
It starts up and joins a cluster that is not in
UpgradeState.STABLE state and its application build number
is equal to the cluster build number.
It receives a cluster message that the cluster upgrade state is now not
its application build number is equal to the cluster build number.