Skip to content

Commit 1ae6f9f

Browse files
committed
Handle PRIVATE_TOKEN better
1 parent b563ab5 commit 1ae6f9f

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

SharedProcessors/GitLabReleasesInfoProvider.py

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,10 @@ class GitLabReleasesInfoProvider(Processor):
6464
"PRIVATE_TOKEN": {
6565
"required": False,
6666
"description": (
67-
"GitLab personal, group, or project access token."
68-
"MUST have the `api` scope granted."
69-
"Optionally set a environment variable, but is required in one or the "
70-
"other."
67+
"GitLab personal, group, or project access token. "
68+
"MUST have the `api` scope granted. "
69+
"Optional for public repositories, required for private repositories. "
70+
"Can be set as an environment variable or input variable."
7171
),
7272
},
7373
}
@@ -96,15 +96,15 @@ def gitlab_api_get(self, endpoint):
9696
GITLAB_HOSTNAME = self.env.get("GITLAB_HOSTNAME")
9797
GITLAB_API_BASE_URL = f"https://{GITLAB_HOSTNAME}/api/v4"
9898
PRIVATE_TOKEN = self.env.get("PRIVATE_TOKEN")
99-
if not PRIVATE_TOKEN:
100-
raise ProcessorError(
101-
f"PRIVATE_TOKEN is not set as environment or input variable."
102-
)
10399

104100
headers = {
105-
"PRIVATE-TOKEN": PRIVATE_TOKEN,
106101
"User-Agent": f"AutoPkg/{get_autopkg_version()}",
107102
}
103+
104+
# Only add PRIVATE-TOKEN header if token is provided
105+
if PRIVATE_TOKEN:
106+
headers["PRIVATE-TOKEN"] = PRIVATE_TOKEN
107+
108108
url = f"{GITLAB_API_BASE_URL}{endpoint}"
109109
req = Request(url, headers=headers)
110110
with urlopen(req, context=self.ssl_context_certifi()) as response:
@@ -142,7 +142,8 @@ def get_release_link(self, releases, regex=None):
142142

143143
def main(self):
144144
PRIVATE_TOKEN = os.getenv("PRIVATE_TOKEN") or self.env.get("PRIVATE_TOKEN")
145-
self.env["PRIVATE_TOKEN"] = PRIVATE_TOKEN
145+
if PRIVATE_TOKEN:
146+
self.env["PRIVATE_TOKEN"] = PRIVATE_TOKEN
146147
releases = self.get_releases(latest=self.env.get("latest"))
147148
release, link = self.get_release_link(
148149
releases, regex=self.env.get("link_regex")

0 commit comments

Comments
 (0)