Skip to content

Commit 3c05034

Browse files
committed
add github_token
1 parent 49be8ad commit 3c05034

File tree

2 files changed

+22
-4
lines changed

2 files changed

+22
-4
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ jobs:
4545

4646
- name: Setup JAM toolchain
4747
run: cargo jam setup
48+
env:
49+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4850

4951
- name: Verify toolchain installation
5052
run: cargo jam setup --info
@@ -76,10 +78,14 @@ jobs:
7678

7779
- name: Setup JAM toolchain
7880
run: cargo jam setup
81+
env:
82+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
7983

8084
- name: Run end-to-end tests
8185
run: cargo jam test --verbose
8286
timeout-minutes: 5
87+
env:
88+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
8389

8490
lint:
8591
name: Lint

src/toolchain/download.rs

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,14 @@ pub fn fetch_releases(limit: usize) -> Result<Vec<GitHubRelease>> {
3333
.map_err(|e| CargoJamError::Git(format!("Failed to create HTTP client: {}", e)))?;
3434

3535
let url = format!("{}?per_page={}", GITHUB_API_URL, limit);
36-
let response = client
37-
.get(&url)
36+
let mut request = client.get(&url);
37+
38+
// Use GITHUB_TOKEN if available (for CI environments with rate limits)
39+
if let Ok(token) = std::env::var("GITHUB_TOKEN") {
40+
request = request.header("Authorization", format!("Bearer {}", token));
41+
}
42+
43+
let response = request
3844
.send()
3945
.map_err(|e| CargoJamError::Git(format!("Failed to fetch releases: {}", e)))?;
4046

@@ -69,8 +75,14 @@ pub fn get_release(version: &str) -> Result<GitHubRelease> {
6975
.map_err(|e| CargoJamError::Git(format!("Failed to create HTTP client: {}", e)))?;
7076

7177
let url = format!("{}/tags/{}", GITHUB_API_URL, version);
72-
let response = client
73-
.get(&url)
78+
let mut request = client.get(&url);
79+
80+
// Use GITHUB_TOKEN if available (for CI environments with rate limits)
81+
if let Ok(token) = std::env::var("GITHUB_TOKEN") {
82+
request = request.header("Authorization", format!("Bearer {}", token));
83+
}
84+
85+
let response = request
7486
.send()
7587
.map_err(|e| CargoJamError::Git(format!("Failed to fetch release {}: {}", version, e)))?;
7688

0 commit comments

Comments
 (0)