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 manifest to generated artifacts #2869

Merged
merged 25 commits into from
Dec 16, 2021

Conversation

michaelpeng36
Copy link
Contributor

@michaelpeng36 michaelpeng36 commented Dec 9, 2021

Issue describing the changes in this PR

Adds SBOM generation for release builds. Other changes include:

  • Creating an IsReleaseBuild environmental variable to easily identify scenarios where generating SBOM manifests and .msi files are necessary
  • Adding a pipelineUtilities.psm1 file containing SDK dependencies and functions needed by the build pipeline
  • Dividing .nupkg generation into a publish and a pack step so SBOM generation may occur between them

Pull request checklist

  • My changes do not require documentation changes
    • Otherwise: Documentation issue linked to PR
  • My changes should not be added to the release notes for the next release
    • Otherwise: I've added my notes to release_notes.md
  • My changes do not need to be backported to a previous version
  • I have added all required tests (Unit tests, E2E tests)

@michaelpeng36 michaelpeng36 changed the title Initial changes to add SBOM manifest to generated artifacts Add SBOM manifest to generated artifacts Dec 9, 2021
@michaelpeng36 michaelpeng36 marked this pull request as draft December 9, 2021 21:23
build.ps1 Outdated Show resolved Hide resolved
build/Program.cs Outdated Show resolved Hide resolved
helper.psm1 Outdated Show resolved Hide resolved
helper.psm1 Outdated Show resolved Hide resolved
helper.psm1 Outdated Show resolved Hide resolved
Copy link
Contributor

@Francisco-Gamino Francisco-Gamino left a comment

Choose a reason for hiding this comment

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

Thank you for sending this out! It looks great overall. I left a few comments.

build/Program.cs Outdated Show resolved Hide resolved
Copy link
Contributor

@Francisco-Gamino Francisco-Gamino left a comment

Choose a reason for hiding this comment

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

A couple of minor comments. Otherwise, LGTM.

@michaelpeng36 michaelpeng36 marked this pull request as ready for review December 14, 2021 23:20
@Francisco-Gamino
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@michaelpeng36 michaelpeng36 merged commit 29bcca5 into v4.x Dec 16, 2021
@michaelpeng36 michaelpeng36 deleted the michaelpeng/add-sbom-generation-task branch December 16, 2021 22:00
michaelpeng36 added a commit that referenced this pull request Dec 16, 2021
* Initial changes to add SBOM manifest to generated artifacts

* Added .nuspec file for packing with manifests

* Add SBOM generation for release builds

* Add reference to .nuspec file

* Made generateMsiFiles.ps1 script cleaner

* Remove AddSBOM variable

* Addressing some comments

* Uncommented key steps in the pipeline and adjusted branch name comparison

* Addressing further comments

* Removed  from the pipeline

* Removed Write-Log from pipelineUtilities.psm1

* Altered installation location of dotnet

* Add variable that can override SBOM generation in non-SBOM scenarios

* Ensure parsing boolean environmental variables is done properly

* Add [ref] for parsing boolean environmental variables

* Moved condition for generating .msi files to azure-pipelines.yml

* Ensure parsing of boolean environmental variable is done correctly

* Added debugging statement

* Removed debugging statement and fixed build command logic

* Fixed condition determining build command

* Ensure conditions for a full release simulation match

* Correct artifacts path location

* Altered the pool and vmImage
@michaelpeng36 michaelpeng36 mentioned this pull request Dec 16, 2021
4 tasks
michaelpeng36 added a commit that referenced this pull request Dec 17, 2021
* Add SBOM manifest to generated artifacts (#2869)

* Initial changes to add SBOM manifest to generated artifacts

* Added .nuspec file for packing with manifests

* Add SBOM generation for release builds

* Add reference to .nuspec file

* Made generateMsiFiles.ps1 script cleaner

* Remove AddSBOM variable

* Addressing some comments

* Uncommented key steps in the pipeline and adjusted branch name comparison

* Addressing further comments

* Removed  from the pipeline

* Removed Write-Log from pipelineUtilities.psm1

* Altered installation location of dotnet

* Add variable that can override SBOM generation in non-SBOM scenarios

* Ensure parsing boolean environmental variables is done properly

* Add [ref] for parsing boolean environmental variables

* Moved condition for generating .msi files to azure-pipelines.yml

* Ensure parsing of boolean environmental variable is done correctly

* Added debugging statement

* Removed debugging statement and fixed build command logic

* Fixed condition determining build command

* Ensure conditions for a full release simulation match

* Correct artifacts path location

* Altered the pool and vmImage

* Slight modifications for V3

* Change version name in .nuspec file to be V3 instead of V4

* Update target framework in Settings.cs
michaelpeng36 added a commit that referenced this pull request Dec 17, 2021
* Add SBOM manifest to generated artifacts (#2869)

* Initial changes to add SBOM manifest to generated artifacts

* Added .nuspec file for packing with manifests

* Add SBOM generation for release builds

* Add reference to .nuspec file

* Made generateMsiFiles.ps1 script cleaner

* Remove AddSBOM variable

* Addressing some comments

* Uncommented key steps in the pipeline and adjusted branch name comparison

* Addressing further comments

* Removed  from the pipeline

* Removed Write-Log from pipelineUtilities.psm1

* Altered installation location of dotnet

* Add variable that can override SBOM generation in non-SBOM scenarios

* Ensure parsing boolean environmental variables is done properly

* Add [ref] for parsing boolean environmental variables

* Moved condition for generating .msi files to azure-pipelines.yml

* Ensure parsing of boolean environmental variable is done correctly

* Added debugging statement

* Removed debugging statement and fixed build command logic

* Fixed condition determining build command

* Ensure conditions for a full release simulation match

* Correct artifacts path location

* Altered the pool and vmImage

* Slight modifications for V3

* Change version name in .nuspec file to be V3 instead of V4

* Update target framework in Settings.cs
michaelpeng36 added a commit that referenced this pull request Dec 17, 2021
* Add SBOM Generation to V3 (#2879)

* Add SBOM manifest to generated artifacts (#2869)

* Initial changes to add SBOM manifest to generated artifacts

* Added .nuspec file for packing with manifests

* Add SBOM generation for release builds

* Add reference to .nuspec file

* Made generateMsiFiles.ps1 script cleaner

* Remove AddSBOM variable

* Addressing some comments

* Uncommented key steps in the pipeline and adjusted branch name comparison

* Addressing further comments

* Removed  from the pipeline

* Removed Write-Log from pipelineUtilities.psm1

* Altered installation location of dotnet

* Add variable that can override SBOM generation in non-SBOM scenarios

* Ensure parsing boolean environmental variables is done properly

* Add [ref] for parsing boolean environmental variables

* Moved condition for generating .msi files to azure-pipelines.yml

* Ensure parsing of boolean environmental variable is done correctly

* Added debugging statement

* Removed debugging statement and fixed build command logic

* Fixed condition determining build command

* Ensure conditions for a full release simulation match

* Correct artifacts path location

* Altered the pool and vmImage

* Slight modifications for V3

* Change version name in .nuspec file to be V3 instead of V4

* Update target framework in Settings.cs

* Changed the target framework to netcoreapp 2.2

* Altered spacing on azure-pipelines.yml

* More altered spacing

* Removed IntegrationBuildNumber
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.

3 participants