- Ensure that you have
mkdocs
andmike
installed locally:pip3 install --user mkdocs-material mike
- Make changes
- Commit those changes
- Make sure GitHub Actions turns green
- Make sure Coverage remains 100%
- Bump version in
package.json
- Bump version in
metadata.rb
- Add contributors to
README.md
anddocs/team.md
if necessary echo -n "<your chef login>"
> .chef.login- Put your chef private key associated with
opsworks_ruby
cookbook asclient.pem
file into project directory docker-compose run --rm cookbook bundle update
docker-compose build
- Run Unit Testing and Linting
docker-compose run --rm cookbook conventional-changelog -s -p angular -i CHANGELOG.md
- Properly copy paste new entries in
CHANGELOG.md
todocs/changelog.md
- Commit all the things with
chore: Version bump
- Add new configuration options to
gh-pages-source
if necessary - Tag version
- Push:
git push origin master --tags
- Deploy new documentation version
mike deploy --push --prefix docs --update-aliases $(git tag -l | sort -Vr | head -n 1) latest
docker-compose run --rm cookbook knife cookbook site share opsworks_ruby Applications
- Draft new release on GitHub
In case of trouble, check Sharing Chef Cookbooks article. Short version:
$ knife cookbook site share opsworks_ruby Applications
WARNING: No knife configuration file found
ERROR: Chef::Exceptions::CookbookNotFoundInRepo: Cannot find a cookbook named opsworks_ruby;
did you forget to add metadata to a cookbook? (http://wiki.opscode.com/display/chef/Metadata)
Solution:
% echo client_key \"#{ENV['HOME']}/.chef/client.pem\" >> ~/.chef/knife.rb
% echo cookbook_path \"#{ENV['HOME']}/Projects/cookbooks\" >> ~/.chef/knife.rb
% knife cookbook site share opsworks_ruby Applications
ERROR: Errno::EACCES: Permission denied - /var/chef
Solution:
% sudo chown -R $USER /var/chef
docker run -it --rm --privileged --pid=host opsworksruby_cookbook \
nsenter -t 1 -m -u -n -i date -u $(date -u +%m%d%H%M%Y)
% knife cookbook site share opsworks_ruby Applications
Generating metadata for opsworks_ruby from /tmp/chef-opsworks_ruby-build20161021-18021-ypq6jp/opsworks_ruby/metadata.rb
Making tarball opsworks_ruby.tgz
ERROR: Error uploading cookbook opsworks_ruby to the Opscode Cookbook Site:
undefined method `strip' for nil:NilClass.
Set log level to debug (-l debug) for more information.`
Solution:
% echo node_name \"<your chef login>\" >> ~/.chef/knife.rb