@@ -220,3 +220,76 @@ for details on:
220220- :ref: `HTTP request headers <scancodeio_settings_fetch_headers >` (e.g., for GitHub tokens)
221221- :ref: `.netrc file <scancodeio_settings_netrc_location >`
222222- :ref: `Docker private registries <scancodeio_settings_skopeo_credentials >`
223+
224+ .. _inputs_artifactory :
225+
226+ JFrog Artifactory
227+ -----------------
228+
229+ ScanCode.io can fetch artifacts from **JFrog Artifactory ** repositories using
230+ standard download URLs.
231+
232+ The URL format follows Artifactory's REST API pattern::
233+
234+ https://<artifactory-host>/artifactory/<repo-key>/<artifact-path>
235+
236+ Example::
237+
238+ https://mycompany.jfrog.io/artifactory/libs-release/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar
239+
240+ For **authentication **, configure credentials in your ``.env `` file using one of
241+ these methods:
242+
243+ Using Basic Authentication::
244+
245+ SCANCODEIO_FETCH_BASIC_AUTH="mycompany.jfrog.io=username,password"
246+
247+ Using API Key (via headers)::
248+
249+ SCANCODEIO_FETCH_HEADERS="mycompany.jfrog.io=X-JFrog-Art-Api=<YOUR_API_KEY>"
250+
251+ Using Access Token::
252+
253+ SCANCODEIO_FETCH_HEADERS="mycompany.jfrog.io=Authorization=Bearer <YOUR_TOKEN>"
254+
255+ .. tip ::
256+ You can also use a :ref: `.netrc file <scancodeio_settings_netrc_location >` for
257+ authentication if your organization already maintains one.
258+
259+ .. _inputs_nexus :
260+
261+ Sonatype Nexus
262+ --------------
263+
264+ ScanCode.io can fetch artifacts from **Sonatype Nexus Repository ** (versions 2 and 3)
265+ using standard download URLs.
266+
267+ For **Nexus 3 **, the URL format follows the repository path pattern::
268+
269+ https://<nexus-host>/repository/<repo-name>/<path-to-artifact>
270+
271+ Example for a Maven artifact::
272+
273+ https://nexus.mycompany.com/repository/maven-central/ch/qos/logback/logback-core/1.4.0/logback-core-1.4.0.jar
274+
275+ Example for a PyPI package::
276+
277+ https://nexus.mycompany.com/repository/pypi-proxy/packages/urllib3/1.26.7/urllib3-1.26.7-py2.py3-none-any.whl
278+
279+ Example for an npm package::
280+
281+ https://nexus.mycompany.com/repository/npm-proxy/redis/-/redis-2.8.0.tgz
282+
283+ For **authentication **, configure credentials in your ``.env `` file:
284+
285+ Using Basic Authentication::
286+
287+ SCANCODEIO_FETCH_BASIC_AUTH="nexus.mycompany.com=username,password"
288+
289+ Using a Bearer Token::
290+
291+ SCANCODEIO_FETCH_HEADERS="nexus.mycompany.com=Authorization=Bearer <YOUR_TOKEN>"
292+
293+ .. tip ::
294+ You can also use a :ref: `.netrc file <scancodeio_settings_netrc_location >` for
295+ authentication if your organization already maintains one.
0 commit comments