cookbook 'codenamephp_dev', '= 3.0.1'
The codenamephp_dev cookbook has been deprecated
Author provided reason for deprecation:
The codenamephp_dev cookbook has been deprecated and is no longer being maintained by its authors. Use of the codenamephp_dev cookbook is no longer recommended.
codenamephp_dev (15) Versions 3.0.1 Follow0
Installs all dev tools for infomax project development like browsers, git, openjdk, ...
cookbook 'codenamephp_dev', '= 3.0.1', :supermarket
knife supermarket install codenamephp_dev
knife supermarket download codenamephp_dev
Chef Cookbook Dev
Cookbook that contains recipes for dev tools, like vscode, chrome, openjdk ...
Requirements
Supported Platforms
- Debian Buster
- (Probably works still works for older debian versions but this is not tested)
Chef
- Chef 13.0+
Cookbook Depdendencies
Tools
Usage
Add the cookbook to your Berksfile:
cookbook 'codenamephp_dev'
Add the tools cookbook to your runlist, e.g. in a role:
{ "name": "default", "chef_type": "role", "json_class": "Chef::Role", "run_list": [ "recipe[codenamephp_dev::chrome]" ] }
Note that the default recipe is a No-Op, so you need to add the tools you want. This cookbook is moving to resources and most recipes are only
shortcuts for those resources so the preferred way is to create a wrapper cookbook and just resources since it is more flexible and stable that way.
Attributes
resolver
-
['codenamephp']['dev']['vscode']['extensions']
Is a hashmap with the usernames as keys and the extensions for each users as array. Defaults to{}
so no extensions are installed. This is now deprecated. Build a wrapper cookbook and use the resources Example:['codenamephp']['dev']['vscode']['extensions'] = {'user1' => ['ext1', 'ext2']}
Resources
Jetbrains Toolbox
The codenamephp_dev_jetrbains_toolbox
resource installs or uninstalls the Jetbrains toolbox which can then be used to manage the Jetbrains products.
Actions
-
:install
: Downloads the toolbox to a shared location and adds an X11 session script that installs the toolbox for the logged in user -
:uninstall
: Deletes the shared script and the login script. Already installed apps for the users are not removed
Properties
-
toolbox_path
: The path where the files are downloaded to, extracted, ..., default: '/usr/share/jetbrains-toolbox'. If you have a custom path you need to provide it as well for the uninstall action.
Examples
# Minmal parameters codenamephp_dev_jetbrains_toolbox 'install jetbrains-toolbox' # Custom source and path codenamephp_dev_jetbrains_toolbox 'install jetbrains-toolbox' do toolbox_path '/my/custom/executable/path' end # Uninstall codenamephp_dev_jetbrains_toolbox 'uninstall jetbrains-toolbox' do toolbox_path '/my/custom/executable/path' end
Chrome
The codenamephp_dev_chrome
resource installs or uninstalls the Google Chrome Browser and its apt repository.
Actions
-
:install
: Adds the apt repository and installs the browser via apt -
:remove
: Removes the apt repository and the chrome package via apt
Examples
# Minmal parameters codenamephp_dev_chrome 'install chrome' # Uninstall codenamephp_dev_chrome 'install chrome' do action :remove end
VisualStudio Code
The codenamephp_dev_vscode
resource installs or uninstalls the VisualStudio Code IDE and extensions. The IDE and extensions are installed by the
codenamephp_dev_vscode_extensions
resource. Both are extensions to the resources in the sc_vscode Cookbook by Sous Chefs.
Actions
-
:install
: Adds the apt repository and installs the IDE via apt -
:uninstall
: Removes IDE package via apt
Properties
-
users_extensions
: Hash with the users as keys and an array of extension names as strings as values that will be installed
Examples
# Minimal parameters codenamephp_dev_vscode 'Install VSCode' # With extensions codenamephp_dev_vscode 'Install extensions' do users_extensions 'user1' => %w[ext1 ext2], 'user2' => %w[ext2, ext3] end # Uninstall codenamephp_dev_vscode 'Uninstall VSCode' do action :uninstall end
VisualStudio Code Extensions
The codenamephp_dev_vscode_extensions
resource installs or uninstalls extensions for the VisualStudio Code IDE. It's an extension to the resource in the sc_vscode Cookbook by Sous Chefs.
Actions
-
:install
: Installs the given extensions for the given users -
:uninstall
: removes the given extensions for the given users
Properties
-
users_extensions
: Hash with the users as keys and an array of extension names as strings as values that will be uninstalled
Examples
# Minmal parameters codenamephp_dev_vscode_extensions 'Install extensions' do users_extensions 'user1' => %w[ext1 ext2], 'user2' => %w[ext2, ext3] end # Uninstall codenamephp_dev_vscode_extensions 'Uninstall extensions' do action :uninstall users_extensions 'user1' => %w[ext1 ext2], 'user2' => %w[ext2, ext3] end
Recipes
The recipes are just shortcuts for simple use cases so the tools can be installed e.g. with the chef server gui. For more complex use cases the resources
should be used.
Default
The default cookbook (as stated multiple times) is a No-Op. Pick and choose the tools you want via the recipes.
Chrome
Adds the google apt repository and installs Google Chrome from package.
gnome-terminal
Just installs the gnome-terminal from package.
Unzip
Just installs unzip from package (no gui client is installed)
VSCode
Installs VSCode from package using the Sous Chefs vscode cookbook. Extensions can also be installed by giving the users and extensions
as hashmap in the attributes.
Jetbrains Toolbox
The jetbrains_toolbox
recipe installs the jetbrains toolbox to a shared location and adds an X-Server startup script so it will be installed for each user on first
login.
Collaborator Number Metric
3.0.1 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
3.0.1 passed this metric
No Binaries Metric
3.0.1 passed this metric
Testing File Metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
3.0.1 failed this metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
3.0.1 passed this metric
No Binaries Metric
3.0.1 passed this metric
Testing File Metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
3.0.1 passed this metric
3.0.1 passed this metric
Testing File Metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
3.0.1 failed this metric
3.0.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number