# Reference
## Table of Contents
### Classes
* [`hashi_stack::repo`](#hashi_stackrepo): Set up the package repository for the HashiCorp Stack components
## Classes
### `hashi_stack::repo`
This class installs the hashicorp repository
#### Examples
##### Inclusion using defaults
```puppet
include hashi_stack::repo
```
##### Include repo and install packer as package
```puppet
include hashi_stack::repo
package { 'packer':
ensure => installed,
require => Class['Hashi_stack::Repo'],
}
```
#### Parameters
The following parameters are available in the `hashi_stack::repo` class:
* [`priority`](#priority)
* [`proxy`](#proxy)
* [`key_id`](#key_id)
* [`key_source`](#key_source)
* [`description`](#description)
* [`rpm_base`](#rpm_base)
* [`repo_gpgcheck`](#repo_gpgcheck)
##### `priority`
Data type: `Optional[Integer]`
A numeric priority for the repo, passed to the package management system
Default value: ``undef``
##### `proxy`
Data type: `String`
The URL of a HTTP proxy to use for package downloads (YUM only)
Default value: `'absent'`
##### `key_id`
Data type: `String`
GPG key to authenticate Apt package signatures.
Default value: `'E8A032E094D8EB4EA189D270DA418C88A3219F7B'`
##### `key_source`
Data type: `Stdlib::HTTPSUrl`
The location of an existing GPG key file to copy.
Default value: `'https://apt.releases.hashicorp.com/gpg'`
##### `description`
Data type: `String`
Repository description
Default value: `'HashiCorp package repository.'`
##### `rpm_base`
Data type: `String`
Base URL for the Yum repository
Default value: `'https://rpm.releases.hashicorp.com'`
##### `repo_gpgcheck`
Data type: `Integer[0,1]`
Default value: `0`