Chef knife plugin to interact with the github enterprise appliance.
When working on customer admin machines, it's recommended to used an central configuration file. This file should be created in: /etc/githubrc.rb and can contain any attribute in the following structure:
github_url "https://github.schubergphilis.com"
github_link "ssh"
github_organizations [ "TLA-Cookbooks", "SBP-Cookbooks" ]
Please note: these options are recommended for the central config file.
You can also configure attributes within your ~/.chef/knife.rb in the following structure:
knife[:github_token] = '28374928374928374923874923842'
knife[:github_api_version] = 'v3'
knife[:github_ssl_verify_mode] = 'verify_none'
Please note: these settings will overwrite the central settings. In a perfect world, your personal configuration file only contains your token information.
This will be the URL to your (personal) github enterprise appliance. Here you can also use the github.com address if you don't have an internal appliance.
Here you specify the organizations that you want to taget when searching for cookbooks. The first entry will have priority over the other entries.
You can specify a proxy server in case you don't have direct internet access. If you have defined a proxy, github_link needs to be set to either hhtp or https.
You can specify the link type that you would like to use to download your cookbooks, default is ssh. Options are ssh git http https svn
The current and default version of the api is v3 but this will allow you to target older versions if needed.
The plugin is using the underlying knife http implementation, hence it will have the same options to handle ssl. Currently the options are: verify_peer verify_none
Token information is required when creating and deleting github repositories. With the command knife github token create you are able to create token information.
Cache files will be created into the: ~/.chef directory. We use cache files to offload the api calls and increase the performance for repetitive executions Updated to any repo inside the organization will cause the cache files to update. But in case of any problems, the cache files can be safely deleted.