Uploaded image for project: 'Artifactory Binary Repository'
  1. Artifactory Binary Repository
  2. RTFACT-22349

Artifactory generates InRelease file with the wrong line endings in Windows

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Done
    • Priority: 4 - Normal
    • Resolution: Done
    • Affects Version/s: 6.19.0
    • Fix Version/s: 7.10.2, 6.23.7
    • Component/s: None
    • Labels:
    • Environment:

      Windows 2016 server

      Debian 9

    • Severity:
      Medium

      Description

      In the recent Artifactory 6.19 update, support for InRelease metadata was added. Artifactory now produces an InRelease metadata file in the repository when working with GPG signing. In Windows environments, the file generates with DOS line endings ("\r\n"). The Artifactory client now downloads the InRelease files instead of the release/release.gpg files since they are heavier when downloading Debian packages. Trying to access the Debian packages from Artifactory in a Debian Stretch or below environment does not work since apt cannot handle the DOS line endings in the InRelease file it retrieves.

       

      Changing the DOS line endings to Unix line endings ("\n") in the InRelease file (for example using dos2unix) and reuploading the file to the repo keeps the Unix line endings, which is a temporary workaround but anytime the repository is changed the InRelease file is recalculated with DOS/CRLF endings.

       

      To replicate:

      -Create an Artifactory 6.19 server on a Windows Machine

      -Create a local Debian repository

      -Set up the repository with signed keys and a Release file

      -Set up a Debian Stretch machine

      -Add the Artifactory Debian repo to apt sources

      -Run an apt update

      -Clearsigned file isn't valid, got 'NOSPLIT' error

      -You can try to remove the InRelease file but you will continue to get errors when trying to fetch from the repo

       

      The steps above result in a success if the Artifactory 6.19 server is on a Linux Machine

      Artifactory versions below 6.19 also work without the InRelease file, even on Windows machines.

       

      It seems that even after converting all CRLF endings that exist between the signed keys, PGP signature, and Release file to Unix endings, the InRelease file is still created with CRLF endings. Specifically, the PGP signature inside contains the CRLF endings.

      -To recreate the InRelease file, right click on the repository and select recalculate index

       

       

       

        Attachments

          Activity

            People

            Assignee:
            andreyt Andrey Tashlitsky
            Reporter:
            niro Nir Ovadia
            Votes:
            5 Vote for this issue
            Watchers:
            6 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Sync Status

                Connection: RTFACT Sync
                RTMID-22349 -
                SYNCHRONIZED
                • Last Sync Date: