Skip to content
Snippets Groups Projects
Commit eb5edc58 authored by void's avatar void
Browse files

matterbridge als docker, noch ohne laufenden container

parent a5f38b1c
No related branches found
No related tags found
No related merge requests found
...@@ -602,8 +602,8 @@ mattermost['service_port'] = "8065" ...@@ -602,8 +602,8 @@ mattermost['service_port'] = "8065"
# mattermost['service_segment_developer_key'] = nil # mattermost['service_segment_developer_key'] = nil
# mattermost['service_google_developer_key'] = nil # mattermost['service_google_developer_key'] = nil
mattermost['service_enable_incoming_webhooks'] = true mattermost['service_enable_incoming_webhooks'] = true
# mattermost['service_enable_post_username_override'] = false mattermost['service_enable_post_username_override'] = true
# mattermost['service_enable_post_icon_override'] = false mattermost['service_enable_post_icon_override'] = true
# mattermost['service_enable_testing'] = false # mattermost['service_enable_testing'] = false
# mattermost['service_enable_security_fix_alert'] = true # mattermost['service_enable_security_fix_alert'] = true
# mattermost['service_enable_insecure_outgoing_connections'] = false # mattermost['service_enable_insecure_outgoing_connections'] = false
......
---
# Einige Secrets sind auf dem Server lokal gespeichert und werden von dort gelesen
# Auslesen der Dateien vom Server, zwischengespeicert wird in der Variable gitlab_secrets
# Anschließend müssen die entsprechenden Einträge aus gitlab_secrets extrahiert werden
# Die Daten, die von Slurp gelesen werden sind Base64 codiert
# Zur Sicherheit werden Whitespace-Zeichen entfert, damit z.B. Zeilenumbrüche nicht übernommen werden
- name: get secrets from server 1
slurp: src={{ item }}
with_items:
- /srv/matterbridge/secret/mattermost_password
register: ldap_secrets
- name: get secrets from server 2
set_fact:
mattermost_password: "{{ ldap_secrets.results | selectattr('item', 'equalto', '/srv/matterbridge/secret/mattermost_password') | map(attribute='content') | list | first | b64decode | regex_replace('\\s', '') }}"
# Folder Structure
- name: create folder struct
file:
path: "/srv/matterbridge"
state: "directory"
- name: create folder struct
file:
path: "/srv/matterbridge/etc"
state: "directory"
# Konfigurationsdateien erstellen
- name: Konfig-Datei Gitlab
template:
src: "matterbridge.conf"
dest: "/srv/matterbridge/etc/matterbridge.conf"
- name: Konfig-Datei Gitlab
template:
src: "matterbridge.toml"
dest: "/srv/matterbridge/etc/matterbridge.toml"
# Docker Container starten
#- name: start matterbridge docker
# docker_container:
# name: matterbridge-service
# image: 42wim/matterbridge:0.6.1
# state: started
# restart_policy: always
# volumes:
# - /srv/matterbridge/etc/matterbridge.conf:/matterbridge.conf
#- name: start matterbridge docker
# docker_container:
# name: matterbridge-service
# image: 42wim/matterbridge:latest
# state: started
# restart_policy: always
# volumes:
# - /srv/matterbridge/etc/matterbridge.toml:/matterbridge.toml
#This is configuration for matterbridge.
###################################################################
#IRC section
###################################################################
[IRC]
#Enable enables this bridge
#OPTIONAL (default false)
Enable=true
#irc server to connect to.
#REQUIRED
Server="irc.freenode.net:6667"
#Enable to use TLS connection to your irc server.
#OPTIONAL (default false)
UseTLS=false
#Enable SASL (PLAIN) authentication. (freenode requires this from eg AWS hosts)
#It uses NickServNick and NickServPassword as login and password
#OPTIONAL (default false)
UseSASL=false
#Enable to not verify the certificate on your irc server. i
#e.g. when using selfsigned certificates
#OPTIONAL (default false)
SkipTLSVerify=true
#Your nick on irc.
#REQUIRED
Nick="|MatterBOT|"
#If you registered your bot with a service like Nickserv on freenode.
#Also being used when UseSASL=true
#OPTIONAL
#NickServNick="nickserv"
#NickServPassword="secret"
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#OPTIONAL (default {BRIDGE}-{NICK})
RemoteNickFormat="[{BRIDGE}] <{NICK}>"
#Nicks you want to ignore.
#Messages from those users will not be sent to other bridges.
#OPTIONAL
#IgnoreNicks="ircspammer1 ircspammer2"
###################################################################
#XMPP section
###################################################################
#[XMPP]
#Enable enables this bridge
#OPTIONAL (default false)
#Enable=true
#xmpp server to connect to.
#REQUIRED
#Server="jabber.example.com:5222"
#Jid
#REQUIRED
#Jid="user@example.com"
#Password
#REQUIRED
#Password="yourpass"
#MUC
#REQUIRED
#Muc="conference.jabber.example.com"
#Your nick in the rooms
#REQUIRED
#Nick="xmppbot"
###################################################################
#mattermost section
###################################################################
[mattermost]
#Enable enables this bridge
#OPTIONAL (default false)
Enable=true
#### Settings for webhook matterbridge.
#### These settings will not be used when using -plus switch which doesn't use
#### webhooks.
#Url is your incoming webhook url as specified in mattermost.
#See account settings - integrations - incoming webhooks on mattermost.
#REQUIRED
#URL="https://yourdomain/hooks/yourhookkey"
#Address to listen on for outgoing webhook requests from mattermost.
#See account settings - integrations - outgoing webhooks on mattermost.
#This setting will not be used when using -plus switch which doesn't use
#webhooks
#REQUIRED
#BindAddress="0.0.0.0:9999"
#Icon that will be showed in mattermost.
#OPTIONAL
#IconURL="http://youricon.png"
#### Settings for matterbridge -plus
#### Thse settings will only be used when using the -plus switch.
#The mattermost hostname.
#REQUIRED
Server="mattermost.warpzone.ms"
#Your team on mattermost.
#REQUIRED
Team="warpzone"
#login/pass of your bot.
#Use a dedicated user for this and not your own!
#REQUIRED
Login="matterbot"
Password="{{ mattermost_password }}"
#Enable this to make a http connection (instead of https) to your mattermost.
#OPTIONAL (default false)
NoTLS=false
#### Shared settings for matterbridge and -plus
#Enable to not verify the certificate on your mattermost server.
#e.g. when using selfsigned certificates
#OPTIONAL (default false)
SkipTLSVerify=true
#Enable to show IRC joins/parts in mattermost.
#OPTIONAL (default false)
ShowJoinPart=false
#Whether to prefix messages from other bridges to mattermost with the sender's nick.
#Useful if username overrides for incoming webhooks isn't enabled on the
#mattermost server. If you set PrefixMessagesWithNick to true, each message
#from bridge to Mattermost will by default be prefixed by "bridge-" + nick. You can,
#however, modify how the messages appear, by setting (and modifying) RemoteNickFormat
#OPTIONAL (default false)
PrefixMessagesWithNick=false
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#OPTIONAL (default {BRIDGE}-{NICK})
RemoteNickFormat="[{BRIDGE}] <{NICK}> "
#how to format the list of IRC nicks when displayed in mattermost.
#Possible options are "table" and "plain"
#OPTIONAL (default plain)
NickFormatter=plain
#How many nicks to list per row for formatters that support this.
#OPTIONAL (default 4)
NicksPerRow=4
#Nicks you want to ignore. Messages from those users will not be bridged.
#OPTIONAL
#IgnoreNicks="mmbot spammer2"
###################################################################
#Gitter section
#Best to make a dedicated gitter account for the bot.
###################################################################
#[Gitter]
#Enable enables this bridge
#OPTIONAL (default false)
#Enable=true
#Token to connect with Gitter API
#You can get your token by going to https://developer.gitter.im/docs/welcome and SIGN IN
#REQUIRED
#Token="Yourtokenhere"
#Nicks you want to ignore. Messages of those users will not be bridged.
#OPTIONAL
#IgnoreNicks="spammer1 spammer2"
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#OPTIONAL (default {BRIDGE}-{NICK})
#RemoteNickFormat="[{BRIDGE}] <{NICK}>
###################################################################
#slack section
###################################################################
#[slack]
#Enable enables this bridge
#OPTIONAL (default false)
#Enable=true
#### Settings for webhook matterbridge.
#### These settings will not be used when useAPI is enabled
#Url is your incoming webhook url as specified in slack
#See account settings - integrations - incoming webhooks on slack
#REQUIRED (unless useAPI=true)
#URL="https://hooks.slack.com/services/yourhook"
#Address to listen on for outgoing webhook requests from slack
#See account settings - integrations - outgoing webhooks on slack
#This setting will not be used when useAPI is eanbled
#webhooks
#REQUIRED (unless useAPI=true)
#BindAddress="0.0.0.0:9999"
#Icon that will be showed in slack
#OPTIONAL
#IconURL="http://youricon.png"
#### Settings for using slack API
#OPTIONAL
#useAPI=false
#Token to connect with the Slack API
#REQUIRED (when useAPI=true)
#Token="yourslacktoken"
#### Shared settings for webhooks and API
#Whether to prefix messages from other bridges to mattermost with the sender's nick.
#Useful if username overrides for incoming webhooks isn't enabled on the
#slack server. If you set PrefixMessagesWithNick to true, each message
#from bridge to Slack will by default be prefixed by "bridge-" + nick. You can,
#however, modify how the messages appear, by setting (and modifying) RemoteNickFormat
#OPTIONAL (default false)
#PrefixMessagesWithNick=false
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#OPTIONAL (default {BRIDGE}-{NICK})
#RemoteNickFormat="[{BRIDGE}] <{NICK}>
#how to format the list of IRC nicks when displayed in slack
#Possible options are "table" and "plain"
#OPTIONAL (default plain)
#NickFormatter=plain
#How many nicks to list per row for formatters that support this.
#OPTIONAL (default 4)
#NicksPerRow=4
#Nicks you want to ignore. Messages from those users will not be bridged.
#OPTIONAL
#IgnoreNicks="mmbot spammer2"
###################################################################
#multiple channel config
###################################################################
#You can specify multiple channels.
#The name is just an identifier for you.
#REQUIRED (at least 1 channel)
[Channel "channel1"]
#Choose the IRC channel to send messages to.
IRC="#warpzone"
#Choose the mattermost channel to messages to.
mattermost="town-square"
#Choose the xmpp channel to send messages to.
#xmpp="off-topic"
#Choose the Gitter channel to send messages to.
#Gitter channels are named "user/repo"
#gitter="42wim/matterbridge"
#Choose the slack channel to send messages to.
#slack="general"
#[Channel "testchannel"]
#IRC="#testing"
#mattermost="testing"
#xmpp="testing"
#gitter="user/repo"
#slack="testing"
###################################################################
#general
###################################################################
[general]
#request your API key on https://github.com/giphy/GiphyAPI. This is a public beta key.
#OPTIONAL
#GiphyApiKey="dc6zaTOxFJmzC"
#Enabling plus means you'll use the API version instead of the webhooks one
Plus=true
#This is configuration for matterbridge.
###################################################################
#IRC section
###################################################################
#REQUIRED to start IRC section
[irc]
#You can configure multiple servers "[irc.name]" or "[irc.name2]"
#In this example we use [irc.freenode]
#REQUIRED
[irc.freenode]
#irc server to connect to.
#REQUIRED
Server="irc.freenode.net:6667"
#Enable to use TLS connection to your irc server.
#OPTIONAL (default false)
UseTLS=false
#Enable SASL (PLAIN) authentication. (freenode requires this from eg AWS hosts)
#It uses NickServNick and NickServPassword as login and password
#OPTIONAL (default false)
UseSASL=false
#Enable to not verify the certificate on your irc server. i
#e.g. when using selfsigned certificates
#OPTIONAL (default false)
SkipTLSVerify=true
#Your nick on irc.
#REQUIRED
Nick="|MatterBOT|"
#If you registered your bot with a service like Nickserv on freenode.
#Also being used when UseSASL=true
#OPTIONAL
#NickServNick="nickserv"
#NickServPassword="secret"
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default {BRIDGE}-{NICK})
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
#Nicks you want to ignore.
#Messages from those users will not be sent to other bridges.
#OPTIONAL
#IgnoreNicks="ircspammer1 ircspammer2"
###################################################################
#XMPP section
###################################################################
#[xmpp]
#You can configure multiple servers "[xmpp.name]" or "[xmpp.name2]"
#In this example we use [xmpp.jabber]
#REQUIRED
#[xmpp.jabber]
#xmpp server to connect to.
#REQUIRED
#Server="jabber.example.com:5222"
#Jid
#REQUIRED
#Jid="user@example.com"
#Password
#REQUIRED
#Password="yourpass"
#MUC
#REQUIRED
#Muc="conference.jabber.example.com"
#Your nick in the rooms
#REQUIRED
#Nick="xmppbot"
###################################################################
#mattermost section
###################################################################
[mattermost]
#You can configure multiple servers "[mattermost.name]" or "[mattermost.name2]"
#In this example we use [mattermost.webserver]
#REQUIRED
[mattermost.webserver]
#### Settings for webhook matterbridge.
#### These settings will not be used when useAPI is enabled
#Url is your incoming webhook url as specified in mattermost.
#See account settings - integrations - incoming webhooks on mattermost.
#REQUIRED (unless useAPI=true)
#URL="https://yourdomain/hooks/yourhookkey"
#Address to listen on for outgoing webhook requests from mattermost.
#See account settings - integrations - outgoing webhooks on mattermost.
#This setting will not be used when using -plus switch which doesn't use
#webhooks
#REQUIRED (unless useAPI=true)
#BindAddress="0.0.0.0:9999"
#Icon that will be showed in mattermost.
#OPTIONAL
#IconURL="http://youricon.png"
#### Settings for matterbridge -plus
#### Thse settings will only be used when using the -plus switch.
#### Settings for using matterbridge API
#OPTIONAL
useAPI=true
#The mattermost hostname.
#REQUIRED (when useAPI=true)
Server="mattermost.warpzone.ms"
#Your team on mattermost.
#REQUIRED (when useAPI=true)
Team="warpzone"
#login/pass of your bot.
#Use a dedicated user for this and not your own!
#REQUIRED (when useAPI=true)
Login="matterbot"
Password="{{ mattermost_password }}"
#Enable this to make a http connection (instead of https) to your mattermost.
#OPTIONAL (default false)
NoTLS=false
#### Shared settings for matterbridge and -plus
#Enable to not verify the certificate on your mattermost server.
#e.g. when using selfsigned certificates
#OPTIONAL (default false)
SkipTLSVerify=true
#Enable to show IRC joins/parts in mattermost.
#OPTIONAL (default false)
ShowJoinPart=false
#Whether to prefix messages from other bridges to mattermost with the sender's nick.
#Useful if username overrides for incoming webhooks isn't enabled on the
#mattermost server. If you set PrefixMessagesWithNick to true, each message
#from bridge to Mattermost will by default be prefixed by "bridge-" + nick. You can,
#however, modify how the messages appear, by setting (and modifying) RemoteNickFormat
#OPTIONAL (default false)
PrefixMessagesWithNick=false
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default {BRIDGE}-{NICK})
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
#how to format the list of IRC nicks when displayed in mattermost.
#Possible options are "table" and "plain"
#OPTIONAL (default plain)
NickFormatter="plain"
#How many nicks to list per row for formatters that support this.
#OPTIONAL (default 4)
NicksPerRow=4
#Nicks you want to ignore. Messages from those users will not be bridged.
#OPTIONAL
IgnoreNicks="mmbot spammer2"
###################################################################
#Gitter section
#Best to make a dedicated gitter account for the bot.
###################################################################
#[gitter]
#You can configure multiple servers "[gitter.name]" or "[gitter.name2]"
#In this example we use [gitter.myproject]
#REQUIRED
#[gitter.myproject]
#Token to connect with Gitter API
#You can get your token by going to https://developer.gitter.im/docs/welcome and SIGN IN
#REQUIRED
#Token="Yourtokenhere"
#Nicks you want to ignore. Messages of those users will not be bridged.
#OPTIONAL
#IgnoreNicks="spammer1 spammer2"
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default {BRIDGE}-{NICK})
#RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
###################################################################
#slack section
###################################################################
#[slack]
#You can configure multiple servers "[slack.name]" or "[slack.name2]"
#In this example we use [slack.hobby]
#REQUIRED
#[slack.hobby]
#### Settings for webhook matterbridge.
#### These settings will not be used when useAPI is enabled
#Url is your incoming webhook url as specified in slack
#See account settings - integrations - incoming webhooks on slack
#REQUIRED (unless useAPI=true)
#URL="https://hooks.slack.com/services/yourhook"
#Address to listen on for outgoing webhook requests from slack
#See account settings - integrations - outgoing webhooks on slack
#This setting will not be used when useAPI is eanbled
#webhooks
#REQUIRED (unless useAPI=true)
#BindAddress="0.0.0.0:9999"
#Icon that will be showed in slack
#OPTIONAL
#IconURL="http://youricon.png"
#### Settings for using slack API
#OPTIONAL
#useAPI=false
#Token to connect with the Slack API
#REQUIRED (when useAPI=true)
#Token="yourslacktoken"
#### Shared settings for webhooks and API
#Whether to prefix messages from other bridges to mattermost with the sender's nick.
#Useful if username overrides for incoming webhooks isn't enabled on the
#slack server. If you set PrefixMessagesWithNick to true, each message
#from bridge to Slack will by default be prefixed by "bridge-" + nick. You can,
#however, modify how the messages appear, by setting (and modifying) RemoteNickFormat
#OPTIONAL (default false)
#PrefixMessagesWithNick=false
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#OPTIONAL (default {BRIDGE}-{NICK})
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
#how to format the list of IRC nicks when displayed in slack
#Possible options are "table" and "plain"
#OPTIONAL (default plain)
#NickFormatter="plain"
#How many nicks to list per row for formatters that support this.
#OPTIONAL (default 4)
#NicksPerRow=4
#Nicks you want to ignore. Messages from those users will not be bridged.
#OPTIONAL
#IgnoreNicks="mmbot spammer2"
###################################################################
#discord section
###################################################################
#[discord]
#You can configure multiple servers "[discord.name]" or "[discord.name2]"
#In this example we use [discord.game]
#REQUIRED
#[discord.game]
#Token to connect with Discord API
#You can get your token by following the instructions on
#https://github.com/reactiflux/discord-irc/wiki/Creating-a-discord-bot-&-getting-a-token
#REQUIRED
#Token="Yourtokenhere"
#REQUIRED
#Guild="yourguildname"
#Nicks you want to ignore. Messages of those users will not be bridged.
#OPTIONAL
#IgnoreNicks="spammer1 spammer2"
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default {BRIDGE}-{NICK})
#RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
###################################################################
#Gateway configuration
###################################################################
#You can specify multiple gateways using [[gateway]]
#Each gateway has a [[gateway.in]] and a [[gateway.out]]
#[[gateway.in]] specifies the account and channels we will receive messages from.
#[[gateway.out]] specifies the account and channels we will send the messages
#from [[gateway.in]] to.
#
#Most of the time [[gateway.in]] and [[gateway.out]] are the same if you
#want bidirectional bridging.
#REQUIRED
[[gateway]]
#OPTIONAL (not used for now)
name="gateway1"
#Enable enables this gateway
##OPTIONAL (default false)
enable=true
#[[gateway.in]] specifies the account and channels we will receive messages from.
#The following example bridges between mattermost and irc
[[gateway.in]]
#account specified above
#REQUIRED
account="irc.freenode"
#channel to connect on that account
#REQUIRED
channel="#warpzone"
[[gateway.in]]
account="mattermost.webserver"
channel="Town Square"
[[gateway.out]]
account="irc.freenode"
channel="#warpzone"
[[gateway.out]]
account="mattermost.webserver"
channel="Town Square"
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
- { role: docker_etherpad, tags: etherpad } - { role: docker_etherpad, tags: etherpad }
- { role: docker_gitlab, tags: gitlab } - { role: docker_gitlab, tags: gitlab }
- { role: docker_ldap, tags: ldap } - { role: docker_ldap, tags: ldap }
- { role: docker_matterbridge, tags: matterbridge }
- { role: docker_warpinfra, tags: warpinfra } - { role: docker_warpinfra, tags: warpinfra }
- { role: docker_warpinfratest, tags: warpinfratest } - { role: docker_warpinfratest, tags: warpinfratest }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment