microsoft / microsoft/Documentarian

Generate nupkg for local builds

Open
#116 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

maintenance
Dominant language
PowerShell
Stars
50
Forks
16
Avg merge
3h 54m
Merged PRs (30d)
2

Description

Prerequisites
  • Accepted Idea: Proposals in this project are created based on ideas that have been marked as Accepted in their Discussion. Before you file an issue for a feature or change, create a discussion. If you file an issue without a discussion, the team may convert it into one.
  • Existing Issue: Search the existing issues and discussions for this repository. If there is an issue or discussion that fits your needs do not file a new one. Subscribe, react, or comment on that issue or discussion instead.
  • Descriptive Title: Write the title for this issue as a short synopsis. If possible, provide context. For example, "Add Get-Foo cmdlet to Documentarian module" instead of "New cmdlet."
Module

Documentarian, Documentarian.DevX, Documentarian.MarkdownLint, Documentarian.MicrosoftDocs, Documentarian.ModuleAuthor, Documentarian.Vale

Summary

Our local build process currently composes the PowerShell modules into a folder structure resembling a published module. We use those composed folders when we publish releases to the gallery.

It would be even more useful to generate the nupkg locally, so we can include testing (and investigate publishing nightly releases or similar).

Details

Implementation for this process should be to extend the Documentarian.DevX module to support a PackageModule task, which:

  • Depends on the ComposeModule task.
  • Registers a temporary local PowerShell repository in a well-defined folder.
  • Publishes the composed module to the temporary local repository.
  • Unregisters the temporary local repository.

We should make sure the output folder for packaged modules is included in the .gitignore definition.

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 by reading the linked ComposeModule.ps1 task and inspecting the Documentarian.DevX module's task structure. Add the PackageModule flow described in the issue, including temporary repository registration and cleanup, and update .gitignore for the packaged-module output; done means local builds produce a usable nupkg without leaving the repository registered.

Written by the indexing model from the issue text.

Assessment

Tech stack
powershell
Domain
build-system, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.