Class LandingPageRegistrationReconciler
- All Implemented Interfaces:
SiteReconciler
https://ike.network/) in sync with the
current project version.
Subsumes the retired ike:register-site-{draft,publish}
and ike:deregister-site-{draft,publish} goals
(IKE-Network/ike-issues#398).
Detect: probe the homepage https://ike.network/
and look for the version cell beneath the project's
<h2 id="<artifactId>"> block — the cell rendered from
the project's projects/<id>.adoc fragment after it is
included into the master index. Drift = missing section, or
version cell differs from SiteContext.projectVersion.
(IKE-Network/ike-issues#508 — earlier versions probed
/projects/<id>.html, which always 404s in the current
single-page site structure; the probe always reported drift and
apply always ran.)
Apply: clone the org-site source repo, write a fresh
fragment via OrgSiteSupport.registerProject(File, Log, String, String, String, String, String, String, String, String, String, String, List), build the site,
push the source repo, and publish the rendered HTML to the publish
repo.
Uninstall: clone the source repo, delete the fragment,
rebuild, and publish — the same flow as the retired
DeregisterSiteDraftMojo.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidapply(SiteContext ctx) Apply reconciliation.detect(SiteContext ctx) Inspect deployed site state and report any drift this reconciler would correct.Human-readable name of the dimension this reconciler owns.The Maven property name (without the-Dprefix) that opts out of this reconciler's apply pass.voiduninstall(SiteContext ctx) Apply the "uninstall" variant of this reconciler — used bysite-publish -Dsite=removedto tear down the deployed site and its registration.
-
Constructor Details
-
LandingPageRegistrationReconciler
public LandingPageRegistrationReconciler()Creates this reconciler instance.
-
-
Method Details
-
dimension
Description copied from interface:SiteReconcilerHuman-readable name of the dimension this reconciler owns. Used as the heading insite-draftoutput.- Specified by:
dimensionin interfaceSiteReconciler- Returns:
- the dimension label, e.g. "Deployed site version"
-
optOutFlag
Description copied from interface:SiteReconcilerThe Maven property name (without the-Dprefix) that opts out of this reconciler's apply pass. Setting the property to"false"skips this dimension on a givensite-publishinvocation.- Specified by:
optOutFlagin interfaceSiteReconciler- Returns:
- the opt-out flag name, e.g.
"updateSite"
-
detect
Description copied from interface:SiteReconcilerInspect deployed site state and report any drift this reconciler would correct. Read-only — must not mutate any remote state.- Specified by:
detectin interfaceSiteReconciler- Parameters:
ctx- the per-repo site context- Returns:
- drift report;
SiteDriftReport.noDrift(String)if nothing to do
-
apply
Description copied from interface:SiteReconcilerApply reconciliation. Caller is responsible for checkingSiteReconcilerOptions.isOptedOut(String)before invoking; implementations may also re-check defensively.- Specified by:
applyin interfaceSiteReconciler- Parameters:
ctx- the per-repo site context
-
uninstall
Description copied from interface:SiteReconcilerApply the "uninstall" variant of this reconciler — used bysite-publish -Dsite=removedto tear down the deployed site and its registration. Default implementation does nothing (reconcilers that only forward-deploy can be inverted by the stale-cleanup reconciler instead).- Specified by:
uninstallin interfaceSiteReconciler- Parameters:
ctx- the per-repo site context
-