Skip to content

Conversation

@joperezr
Copy link
Member

@joperezr joperezr commented Jan 15, 2026

Summary

This PR migrates our nightly package publishing from GitHub Packages to Azure DevOps Artifacts, making it much easier for consumers to use our nightly builds.

Problem

The GitHub Packages feed requires authentication with a Personal Access Token (PAT), which creates friction for consumers:

  • They need to create a PAT with read:packages scope
  • CI systems need secrets configured to access the feed
  • The authentication requirements are confusing for new users

Solution

Use the existing Azure DevOps Artifacts feed (IoT/nightly_iot_builds) which is already public since it's scoped to a public project. No authentication is required.

Changes

  • azure-pipelines.yml: Added allowPackageConflicts: true to fix 409 conflict errors when pushing packages
  • README.md: Updated nightly builds documentation with the new feed URL and removed the GitHub Actions badge
  • Deleted .github/workflows/publish-nightly.yml: Consolidated to a single publishing mechanism

Consumer Migration

Before (required PAT):

dotnet nuget add source --username USER --password PAT --store-password-in-clear-text --name github-dotnet-iot "https://nuget.pkg.github.com/dotnet/index.json"

After (no authentication):

dotnet nuget add source --name dotnet-iot-nightly "https://pkgs.dev.azure.com/dotnet/IoT/_packaging/nightly_iot_builds/nuget/v3/index.json"

Additional Benefits

  • Packages from AzDO are code-signed (GitHub Actions packages were unsigned)
  • Single source of truth for nightly builds
  • Simpler CI integration for consumers

cc: @pgrawehr @krwq @raffaeler

…ps Artifacts

- Fix AzDO pipeline publish step by adding allowPackageConflicts: true
- Remove GitHub Actions publish-nightly workflow
- Update README with new feed URL (no authentication required)
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR migrates nightly package publishing from GitHub Packages to Azure DevOps Artifacts to simplify consumer access by eliminating authentication requirements.

Changes:

  • Consolidated package publishing to Azure DevOps pipeline by adding allowPackageConflicts: true
  • Updated README documentation with new Azure DevOps feed URL and removed authentication instructions
  • Deleted redundant GitHub Actions workflow for nightly publishing

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
azure-pipelines.yml Added allowPackageConflicts: true to handle duplicate package versions in the nightly feed
README.md Updated nightly builds section with Azure DevOps feed URL and simplified instructions without authentication
.github/workflows/publish-nightly.yml Removed GitHub Actions workflow that published to GitHub Packages
.claude/settings.local.json Added local development configuration file for Claude AI assistant

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