Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add SBOM to the official build pipeline #144

Merged
merged 8 commits into from
Mar 29, 2022
Merged

Add SBOM to the official build pipeline #144

merged 8 commits into from
Mar 29, 2022

Conversation

MiYanni
Copy link
Member

@MiYanni MiYanni commented Mar 29, 2022

Detailed information here: dotnet/project-system#7955

This adds software bill of materials (SBOM) to the official build pipeline. This is required for Microsoft products and the information is required to be in our .vsman file for Visual Studio insertion. I reused the same .ps1 script I made for the project-system repo to do the update process for the json manifest.

Successful build: https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=5948260&view=results

From the manifest json:

"payloads": [
    {
        "fileName": "Microsoft.NuGet.Build.Tasks.Setup.vsix",
        "size": ------
    },
    {
        "fileName": "Microsoft.NuGet.Build.Tasks.Setup_sbom.json",
        "size": ------
    }
],

From the vsman file:

image

Copy link
Member

@drewnoakes drewnoakes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

An obvious question is around the copy/paste of the .ps1 file. Could this be shared in some better way? Did you consider using a custom MSBuild task? Or maybe just a comment in the files to explain the duplication so that a change made to one is more likely to be made in another. Your call though.

@MiYanni
Copy link
Member Author

MiYanni commented Mar 29, 2022

@drewnoakes The script is more of a 'hack' than it is a proper solution. Both our (project-system) infrastructure (using RepoToolset) and this one (using Arcade) have the same basic principles for creating our vsix and vsman file(s). What I'll do is add an issue in the project-system repo for the build infrastructure simplification to see if we can use the same infra in any of our repos (project-system, project-system-tools, NuGet.BuildTasks, ProjFileTools). I'm not trying to make Arcade 2 here, but we should be able to share the processes across our repos, even thought they all aren't inserting into VS.

@MiYanni MiYanni merged commit 7a4b859 into main Mar 29, 2022
@smitpatel smitpatel deleted the feature/SBOM branch August 5, 2024 19:58
adamint pushed a commit that referenced this pull request Sep 24, 2024
Add SBOM to the official build pipeline
adamint pushed a commit that referenced this pull request Sep 24, 2024
Add SBOM to the official build pipeline
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants