Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

ApiOps CLI Publisher fails with empty urlTemplate error.

未关闭
#317 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
55/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
typescript
领域
api, cli

调研方向

Start with the supplied operationInformation.json for notification-socket-v1/operations/onHandshake and trace how apiops publish processes its urlTemplate. Reproduce with the command and artifact described in the issue; done means the WebSocket handshake operation can be published with an empty urlTemplate.

由索引模型根据 Issue 内容生成。

描述

type:bug
Command that triggered the bug

npx apiops publish

Expected behavior

The publisher pipeline can publish the Websocket onHandshake API with a empty urlTemplate.

Actual behavior

Our Publisher pipeline is failing when running the apiops publish command with this error:

The Command from the pipeline:

npx apiops publish `
            --resource-group '${{ parameters.resourceGroupName }}' `
            --service-name '${{ parameters.apiManagementServiceName }}' `
            --source '${{ parameters.artifactSource }}' `
            --overrides '${{ parameters.configurationPath }}' `
            --subscription-id $subscriptionId `
            --commit-id '$(Build.SourceVersion)'

The Error:

ERROR PUT apioperation/notification-socket-v1/onHandshake: HTTP 400: {"error":{"code":"ValidationError","message":"One or more fields contain incorrect values:","details":[{"code":"ValidationError","target":"urlTemplate","message":"'urlTemplate' should not be empty."}]}}

The API is a WebSocket API & the Socket is opening a handshake to the PubSub. We need an empty urlTemplate for it because we cant change it in azure.

This is the artifact file from it (apim-artifacts\apis\notification-socket-v1\operations\onHandshake\operationInformation.json):

{
  "id": "/subscriptions/<>/resourceGroups/<>/providers/Microsoft.ApiManagement/service/<>/apis/notification-socket-v1/operations/onHandshake",
  "type": "Microsoft.ApiManagement/service/apis/operations",
  "name": "onHandshake",
  "properties": {
    "displayName": "onHandshake",
    "method": "GET",
    "urlTemplate": "",
    "templateParameters": [],
    "description": "WebSocket opening handshake",
    "responses": [],
    "policies": null,
    "effectivePath": null
  }
}
apiops CLI version

1.0.4

Environment details
  • Image: ubuntu-latest
  • NodeJs: 22.x
CI/CD environment

Azure DevOps

Is this bug blocking you?

Yes

主要语言
TypeScript
星标
29
派生
11
平均合并
1 天 15 小时
30 天内合并 PR
15

环境准备

在 Codespaces 中打开

在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

Azure/apiops-cli 的其他 Issue

查看 Azure/apiops-cli 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。