Azure / Azure/azure-functions-core-tools

Improvements to Core Tools builds for testing

Open
#3,057 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
1.5k
Forks
498
Avg merge
5d 4h
Merged PRs (30d)
15

Description

Improvements to Core Tools builds for testing:

1) Currently, we are publishing to storage (https://github.com/Azure/azure-functions-core-tools/blob/v4.x/build/BuildSteps.cs#L598) any Core Tools build when the pipeline succeeds. However, we should only do this when the Core Tools build is produced in a release pipeline.

2) Consider creating a manifest file that includes the version of the nuget packages that were used to build the Core Tools. We do this for the Core Tools build for integration testing. For more info, please see https://github.com/Azure/azure-functions-core-tools/blob/v4.x/build/BuildSteps.cs#L46 and https://github.com/Azure/azure-functions-core-tools/blob/v4.x/build/BuildSteps.cs#L685. The manifest file gets publish with the Core Tools artifacts and looks like this:
```
{
"Build": "PreRelease220420-1552",
"Packages": {
"Microsoft.Azure.WebJobs.Script": "4.4.0-18106",
"Microsoft.Azure.WebJobs.Script.Grpc": "4.4.0-18106",
"Microsoft.Azure.WebJobs.Script.WebHost": "4.4.0-18106",
"Microsoft.Azure.Functions.NodeJsWorker": "3.4.0-alpha.20220420.1",
"Microsoft.Azure.Functions.JavaWorker": "2.2.3-20220420.1",
"Microsoft.Azure.Functions.PowerShellWorker.PS7.2": "4.0.1905",
"Microsoft.Azure.Functions.PowerShellWorker.PS7.0": "4.0.1904",
"Microsoft.Azure.Functions.PythonWorker": "4.0.0-20220420.4"
},
"CoreToolsVersion": "4.0.4515",
"CommitId": "N/A"
}
```

Contributor guide

Open the contributing guide

Research direction

Start in build/BuildSteps.cs at the referenced lines 46, 598, and 685. Compare the integration-testing manifest generation with the Core Tools artifact flow, and inspect how release pipelines are identified. Done means successful non-release builds are not published to storage and release artifacts include a manifest containing the package and build metadata shown in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, csharp
Domain
build-system, devops, release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.