libgit2 / libgit2/libgit2sharp

Azure Pipelines build and release pipeline

Open
#1,621 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Up for grabs
Dominant language
C#
Stars
3.5k
Forks
925
PR merge metrics
No merged PRs in 30d

Description

At present, we have a mix of build systems that I would like to unify.

  1. Azure Pipelines for Linux, Windows and macOS.
  2. Travis for Linux and macOS
  3. Appveyor for Windows

I'd like to standardize around Azure Pipelines. At the moment, it's only doing a build for validation. I would like the build step to:

  1. Create a nuget package (see AppVeyor's build configuration)
  2. Upload that nuget package to Azure Artifacts

Then I'd like to have a separate release pipeline that will:

  1. Take the nuget package from Azure Artifacts
  2. Upload the nuget package to nuget.org

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the existing Azure Pipelines validation build and AppVeyor's build configuration, which are the issue's named entry points. Trace how the NuGet package is created and identify the Azure Artifacts and nuget.org publishing steps. Done means Azure Pipelines builds and stores the package, while a separate release pipeline publishes it to nuget.org.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, csharp
Domain
build-system, ci-cd, cloud, 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.