diff --git a/codebundles/stg-workspace-smoke/.runwhen/SKILL_TEMPLATE.md b/codebundles/stg-workspace-smoke/.runwhen/SKILL_TEMPLATE.md index a693bc4..0e07e57 100644 --- a/codebundles/stg-workspace-smoke/.runwhen/SKILL_TEMPLATE.md +++ b/codebundles/stg-workspace-smoke/.runwhen/SKILL_TEMPLATE.md @@ -58,7 +58,7 @@ - Generated by `runwhen-platform-mcp` `render_codecollection_skill` v0.0.0-dev - Source workspace: `stg-test` -- Generated at: `2026-07-06T19:23:12Z` +- Generated at: `2026-07-07T01:52:25Z` ## Deploying this codecollection diff --git a/codebundles/stg-workspace-smoke/.runwhen/templates/stg-workspace-smoke-slx.yaml b/codebundles/stg-workspace-smoke/.runwhen/templates/stg-workspace-smoke-slx.yaml index 227a25e..b284973 100644 --- a/codebundles/stg-workspace-smoke/.runwhen/templates/stg-workspace-smoke-slx.yaml +++ b/codebundles/stg-workspace-smoke/.runwhen/templates/stg-workspace-smoke-slx.yaml @@ -1,26 +1,26 @@ - apiVersion: runwhen.com/v1 - kind: ServiceLevelX - metadata: - name: {{slx_name}} - labels: - {% include "common-labels.yaml" %} - annotations: - {% include "common-annotations.yaml" %} - spec: - imageURL: https://storage.googleapis.com/runwhen-nonprod-shared-images/icons/runwhen.svg - alias: Staging Workspace Smoke Check - asMeasuredBy: >- - Tool Builder task via rw-generic-codecollection tool-builder runtime. - owners: - - {{workspace.owner_email}} - statement: >- - Verify tool-builder runtime can execute a simple custom task against the stg-test workspace. - additionalContext: - qualified_name: "{{ match_resource.qualified_name }}" - tags: - - name: platform - value: runwhen -- name: access - value: read-only -- name: data - value: logs-bulk +apiVersion: runwhen.com/v1 +kind: ServiceLevelX +metadata: + name: {{slx_name}} + labels: + {% include "common-labels.yaml" %} + annotations: + {% include "common-annotations.yaml" %} +spec: + imageURL: https://storage.googleapis.com/runwhen-nonprod-shared-images/icons/runwhen.svg + alias: Staging Workspace Smoke Check + asMeasuredBy: >- + Tool Builder task via rw-generic-codecollection tool-builder runtime. + owners: + - {{workspace.owner_email}} + statement: >- + Verify tool-builder runtime can execute a simple custom task against the stg-test workspace. + additionalContext: + qualified_name: "{{ match_resource.qualified_name }}" + tags: + - name: platform + value: runwhen + - name: access + value: read-only + - name: data + value: logs-bulk diff --git a/codebundles/stg-workspace-smoke/.runwhen/templates/stg-workspace-smoke-taskset.yaml b/codebundles/stg-workspace-smoke/.runwhen/templates/stg-workspace-smoke-taskset.yaml index 49405cf..5ee00c7 100644 --- a/codebundles/stg-workspace-smoke/.runwhen/templates/stg-workspace-smoke-taskset.yaml +++ b/codebundles/stg-workspace-smoke/.runwhen/templates/stg-workspace-smoke-taskset.yaml @@ -1,27 +1,24 @@ - apiVersion: runwhen.com/v1 - kind: Runbook - metadata: - name: {{slx_name}} - labels: - {% include "common-labels.yaml" %} - annotations: - {% include "common-annotations.yaml" %} - spec: - location: {{default_location}} - codeBundle: - repoUrl: https://github.com/runwhen-contrib/rw-generic-codecollection.git - ref: main - pathToRobot: codebundles/tool-builder/runbook.robot - configProvided: - - name: TASK_TITLE +apiVersion: runwhen.com/v1 +kind: Runbook +metadata: + name: {{slx_name}} + labels: + {% include "common-labels.yaml" %} + annotations: + {% include "common-annotations.yaml" %} +spec: + location: {{default_location}} + codeBundle: + repoUrl: https://github.com/runwhen-contrib/rw-generic-codecollection.git + ref: main + pathToRobot: codebundles/tool-builder/runbook.robot + configProvided: + - name: TASK_TITLE value: Run staging workspace smoke check -... - name: GEN_CMD value: aW1wb3J0IG9zCgoKZGVmIG1haW4oKToKICAgIHdvcmtzcGFjZSA9IG9zLmVudmlyb24uZ2V0KCJXT1JLU1BBQ0VfTkFNRSIsICJ1bmtub3duIikKICAgIGxvY2F0aW9uID0gb3MuZW52aXJvbi5nZXQoIkxPQ0FUSU9OX05BTUUiLCAidW5rbm93biIpCiAgICByZXR1cm4gWwogICAgICAgIHsKICAgICAgICAgICAgImlzc3VlIHRpdGxlIjogIlN0YWdpbmcgc21va2UgY2hlY2sgcGFzc2VkIiwKICAgICAgICAgICAgImlzc3VlIGRlc2NyaXB0aW9uIjogKAogICAgICAgICAgICAgICAgZiJUb29sLWJ1aWxkZXIgc21va2Ugc2NyaXB0IHJhbiBvbiB3b3Jrc3BhY2U9e3dvcmtzcGFjZX0gIgogICAgICAgICAgICAgICAgZiJsb2NhdGlvbj17bG9jYXRpb259LiIKICAgICAgICAgICAgKSwKICAgICAgICAgICAgImlzc3VlIHNldmVyaXR5IjogNCwKICAgICAgICAgICAgImlzc3VlIG5leHQgc3RlcHMiOiAoCiAgICAgICAgICAgICAgICAiTm8gYWN0aW9uIHJlcXVpcmVkIOKAlCB0aGlzIGlzIGFuIGluZm9ybWF0aW9uYWwgc21va2UgdGVzdC4iCiAgICAgICAgICAgICksCiAgICAgICAgfQogICAgXQ== -... - name: INTERPRETER value: python -... - name: CONFIG_ENV_MAP value: '{}' - name: SECRET_ENV_MAP diff --git a/codebundles/stg-workspace-smoke/README.md b/codebundles/stg-workspace-smoke/README.md index f7605ab..90998ad 100644 --- a/codebundles/stg-workspace-smoke/README.md +++ b/codebundles/stg-workspace-smoke/README.md @@ -11,7 +11,7 @@ Custom Discovery CodeCollection bundle generated from MCP tool-builder output. ``` .runwhen/ SKILL_TEMPLATE.md # Human-readable review (decoded script + match rules) - raw_script.py # Decoded script for reviewers and automated inspection + raw_script.py # Decoded script for reviewers and automated inspection generation-rules/ stg-workspace-smoke.yaml templates/ diff --git a/codebundles/system-info-check-bash/.runwhen/SKILL_TEMPLATE.md b/codebundles/system-info-check-bash/.runwhen/SKILL_TEMPLATE.md index ebf4600..6faf93f 100644 --- a/codebundles/system-info-check-bash/.runwhen/SKILL_TEMPLATE.md +++ b/codebundles/system-info-check-bash/.runwhen/SKILL_TEMPLATE.md @@ -1,6 +1,6 @@ # System Info Check (Bash) - The runner should report hostname, uptime, and disk space when queried. + The runner should report hostname and disk space when queried. **Bundle:** `system-info-check-bash` · **Task title:** `Run system info check (bash)` · **Runtime:** tool-builder (bash) @@ -58,7 +58,7 @@ - Generated by `runwhen-platform-mcp` `render_codecollection_skill` v0.0.0-dev - Source workspace: `stg-test` -- Generated at: `2026-07-06T19:23:12Z` +- Generated at: `2026-07-07T01:52:25Z` ## Deploying this codecollection diff --git a/codebundles/system-info-check-bash/.runwhen/raw_script.sh b/codebundles/system-info-check-bash/.runwhen/raw_script.sh index 9eb6f9d..2e38a95 100644 --- a/codebundles/system-info-check-bash/.runwhen/raw_script.sh +++ b/codebundles/system-info-check-bash/.runwhen/raw_script.sh @@ -2,7 +2,6 @@ main() { issues='[]' - issue='' total=0 failed=0 @@ -27,16 +26,6 @@ main() { issues=$(echo "$issues" | jq --argjson i "$issue" '. += [$i]') fi - uptime_str="$(uptime 2>/dev/null || echo 'unavailable')" - total=$((total + 1)) - issue=$(jq -n --arg u "$uptime_str" '{ - "issue title": "Uptime collected", - "issue description": ("System uptime info: " + $u), - "issue severity": 4, - "issue next steps": "No action needed. Informational check." - }') - issues=$(echo "$issues" | jq --argjson i "$issue" '. += [$i]') - disks=$(df -h / 2>/dev/null | tail -1 | awk '{print $4, $5}' || echo 'unknown') total=$((total + 1)) issue=$(jq -n --arg d "$disks" '{ diff --git a/codebundles/system-info-check-bash/.runwhen/templates/system-info-check-bash-slx.yaml b/codebundles/system-info-check-bash/.runwhen/templates/system-info-check-bash-slx.yaml index b4f17d5..030e74d 100644 --- a/codebundles/system-info-check-bash/.runwhen/templates/system-info-check-bash-slx.yaml +++ b/codebundles/system-info-check-bash/.runwhen/templates/system-info-check-bash-slx.yaml @@ -1,26 +1,26 @@ - apiVersion: runwhen.com/v1 - kind: ServiceLevelX - metadata: - name: {{slx_name}} - labels: - {% include "common-labels.yaml" %} - annotations: - {% include "common-annotations.yaml" %} - spec: - imageURL: https://storage.googleapis.com/runwhen-nonprod-shared-images/icons/runwhen.svg - alias: System Info Check (Bash) - asMeasuredBy: >- - Tool Builder task via rw-generic-codecollection tool-builder runtime. - owners: - - {{workspace.owner_email}} - statement: >- - The runner should report hostname, uptime, and disk space when queried. - additionalContext: - qualified_name: "{{ match_resource.qualified_name }}" - tags: - - name: platform - value: runwhen -- name: access - value: read-only -- name: data - value: config +apiVersion: runwhen.com/v1 +kind: ServiceLevelX +metadata: + name: {{slx_name}} + labels: + {% include "common-labels.yaml" %} + annotations: + {% include "common-annotations.yaml" %} +spec: + imageURL: https://storage.googleapis.com/runwhen-nonprod-shared-images/icons/runwhen.svg + alias: System Info Check (Bash) + asMeasuredBy: >- + Tool Builder task via rw-generic-codecollection tool-builder runtime. + owners: + - {{workspace.owner_email}} + statement: >- + The runner should report hostname and disk space when queried. + additionalContext: + qualified_name: "{{ match_resource.qualified_name }}" + tags: + - name: platform + value: runwhen + - name: access + value: read-only + - name: data + value: config diff --git a/codebundles/system-info-check-bash/.runwhen/templates/system-info-check-bash-taskset.yaml b/codebundles/system-info-check-bash/.runwhen/templates/system-info-check-bash-taskset.yaml index 5abe724..6c2054a 100644 --- a/codebundles/system-info-check-bash/.runwhen/templates/system-info-check-bash-taskset.yaml +++ b/codebundles/system-info-check-bash/.runwhen/templates/system-info-check-bash-taskset.yaml @@ -1,27 +1,24 @@ - apiVersion: runwhen.com/v1 - kind: Runbook - metadata: - name: {{slx_name}} - labels: - {% include "common-labels.yaml" %} - annotations: - {% include "common-annotations.yaml" %} - spec: - location: {{default_location}} - codeBundle: - repoUrl: https://github.com/runwhen-contrib/rw-generic-codecollection.git - ref: main - pathToRobot: codebundles/tool-builder/runbook.robot - configProvided: - - name: TASK_TITLE +apiVersion: runwhen.com/v1 +kind: Runbook +metadata: + name: {{slx_name}} + labels: + {% include "common-labels.yaml" %} + annotations: + {% include "common-annotations.yaml" %} +spec: + location: {{default_location}} + codeBundle: + repoUrl: https://github.com/runwhen-contrib/rw-generic-codecollection.git + ref: main + pathToRobot: codebundles/tool-builder/runbook.robot + configProvided: + - name: TASK_TITLE value: Run system info check (bash) -... - name: GEN_CMD - value: IyEvYmluL2Jhc2gKCm1haW4oKSB7CiAgICBpc3N1ZXM9J1tdJwogICAgaXNzdWU9JycKICAgIHRvdGFsPTAKICAgIGZhaWxlZD0wCgogICAgbmFtZT0iJCh1bmFtZSAtbiAyPi9kZXYvbnVsbCB8fCBlY2hvICd1bmtub3duJykiCiAgICB0b3RhbD0kKCh0b3RhbCArIDEpKQogICAgaWYgWyAiJG5hbWUiICE9ICJ1bmtub3duIiBdOyB0aGVuCiAgICAgICAgaXNzdWU9JChqcSAtbiAtLWFyZyBuICIkbmFtZSIgJ3sKICAgICAgICAgICAgImlzc3VlIHRpdGxlIjogIkhvc3RuYW1lIGNvbGxlY3RlZCBzdWNjZXNzZnVsbHkiLAogICAgICAgICAgICAiaXNzdWUgZGVzY3JpcHRpb24iOiAoIkhvc3RuYW1lIHJldHJpZXZlZDogIiArICRuKSwKICAgICAgICAgICAgImlzc3VlIHNldmVyaXR5IjogNCwKICAgICAgICAgICAgImlzc3VlIG5leHQgc3RlcHMiOiAiTm8gYWN0aW9uIG5lZWRlZC4gSW5mb3JtYXRpb25hbCBjaGVjay4iCiAgICAgICAgfScpCiAgICAgICAgaXNzdWVzPSQoZWNobyAiJGlzc3VlcyIgfCBqcSAtLWFyZ2pzb24gaSAiJGlzc3VlIiAnLiArPSBbJGldJykKICAgIGVsc2UKICAgICAgICBmYWlsZWQ9JCgoZmFpbGVkICsgMSkpCiAgICAgICAgaXNzdWU9JChqcSAtbiAnewogICAgICAgICAgICAiaXNzdWUgdGl0bGUiOiAiRmFpbGVkIHRvIGNvbGxlY3QgaG9zdG5hbWUiLAogICAgICAgICAgICAiaXNzdWUgZGVzY3JpcHRpb24iOiAidW5hbWUgLW4gcmV0dXJuZWQgbm8gb3V0cHV0IiwKICAgICAgICAgICAgImlzc3VlIHNldmVyaXR5IjogMiwKICAgICAgICAgICAgImlzc3VlIG5leHQgc3RlcHMiOiAiQ2hlY2sgcnVubmVyIGltYWdlIGFuZCBhdmFpbGFibGUgY29tbWFuZHMuIgogICAgICAgIH0nKQogICAgICAgIGlzc3Vlcz0kKGVjaG8gIiRpc3N1ZXMiIHwganEgLS1hcmdqc29uIGkgIiRpc3N1ZSIgJy4gKz0gWyRpXScpCiAgICBmaQoKICAgIHVwdGltZV9zdHI9IiQodXB0aW1lIDI+L2Rldi9udWxsIHx8IGVjaG8gJ3VuYXZhaWxhYmxlJykiCiAgICB0b3RhbD0kKCh0b3RhbCArIDEpKQogICAgaXNzdWU9JChqcSAtbiAtLWFyZyB1ICIkdXB0aW1lX3N0ciIgJ3sKICAgICAgICAiaXNzdWUgdGl0bGUiOiAiVXB0aW1lIGNvbGxlY3RlZCIsCiAgICAgICAgImlzc3VlIGRlc2NyaXB0aW9uIjogKCJTeXN0ZW0gdXB0aW1lIGluZm86ICIgKyAkdSksCiAgICAgICAgImlzc3VlIHNldmVyaXR5IjogNCwKICAgICAgICAiaXNzdWUgbmV4dCBzdGVwcyI6ICJObyBhY3Rpb24gbmVlZGVkLiBJbmZvcm1hdGlvbmFsIGNoZWNrLiIKICAgIH0nKQogICAgaXNzdWVzPSQoZWNobyAiJGlzc3VlcyIgfCBqcSAtLWFyZ2pzb24gaSAiJGlzc3VlIiAnLiArPSBbJGldJykKCiAgICBkaXNrcz0kKGRmIC1oIC8gMj4vZGV2L251bGwgfCB0YWlsIC0xIHwgYXdrICd7cHJpbnQgJDQsICQ1fScgfHwgZWNobyAndW5rbm93bicpCiAgICB0b3RhbD0kKCh0b3RhbCArIDEpKQogICAgaXNzdWU9JChqcSAtbiAtLWFyZyBkICIkZGlza3MiICd7CiAgICAgICAgImlzc3VlIHRpdGxlIjogIkRpc2sgc3BhY2UgY29sbGVjdGVkIiwKICAgICAgICAiaXNzdWUgZGVzY3JpcHRpb24iOiAoIlJvb3QgZmlsZXN5c3RlbSBhdmFpbGFibGUvZnVsbDogIiArICRkKSwKICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiA0LAogICAgICAgICJpc3N1ZSBuZXh0IHN0ZXBzIjogIk5vIGFjdGlvbiBuZWVkZWQuIEluZm9ybWF0aW9uYWwgY2hlY2suIgogICAgfScpCiAgICBpc3N1ZXM9JChlY2hvICIkaXNzdWVzIiB8IGpxIC0tYXJnanNvbiBpICIkaXNzdWUiICcuICs9IFskaV0nKQoKICAgIHN1bW1hcnk9JChqcSAtbiBcCiAgICAgICAgLS1hcmcgdCAiJHRvdGFsIiBcCiAgICAgICAgLS1hcmcgZiAiJGZhaWxlZCIgXAogICAgICAgICd7CiAgICAgICAgICAgICJpc3N1ZSB0aXRsZSI6ICJTeXN0ZW0gSW5mbyBDaGVjayAoQmFzaCkg4oCUIFN1bW1hcnkiLAogICAgICAgICAgICAiaXNzdWUgZGVzY3JpcHRpb24iOiAoIkNoZWNrZWQgIiArICR0ICsgIiBzeXN0ZW0gY29tbWFuZHM7ICIgKyAkZiArICIgZmFpbGVkLiIpLAogICAgICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiA0LAogICAgICAgICAgICAiaXNzdWUgbmV4dCBzdGVwcyI6ICJJbmZvcm1hdGlvbmFsLiBSZXZpZXcgZGV0YWlscyBpbiBkZXNjcmlwdGlvbi4iCiAgICAgICAgfScpCiAgICBpc3N1ZXM9JChlY2hvICIkaXNzdWVzIiB8IGpxIC0tYXJnanNvbiBpICIkc3VtbWFyeSIgJy4gKz0gWyRpXScpCgogICAgZWNobyAiJGlzc3VlcyIgPiYzCn0= -... + value: IyEvYmluL2Jhc2gKCm1haW4oKSB7CiAgICBpc3N1ZXM9J1tdJwogICAgdG90YWw9MAogICAgZmFpbGVkPTAKCiAgICBuYW1lPSIkKHVuYW1lIC1uIDI+L2Rldi9udWxsIHx8IGVjaG8gJ3Vua25vd24nKSIKICAgIHRvdGFsPSQoKHRvdGFsICsgMSkpCiAgICBpZiBbICIkbmFtZSIgIT0gInVua25vd24iIF07IHRoZW4KICAgICAgICBpc3N1ZT0kKGpxIC1uIC0tYXJnIG4gIiRuYW1lIiAnewogICAgICAgICAgICAiaXNzdWUgdGl0bGUiOiAiSG9zdG5hbWUgY29sbGVjdGVkIHN1Y2Nlc3NmdWxseSIsCiAgICAgICAgICAgICJpc3N1ZSBkZXNjcmlwdGlvbiI6ICgiSG9zdG5hbWUgcmV0cmlldmVkOiAiICsgJG4pLAogICAgICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiA0LAogICAgICAgICAgICAiaXNzdWUgbmV4dCBzdGVwcyI6ICJObyBhY3Rpb24gbmVlZGVkLiBJbmZvcm1hdGlvbmFsIGNoZWNrLiIKICAgICAgICB9JykKICAgICAgICBpc3N1ZXM9JChlY2hvICIkaXNzdWVzIiB8IGpxIC0tYXJnanNvbiBpICIkaXNzdWUiICcuICs9IFskaV0nKQogICAgZWxzZQogICAgICAgIGZhaWxlZD0kKChmYWlsZWQgKyAxKSkKICAgICAgICBpc3N1ZT0kKGpxIC1uICd7CiAgICAgICAgICAgICJpc3N1ZSB0aXRsZSI6ICJGYWlsZWQgdG8gY29sbGVjdCBob3N0bmFtZSIsCiAgICAgICAgICAgICJpc3N1ZSBkZXNjcmlwdGlvbiI6ICJ1bmFtZSAtbiByZXR1cm5lZCBubyBvdXRwdXQiLAogICAgICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiAyLAogICAgICAgICAgICAiaXNzdWUgbmV4dCBzdGVwcyI6ICJDaGVjayBydW5uZXIgaW1hZ2UgYW5kIGF2YWlsYWJsZSBjb21tYW5kcy4iCiAgICAgICAgfScpCiAgICAgICAgaXNzdWVzPSQoZWNobyAiJGlzc3VlcyIgfCBqcSAtLWFyZ2pzb24gaSAiJGlzc3VlIiAnLiArPSBbJGldJykKICAgIGZpCgogICAgZGlza3M9JChkZiAtaCAvIDI+L2Rldi9udWxsIHwgdGFpbCAtMSB8IGF3ayAne3ByaW50ICQ0LCAkNX0nIHx8IGVjaG8gJ3Vua25vd24nKQogICAgdG90YWw9JCgodG90YWwgKyAxKSkKICAgIGlzc3VlPSQoanEgLW4gLS1hcmcgZCAiJGRpc2tzIiAnewogICAgICAgICJpc3N1ZSB0aXRsZSI6ICJEaXNrIHNwYWNlIGNvbGxlY3RlZCIsCiAgICAgICAgImlzc3VlIGRlc2NyaXB0aW9uIjogKCJSb290IGZpbGVzeXN0ZW0gYXZhaWxhYmxlL2Z1bGw6ICIgKyAkZCksCiAgICAgICAgImlzc3VlIHNldmVyaXR5IjogNCwKICAgICAgICAiaXNzdWUgbmV4dCBzdGVwcyI6ICJObyBhY3Rpb24gbmVlZGVkLiBJbmZvcm1hdGlvbmFsIGNoZWNrLiIKICAgIH0nKQogICAgaXNzdWVzPSQoZWNobyAiJGlzc3VlcyIgfCBqcSAtLWFyZ2pzb24gaSAiJGlzc3VlIiAnLiArPSBbJGldJykKCiAgICBzdW1tYXJ5PSQoanEgLW4gXAogICAgICAgIC0tYXJnIHQgIiR0b3RhbCIgXAogICAgICAgIC0tYXJnIGYgIiRmYWlsZWQiIFwKICAgICAgICAnewogICAgICAgICAgICAiaXNzdWUgdGl0bGUiOiAiU3lzdGVtIEluZm8gQ2hlY2sgKEJhc2gpIOKAlCBTdW1tYXJ5IiwKICAgICAgICAgICAgImlzc3VlIGRlc2NyaXB0aW9uIjogKCJDaGVja2VkICIgKyAkdCArICIgc3lzdGVtIGNvbW1hbmRzOyAiICsgJGYgKyAiIGZhaWxlZC4iKSwKICAgICAgICAgICAgImlzc3VlIHNldmVyaXR5IjogNCwKICAgICAgICAgICAgImlzc3VlIG5leHQgc3RlcHMiOiAiSW5mb3JtYXRpb25hbC4gUmV2aWV3IGRldGFpbHMgaW4gZGVzY3JpcHRpb24uIgogICAgICAgIH0nKQogICAgaXNzdWVzPSQoZWNobyAiJGlzc3VlcyIgfCBqcSAtLWFyZ2pzb24gaSAiJHN1bW1hcnkiICcuICs9IFskaV0nKQoKICAgIGVjaG8gIiRpc3N1ZXMiID4mMwp9 - name: INTERPRETER value: bash -... - name: CONFIG_ENV_MAP value: '{}' - name: SECRET_ENV_MAP diff --git a/codebundles/system-info-check/.runwhen/SKILL_TEMPLATE.md b/codebundles/system-info-check/.runwhen/SKILL_TEMPLATE.md index 312f4b5..457459a 100644 --- a/codebundles/system-info-check/.runwhen/SKILL_TEMPLATE.md +++ b/codebundles/system-info-check/.runwhen/SKILL_TEMPLATE.md @@ -58,7 +58,7 @@ - Generated by `runwhen-platform-mcp` `render_codecollection_skill` v0.0.0-dev - Source workspace: `stg-test` -- Generated at: `2026-07-06T19:12:44Z` +- Generated at: `2026-07-07T01:52:25Z` ## Deploying this codecollection diff --git a/codebundles/system-info-check/.runwhen/raw_script.py b/codebundles/system-info-check/.runwhen/raw_script.py index 34c08e4..b129eb0 100644 --- a/codebundles/system-info-check/.runwhen/raw_script.py +++ b/codebundles/system-info-check/.runwhen/raw_script.py @@ -1,11 +1,10 @@ import subprocess -import json def main(): issues = [] total = 0 failed = 0 - + try: result = subprocess.run( ["uname", "-a"], capture_output=True, text=True, timeout=10 @@ -23,7 +22,7 @@ def main(): failed += 1 issues.append({ "issue title": "Failed to collect kernel info", - "issue description": f"uname command failed with return code {result.returncode}: {result.stderr.strip()}", + "issue description": f"uname command failed (rc={result.returncode})", "issue severity": 2, "issue next steps": "Check runner image and available commands.", }) @@ -35,7 +34,7 @@ def main(): "issue severity": 2, "issue next steps": "Investigate runner environment.", }) - + issues.append({ "issue title": "System Info Check — Summary", "issue description": f"Checked {total} system commands; {failed} failed.", diff --git a/codebundles/system-info-check/.runwhen/templates/system-info-check-slx.yaml b/codebundles/system-info-check/.runwhen/templates/system-info-check-slx.yaml index e9baa36..2238d03 100644 --- a/codebundles/system-info-check/.runwhen/templates/system-info-check-slx.yaml +++ b/codebundles/system-info-check/.runwhen/templates/system-info-check-slx.yaml @@ -1,26 +1,26 @@ - apiVersion: runwhen.com/v1 - kind: ServiceLevelX - metadata: - name: {{slx_name}} - labels: - {% include "common-labels.yaml" %} - annotations: - {% include "common-annotations.yaml" %} - spec: - imageURL: https://storage.googleapis.com/runwhen-nonprod-shared-images/icons/runwhen.svg - alias: System Info Check - asMeasuredBy: >- - Tool Builder task via rw-generic-codecollection tool-builder runtime. - owners: - - {{workspace.owner_email}} - statement: >- - The runner should report its kernel and system information when queried. - additionalContext: - qualified_name: "{{ match_resource.qualified_name }}" - tags: - - name: platform - value: runwhen -- name: access - value: read-only -- name: data - value: config +apiVersion: runwhen.com/v1 +kind: ServiceLevelX +metadata: + name: {{slx_name}} + labels: + {% include "common-labels.yaml" %} + annotations: + {% include "common-annotations.yaml" %} +spec: + imageURL: https://storage.googleapis.com/runwhen-nonprod-shared-images/icons/runwhen.svg + alias: System Info Check + asMeasuredBy: >- + Tool Builder task via rw-generic-codecollection tool-builder runtime. + owners: + - {{workspace.owner_email}} + statement: >- + The runner should report its kernel and system information when queried. + additionalContext: + qualified_name: "{{ match_resource.qualified_name }}" + tags: + - name: platform + value: runwhen + - name: access + value: read-only + - name: data + value: config diff --git a/codebundles/system-info-check/.runwhen/templates/system-info-check-taskset.yaml b/codebundles/system-info-check/.runwhen/templates/system-info-check-taskset.yaml index b0d8511..141994e 100644 --- a/codebundles/system-info-check/.runwhen/templates/system-info-check-taskset.yaml +++ b/codebundles/system-info-check/.runwhen/templates/system-info-check-taskset.yaml @@ -1,27 +1,24 @@ - apiVersion: runwhen.com/v1 - kind: Runbook - metadata: - name: {{slx_name}} - labels: - {% include "common-labels.yaml" %} - annotations: - {% include "common-annotations.yaml" %} - spec: - location: {{default_location}} - codeBundle: - repoUrl: https://github.com/runwhen-contrib/rw-generic-codecollection.git - ref: main - pathToRobot: codebundles/tool-builder/runbook.robot - configProvided: - - name: TASK_TITLE +apiVersion: runwhen.com/v1 +kind: Runbook +metadata: + name: {{slx_name}} + labels: + {% include "common-labels.yaml" %} + annotations: + {% include "common-annotations.yaml" %} +spec: + location: {{default_location}} + codeBundle: + repoUrl: https://github.com/runwhen-contrib/rw-generic-codecollection.git + ref: main + pathToRobot: codebundles/tool-builder/runbook.robot + configProvided: + - name: TASK_TITLE value: Run system info check -... - name: GEN_CMD - value: aW1wb3J0IHN1YnByb2Nlc3MKaW1wb3J0IGpzb24KCmRlZiBtYWluKCk6CiAgICBpc3N1ZXMgPSBbXQogICAgdG90YWwgPSAwCiAgICBmYWlsZWQgPSAwCiAgICAKICAgIHRyeToKICAgICAgICByZXN1bHQgPSBzdWJwcm9jZXNzLnJ1bigKICAgICAgICAgICAgWyJ1bmFtZSIsICItYSJdLCBjYXB0dXJlX291dHB1dD1UcnVlLCB0ZXh0PVRydWUsIHRpbWVvdXQ9MTAKICAgICAgICApCiAgICAgICAgdG90YWwgKz0gMQogICAgICAgIGtlcm5lbF9pbmZvID0gcmVzdWx0LnN0ZG91dC5zdHJpcCgpCiAgICAgICAgaWYgcmVzdWx0LnJldHVybmNvZGUgPT0gMDoKICAgICAgICAgICAgaXNzdWVzLmFwcGVuZCh7CiAgICAgICAgICAgICAgICAiaXNzdWUgdGl0bGUiOiAiS2VybmVsIGluZm8gY29sbGVjdGVkIHN1Y2Nlc3NmdWxseSIsCiAgICAgICAgICAgICAgICAiaXNzdWUgZGVzY3JpcHRpb24iOiBmIktlcm5lbCBpbmZvIHJldHJpZXZlZDoge2tlcm5lbF9pbmZvfSIsCiAgICAgICAgICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiA0LAogICAgICAgICAgICAgICAgImlzc3VlIG5leHQgc3RlcHMiOiAiTm8gYWN0aW9uIG5lZWRlZC4gSW5mb3JtYXRpb25hbCBjaGVjay4iLAogICAgICAgICAgICB9KQogICAgICAgIGVsc2U6CiAgICAgICAgICAgIGZhaWxlZCArPSAxCiAgICAgICAgICAgIGlzc3Vlcy5hcHBlbmQoewogICAgICAgICAgICAgICAgImlzc3VlIHRpdGxlIjogIkZhaWxlZCB0byBjb2xsZWN0IGtlcm5lbCBpbmZvIiwKICAgICAgICAgICAgICAgICJpc3N1ZSBkZXNjcmlwdGlvbiI6IGYidW5hbWUgY29tbWFuZCBmYWlsZWQgd2l0aCByZXR1cm4gY29kZSB7cmVzdWx0LnJldHVybmNvZGV9OiB7cmVzdWx0LnN0ZGVyci5zdHJpcCgpfSIsCiAgICAgICAgICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiAyLAogICAgICAgICAgICAgICAgImlzc3VlIG5leHQgc3RlcHMiOiAiQ2hlY2sgcnVubmVyIGltYWdlIGFuZCBhdmFpbGFibGUgY29tbWFuZHMuIiwKICAgICAgICAgICAgfSkKICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICBmYWlsZWQgKz0gMQogICAgICAgIGlzc3Vlcy5hcHBlbmQoewogICAgICAgICAgICAiaXNzdWUgdGl0bGUiOiAiRXJyb3IgY29sbGVjdGluZyBzeXN0ZW0gaW5mbyIsCiAgICAgICAgICAgICJpc3N1ZSBkZXNjcmlwdGlvbiI6IGYiRXhjZXB0aW9uIG9jY3VycmVkOiB7c3RyKGUpfSIsCiAgICAgICAgICAgICJpc3N1ZSBzZXZlcml0eSI6IDIsCiAgICAgICAgICAgICJpc3N1ZSBuZXh0IHN0ZXBzIjogIkludmVzdGlnYXRlIHJ1bm5lciBlbnZpcm9ubWVudC4iLAogICAgICAgIH0pCiAgICAKICAgIGlzc3Vlcy5hcHBlbmQoewogICAgICAgICJpc3N1ZSB0aXRsZSI6ICJTeXN0ZW0gSW5mbyBDaGVjayDigJQgU3VtbWFyeSIsCiAgICAgICAgImlzc3VlIGRlc2NyaXB0aW9uIjogZiJDaGVja2VkIHt0b3RhbH0gc3lzdGVtIGNvbW1hbmRzOyB7ZmFpbGVkfSBmYWlsZWQuIiwKICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiA0LAogICAgICAgICJpc3N1ZSBuZXh0IHN0ZXBzIjogIkluZm9ybWF0aW9uYWwuIFJldmlldyBkZXRhaWxzIGluIGRlc2NyaXB0aW9uLiIsCiAgICB9KQogICAgcmV0dXJuIGlzc3Vlcw== -... + value: aW1wb3J0IHN1YnByb2Nlc3MKCmRlZiBtYWluKCk6CiAgICBpc3N1ZXMgPSBbXQogICAgdG90YWwgPSAwCiAgICBmYWlsZWQgPSAwCgogICAgdHJ5OgogICAgICAgIHJlc3VsdCA9IHN1YnByb2Nlc3MucnVuKAogICAgICAgICAgICBbInVuYW1lIiwgIi1hIl0sIGNhcHR1cmVfb3V0cHV0PVRydWUsIHRleHQ9VHJ1ZSwgdGltZW91dD0xMAogICAgICAgICkKICAgICAgICB0b3RhbCArPSAxCiAgICAgICAga2VybmVsX2luZm8gPSByZXN1bHQuc3Rkb3V0LnN0cmlwKCkKICAgICAgICBpZiByZXN1bHQucmV0dXJuY29kZSA9PSAwOgogICAgICAgICAgICBpc3N1ZXMuYXBwZW5kKHsKICAgICAgICAgICAgICAgICJpc3N1ZSB0aXRsZSI6ICJLZXJuZWwgaW5mbyBjb2xsZWN0ZWQgc3VjY2Vzc2Z1bGx5IiwKICAgICAgICAgICAgICAgICJpc3N1ZSBkZXNjcmlwdGlvbiI6IGYiS2VybmVsIGluZm8gcmV0cmlldmVkOiB7a2VybmVsX2luZm99IiwKICAgICAgICAgICAgICAgICJpc3N1ZSBzZXZlcml0eSI6IDQsCiAgICAgICAgICAgICAgICAiaXNzdWUgbmV4dCBzdGVwcyI6ICJObyBhY3Rpb24gbmVlZGVkLiBJbmZvcm1hdGlvbmFsIGNoZWNrLiIsCiAgICAgICAgICAgIH0pCiAgICAgICAgZWxzZToKICAgICAgICAgICAgZmFpbGVkICs9IDEKICAgICAgICAgICAgaXNzdWVzLmFwcGVuZCh7CiAgICAgICAgICAgICAgICAiaXNzdWUgdGl0bGUiOiAiRmFpbGVkIHRvIGNvbGxlY3Qga2VybmVsIGluZm8iLAogICAgICAgICAgICAgICAgImlzc3VlIGRlc2NyaXB0aW9uIjogZiJ1bmFtZSBjb21tYW5kIGZhaWxlZCAocmM9e3Jlc3VsdC5yZXR1cm5jb2RlfSkiLAogICAgICAgICAgICAgICAgImlzc3VlIHNldmVyaXR5IjogMiwKICAgICAgICAgICAgICAgICJpc3N1ZSBuZXh0IHN0ZXBzIjogIkNoZWNrIHJ1bm5lciBpbWFnZSBhbmQgYXZhaWxhYmxlIGNvbW1hbmRzLiIsCiAgICAgICAgICAgIH0pCiAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgZmFpbGVkICs9IDEKICAgICAgICBpc3N1ZXMuYXBwZW5kKHsKICAgICAgICAgICAgImlzc3VlIHRpdGxlIjogIkVycm9yIGNvbGxlY3Rpbmcgc3lzdGVtIGluZm8iLAogICAgICAgICAgICAiaXNzdWUgZGVzY3JpcHRpb24iOiBmIkV4Y2VwdGlvbiBvY2N1cnJlZDoge3N0cihlKX0iLAogICAgICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiAyLAogICAgICAgICAgICAiaXNzdWUgbmV4dCBzdGVwcyI6ICJJbnZlc3RpZ2F0ZSBydW5uZXIgZW52aXJvbm1lbnQuIiwKICAgICAgICB9KQoKICAgIGlzc3Vlcy5hcHBlbmQoewogICAgICAgICJpc3N1ZSB0aXRsZSI6ICJTeXN0ZW0gSW5mbyBDaGVjayDigJQgU3VtbWFyeSIsCiAgICAgICAgImlzc3VlIGRlc2NyaXB0aW9uIjogZiJDaGVja2VkIHt0b3RhbH0gc3lzdGVtIGNvbW1hbmRzOyB7ZmFpbGVkfSBmYWlsZWQuIiwKICAgICAgICAiaXNzdWUgc2V2ZXJpdHkiOiA0LAogICAgICAgICJpc3N1ZSBuZXh0IHN0ZXBzIjogIkluZm9ybWF0aW9uYWwuIFJldmlldyBkZXRhaWxzIGluIGRlc2NyaXB0aW9uLiIsCiAgICB9KQogICAgcmV0dXJuIGlzc3Vlcw== - name: INTERPRETER value: python -... - name: CONFIG_ENV_MAP value: '{}' - name: SECRET_ENV_MAP