alicloud-compute-swas-open

安装量: 216
排名: #4046

安装

npx skills add https://github.com/cinience/alicloud-skills --skill alicloud-compute-swas-open

Category: service Simple Application Server (SWAS-OPEN 2020-06-01) Use SWAS-OPEN OpenAPI to manage full SAS resources: instances, disks, snapshots, images, key pairs, firewall, Cloud Assistant, monitoring, tags, and lightweight databases. Prerequisites Prepare AccessKey with least-privilege RAM user/role. Choose correct region and matching endpoint (public/VPC). ALICLOUD_REGION_ID can be used as default region; if unset choose the most reasonable region, ask user if unclear. This OpenAPI uses RPC signing; prefer Python SDK or OpenAPI Explorer instead of manual signing. SDK Priority Python SDK (preferred) OpenAPI Explorer Other SDKs Python SDK quick query (instance ID / IP / plan) Virtual environment is recommended (avoid PEP 668 system install restrictions). python3 -m venv .venv . .venv/bin/activate python -m pip install alibabacloud_swas_open20200601 alibabacloud_tea_openapi alibabacloud_credentials import os from alibabacloud_swas_open20200601 . client import Client as SwasClient from alibabacloud_swas_open20200601 import models as swas_models from alibabacloud_tea_openapi import models as open_api_models def create_client ( region_id : str ) -

SwasClient : config = open_api_models . Config ( region_id = region_id , endpoint = f"swas. { region_id } .aliyuncs.com" , ) ak = os . getenv ( "ALICLOUD_ACCESS_KEY_ID" ) or os . getenv ( "ALIBABA_CLOUD_ACCESS_KEY_ID" ) sk = os . getenv ( "ALICLOUD_ACCESS_KEY_SECRET" ) or os . getenv ( "ALIBABA_CLOUD_ACCESS_KEY_SECRET" ) if ak and sk : config . access_key_id = ak config . access_key_secret = sk return SwasClient ( config ) def list_regions ( ) : client = create_client ( "cn-hangzhou" ) resp = client . list_regions ( swas_models . ListRegionsRequest ( ) ) return [ r . region_id for r in resp . body . regions ] def list_instances ( region_id : str ) : client = create_client ( region_id ) resp = client . list_instances ( swas_models . ListInstancesRequest ( region_id = region_id ) ) return resp . body . instances def main ( ) : for region_id in list_regions ( ) : for inst in list_instances ( region_id ) : ip = getattr ( inst , "public_ip_address" , None ) or getattr ( inst , "inner_ip_address" , None ) spec = getattr ( inst , "plan_name" , None ) or getattr ( inst , "plan_id" , None ) print ( inst . instance_id , ip or "-" , spec or "-" , region_id ) if name == "main" : main ( ) Python SDK scripts (recommended for inventory and summary) All-region instance inventory (TSV/JSON): scripts/list_instances_all_regions.py Count instances by plan: scripts/summary_instances_by_plan.py Count instances by status: scripts/summary_instances_by_status.py Fix SSH key-based access (custom port supported): scripts/fix_ssh_access.py Get current SSH port of an instance: scripts/get_ssh_port.py CLI Notes aliyun CLI may not expose swas-open as product name; prefer Python SDK. If CLI is mandatory, generate request examples in OpenAPI Explorer first, then migrate to CLI. Workflow Confirm resource type and region (instance/disk/snapshot/image/firewall/command/database/tag). Identify API group and operation in references/api_overview.md . Choose invocation method (Python SDK / OpenAPI Explorer / other SDK). After mutations, verify state/results with query APIs. Common Operation Map Instance query/start/stop/reboot: ListInstances 、 StartInstance(s) 、 StopInstance(s) 、 RebootInstance(s) Command execution: RunCommand or CreateCommand + InvokeCommand ; use DescribeInvocations / DescribeInvocationResult Firewall: ListFirewallRules / CreateFirewallRule(s) / ModifyFirewallRule / EnableFirewallRule / DisableFirewallRule Snapshot/disk/image: CreateSnapshot 、 ResetDisk 、 CreateCustomImage etc. Cloud Assistant Execution Notes Target instance must be in Running state. Cloud Assistant agent must be installed (use InstallCloudAssistant ). For PowerShell commands, ensure required modules are available on Windows instances. After execution, use DescribeInvocations or DescribeInvocationResult to fetch status and outputs. See references/command-assistant.md for details. Clarifying questions (ask when uncertain) What is the target region? Is VPC endpoint required? What are target instance IDs? Are they currently Running? What command/script type/timeout is needed? Linux or Windows? Do you need batch execution or scheduled execution? Output Policy If you need to save results or responses, write to: output/compute-swas-open/ Validation mkdir -p output/alicloud-compute-swas-open for f in skills/compute/swas/alicloud-compute-swas-open/scripts/*.py ; do python3 -m py_compile " $f " done echo "py_compile_ok"

output/alicloud-compute-swas-open/validate.txt Pass criteria: command exits 0 and output/alicloud-compute-swas-open/validate.txt is generated. Output And Evidence Save artifacts, command outputs, and API response summaries under output/alicloud-compute-swas-open/ . Include key parameters (region/resource id/time range) in evidence files for reproducibility. Prerequisites Configure least-privilege Alibaba Cloud credentials before execution. Prefer environment variables: ALICLOUD_ACCESS_KEY_ID , ALICLOUD_ACCESS_KEY_SECRET , optional ALICLOUD_REGION_ID . If region is unclear, ask the user before running mutating operations. Workflow Confirm user intent, region, identifiers, and whether the operation is read-only or mutating. Run one minimal read-only query first to verify connectivity and permissions. Execute the target operation with explicit parameters and bounded scope. Verify results and save output/evidence files. References API overview and operation groups: references/api_overview.md Endpoints and integration: references/endpoints.md Cloud Assistant highlights: references/command-assistant.md Official source list: references/sources.md

返回排行榜