-
Notifications
You must be signed in to change notification settings - Fork 67
My first package walk through
You're missing a good analysis tools in this package repository? You can create the package via a GitHub issue or manually with the support of a package template script! Manual package creation is the more versatile, but requires that you are familiar with the package structure and installation functions. The issue driven package creation, allows you to propose a tool by just opening an issue, which in many cases can be automatically converted into a package and released (by pushing it to MyGet). For more details on how to contribute please see the other Wiki pages.
If something is not clear, you have any questions or need help, please let us know via a GitHub issue or pull request. We love to welcome new contributors to our community!
To adhere to distribution rights, we only use packages that obtain files from the web at runtime and install them. No package in this project is self-contained (i.e., they do NOT contain the actual binaries). See Chocolatey's legal documentation for more details.
- Go to Issues - New Issue
- Select the appropriate package type
- Fill out the required fields accurately & submit the issue
- A maintainer will review your submission and label it for automatic package creation
- The automated processing includes linting and testing
- If changes are required, download the created branch and modify it locally
- See GitHub's documentation on Checking out pull requests locally
- Depending on your permissions you may have to create a new pull request with your new branch
- Find the appropriate package type
- See supported options via
$ python scripts/utils/create_package_template.py --type
- Also see
$python scripts/utils/create_package_template.py -h
for detailed usage information
- See supported options via
- See required arguments via
$ python scripts/utils/create_package_template.py --type <package_type>
- Provide required arguments
- Alternatively, use the
--raw
option to create package template files using placeholder data
- Alternatively, use the
- Ensure scripts and package meet code and structure requirements
- See the Wiki
- Lint PowerShell code:
PS scripts/test/lint.ps1
(requirespsscriptanalyzer
, seelint.ps1
contents) - Lint all packages
$ python scripts/test/lint.py packages
- Test package installation and uninstallation.
- After fixing any issues, submit a pull request
- Lints and test run automatically for each pull request, they must succeed before pull requests can be accepted
- Identify an existing package that's installed similarly to your tool
- Copy package data and modify where appropriate
- See steps on linting, testing, and submitting above