- Overview
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with chocolatey
- Usage - Configuration options and additional functionality
- Reference
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
Sets up a Simple Server for Chocolatey packages. Allows you to host your own packages, many times as a private package repository (feed).
There are three types of package feeds for Chocolatey - local folder/CIFS (UNC) share, simple server, and the sophisticated package gallery. Simple server is in the middle and most widely used Chocolatey/NuGet Package Server format.
Advantages:
- Push over HTTP/HTTPS.
- API key for pushing packages.
- No direct access to packages - acls are locked down to just admins and push through api key.
- Package store is file system.
Disadvantages:
- Only one API key, so no multi user scenarios.
- Starts to affect choco performance once the source has over 500 packages (maybe?).
- No moderation.
- No website to view packages.
- No package statistics.
For more details about the other types of package feeds, see host your own feed.
- Will create files at c:\tools\chocolatey.server.
- Will install IIS and ASP.NET if not already installed.
- Will remove the default website.
- Sets up a website on port 80 (configurable) pointing to chocolatey.server
- Chocolatey installed
chocolatey/chocolatey
ORpuppetlabs/chocolatey
- Note: either or both of these modules can handle ensuring the install of Chocolatey.
Install this module via any of these approaches:
- puppet forge
- git-submodule (tutorial)
- librarian-puppet
- r10k
Ensure the server is installed and configured:
include chocolatey_server
class {'chocolatey_server':
port => '8080',
}
class {'chocolatey_server':
server_package_source => 'http://someinternal/nuget/odatafeed',
}
class {'chocolatey_server':
server_package_source => 'c:/folder/containing/packages',
}
Host your own Chocolatey package repository
The hostname of which you want IIS to bind to. Defaults to blank.
The port for the server website. Defaults to '80'.
The protocal for IIS to use. Defaults to 'http'.
The thumbprint of the certificate Defaults to undefined.
The location in the certificate store where the certificate is stored. Defaults to 'My'.
The Chocolatey source that contains the chocolatey.server
package.
Defaults to 'https://chocolatey.org/api/v2/'.
The location to that the chocolatey server will be installed. This is can be used if you are controlling the location that chocolatey packages are being installed via some other means. e.g. environment variable ChocolateyBinRoot. Defaults to 'C:\tools\chocolatey.server'
Works with Windows only.
We like Pull Requests!