{"id":21496533,"url":"https://github.com/mlibrary/rebolt","last_synced_at":"2025-03-17T12:16:02.291Z","repository":{"id":245220875,"uuid":"817605649","full_name":"mlibrary/rebolt","owner":"mlibrary","description":"Easily install Puppet Bolt from RubyGems","archived":false,"fork":false,"pushed_at":"2024-06-21T23:46:58.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-23T21:53:18.749Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mlibrary.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-20T04:48:57.000Z","updated_at":"2024-06-21T23:47:01.000Z","dependencies_parsed_at":"2024-06-20T16:28:31.092Z","dependency_job_id":"d629e4d0-d07b-4502-ad43-06b8c9aad2bd","html_url":"https://github.com/mlibrary/rebolt","commit_stats":null,"previous_names":["mlibrary/rebolt"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlibrary%2Frebolt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlibrary%2Frebolt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlibrary%2Frebolt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlibrary%2Frebolt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mlibrary","download_url":"https://codeload.github.com/mlibrary/rebolt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244031154,"owners_count":20386534,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-23T16:16:56.931Z","updated_at":"2025-03-17T12:16:02.273Z","avatar_url":"https://github.com/mlibrary.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ReBolt - Install Puppet Bolt from RubyGems\n\n## What\n\nInstalls [Puppet Bolt](https://github.com/puppetlabs/bolt) [gem](https://rubygems.org/gems/bolt)\nand the [Puppet Forge](https://forge.puppet.com) modules it requires.\n\n## Why\nPuppet makes it hard to run Bolt without using their binary packages. They provide zero\ndocumentation on how to do so, but have plenty of warnings on their website not to try it. I wanted\nto be able to run Bolt on my Mac Studio without using Rosetta, both in macOS and in a Linux VM.\nWith the official binary packages none of this is possible. But come on, it's open source and as I\nnoted above [Bolt is on RubyGems](https://rubygems.org/gems/bolt)!\n\nPuppet's official binary packages consistantly lag in platform support. They have no support for\narm64, except under Rosetta on macOS, and no arm64 at all on Linux. You may also want to run Bolt\non a more recent Ruby version than the vendored version that Puppet ships, or just want to manage\nyour own copy rather than depending on their packages. Or maybe you want to run Bolt on a\nRaspberry Pi!\n\nFinally, the binary package makes it hard to find where relevant files (like the built in modules)\nare and understand how Bolt actually works. Installing Bolt from RubyGems and Puppet Forge, should\nhelp demystify things, even if you still stick to the official binaries for production use.\n\n## Installation\n* Install ruby:\n  * `brew install ruby` / `apt-get install ruby` / etc.\n    * __Do not use the ruby shipped by Apple with macOS, it's far too old to work.__\n  * Confirm that bundler is installed (it's included with rubies from Homebrew)\n    * `bundle --version`\n    * If not, install it from your OS package manager (`apt-get install ruby-bundler`, etc.)\n* Clone this repo, cd into it.\n* `bundle install`\n* `rake`\n\n## Updating\n* This repo: `git pull`\n* Puppet Bolt gem and its gem dependencies: `bundle update --all`\n* Puppet Forge modules: `rake`\n\nImportant: after updating the Bolt gem with `bundle`, you must run `rake` again or you may be left\nwith out of date Forge modules.\n\n## Troubleshooting:\n\nIf you see this warning, it means that Bolt's module dependencies are missing.\n```\nBolt might be installed as a gem. To use Bolt reliably and with all of its\ndependencies, uninstall the 'bolt' gem and install Bolt as a package:\nhttps://puppet.com/docs/bolt/latest/bolt_installing.html\n```\n\nTry running `rake setup:modules` or, maximally, `rake clean:all; rake`.\n\nYou don't have to take my word that running Bolt this way is safe. Take a look at the [code that\nprints this warning](https://github.com/puppetlabs/bolt/blob/42ec31cc298b981f1e853820caf701e8a5573a8e/lib/bolt/cli.rb#L774-L810).\nIt's just checking for missing modules.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmlibrary%2Frebolt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmlibrary%2Frebolt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmlibrary%2Frebolt/lists"}