在GitLab CI/CD中调用JIRA API POST接口的Curl请求报错排查
解决GitLab CI中Curl调用JIRA API的格式错误问题
核心问题定位
你的curl命令出现curl: (3) URL rejected: Malformed input to a URL function错误,是因为**-u参数行末尾缺少换行转义符**,导致curl把下一行的-H开头内容误解析为URL参数,引发格式解析失败。
修正后的完整Script配置
script: - echo "Running unit tests... This will take about 60 seconds." - apk add curl - > curl -X POST "https://test.atlassian.net/rest/api/2/issue/" \ -u "ishaan.kanwar@test.com:${JIRA_TOKEN}" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "fields": { "project": { "key": "SNAP" }, "summary": "Testing Gitlab Release", "description": "Issue Description", "issuetype": { "name": "Epic" } } }' - echo "Code coverage is 90%"
额外注意事项
- 确认GitLab CI/CD变量
JIRA_TOKEN已正确配置,且该token拥有创建Issue的权限 - 检查JSON内容的引号转义是否符合YAML语法要求(当前配置的转义是合规的)
- 提前验证JIRA项目
SNAP存在,且当前用户对该项目有创建Epic的权限,避免后续出现权限或项目不存在的错误
内容的提问来源于stack exchange,提问作者Ishaan Kanwar
相关产品推荐
相关产品推荐

