@@ -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