Skip to content

hybridops.app

Application and platform roles for HybridOps, including Jenkins, RKE2, NetBox, Moodle, and core Linux/Windows services.

Health score

65 / 100

Good

Healthy, with room to improve.

How bands are set →

  1. Excellent
  2. Good (this collection)
  3. Fair
  4. Poor
  5. Not scored

Observed 6 of 8 signal groups.

Four are needed before a score is published.

4 needed

Category subscores

Security
0%
Trust
100%
Quality
57%
Maintenance
85%
ansible-core compatibility
60%
Every signal we evaluated for this collection
Signals we could observe
security.dependency_boundednessNot met0 of 2 dependencies bounded0 / 1Published artifact
trust.link_claimsPassed4 of 4 link URLs declared1 / 1Published artifact
quality.docsPartly metreadme, 0 doc files1.5 / 3Published artifact
quality.changelogPartly metCHANGELOG.md only, 0 fragments0.9 / 2Published artifact
quality.license_qualityPassedSPDX id declared (MIT-0)1 / 1Published artifact
maintenance.release_recencyPassedlast release 18 days ago3 / 3Galaxy index
maintenance.changelog_recencyPartly met0 unreleased changelog fragments0.4 / 1Published artifact
compat.requires_ansiblePartly met>=2.15.01.8 / 3Published artifact
Signals we could not observeNot observed — these are left out of the score rather than counted against it.
trust.ansible_membershipNot observednot shipped in the ansible packageexcluded from this scoreansible-build-data
quality.testsNot observedno test evidence in the published artifactexcluded from this scorePublished artifact
quality.ciNot observedno CI evidence in the published artifactexcluded from this scorePublished artifact
compat.membership_currencyNot observednot shipped in the ansible packageexcluded from this scoreansible-build-data

No repository evidence yet. ansible.care has not read any collection's Git repository, so every signal above was proved from a published artifact or from Ansible’s own build data. Tests and CI in particular can be proved present this way but never proved absent — so when we cannot see them, we leave them out of the score rather than counting them against you.

What is costing points

Each of these is a signal we observed and could not fully credit.

  • quality.changelog

    Ship a `changelogs/changelog.yaml` — the structured form `antsibull-changelog` generates and the `ansible` package consumes — rather than only a hand-maintained `CHANGELOG.md`, and write a fragment into `changelogs/fragments/` as each change lands rather than reconstructing release notes at release time. Both have to be inside the published tarball to be observable: a changelog that lives only in your Git repository is one we cannot read. This is the single highest-leverage change for most collections, because the same missing file is what holds down both changelog rules in this rubric. If you already publish `changelog.yaml` with fragments, this rule is answered.

  • quality.docs

    Ship your README and your `docs/` directory INSIDE the published tarball, not only in your Git repository — we do not read repositories at all yet, so a file that exists only there is a file we cannot see. If your `build_ignore` excludes `docs/`, that exclusion is why we observed nothing. Beyond the README this rule counts documentation FILES, so splitting a long README into per-module and per-role pages is what moves it; adding filler pages to raise a count would satisfy the arithmetic and help nobody.

  • compat.requires_ansible

    Declare a `requires_ansible` FLOOR in your `galaxy.yml` naming the oldest ansible-core you actually support, and declare an upper bound alongside it if you test against one — the bound is credited on top of whichever floor tier you reach in the table beside this rule. Declaring nothing now scores zero and STAYS in your score rather than dropping out of it, so omitting the field is no longer a way to avoid the question; if your score fell and you have never declared a floor, this is why. An exact pin or a `~=` compatible-release specifier earns only a small share, strictly below every floor tier: it is a real declaration we could read, so it beats silence, and it sits at the bottom because pinning ansible-core is the practice this category exists to discourage. Raising a floor you cannot actually support would be a false declaration, and this rule is not worth that.

  • security.dependency_boundedness

    Give every collection dependency you declare in `galaxy.yml` an upper or pinned bound — `<`, `<=`, `==` or `~=` — so that installing your collection cannot silently pull in an arbitrary future release of somebody else’s. If your collection declares no dependencies at all this rule already awards full marks and there is nothing here to change. If we reported a dependency we could not read, the fix is the syntax of its version range rather than the dependency itself.

Authors

  • HybridOps.Tech