package-usage

作者: pulumi

追踪Pulumi组织中哪些堆栈使用了特定包及其版本。用于跨堆栈审计,识别过时或未维护的…

npx skills add https://github.com/pulumi/agent-skills --skill package-usage

API Reference

Query the Pulumi Cloud API with the pulumi api CLI subcommand. It authenticates with your existing Pulumi credentials and returns JSON.

Get the latest version of a package

pulumi api /api/registry/packages -F name={package_name} -F orgLogin={orgName}

Include orgLogin with the user's organization name. Omit -F name=... to list all packages visible to the organization (useful when the user has not named a specific package). The response contains a packages array. Each entry has a version field (the latest version), plus name, publisher, source, and packageStatus.

Get stack usage for a package

pulumi api /api/orgs/{orgName}/packages/usage -F packageName={package_name}

Replace {orgName} with the org name from context, PULUMI_ORG, or ask the user. packageName is required; query one package at a time.

Response fields:

  • packageName: The queried package
  • stacks: Array of {stackName, projectName, version, lastUpdate}
  • totalStacks: Total count

Workflow: Find outdated stacks

Use when the user wants to know which stacks are using an outdated version of a package.

  1. Get the latest version of the package
  2. Get stack usage for the package
  3. Compare each stack's version against the latest to identify outdated stacks
  4. Present results using the output format below

Output Format

Present results as a markdown table followed by a summary line:

| Project | Stack | Current Version | Latest Version | Status |
|---------|-------|-----------------|----------------|--------|
| my-app  | dev   | 6.40.0          | 6.52.0         | Outdated |
| my-app  | prod  | 6.52.0          | 6.52.0         | Up-to-date |

2 of 2 stacks checked. 1 outdated.

Out of scope: upgrading a specific stack

This skill identifies outdated stacks. It does not perform the upgrade itself. For actually bumping a package version in a project — editing package.json, requirements.txt, pyproject.toml, go.mod, or Pulumi.yaml, running pulumi preview, and reconciling the diff — hand off to the provider-upgrade skill.

来自 pulumi 的更多技能

pulumi-debug-failed-operation
pulumi
调试失败的Pulumi更新或预览:读取Pulumi已记录的错误,找出原因并修复。当用户要求…时加载此技能。
provider-upgrade
pulumi
提供商升级是翻译,而非变更请求。
cloudformation-to-pulumi
pulumi
将AWS CloudFormation堆栈或模板转换、迁移或导入为Pulumi程序。当用户希望从CloudFormation迁移到…时加载此技能。
pulumi-arm-to-pulumi
pulumi
将ARM模板、Bicep或现有Azure资源转换为Pulumi基础设施代码。支持将完整ARM模板转换为Pulumi(TypeScript、Python、Go、C#、Java或YAML),涵盖参数、变量、循环、条件语句和嵌套模板。同时支持azure-native(完整API覆盖)和azure(经典简化版)提供程序,自动为每个资源选择正确的提供程序。通过零差异验证将现有已部署的Azure资源导入Pulumi...
pulumi-cdk-to-pulumi
pulumi
当用户想要迁移、转换、移植、翻译或移动AWS CDK应用程序(包括CDK堆栈、构造或…)时,加载此技能。
pulumi-migrate-from-discovered-stack
pulumi
将 CloudFormation 或 ARM 堆栈迁移到 Pulumi 堆栈,源自 Pulumi Cloud 的 Discovery 功能已发现并通过 … 暴露的堆栈。
pulumi-automation-api
pulumi
跨多个堆栈和应用程序对Pulumi基础设施操作进行编程化编排。支持本地源(现有Pulumi项目)和内联源(嵌入式程序)架构,实现从简单到复杂多堆栈场景的灵活部署模式。处理具有依赖顺序的多堆栈编排、并行独立部署以及跨堆栈输出传递,以实现协调的基础设施配置。提供编程化...
pulumi-best-practices
pulumi
编写可靠、可维护的Pulumi基础设施代码的全面最佳实践。避免在apply()回调中创建资源;直接将Output对象作为输入传递,以保留依赖跟踪和预览可见性。使用ComponentResource类将相关资源分组为可复用的逻辑单元,并通过parent: this建立正确的父子层级。从一开始就使用--secret标志或config.requireSecret()加密机密,防止状态文件中泄露凭据...