Forge Home

friendica

Install and configure Friendica to run on a LEMP stack

6,996 downloads

6,474 latest version

4.0 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Support the Puppet Community by contributing to this module

You are welcome to contribute to this module by suggesting new features, currency updates, or fixes. Every contribution is valuable to help ensure that the module remains compatible with the latest Puppet versions and continues to meet community needs. Complete the following steps:

  1. Review the module’s contribution guidelines and any licenses. Ensure that your planned contribution aligns with the author’s standards and any legal requirements.
  2. Fork the repository on GitHub, make changes on a branch of your fork, and submit a pull request. The pull request must clearly document your proposed change.

For questions about updating the module, contact the module’s author.

Version information

  • 0.1.1 (latest)
  • 0.1.0
released Mar 17th 2017
This version is compatible with:
  • Puppet Enterprise 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 3.0.0 < 5.0.0
  • ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'eelcomaljaars-friendica', '0.1.1'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add eelcomaljaars-friendica
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install eelcomaljaars-friendica --version 0.1.1

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

eelcomaljaars/friendica — version 0.1.1 Mar 17th 2017

friendica

Table of Contents

  1. Description
  2. Setup - The basics of getting started with friendica
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module

Description

Puppet class to install and configure a Friendica instance Friendica is a federated social platform. http://friendica.com

What friendica affects

This module installs and configures a copy of the Friendica php code in /var/www.

By default it will also setup nginx, php-fpm, mysql and nscd to suit friendicas needs.

Beginning with friendica

Add it to you existing puppet setup and see this manual for optional settings. Or download the easy installer from https://devtools.maljaars-it.nl/opensource/friendica-setup to use this software without a full fledged puppet environment.

Usage

class { 'friendica':
  $service_name => "mycoolnodename.org",
  $admin_email => "sittingduck@aol.com",
}

Reference

  • tls_key

Allow you to inject a TLS key that comes from eg encrypted hiera (eyaml)

  • service_name

The DNS name the friendica instance should serve. Defaults to the full qualified domain name of the server / node.

  • admin_mail

Working email address of the server admin. Use this email address to register the first account on your Friendica instance after setup. Defauls to info@service_name

  • mysql_web_user

The mysql user name that the friendica application uses to connect to mysql. Defaults to friendica-www

  • mysql_web_password

THe mysql password that the friendica application uses to connect to mysql. Has a default which may be ok if MySQL security is otherwise sane. But feeding it an eyaml encrypted alternative is better.

  • mysql_db_name

MySQL database name to use, defaults to 'friendica'

  • branch

The Friendica code is deployed using a git clone command. This options allows you to specify an alternative git branch to check out Defaults to develop.

Please note the the checkout is only performed during setup. Updates currently must be done manually using a git pull.

  • download_url

Option to specify an other GIT repository, defaults to the friendica public repo on Github.

  • manage_mysql

Wether to setup MySQL using the included puppet code. Defaults to true.

  • manage_nginx

Wether to setup nginx using the included puppet code. Defaults to true.

  • manage_php

Wether to setup php/php-fpm using the included puppet code. Defaults to true.

  • manage_nscd

Wether to setup nscd (name serving caching daemon) using the included puppet code. Defaults to true.

  • manage_firewall

Wether to setup a firewall rule using the included puppet code. Defaults to true.

Limitations

For now only tested in Ubuntu 16.04 and Debian 8 on amd64.

Development

Development for this module is managed in a Gitlab instance at https://devtools.maljaars-it.nl/opensource/puppet-friendica. Please feel free to raise issues or send PR there.