{"id":15284188,"url":"https://github.com/s12v/puppet-blackfire","last_synced_at":"2025-07-27T05:37:03.279Z","repository":{"id":29833884,"uuid":"33378543","full_name":"s12v/puppet-blackfire","owner":"s12v","description":"Puppet module for Blackfire profiler","archived":false,"fork":false,"pushed_at":"2024-04-03T07:20:46.000Z","size":68,"stargazers_count":4,"open_issues_count":6,"forks_count":15,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-09T17:50:55.340Z","etag":null,"topics":["beaker","blackfire-php-profiler","puppet"],"latest_commit_sha":null,"homepage":"https://forge.puppetlabs.com/s12v/blackfire","language":"Puppet","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"codefellows-seattle-javascript-401d21/30-hash-tables","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/s12v.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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":"2015-04-03T19:13:54.000Z","updated_at":"2023-12-09T11:50:52.000Z","dependencies_parsed_at":"2024-06-19T02:18:38.450Z","dependency_job_id":"72b5e7b5-c455-4b7c-8452-32c785f102a3","html_url":"https://github.com/s12v/puppet-blackfire","commit_stats":{"total_commits":77,"total_committers":5,"mean_commits":15.4,"dds":0.09090909090909094,"last_synced_commit":"c778d1095ffa69a112bafd6b43c64fdd435bbf0c"},"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s12v%2Fpuppet-blackfire","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s12v%2Fpuppet-blackfire/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s12v%2Fpuppet-blackfire/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s12v%2Fpuppet-blackfire/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/s12v","download_url":"https://codeload.github.com/s12v/puppet-blackfire/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248644174,"owners_count":21138561,"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":["beaker","blackfire-php-profiler","puppet"],"created_at":"2024-09-30T14:50:32.072Z","updated_at":"2025-04-12T23:21:12.232Z","avatar_url":"https://github.com/s12v.png","language":"Puppet","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/s12v/puppet-blackfire.svg?branch=master)](https://travis-ci.org/s12v/puppet-blackfire)\n[![Puppet Forge](https://img.shields.io/puppetforge/dt/s12v/blackfire.svg)](https://forge.puppetlabs.com/s12v/blackfire)\n\n# blackfire\n\n#### Table of Contents\n\n1. [Description](#description)\n2. [Setup - The basics of getting started with blackfire](#setup)\n    * [What blackfire affects](#what-blackfire-affects)\n    * [Setup requirements](#setup-requirements)\n    * [Beginning with blackfire](#beginning-with-blackfire)\n3. [Usage - Configuration options and additional functionality](#usage)\n4. [Reference - An under-the-hood peek at what the module is doing and how](#reference)\n5. [Limitations - OS compatibility, etc.](#limitations)\n6. [Development - Guide for contributing to the module](#development)\n\n## Description\n\nPuppet module for installing, configuring and managing [Blackfire PHP profiler](https://blackfire.io/).\n\n## Setup\n\n### What blackfire affects\n\n* The module adds blackfire repository and overwrites blackfire configuration file.\n* It _does not_ restart any service, you have to do it manually.\n\n### Setup requirements\n\nMake sure blackfire is installed after PHP.\n\n### Beginning with blackfire\n\nThe module includes a single public class `blackfire`.\n\n#### Minimal configuration\n\nYou need to provide at least `server_id` and `server_token` parameters.\nAlso you might want to subscribe your service to be restarted when configuration has changed:\n```puppet\nclass { 'blackfire':\n\tserver_id    =\u003e 'b54114a9-df8a-563b-8ba3-e5457155010e',\n\tserver_token =\u003e '7315b1cf617bf51575ba463e813156ed97c85d8ca5c5691db37bbfe36a622a4f',\n    notify =\u003e Service['php5-fpm']\n}\n```\nYou can get these parameters on https://blackfire.io/account/credentials.\n\n## Usage\n\nIf you want to provide additional parameters to Agent or PHP extension:\n```puppet\nclass { 'blackfire':\n\tserver_id    =\u003e 'b54114a9-df8a-563b-8ba3-e5457155010e',\n\tserver_token =\u003e '7315b1cf617bf51575ba463e813156ed97c85d8ca5c5691db37bbfe36a622a4f',\n\tagent =\u003e {\n\t\tlog_level =\u003e 2\n\t},\n\tphp =\u003e {\n\t\tlog_level =\u003e 3\n\t}\n}\n```\n\n## Reference\n\n### Classes\n\n#### Public classes\n\n - `blackfire`: Main class\n\n#### Private classes\n - `blackfire::agent`: Manages the Agent\n - `blackfire::agent::install`: Handles the packages.\n - `blackfire::agent::config`: Handles the configuration file.\n - `blackfire::agent::service`: Handles the service.\n - `blackfire::php`: Manages the PHP extension (Probe)\n - `blackfire::php::install`: Handles the packages.\n - `blackfire::php::config`: Handles the configuration file.\n - `blackfire::repo`: Handles the repository.\n\n### Parameters\n\n#### Available parameters for blackfire class\n\n - `agent` - Configuration for Blackfire Agent\n   - `ca_cert` - PEM encoded certicates\n   - `collector` - URL of Blackfire's data collector. Default is *https://blackfire.io*\n   - `http_proxy` - Http proxy to use\n   - `https_proxy` - Https proxy to use\n   - `log_file` - The path of the log file. Use \"stderr\" to log to stderr. Default is *stderr*\n   - `log_level` - Log verbosity level (4: debug, 3: info, 2: warning, 1: error). Default is *1*\n   - `manage` - Manage Agent. Default is *true*\n   - `manage_service` - Manage Agent service. Default is *true*\n   - `service_ensure` - Default is *running*\n   - `socket` - The socket the agent will listen to. Default is *unix:///var/run/blackfire/agent.sock*\n   - `spec` - The path to the json specifications file\n   - `version` - Which version of the agent to install. Default is *latest*\n - `manage_repo` - Manage Blackfire repository. Default is *true*\n - `php` - Configuration for Blackfire PHP extension\n   - `agent_socket` - The agent socket. Default is *unix:///var/run/blackfire/agent.sock*\n   - `agent_timeout` - The agent timeout. Default *0.25*\n   - `log_file` - The path of the log file.\n   - `log_level` - Log verbosity level (4: debug, 3: info, 2: warning, 1: error). Default is *1*\n   - `manage` - Manage PHP extension. Default is *true*\n   - `version` - Which version of the probe to install. Default is *latest*\n   - `ini_path` - Path of the blackfire.ini file to be generated. If not set, will try find out the path by installed PHP Version. Default is *empty*\n - `server_id` - Server ID to use for the agent (See https://blackfire.io/account/credentials)\n - `server_token` - Server Token to use for the agent (See https://blackfire.io/account/credentials)\n\n## Limitations\n\nThis module is currently tested on:\n\n - Ubuntu (16.04, 14.04, 12.04, 10.04)\n - Centos (7.0, 6.6)\n - Debian (8.0, 7.8, 6.0)\n\nIt may work on other distros.\n\n## Development\n\n### Module testing\n\n - `bundle exec rake validate` - Check syntax of Ruby files and call :syntax and :metadata / Validate manifests, templates, and ruby files \n - `bundle exec rake lint` - Check puppet manifests with puppet-lint / Run puppet-lint\n - `bundle exec rake spec` - Run spec tests in a clean fixtures directory (using [spec_helper](https://github.com/puppetlabs/puppetlabs_spec_helper))\n\n### Acceptance testing with beaker\n\n - `bundle exec rake beaker_nodes` - List available [beaker](https://github.com/puppetlabs/beaker) nodesets\n - `BLACKFIRE_SERVER_ID=... BLACKFIRE_SERVER_TOKEN=... bundle exec rake beaker` - Run beaker acceptance tests (default nodeset)\n - `BEAKER_set=centos-70-x64 BLACKFIRE_SERVER_ID=... BLACKFIRE_SERVER_TOKEN=... bundle exec rake beaker` - Run beaker acceptance tests for the nodeset\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs12v%2Fpuppet-blackfire","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fs12v%2Fpuppet-blackfire","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs12v%2Fpuppet-blackfire/lists"}