Inedo Community Forums Forums
    • Recent
    • Tags
    • Popular
    • Login
    1. Home
    2. stevedennis

    Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

    If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

    stevedennisS Offline
    • Profile
    • Following 0
    • Followers 1
    • Topics 0
    • Posts 531
    • Groups 2

    stevedennis

    @stevedennis

    inedo-engineer
    33
    Reputation
    46
    Profile views
    531
    Posts
    1
    Followers
    0
    Following
    Joined
    Last Online

    stevedennis Unfollow Follow
    inedo-engineer administrators

    Best posts made by stevedennis

    • RE: ProGet 2025 Rootless Containers

      Hi @james-woods_8996 ,

      Setting the ASPNETCORE_URLS is the correct way to address this; that troubleshooting guide is outdated (though it probably still works to write out the config file like that).

      As far as I understand, this behavior has not changed in ProGet 2025 and has been the default behavior since ProGet 2022. We had considered changing the Linux ports to be 8624/8625 to mirror Windows defaults, but decided to just update the documentation to clarify.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: [ProGet] Incorrect package publish date affecting policies

      Hi @amy.j,

      Good news! We've decided to correct this, along with some other errant behavior with carrying over certain server-side metadata from connectors.

      We are planning to ship this in the upcoming maintenance release (scheduled for August 7) via PG-3342 (FIX: Ensure correct server-side metadata (publish date, listed, deprecated) is set when adding package via pull, download, or promote from remote connectors).

      This is currently in testing / code review now, asit's a bit of a riskier change. But assuming there's no issues with it, it will be available after the release.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: How to set content type of asset with API?

      @joshuagilman_1054 this is currently planned for 5.3.27 as PG-1934 (April 17) - we'll let you know if plans change!

      posted in Support
      stevedennisS
      stevedennis
    • RE: ProGet backup job in docker

      @p-pelinski_1371 @pbe_9047 thanks for confirming that!

      We will get this fixed via PG-3031 in the next maintenance release. You are also welcome to try the proget:25.0.3-ci.3 container image, which is building now.

      posted in Support
      stevedennisS
      stevedennis
    • RE: Feature Request: Navigate directory structure under /v2/conans/ in the web UI

      @mmaharjan_0067 we'll see how we can improve this while we work on PG-3034

      posted in Support
      stevedennisS
      stevedennis
    • RE: Proget 2024.37 (Build 4) issues (tags and counters)

      @phopkins_6694 perfect, just what I was looking for

      I was able to reproduce this - searches via the NuGet API (which connectors use) will consider tags, while local searches seem to only be looking at names.

      I'm not sure how long this has been the case, but we'll try to get it fixed soon. Unfortunately it's not a trivial fix, hopefully we'll do it via PG-3046, likely in the July 18 maintenance release.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: Packages with Noncanonical Names errors on internalized packages

      @jfullmer_7346 this is a bit tricky behind the scenes but hopefully will be resolved with PG-3047 -- which we hope to get in the next or following maintenance release

      posted in Support
      stevedennisS
      stevedennis
    • RE: Support for Rust Cargo packages

      Hi @brett-polivka,

      I've added it to our Other Feed Types page, and linked this as the official discussion thread.

      There's a lot of things to consider in developing a new feed type, but ultimately it all comes down to two things: (1) how much more value does this feature bring to our users, and (2) how many new licenses of ProGet would this feature sell.

      The second question is where internal market research comes in, but we would love your opinion on the first question.

      Here's a nice and simple way to help understand value: how much more do you suppose your company/organization would pay for this feature if it were available as a hypothetical add-on? $100/year? $1,000/year? $10,000/year? Etc. And why? What time is it saving, risk is it mitigating, etc.

      The second part of the value equation is how much effort will it take, technically speaking. It's more than 15 minutes obviously, but is it 10 hours? 100 hours? Etc.

      On the plus side, the package format seems to be documented pretty well. However, the registry API has a huge red flag:

      The index key should be a URL to a git repository with the registry's index.

      Does this mean their API is Git-based, and we'd need to first add private Git repository hosting to ProGet? And did they test it with private/authenticated Git repositories, or just their public (probably GitHub) repository? 🙄

      posted in Support
      stevedennisS
      stevedennis
    • RE: Proget: delete all versions of a package via API

      Hi @mcascone ,

      We don't have a single API method that can be used to delete all package versions from the API, but the foreach loop will do the trick!

      I should add that I am doing this as the first stab at an attempt to automatically delete packages from a development feed, when the corresponding branch in github is deleted

      I don't know the specifics/details of your use-case, but based on what I read, I'd recommend these guidelines:

      • assuming: one GitHub repository, one project, one package you want to release
      • use the same package name/group for all packages you create for this project, regardless of branch or development status
      • create your "dev" packages using a prerelease version number, that has a sort of -ci.## version (assuming you use CI to build packages)
      • embed the commit id and branch in your upack metadata file, for traceability
      • if you want to see which branch the packages was created from using the version number alone, add a +branch metadata label to the version number for branches (don't do this for master)
      • use repackaging and promotion to take your -ci packages to -rc to stable (and the desired feed)
      • let retention policies automatically cleanup up the -ci packages
      posted in Support
      stevedennisS
      stevedennis
    • RE: npm package version falsely marked as vulnerable by ProGet

      Hi @andreas-unverdorben_1551 ,

      I'm afraid this is a problem with our upstream source (GHSA). Long story short, the datafile is incorrect and does not specify a range.

      We do not have any plans to build a system/module that allows us to "override" data in the upstream datasources at this time, so the only way we can really address it is by fixing the upstream source.

      I believe the best route to do that would be to submit a pull request to the GHSA repository against the related datafiles (e.g. GHSA-4r6h-8v6p-xvw6.json)

      In this case, they are missing a "fixed" event in the range:

            "ranges": [
              {
                "type": "ECOSYSTEM",
                "events": [
                  {
                    "introduced": "0"
                  }
                ]
              }
            ]
      

      Here's what it needs to look like:

            "ranges": [
              {
                "type": "ECOSYSTEM",
                "events": [
                  {
                    "introduced": "0"
                  },
                  {
                    "fixed": " 0.19.3"
                  }
                ]
              }
            ]
      

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis

    Latest posts made by stevedennis

    • RE: Audit logging and export to centralized logging (ProGet / BuildMaster)

      Hi @dbojak,

      Great questions, and we're happy to help.

      We're currently working on developing our best practices for application activity, and I'd like to share our current guidance, which is a work in progress. This is based on working closely with customers over many years, both proactively (developing policies) and reactively (actively helping investigate after an incident).

      (Work in Progress)

      Before looking to "ingest all the logs", identify a clear scenario that's contextualized to the product. For example, what does the Information Security team have in mind for monitoring, incident investigation, and compliance? What kind of incidents? What monitoring do they anticipate? And compliance with what?

      ProGet attempts to provide appropriate "visibility into user activity and administrative actions", so if there are gaps I would start there. What is missing? How does duplicating data help? Etc.

      For example, knowing which users download which Microsoft-owned packages on which day/time is not only impractical, but it serves no conceivable business benefit nor reduces any risk. But it could impact developer productivity and will increase costs across the board.

      In addition, Microsoft Sentinel doesn't provide any contextualized visibility and, chances are, you will just end up back in ProGet searching for data anyway. So all the time and bandwidth spent exporting/duplicating data just ends up being waste.

      That said, we don't have any built-in functionality to export this data, but it's relatively easy to export/ingest from the EventOccurrences table. These work differently in each product, but are similar in design.

      [1] We do not have a documented, exhaustive list of audited event types exists per product, but it's relatively easy to attain through SELECT * FROM EventTypes type of query. That's the "source of truth" for events

      [2] Direct database is the only option; we consider it quite stable, and it hasn't changed since like 1.0 of the products; there hasn't been any real demand to redesign or enhance it

      [3] Audit events are never automatically purged, nor can they be deleted from the UI/API; they can only be manually purged from the database

      As for the gaps you identified, those are things we can certainly consider addressing, provided it's within the confines of the existing design. It's relatively easy to add a new event type (if needed) or add additional audit data.

      Overall, it's meant to be an "audit trail" instead of "change log" -- so it's not always the most user-friendly, uses more system-level concepts, and prefers immutable IDs over names.

      Hope that helps!

      STeve

      posted in Support
      stevedennisS
      stevedennis
    • RE: Understanding Accepted Debian Repository Formats

      Hi @amy.j ,

      The URL doesn't appear to be a valid Debian repository.

      Navigating to the root gives an AccessDenied error. In a normal repository, there is usually a kind of file list/system. But that's not required.

      The root of a Debian repository has a dists folder, and then a folder for each contained distro, and a Release index file. I tried to navigate to $ROOT_URL/dists/trixie/Release but received the same error message. I also tried stable, but it didn't work. Maybe there's a dist that will work, but I don't know what it would be.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: [ProGet] Understanding Assessments

      Hi @caterina ,

      The "manually blocked" workflow you described is not recommended anymore; the sheer number of new vulnerabilities (including all the AI-generated, non-exploitable "vulnslop" entries) make that workflow imprudent. In addition, most vulnerabilities will be discovered long after you add the package to your product.

      If you haven't read it already, I'd check out Vulnerability Management Done Right with ProGet, which helps prioritize.

      That said, it's possible to configure a similar workflow; we describe it a "triaged approach" in Overriding Assessments & Default Behavior.

      It's also possible to assess a vulnerability even though no packages are impacted; in the above screenshot, you would just click "Monitor" and then override the assessment to something else.

      Hope that helps,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: Adding an encryption key to an existing ProGet instance that never had one

      Hi @carl.westman_8110,

      There's no problem adding an encryption key to an existing instance without one.

      The data will still be stored in plain text and can be read without a problem.

      The next time you edit (save) the connector data, the secrets (password) will be stored as encrypted. Obviously, if you removed or changed the encryption key, you wouldn't be able to read the data again.

      For this, there's really no preferred operation when it comes to SQL Server vs PostgreSQL.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: [ProGet] Understanding Assessments

      Thanks @caterina!

      Just to give you some more technical context, which you probably already figured out...

      The "old" vulnerability model worked by downloading a datafile from security.inedo.com, unpacking it, and inserting rows in the PgvdVulnerabilities and PgvdPackageNames tables. Those tables contained every vulnerability in our database and it was a bit tricky to know which of those vulnerabilities related to package versions "in" ProGet. The PgvdAssessments table helped somewhat.

      The "new" model works by downloading an indexed database file. The "Assess Vulnerabilities" function (which rurns on that download job as well) will iterate over all vulnerabilities in that database and adds/removes rows to the PgvdVulnerabilities26 tables as needed (including PgvdPackageVersions), which makes it much easier to know if a vulnerability impacts a version "in" ProGet by looking at the database.

      There are most certainly edge cases and glitches in this, so don't hesitate to let us know if you spot any odd behavior.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: [ProGet] Understanding Assessments

      Hi @caterina,

      It's quite complicated and there are a lot of technical details that I'm not immediately familiar with. To properly answer, I'd need to set up a reproduction case and then attach a debugger to give you a more technically precise answer on why it's displaying that way.

      We may even need to do a whole database backup, since it might be specific to your configuration. I really don't know how much of an investigation it would require.

      We added the dotted line as primarily a way for us to identify the system state when there are issues reported. Previous version of ProGet also had provisional assessments, but it was never visually indicated.

      Anyway, if you're seeing any problems jut let us know -- this shouldn't have any impact outside of the dotted-line display on some pages.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: [ProGet] Understanding Assessments

      Hi @caterina ,

      The dotted border indicates what we call a provisional assessment; we don't have a great description for what that means, but that's what you'll see when a package is not local or cached in ProGet.

      Without getting into too many technical details, that's the expected behavior (i.e. not in the database, not on the SCA > Vulnerabilities page). Once the Vulnerability Download job (or Admin > Vuln Types > Reassess) runs, it should become a normal assessment (i.e. show in the database, etc).

      In any case, whether an assessment is provisional or not shouldn't have any impact on compliance analysis. The most notable impact is that it won't show up on the SCA > Vulnerabilities page until another job identifies the package as being "in" ProGet.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: [ProGet] Incorrect package publish date affecting policies

      Hi @amy.j,

      Good news! We've decided to correct this, along with some other errant behavior with carrying over certain server-side metadata from connectors.

      We are planning to ship this in the upcoming maintenance release (scheduled for August 7) via PG-3342 (FIX: Ensure correct server-side metadata (publish date, listed, deprecated) is set when adding package via pull, download, or promote from remote connectors).

      This is currently in testing / code review now, asit's a bit of a riskier change. But assuming there's no issues with it, it will be available after the release.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: [ProGet] Incorrect package publish date affecting policies

      Hi @amy.j ,

      This behavior is expected, as the publish date is not carried over via a promotion.

      In retrospect, it should have - but this is the sort of behavior we need to be careful about changing in a maintenance release. We'll discuss this internally and decide - please stay tuned, wehope to update by end of next week.

      Thanks,
      Steve

      posted in Support
      stevedennisS
      stevedennis
    • RE: Unlisted NuGet versions still returned by ProGet V3 flatcontainer index — restore tries to download unavailable version

      Hi @daniel.mccoy_4395 ,

      This is how unlisted packages are designed to work; it's just a flag in the metadata, and clients will treat it however they'd like. Visual Studio hides them but lets you download them, ProGet shows them with a little "unlisted" icon.

      As for the download error, the 400 sounds like you've configured "download blocking" perhaps? Check the feed's policy settings.

      We generally don't recommend configuring download blocking, but using pgutil builds scan instead; see https://guides.inedo.com/vulnerability-management/containment/

      Hope that helps,

      Steve

      posted in Support
      stevedennisS
      stevedennis