mailtrain-service

Description

Install the mailtrain service.

NOTE: This is work in progress, it'll probably not work.

Variables

Name Type Default Description

version

string --

The version of mailtrain.

Code

doc:
  short_help: Install the mailtrain service.
  help: |
    Install the mailtrain service.

    **NOTE**: This is work in progress, it'll probably not work.
args:
  version:
    doc:
      short_help: The version of mailtrain.
    type: string
    required: false

frecklets:
- user-exists:
    name: mailtrain
    group: mailtrain
- asdf-pkg-mgr-plugin:
    plugin: nodejs
    user: mailtrain
    versions:
    - 11.2.0
- git-repo-synced:
    dest: /opt/mailtrain
    repo: https://github.com/Mailtrain-org/mailtrain.git
    become: true
    owner: mailtrain
    group: mailtrain
    version: '{{:: version ::}}'
- task:
    become: true
    become_user: mailtrain
  frecklet:
    type: ansible-module
    name: shell
    msg: installing mailtrain
  vars:
    free_form: bash -c ". ~/.asdf/asdf.sh && npm install --production"
    chdir: /opt/mailtrain
#  - mariadb-database-exists:
##      db_import: "{{:: wp_db_import ::}}"
##      db_dump_file: "{{:: wp_db_dump_file | default(omit) ::}}"
#      db_name: "mailtrain"
#      db_user: "mailtrain"
#      db_user_password: "mailtrain"
##  - pkgs:
##      pkg_mgrs: false
##      packages:
##      - pkg_mgr: npm
###        executable: /home/mailtrain/.asdf/shims/npm
##        path: /opt/mailtrain
##        production: true
##        become: true
##        become_user: mailtrain
frecklecute --community mailtrain-service --help

Usage: frecklecute mailtrain-service [OPTIONS]

  Install the mailtrain service.

  **NOTE**: This is work in progress, it'll probably not work.

Options:
  --version VERSION  The version of mailtrain.
  --help             Show this message and exit.
# -*- coding: utf-8 -*-


#
# module path: pycklets.mailtrain_service.MailtrainService
#


from dataclasses import dataclass
from pyckles import AutoPycklet
from typing import *    # noqa

@dataclass
class MailtrainService(AutoPycklet):
    """Install the mailtrain service.

     **NOTE**: This is work in progress, it'll probably not work.

       Args:
         version: The version of mailtrain.

    """

    FRECKLET_ID = "mailtrain-service"

    version: str = None


    def __post_init__(self):
        super(MailtrainService, self).__init__(var_names=["version"])


frecklet_class = MailtrainService
# -*- coding: utf-8 -*-


#
# module path: pycklets.mailtrain_service.MailtrainService
#


from pyckles import AutoPycklet

class MailtrainService(AutoPycklet):
    """Install the mailtrain service.

     **NOTE**: This is work in progress, it'll probably not work.

       Args:
         version: The version of mailtrain.

    """

    FRECKLET_ID = "mailtrain-service"

    def __init__(self, version=None):

        super(MailtrainService, self).__init__(var_names=["version"])
        self._version = version

    @property
    def version(self):
        return self._version

    @version.setter
    def version(self, version):
        self._version = version



frecklet_class = MailtrainService