Chocolatey Simple Server Puppet Module
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
manifests
.fixtures.yml (maint) add generated files Mar 10, 2015
.gitignore
.rspec (maint) add generated files Mar 10, 2015
.travis.yml
.yardopts
CHANGELOG.md
Gemfile
LICENSE
README.md
Rakefile
appveyor.yml
metadata.json

README.md

Chocolatey Simple Server

Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Setup - The basics of getting started with chocolatey
  4. Usage - Configuration options and additional functionality
  5. Reference
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module

Overview

Sets up a Simple Server for Chocolatey packages. Allows you to host your own packages, many times as a private package repository (feed).

Module Description

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.

Setup

What Chocolatey Server affects

  • 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

Setup Requirements

Beginning with Chocolatey Server

Install this module via any of these approaches:

Usage

Ensure the server is installed and configured:

include chocolatey_server

Use a different port

class {'chocolatey_server':
  port => '8080',
}

Use an internal source for installing the chocolatey.server package

class {'chocolatey_server':
  server_package_source => 'http://someinternal/nuget/odatafeed',
}

Use a local file location for the chocolatey.server package

class {'chocolatey_server':
  server_package_source => 'c:/folder/containing/packages',
}

Reference

Classes

Public classes

Class: chocolatey_server

Host your own Chocolatey package repository

Parameters

port

The port for the server website. Defaults to '80'.

server_package_source

The Chocolatey source that contains the chocolatey.server package. Defaults to 'https://chocolatey.org/api/v2/'.

Limitations

Works with Windows only.

Development

We like Pull Requests!