Adoptable Cookbooks List

List of Adoptable Cookbooks

Supermarket Belongs to the Community


Select Badges

Select Supported Platforms


gogs (4) Versions 1.0.0

Installs and Configures a Go Git Service Server

cookbook 'gogs', '~> 1.0.0'
cookbook 'gogs', '~> 1.0.0', :supermarket
knife supermarket install gogs
knife supermarket download gogs
Quality 88%

gogs Build Status

Installs gogs (Go Git Service), An open source Git Service.

This cookbook installs gogs on port 8080 with sqllite3 by default. It skips the installer meaning that everything is set to go; however, you will need to create an admin account on your own. Do this by just going to the web ui and filling out the form or by inserting into the database. LWRP for that to come at some point.


  • apt cookbook
  • systemd cookbook
  • ark cookbook
  • chef-sugar cookbook


Install Attributes

  • node['gogs']['install_dir'] default: '/opt'

The path to install gogs to, note that there will be a gogs subfolder created where everything will live. By default the executable and configuration lives in /opt/gogs/.

  • node['gogs']['version'] default '0.6.1'

The Release version to install. See

Config Attributes

The node['gogs']['config'] tree gets parsed into the gogs app.ini.
Note that the attributes are split into sections then into their individual settings.

For Documentation on what each setting does please refer to the app.ini

An excerpt of attributes/default.rb to give you an idea of how these options work:

default['gogs']['config']['global']['APP_NAME'] = 'Gogs: Go Git Service'
default['gogs']['config']['global']['RUN_USER'] = 'git'
default['gogs']['config']['global']['RUN_MODE'] = 'prod'

default['gogs']['config']['repository']['ROOT'] = '/ops/gogs/repos'
default['gogs']['config']['repository']['SCRIPT_TYPE'] = 'bash'

default['gogs']['config']['server']['PROTOCOL'] = 'http'
default['gogs']['config']['server']['DOMAIN'] = 'localhost'
default['gogs']['config']['server']['ROOT_URL'] = '%(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/'
default['gogs']['config']['server']['HTTP_ADDR'] = ''
default['gogs']['config']['server']['HTTP_PORT'] = 8080



This recipe installs and configures gogs

  1. Set up & updates apt using apt::default
  2. Installs Git and Supervisord
  3. Downloads and installs gogs from Github
  4. Configures gogs according to node['gogs']['config']


Include this recipe in a wrapper cookbook:

depends 'gogs', '~> 1.0'
include_recipe 'gogs::default'


  1. Fork the repository on Github
  2. Create a named feature branch (like add_component_x)
  3. Write your change
  4. Write tests for your change (if applicable)
  6. Submit a Pull Request using Github

License and Authors

Author:: Eddie Hurtig (

Dependent cookbooks

supervisord ~> 1.0.0
apt >= 0.0.0
ark >= 0.0.0
chef-sugar >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Change Log for gogs




  • Improve argument against commit logs.

0.0.2 - YYY-MM-DD


  • Explanation of the recommended reverse chronological release ordering.





0.0.1 - YYYY-MM-DD


  • CNAME file to enable GitHub Pages custom domain
  • README now contains answers to common questions about CHANGELOGs
  • Good examples and basic guidelines, including proper date formatting.
  • Counter-examples: "What makes unicorns cry?"

Collaborator Number Metric

1.0.0 failed this metric


Contributing File Metric

1.0.0 passed this metric

Foodcritic Metric

1.0.0 passed this metric

No Binaries Metric

1.0.0 passed this metric

Publish Metric

1.0.0 passed this metric

Supported Platforms Metric

1.0.0 passed this metric

Testing File Metric

1.0.0 passed this metric

Version Tag Metric

1.0.0 passed this metric