libgit2 / libgit2/libgit2sharp
Capture error details of "remote unpack failed"
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- C#
- Star
- 3.5k
- Fork
- 925
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Reproduction steps
- create Azure DevOps repo with security rules enabled
- create commit which violates server rules. For example
appsettings.json
{
"Parameters": {
"note": "this will trigger secret warning in the Azdo push, which is what I'm testing for",
"secret": "opensesame"
}
}
I configure the repo.Network.Push this way
var po = new PushOptions()
{
CredentialsProvider = (_, _, _) => AzdoCreddentials,
OnPushStatusError = (reason) =>
{
mainLogger.Log(LogLevel.Error, "Push failed with {}", reason.Message);
},
};
Expected behavior
Make PushOptions.OnPushStatusError or another callback to receive details of remote unpack failure similar to git CLI
Specifically error: remote unpack failed: error VS403654: The push was rejected because it contains one or more secrets. in the log below.
PS C:\Dev\dotnet-mirroring\sandbox\pavelsavara-runtime> git push
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 20 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 406 bytes | 406.00 KiB/s, done.
Total 3 (delta 1), reused 3 (delta 1), pack-reused 0 (from 0)
remote: Analyzing objects... (3/3) (27 ms)
remote: Validating commits... (1/1) done (0 ms)
remote: Checking for credentials and other secrets... done (59 ms)
error: remote unpack failed: error VS403654: The push was rejected because it contains one or more secrets.
To https://dev.azure.com/dnceng/internal/_git/pavelsavara-runtime
! [remote rejected] browser_firefox_shm -> browser_firefox_shm (VS403654: The push was rejected because it contains one or more secrets.
Resolve the following secrets before pushing again. For help, see https://aka.ms/1ESSecretScanning.
Actual behavior
LibGit2Sharp.LibGit2SharpException: unpacking the sent packfile failed on the remote with no more details
Version of LibGit2Sharp (release number or SHA1)
0.29.0
Operating system(s) tested; .NET runtime tested
- windows 10
- SDK 9.0.100-preview.1.24101.2
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu với callback PushOptions.OnPushStatusError và đường dẫn lỗi remote unpack được mô tả trong issue. Tái hiện việc Azure DevOps từ chối do quét secret và truy vết nơi thông báo remote chi tiết bị mất. Công việc được xem là hoàn tất khi các caller có thể nhận được chi tiết lỗi remote unpack, bao gồm thông báo VS403654, thay vì chỉ nhận exception chung.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- csharp, git
- Lĩnh vực
- developer-experience, tooling
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100