master | develop |
---|---|
Configure a self-hosted install of the Snipe-IT web application using Chef.
- Ubuntu 16.04
- MySQL Server 5.7+
- Chef 13.0+
- chef-vault
- composer
- nginx
Many of these attributes match the variables in the Environmental Config file for Snipe-IT. For details on all of the variables available, visit https://snipe-it.readme.io/docs/configuration.
['snipeit']['debug']
- enable debug mode for Snipe-IT. Default isfalse
.['snipeit']['doc_root']
- the DocumentRoot for Snipe-IT. Default is/var/www/snipeit/public
.['snipeit']['locale']
- sets the localization for Snipe-IT. Default is US English -en
.['snipeit']['path']
- directory where the Snipe-IT repository will be cloned. Default is/var/www/snipeit
.['snipeit']['timezone']
- PHP-supported timezone string. Default isUS/Pacific
.['snipeit']['url']
- URL that Snipe-IT can be accessed from. Default ishttp://localhost
.['snipeit']['version']
- branch or version tag that will be synced from the Snipe-IT repository on GitHub. Default ismaster
.['snipeit']['php']['app_key']
- randomly generatedbase64
key that will encrypt Laravel data. Default isnil
.['snipeit']['php']['packages']
- array of packages that are pre-requisites of running Snipe-IT.
['snipeit']['database']['domain']
- domain that the MySQL server is hosted on. Default iscorp.yourcompany.com
.['snipeit']['database']['hostname']
- hostname of MySQL server. Default isnode['hostname']
.['snipeit']['database']['name']
- name of the MySQL database. Default issnipeit
.['snipeit']['database']['dump_path']
- path to the MySQL binary in order to run dumps of the database. Default is/user/bin
.['snipeit']['database']['username']
- username to connect to the database. Default isnil
['snipeit']['database']['password']
- password to connect to the database. Default isnil
['snipeit']['smtp']['encryption']
- encryption type for sending mail. Options arenull
andtls
. Default istls
.['snipeit']['smtp']['driver']
- driver for sending mail. Options aremail
,sendmail
, andsmtp
. Default issmtp
.['snipeit']['smtp']['host']
- hostname string for the SMTP server. Default issmtp.yourcompany.com
.['snipeit']['smtp']['mailbox']
- SMTP mailbox username. Default ismyinventory@yourcompany.com
.['snipeit']['smtp']['port']
- SMTP port for the connection.25
for unencrypted connections, and587
for encrypted connections. Default is587
.['snipeit']['smtp']['mail_from']
- mail from string for the mailbox. Default isSnipe-IT
.['snipeit']['smtp']['replyto']
- reply to string for the mailbox. Default isSnipe-IT
.['snipeit']['smtp']['username']
- username for authenticating with the SMTP server. Default isnil
.['snipeit']['smtp']['password']
- password for authenticating witn the SMTP server. Default isnil
.
-
Generate the App Key by runnning:
php artisan key:generate
from thepublic
directory of the Snipe-IT repodocker run --rm snipe/snipe-it
-
Include the
default
recipe in your run list.
See the test cookbook for an example of an instance running the MySQL database in a container.
Currently, the cookbook will only deploy a standalone install of Snipe-IT on Ubuntu Server 16.04. However, contributions are welcome! Please refer to the Contributing guidlines below.
This cookbook has a dependency on the Chef Vault cookbook, and by default expects a Chef Vault item unless the related attributes are set in an attributes file, or in a recipe.
-
Set the App Key in a Data Bag or Chef Vault item called
snipeit/app_key
. -
Provide the credentials for your MySQL database, and your outgoing mail server from a Data Bag or Chef Vault item called
snipeit/database
, andsnipeit/smtp
.
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.
When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.