🧠 AWS EC2 Instance OS is no longer maintained or is past ordinary EOL - prod.logic.yaml🟢
- Contextual name: 🧠 prod.logic.yaml🟢
- ID:
/ce/ca/aws/ec2/instance-os-support/prod.logic.yaml - Tags:
Uses
Test Results 🟢
Generated at: 2026-10-30T18:09:22.725959621Z Open
| Result | Id | Condition Index | Condition Text | Runtime Error |
|---|---|---|---|---|
| 🟢 | supported-after-eoas | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | extended-eligible-not-entitled | ✔️ 999 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() && extract('CA10__osInfoEoesFrom__c').isNotEmpty() && extract('CA10__osInfoEoesFrom__c').afterToday() | ✔️ null |
| 🟢 | not-maintained | ✔️ 399 | ✔️ extract('CA10__osInfoMaintained__c') == 'No' | ✔️ null |
| 🟢 | ordinary-eol-without-extension | ✔️ 1099 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() | ✔️ null |
| 🟢 | final-support-ended | ✔️ 699 | ✔️ extract('CA10__osInfoEoesFrom__c').isNotEmpty() && extract('CA10__osInfoEoesFrom__c').beforeToday() | ✔️ null |
| 🟢 | eol-exact-boundary | ✔️ 1100 | ✔️ otherwise | ✔️ null |
| 🟢 | eol-day-before | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | eoes-exact-boundary | ✔️ 1099 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() | ✔️ null |
| 🟢 | missing-lincoln-enrichment | ✔️ 299 | ✔️ extract('CA10__osInfoSource__c').isEmpty() | ✔️ null |
| 🟢 | missing-source-with-dates | ✔️ 299 | ✔️ extract('CA10__osInfoSource__c').isEmpty() | ✔️ null |
| 🟢 | alternate-source-with-valid-lifecycle | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | missing-maintained | ✔️ 301 | ✔️ CA10__osInfoMaintained__c.isEmpty() | ✔️ null |
| 🟢 | malformed-maintained | ✔️ 499 | ✔️ extract('CA10__osInfoMaintained__c') != 'Yes' | ✔️ null |
| 🟢 | unknown-eol-extended-future | ✔️ 799 | ✔️ extract('CA10__osInfoEolFrom__c').isEmpty() | ✔️ null |
| 🟢 | missing-state | ✔️ 101 | ✔️ CA10__stateName__c.isEmpty() | ✔️ null |
| 🟢 | unknown-state | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | stopped-supported | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | stopped-eol | ✔️ 399 | ✔️ extract('CA10__osInfoMaintained__c') == 'No' | ✔️ null |
| 🟢 | terminated | ✔️ 199 | ✔️ setOfText(['terminated', 'shutting-down']).contains(extract('CA10__stateName__c')) | ✔️ null |
| 🟢 | shutting-down | ✔️ 199 | ✔️ setOfText(['terminated', 'shutting-down']).contains(extract('CA10__stateName__c')) | ✔️ null |
| 🟢 | disappeared | ✔️ 99 | ✔️ isDisappeared(CA10__disappearanceTime__c) | ✔️ null |
| 🟢 | inconsistent-eoes-before-eol | ✔️ 599 | ✔️ extract('CA10__osInfoEoesFrom__c').isNotEmpty() && extract('CA10__osInfoEolFrom__c').isNotEmpty() && extract('CA10__osInfoEolFrom__c').afterToday() && not(extract('CA10__osInfoEoesFrom__c').afterToday()) | ✔️ null |
| 🟢 | alternate-source-past-eol | ✔️ 1099 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() | ✔️ null |
| 🟢 | alternate-source-not-maintained | ✔️ 399 | ✔️ extract('CA10__osInfoMaintained__c') == 'No' | ✔️ null |
| 🟢 | missing-source-with-expired-lifecycle | ✔️ 299 | ✔️ extract('CA10__osInfoSource__c').isEmpty() | ✔️ null |
| 🟢 | alternate-source-missing-eol | ✔️ 799 | ✔️ extract('CA10__osInfoEolFrom__c').isEmpty() | ✔️ null |
| 🟢 | whitespace-source-with-valid-lifecycle | ✔️ 299 | ✔️ extract('CA10__osInfoSource__c').isEmpty() | ✔️ null |
| 🟢 | final-support-ended-without-ordinary-eol | ✔️ 699 | ✔️ extract('CA10__osInfoEoesFrom__c').isNotEmpty() && extract('CA10__osInfoEoesFrom__c').beforeToday() | ✔️ null |
| 🟢 | al2023-maintenance-phase-supported | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | windows2016-after-mainstream-support | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | rhel79-els-available-entitlement-unknown | ✔️ 999 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() && extract('CA10__osInfoEoesFrom__c').isNotEmpty() && extract('CA10__osInfoEoesFrom__c').afterToday() | ✔️ null |
| 🟢 | eol-day-after | ✔️ 1099 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() | ✔️ null |
| 🟢 | eol-transition-with-extended-window | ✔️ 1100 | ✔️ otherwise | ✔️ null |
| 🟢 | eol-transition-explicitly-unmaintained | ✔️ 399 | ✔️ extract('CA10__osInfoMaintained__c') == 'No' | ✔️ null |
| 🟢 | eoes-day-before | ✔️ 999 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() && extract('CA10__osInfoEoesFrom__c').isNotEmpty() && extract('CA10__osInfoEoesFrom__c').afterToday() | ✔️ null |
| 🟢 | eoes-day-after | ✔️ 699 | ✔️ extract('CA10__osInfoEoesFrom__c').isNotEmpty() && extract('CA10__osInfoEoesFrom__c').beforeToday() | ✔️ null |
| 🟢 | eoes-transition-missing-ordinary-eol | ✔️ 799 | ✔️ extract('CA10__osInfoEolFrom__c').isEmpty() | ✔️ null |
| 🟢 | private-old-image-current-guest-supported | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | missing-image-supported-guest | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | deleted-image-unsupported-guest | ✔️ 1099 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() | ✔️ null |
| 🟢 | marketplace-without-enrichment | ✔️ 299 | ✔️ extract('CA10__osInfoSource__c').isEmpty() | ✔️ null |
| 🟢 | byol-without-enrichment | ✔️ 299 | ✔️ extract('CA10__osInfoSource__c').isEmpty() | ✔️ null |
| 🟢 | custom-unknown-release-no-eol | ✔️ 799 | ✔️ extract('CA10__osInfoEolFrom__c').isEmpty() | ✔️ null |
| 🟢 | fresh-image-expired-guest | ✔️ 1099 | ✔️ extract('CA10__osInfoEolFrom__c').beforeToday() | ✔️ null |
| 🟢 | pending-supported | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | stopping-supported | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
| 🟢 | normalized-maintained-value | ✔️ 899 | ✔️ extract('CA10__osInfoEolFrom__c').afterToday() | ✔️ null |
Generation Bundle
| File | MD5 | |
|---|---|---|
| Open | /ce/ca/aws/ec2/instance-os-support/policy.yaml | 17646CF9EED6D7EF663DA17170AD03A1 |
| Open | /ce/ca/aws/ec2/instance-os-support/prod.logic.yaml | 5A0448A2B2A492450C1FB2C7531F9404 |
| Open | /ce/ca/aws/ec2/instance-os-support/test-data.json | 7174F448BA10388C9D62DA764AE979E5 |
| Open | /types/CA10__CaAwsInstance__c/object.extracts.yaml | 6BDBD161D9C7C5EF90632F9B9E0AB177 |
Available Commands
repo-manager policies generate FULL /ce/ca/aws/ec2/instance-os-support/prod.logic.yaml
repo-manager policies generate DEBUG /ce/ca/aws/ec2/instance-os-support/prod.logic.yaml
repo-manager policies generate CAPTURE_TEST_DATA /ce/ca/aws/ec2/instance-os-support/prod.logic.yaml
repo-manager policies generate TESTS /ce/ca/aws/ec2/instance-os-support/prod.logic.yaml
# Execute tests
repo-manager policies test /ce/ca/aws/ec2/instance-os-support/prod.logic.yaml
Content
---
inputType: CA10__CaAwsInstance__c
testData:
- file: test-data.json
importExtracts:
- file: /types/CA10__CaAwsInstance__c/object.extracts.yaml
conditions:
- status: INAPPLICABLE
currentStateMessage: The EC2 instance is terminated or shutting down.
check:
CONTAINS:
arg:
SET:
itemType: TEXT
items:
- terminated
- shutting-down
search:
EXTRACT: CA10__stateName__c
- status: INAPPLICABLE
currentStateMessage: No OS lifecycle enrichment source is available for this instance.
check:
IS_EMPTY:
arg:
EXTRACT: CA10__osInfoSource__c
- status: INCOMPLIANT
currentStateMessage: The installed OS release is explicitly marked as no longer maintained.
remediationMessage: Upgrade or rebuild on a supported OS release after compatibility testing.
check:
IS_EQUAL:
left:
EXTRACT: CA10__osInfoMaintained__c
right:
TEXT: 'No'
- status: UNDETERMINED
currentStateMessage: The OS lifecycle maintained indicator is unrecognized.
check:
NOT_EQUAL:
left:
EXTRACT: CA10__osInfoMaintained__c
right:
TEXT: 'Yes'
- status: UNDETERMINED
currentStateMessage: The OS extended-support date precedes ordinary EOL; lifecycle enrichment is inconsistent.
check:
AND:
args:
- NOT_EMPTY:
arg:
EXTRACT: CA10__osInfoEoesFrom__c
- NOT_EMPTY:
arg:
EXTRACT: CA10__osInfoEolFrom__c
- IS_AFTER_TODAY:
arg:
EXTRACT: CA10__osInfoEolFrom__c
- NOT:
arg:
IS_AFTER_TODAY:
arg:
EXTRACT: CA10__osInfoEoesFrom__c
# shortcut: lifecycle dates omit vendor cutoff timezones; use exact vendor instants when available.
- status: INCOMPLIANT
currentStateMessage: The installed OS release has reached the end of its known extended-support window.
remediationMessage: Upgrade or rebuild on a supported OS release after compatibility testing.
check:
AND:
args:
- NOT_EMPTY:
arg:
EXTRACT: CA10__osInfoEoesFrom__c
- IS_BEFORE_TODAY:
arg:
EXTRACT: CA10__osInfoEoesFrom__c
- status: INAPPLICABLE
currentStateMessage: No ordinary OS EOL date is available to assess standard-support expiry.
check:
IS_EMPTY:
arg:
EXTRACT: CA10__osInfoEolFrom__c
# EOAS is not used: ending active support alone does not end security support.
- status: COMPLIANT
currentStateMessage: The installed OS release is maintained and its ordinary end-of-life date is in the future.
check:
IS_AFTER_TODAY:
arg:
EXTRACT: CA10__osInfoEolFrom__c
- status: INCOMPLIANT
currentStateMessage: The installed OS release is past ordinary EOL; a catalog extended-support window remains but entitlement is unverified.
remediationMessage: Upgrade the OS or verify and document a time-limited extended-support exception and entitlement.
check:
AND:
args:
- IS_BEFORE_TODAY:
arg:
EXTRACT: CA10__osInfoEolFrom__c
- NOT_EMPTY:
arg:
EXTRACT: CA10__osInfoEoesFrom__c
- IS_AFTER_TODAY:
arg:
EXTRACT: CA10__osInfoEoesFrom__c
- status: INCOMPLIANT
currentStateMessage: The installed OS release is past ordinary EOL without a known future extended-support date.
remediationMessage: Upgrade or rebuild on a supported OS release, verifying any alternative support arrangement separately.
check:
IS_BEFORE_TODAY:
arg:
EXTRACT: CA10__osInfoEolFrom__c
otherwise:
status: INAPPLICABLE
currentStateMessage: The ordinary OS EOL date falls on the current UTC day; verify the vendor cutoff and refresh lifecycle enrichment.