【发布时间】:2022-01-08 18:18:05
【问题描述】:
我们的工具团队设置 Ansible Tower 以使用托管在内部 gitlab 上的 .ini 文件中包含的清单。我无法改变这一点。随着环境中内容的变化(新版本、停用等),我需要修改这些文件
我觉得我很接近。
我可以使用私有访问令牌连接到 gitlab 并获得结果,但我无法弄清楚下载 README.md 文件以外的文件的路径是什么
Invoke-RestMethod -Uri 'https://git.toolsite.com/api/v4/projects/13001/repository/files/README.md?ref=main' -Headers $Headers -Method GET
file_name : README.md file_path : README.md size : 139 encoding : base64
我也可以递归列出文件:
Invoke-RestMethod -Uri 'https://git.toolsite.com/api/v4/projects/13001/repository/tree?ref=main&per_page=100&recursive=true' -Headers $Headers -Method GET
id : 4cf897a48c777c58b6cfdb1705d9e0fe28602a10
name : Windows_Non-Prod_Servers_Inventory.ini
type : blob
path : Inventory/Windows_Non-Prod_Servers_Inventory.ini
mode : 100644
id : 0ce79694fb4511b8a90379250ee829cd20b281f3
name : Windows_Prod_Servers_Inventory.ini
type : blob
path : Inventory/Windows_Prod_Servers_Inventory.ini
但我无法为 Inventory/Windows_Prod_Servers_Inventory.ini 找到正确的路径
Invoke-RestMethod -Uri 'https://git.toolsite.com/api/v4/projects/13001/repository/files/Inventory/Windows_Non-Prod_Servers_Inventory.ini?ref=main' -Headers $Headers -Method GET
Invoke-RestMethod : {"error":"404 Not Found"}
另外,在浏览器中,该文件的 URL 是 https://git.toolsite.com/bswh/bswh_windows/-/blob/main/Inventory/Windows_Non-Prod_Servers_Inventory.ini
我需要一点帮助
谢谢
【问题讨论】:
标签: powershell api gitlab