Navigation

    Inedo Community Forums

    Forums

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    1. Home
    2. atripp
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    atripp

    @atripp

    inedo-engineer

    C# developer by trade, but writing less and less code and more and more specs.

    97
    Reputation
    1743
    Posts
    200
    Profile views
    2
    Followers
    0
    Following
    Joined Last Online
    Website inedo.com/ Location Digital Vagabond (Sometimes Inedo HQ)

    atripp Follow
    inedo-engineer administrators

    Best posts made by atripp

    • RE: Service Health API call returning 404

      Hello; I've updated the documentation to clarify this, but it's available starting in ProGet 5.2.9. So, you'll need to upgrade to enable it :)

      posted in Support
      atripp
      atripp
    • RE: NPM Connector returns plus "+" in versions

      Thanks for the update! I've noted this in the docs, and linked to this discussion :)

      https://github.com/Inedo/inedo-docs/commit/d24087911584bbda833314084a58c2ae1ff41c39

      posted in Support
      atripp
      atripp
    • RE: [ProGet] [NativeApi] NpmPackages_DeletePackage not working.

      Hello,

      That API will only delete package metadata from the database, not from disk. It's mostly intended for internal use only, and probably shouldn't be exposed to the API. In any case, we don't store the @ with internally, so if you change @myscope to myscope it should work.

      Note that the NPM doesn't provide a way to delete packages, and we never implemented it. There hasn't been any demand for it to date, as people don't really delete packages programmatically - but you're definitely welcome to submit a feature request and help us understand why it'd be a value (like, the workflow you use that requires deleting packages, etc).

      Alana

      posted in Support
      atripp
      atripp
    • RE: Creating PowerShell repository, protecting pull/download by API key

      Hello, for sure!

      It's pretty easy; just don't give the Anonymous user any access to your feeds, and then authentication will always be required, either when browsing the ProGet application or using the API (such as Install-Module).

      When you use the Register-PSRepository command, you can the Credential option to specify a credential.

      This credential can be the name/password of a user inside of ProGet (let's say, Admin:Admin), or it can be username of api with a password of an api key you've configured (so, api:my-secret-key).

      posted in Support
      atripp
      atripp
    • RE: Restricting API access to View/Download

      Hello;

      The Native API is for low, system-level functions, and it's "all or nothing". If you give someone access to Native API, you are effectively making them an administrator, as they can also change permissions and grant admin privileges. So, I don't think you want this. Instead, you'll want to use the Debian API endpoint that we implement.

      It's a third-party API format

      In order to support third-party package formats types like NuGet, npm, etc., ProGet implements a variety of third-party APIs. We only provide minimal documentation for these APIs, as they are generally either already documented elsewhere. However, you can generally find the basics by searching for specific things you'd like to do with the API, such as "how to search for packages using the NuGet API" or "how to publish an npm package using the API".

      So in this case, I recommend to search "how to view and download apt packages".

      posted in Support
      atripp
      atripp
    • RE: PyPI package not shown in search results accessible via url

      I'm not very familiar with PyPi packages, but I know there are some oddities with - and _, and that they are sometimes supposed to be treated the same, and sometimes not. We don't totally understand all the rules, to be honest (even after reading PEP503 specifications).

      In this case, the package is actually websocket_client, not websocket-client.

      See: https://pypi.org/project/websocket_client/

      When you search for websocket_client in ProGet, it shows up, as expected.

      posted in Support
      atripp
      atripp
    • RE: How to find out package disk space?

      In ProGet 5.3, we plan to have a couple tabs on each Tag (i.e. container image) that would provide this info: Metadata (will be a key/value pair of a bunch of stuff), and Layers will show details about each of these layers.

      That might help, but otherwise, we have retention policies which are designed to clean up old and unused images.We'll also have a way to detect which images are actually being used :)

      posted in Support
      atripp
      atripp
    • RE: [BUG - ProGet] Not able to remove container description

      As @apxltd mentioned, we've got a whole bunch planned for ProGet 5.3.

      I've logged this to our internal project document, and if it's easy to implement in ProGet 5.2 (I can't imagine it wouldn't be), we'll log it as a bug and ship in a maintence release.

      Do note, this is not an IMAGE description, it's a REPOSITORY (i.e. a collection of images with the same name, like MyCoolContainerApp) description; so this means the description will be there on all images/tags in the repository.

      posted in Support
      atripp
      atripp
    • RE: [Question - ProGet] Are versions amount wrong ?

      You're right, I guess that's showing the "layers" instead of the "tags"; I think it should be showing container registries separately (they're not really feeds), but that's how it's represented behind the scenes now.

      Anyways we are working on ProGet 5.3 now; there's a whole bunch of container improvements coming, so I've noted this on our internal project document, to make sure we get a better display for container registries.

      posted in Support
      atripp
      atripp
    • RE: Anonymous user can see list of packages and containers

      @Stephen-Schaff thanks for the bug report, I verified that this may happen depending on permission of user, and which feeds they can/can't use --- but it seems an easy enough fix that we can do via PG-1894 (targeted to next release) - the packages can't be viewed upon clicking, but it's a sub-optimal experience for showing packages they can't see

      posted in Support
      atripp
      atripp

    Latest posts made by atripp

    • RE: Proget 25.0.9

      Hi @pmsensi ,

      Thanks for the heads-up; looks like there was a replication issue with one of our edge nodes. It should be there now

      Thanks,
      Alana

      posted in Support
      atripp
      atripp
    • RE: proget - Enhancement request: show value of X-Forwarded-For header

      Thanks @felfert it was an easy add, so look out for PG-3106 in the next maintenance release!

      posted in Support
      atripp
      atripp
    • RE: `pgutil assets metadata get` fails when filename contain spaces

      Hi @mmaharjan_0067

      The "unexpected argument" running without quotes is expected, but it works fine when I run with quotes. I'm afraid I can't reproduce this.

      I would check under Admin > Diagnostic Center to see if anythings logged. Alternatively, you may need to query the API by doing something like this:

      curl http://server:8624/endpoints/Test/metadata/metadata-test/v1/1%20-%20Normal.txt
      

      Thanks,
      Alana

      posted in Support
      atripp
      atripp
    • RE: ERROR while migrating maven repository from Jfrog Artifactory.

      Hi @bohdan-cech_2403 ,

      Thanks for sharing that; I can confirm receipt, reproduction, and fixing (PG-3105). If you'd like to try it, you can get the fix in 25.0.10-ci.2 - otherwise it'll be in the next maintenance release (next Friday).

      @wechselberg-nisboerge_3629 FYI I entered the url/username/password into ProGet, but I got the message "Failed to find any registries." So, I tried with curl and I got this:

      $> curl "https://artifactory.REDACTED.com/artifactory/api/repositories?type=local" --user support
      Enter host password for user 'support':
      {
        "errors" : [ {
          "status" : 401,
          "message" : "Artifactory configured to accept only encrypted passwords but received a clear text password, getting the encrypted password can be done via the WebUI."
        } ]
      }
      

      I have no idea what explains the different behavior. Anyway, I logged into the portal on that URL and generated some kind of key, and it let me connect.

      Thanks,
      Alana

      posted in Support
      atripp
      atripp
    • RE: proget - Enhancement request: show value of X-Forwarded-For header

      Hi @felfert,

      So far as I can tell, the IP isn't currently logged in these messages... I can see how that would be helpful.

      I can certainly do that (which would then show the X-Forwarded when available), but I wanted to make sure I'm looking in the right place. Because I don't see IP info now.

      Thanks,
      Alana

      posted in Support
      atripp
      atripp
    • RE: proget 500 Internal server error when pushing to a proget docker feed

      Hi @felfert ,

      As an update, we'd are planning on this pattern instead of row/table locking (PG-3104). It gives us a lot more control and makes it a lot easier to avoid deadlocks.

      I still can't reproduce the issue, but I see no reason this won't work.

      CREATE OR REPLACE FUNCTION "DockerBlobs_CreateOrUpdateBlob"
      (
          "@Feed_Id" INT,
          "@Blob_Digest" VARCHAR(128),
          "@Blob_Size" BIGINT,
          "@MediaType_Name" VARCHAR(255) = NULL,
          "@Cached_Indicator" BOOLEAN = NULL,
          "@Download_Count" INT = NULL,
          "@DockerBlob_Id" INT = NULL
      )
      RETURNS INT
      LANGUAGE plpgsql
      AS $$
      BEGIN
      
      	-- avoid race condition when two procs call at exact same time
      	PERFORM PG_ADVISORY_XACT_LOCK(HASHTEXT(CONCAT_WS('DockerBlobs_CreateOrUpdateBlob', "@Feed_Id", LOWER("@Blob_Digest"))));
      
          SELECT "DockerBlob_Id"
            INTO "@DockerBlob_Id"
            FROM "DockerBlobs"
           WHERE ("Feed_Id" = "@Feed_Id" OR ("Feed_Id" IS NULL AND "@Feed_Id" IS NULL))
             AND "Blob_Digest" = "@Blob_Digest";
      
          WITH updated AS
          (
              UPDATE "DockerBlobs"
                 SET "Blob_Size" = "@Blob_Size",
                     "MediaType_Name" = COALESCE("@MediaType_Name", "MediaType_Name"),
                     "Cached_Indicator" = COALESCE("@Cached_Indicator", "Cached_Indicator")
               WHERE ("Feed_Id" = "@Feed_Id" OR ("Feed_Id" IS NULL AND "@Feed_Id" IS NULL)) 
                 AND "Blob_Digest" = "@Blob_Digest"
              RETURNING *
          )        
          INSERT INTO "DockerBlobs"
          (
              "Feed_Id",
              "Blob_Digest",
              "Download_Count",
              "Blob_Size",
              "MediaType_Name",
              "Cached_Indicator"
          )
          SELECT
              "@Feed_Id",
              "@Blob_Digest",
              COALESCE("@Download_Count", 0),
              "@Blob_Size",
              "@MediaType_Name",
              COALESCE("@Cached_Indicator", 'N')
          WHERE NOT EXISTS (SELECT * FROM updated)
          RETURNING "DockerBlob_Id" INTO "@DockerBlob_Id";
      
          RETURN "@DockerBlob_Id";
      
      END $$;
      
      posted in Support
      atripp
      atripp
    • RE: proget 500 Internal server error when pushing to a proget docker feed

      @felfert amazing!! That script will come in handy when we need to help users patch their instance; we can also try to add something that allows you to patch via the UI as well!!

      posted in Support
      atripp
      atripp
    • RE: proget 500 Internal server error when pushing to a proget docker feed

      @felfert thanks for confirming!!

      FYI tThe fix has not been applied yet to code yet, but you can patch the stored procedure (painfully) as a workaround for now. We will try to find a better solution. The only thing I can imagine happening is that the PUT is happening immediately after the PATCH finishes, but before the client receives a 200 response. I have no idea though.

      We'll figure something out, now that we know where it is thanks to your help!!

      posted in Support
      atripp
      atripp
    • RE: Proget maven migration

      Hi @parthu-reddy,

      ProGet 2025 supports existing Maven classic feeds; you should be able to migrate just as you were in ProGet 2024.

      Thanks,
      Alana

      posted in Support
      atripp
      atripp
    • RE: Not able to upload .spd files to proget assets

      Hi @parthu-reddy ,

      Since these are network-level errors, you would need to use a tool like Wireshark or another packet analyzer to troubleshoot these kind of connectivity failures.

      Thanks,
      Alana

      posted in Support
      atripp
      atripp