{"id":20376348,"url":"https://github.com/example42/puppet-tp_profile","last_synced_at":"2026-03-10T18:03:02.752Z","repository":{"id":57666823,"uuid":"212679127","full_name":"example42/puppet-tp_profile","owner":"example42","description":"A standardized, auto-generated, set of profile classes to manage applications via Tiny Puppet (tp)","archived":false,"fork":false,"pushed_at":"2022-08-08T22:06:38.000Z","size":66,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-02T00:41:31.045Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Puppet","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/example42.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-03T20:59:10.000Z","updated_at":"2022-08-08T22:06:37.000Z","dependencies_parsed_at":"2022-09-02T14:10:10.588Z","dependency_job_id":null,"html_url":"https://github.com/example42/puppet-tp_profile","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/example42/puppet-tp_profile","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/example42%2Fpuppet-tp_profile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/example42%2Fpuppet-tp_profile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/example42%2Fpuppet-tp_profile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/example42%2Fpuppet-tp_profile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/example42","download_url":"https://codeload.github.com/example42/puppet-tp_profile/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/example42%2Fpuppet-tp_profile/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30346481,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T15:55:29.454Z","status":"ssl_error","status_checked_at":"2026-03-10T15:54:58.440Z","response_time":106,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-15T01:36:57.241Z","updated_at":"2026-03-10T18:03:02.712Z","avatar_url":"https://github.com/example42.png","language":"Puppet","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tp_profile\n\n## Deprecation notice\nThis module has been DEPRECATED. It has been replaced by tp classes inside the new [psick_profile](htpps://github.com/example42/puppet-psick_profile) module.\n\n\nThis module provides classes to install different applications via Tiny Puppet (tp).\n\n[![Build Status](https://travis-ci.org/example42/puppet-tp_profile.svg?branch=master)](https://travis-ci.org/example42/puppet-tp_profile)\n\n#### Table of Contents\n\n1. [Description](#description)\n2. [Setup - The basics of getting started with tp_profile](#setup)\n    * [What tp_profile affects](#what-tp_profile-affects)\n    * [Beginning with tp_profile](#beginning-with-tp_profile)\n3. [Usage - Configuration options and additional functionality](#usage)\n4. [Limitations - OS compatibility, etc.](#limitations)\n\n## Description\n\nThis module provides a set of standard classes to handle different applications, on different Operating Systems, using Tiny Puppet defines. These classes are automatically generated, using the commands in the `scripts` directory, and share a common set of parameters and the same functionality\n\n## Setup\n\n### What tp_profile affects \n\nWhen you include a tp profile the relevant application package(s) and service(s) are managed.\n\nVia additional class parameters you can manage:\n- If to use the upstream application repos or the underlying OS ones to install the package (relevant tinydata must be present)\n- The application's configuration files, in the shape, format and way you want\n- Whole directories related to the applications. Source of these dirs can be a Puppet fileserver source or a vcsrepo.\n\n### Beginning with tp_profile\n\nJust include and tp profile to install the relevant application. Handle via Hiera all your customisations\n\n## Usage\n\nTo install mongodb, for example, just:\n\n    include tp_profile::mongodb\n\nThen you can configure the class parameters via Hiera (all the classes have the same parameters, so what's written here for mongodb applies to all the supported application):\n\nTo use mongodb upstream repos, rather than the default one of the underlying OS (note, this option works when it's present the relevant tinydata to manage upstream repos for a given app):\n\n    tp_profile::mongodb::upstream_repo: true\n\nTo include the class but actually don't manage any of its resources:\n\n    tp_profile::mongodb::manage: false\n\nTo remove the resources previously installed via the same profile (note this is different than manage option, here resources are actually managed, and removed):\n\n    tp_profile::mongodb::ensure: absent\n\nTo customise the tp::install options of the relevant application:\n\n    tp_profile::mongodb::install_options:\n      cli_enable: true\n      test_enable: true\n\nTo override tinydata settings:\n\n    tp_profile::mongodb::settings_hash:\n      package_name: my_mongo\n\nTo define the configuration files and dirs to manage:\n\n    tp_profile::apache::resources_hash:\n      tp::conf:                                   # Here an hash of tp::conf resources\n        apache::openkills.info.conf:              # This refers to an apache configuration file called openkills.info.conf\n          base_dir: conf                          # and placed in the conf.d dir\n          template: psick/apache/vhost.conf.erb   # It uses the template apache/vhost.conf.erb in the psick module\n          options_hash:                           # where are used the following variables\n              ServerName: openskills.info\n              ServerAlias:\n              - openskill.info\n              - www.openskills.info\n              - www.openskill.info\n              AddDefaultCharset: ISO-8859-1\n        apache::deny_git.conf:                    # This is another configuration file, called deny_git.conf\n          base_dir: conf                          # This is placed, as well, in the apache conf.d dir\n          source: puppet:///modules/psick/apache/deny_git.conf # Its source is from the psick module as well\n       tp::dir:                                   # Here we have an hash of tp::dir resources\n        apache::openskills.info:                  \n          vcsrepo: git                            # We expect the source to be a git repo\n          source: git@bitbucket.org:alvagante/openskills.info.git # This is the source git repo\n          path: /var/www/html/openskills.info     # This is the actual path of the directory\n          ensure: latest                          # This ensures that  whenever Pupept runs, it syncs to upstream master on the git repo (Continuous Delivery done easy)\n\nBy default a tp profile automatically manages any resource needed to install the relevant application (package repos, other packages of tp installs). In case of duplicated resources or if you want to manage such resources by yourself, you can disable any form of automatic dependencies management with:\n\n    tp_profile::mongodb::auto_prereq: flase\n\n## Limitations\n\nTP profiles are just classes that act as entrypoint for Hiera data that allows you to manage any applciation which tp can manage. They just handle package and service resources, in tp::install, and file resources, in tp::conf.\n\nNo other application specific resource is handled by these classes, and, unless you use the auto_conf settings, you are in full control of the configuration files to manage: you must know how to configure the applications you install via tp profiles.\n\n## Development\n\nDon't find the app you need among the tp_profiles? Let us know, we will add the relevant tinydata and generate a profile for it.\n\nHave found issues, bugs or anything to fix? Open a ticket or submit a Pull Request.\n\nDo you have any feature request? Open a ticket.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fexample42%2Fpuppet-tp_profile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fexample42%2Fpuppet-tp_profile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fexample42%2Fpuppet-tp_profile/lists"}