metabase-service-configuration-file

Description

n/a

Variables

Name Type Default Description

path

string --

The path to the file. Required

group

string --

The group of the file.

jetty_host

string localhost

Host on which the inbuilt jetty server listens,

jetty_port

integer 3000

Port on which the inbuilt jetty server listens,

metabase_db_file

string --

The path to the database file, in case of h2.

metabase_db_host

string localhost

The database host.

metabase_db_name

string metabase

The name of the database.

metabase_db_password

string --

The database password.

metabase_db_port

integer --

The database port.

metabase_db_type

string h2

Database type to connect to.

metabase_db_user

string metabase

The database user.

metabase_emoji_in_logs

boolean True

Setting it true will include emojis in logs, to disable set it to false.

mode

string --

The permissions of the file.

owner

string --

The owner of the file.

password_complexity

string normal

Allowed password complexity (weak|normal|strong).

password_length

integer 8

Minimal password length.

Code

args:
  password_complexity:
    doc:
      short_help: Allowed password complexity (weak|normal|strong).
    type: string
    allowed:
    - weak
    - normal
    - strong
    required: false
    default: normal
  password_length:
    doc:
      short_help: Minimal password length.
    type: integer
    required: false
    default: 8
  jetty_host:
    doc:
      short_help: Host on which the inbuilt jetty server listens,
    type: string
    required: false
    default: localhost
  jetty_port:
    doc:
      short_help: Port on which the inbuilt jetty server listens,
    type: integer
    required: false
    default: 3000
  metabase_db_type:
    doc:
      short_help: Database type to connect to.
    type: string
    required: false
    default: h2
    allowed:
    - h2
    - postgres
    - mysql
  metabase_db_host:
    doc:
      short_help: The database host.
    type: string
    required: false
    default: localhost
  metabase_db_port:
    doc:
      short_help: The database port.
    required: false
    type: integer
  metabase_db_user:
    doc:
      short_help: The database user.
    required: false
    type: string
    default: metabase
  metabase_db_name:
    doc:
      short_help: The name of the database.
    type: string
    default: metabase
    required: false
  metabase_db_password:
    doc:
      short_help: The database password.
    required: false
    type: string
  metabase_db_file:
    doc:
      short_help: The path to the database file, in case of h2.
    type: string
    required: false
  metabase_emoji_in_logs:
    doc:
      short_help: Setting it true will include emojis in logs, to disable set it to
        false.
    type: boolean
    default: true
    required: false
  _import:
  - file-with-content
frecklets:
- file-with-content:
    path: '{{:: path ::}}'
    group: '{{:: group ::}}'
    owner: '{{:: owner ::}}'
    mode: '{{:: mode ::}}'
    content: |2-

      # Password complexity for Metabase user, allowed values <weak|normal|strong>
      MB_PASSWORD_COMPLEXITY={{:: password_complexity ::}}
      # Password length for Metabase user
      MB_PASSWORD_LENGTH={{:: password_length ::}}

      # Host and Port on which the inbuilt jetty server listens,
      MB_JETTY_HOST={{:: jetty_host ::}}
      MB_JETTY_PORT={{:: jetty_port ::}}

      # Provide Intranet or Private IP address of PostgresSQL server
      MB_DB_TYPE={{:: metabase_db_type ::}}
      MB_DB_HOST={{:: metabase_db_host ::}}
      MB_DB_PORT={{:: metabase_db_port ::}}

      # Provide the database name
      MB_DB_DBNAME={{:: metabase_db_name ::}}
      # Provide the username of database user
      MB_DB_USER={{:: metabase_db_user ::}}
      # Provide the password of database user
      MB_DB_PASS={{:: metabase_db_password ::}}
      {%:: if metabase_db_file ::%}
      MY_DB_FILE={{:: metabase_db_file ::}}
      {%:: endif ::%}


      # Setting it true will include emojis in logs, to disable set it to false
      MB_EMOJI_IN_LOGS={{:: metabase_emoji_in_logs | string_for_boolean('true', 'false') ::}}
frecklecute metabase-service-configuration-file --help

Usage: frecklecute metabase-service-configuration-file [OPTIONS] PATH

  n/a

Options:
  --group GROUP                   The group of the file.
  --jetty-host JETTY_HOST         Host on which the inbuilt jetty server
                                  listens,
  --jetty-port JETTY_PORT         Port on which the inbuilt jetty server
                                  listens,
  --metabase-db-file METABASE_DB_FILE
                                  The path to the database file, in case of
                                  h2.
  --metabase-db-host METABASE_DB_HOST
                                  The database host.
  --metabase-db-name METABASE_DB_NAME
                                  The name of the database.
  --metabase-db-password METABASE_DB_PASSWORD
                                  The database password.
  --metabase-db-port METABASE_DB_PORT
                                  The database port.
  --metabase-db-type METABASE_DB_TYPE
                                  Database type to connect to.
  --metabase-db-user METABASE_DB_USER
                                  The database user.
  --metabase-emoji-in-logs / --no-metabase-emoji-in-logs
                                  Setting it true will include emojis in logs,
                                  to disable set it to false.
  --mode MODE                     The permissions of the file.
  --owner USER                    The owner of the file.
  --password-complexity PASSWORD_COMPLEXITY
                                  Allowed password complexity
                                  (weak|normal|strong).
  --password-length PASSWORD_LENGTH
                                  Minimal password length.
  --help                          Show this message and exit.
# -*- coding: utf-8 -*-


#
# module path: pycklets.metabase_service_configuration_file.MetabaseServiceConfigurationFile
#


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

@dataclass
class MetabaseServiceConfigurationFile(AutoPycklet):
    """No documentation available.

       Args:
         group: The group of the file.
         jetty_host: Host on which the inbuilt jetty server listens,
         jetty_port: Port on which the inbuilt jetty server listens,
         metabase_db_file: The path to the database file, in case of h2.
         metabase_db_host: The database host.
         metabase_db_name: The name of the database.
         metabase_db_password: The database password.
         metabase_db_port: The database port.
         metabase_db_type: Database type to connect to.
         metabase_db_user: The database user.
         metabase_emoji_in_logs: Setting it true will include emojis in logs, to disable set it to false.
         mode: The permissions of the file.
         owner: The owner of the file.
         password_complexity: Allowed password complexity (weak|normal|strong).
         password_length: Minimal password length.
         path: The path to the file.

    """

    FRECKLET_ID = "metabase-service-configuration-file"

    group: str = None
    jetty_host: str = None
    jetty_port: int = None
    metabase_db_file: str = None
    metabase_db_host: str = None
    metabase_db_name: str = None
    metabase_db_password: str = None
    metabase_db_port: int = None
    metabase_db_type: str = None
    metabase_db_user: str = None
    metabase_emoji_in_logs: bool = None
    mode: str = None
    owner: str = None
    password_complexity: str = None
    password_length: int = None
    path: str = None


    def __post_init__(self):
        super(MetabaseServiceConfigurationFile, self).__init__(var_names=["group", "jetty_host", "jetty_port", "metabase_db_file", "metabase_db_host", "metabase_db_name", "metabase_db_password", "metabase_db_port", "metabase_db_type", "metabase_db_user", "metabase_emoji_in_logs", "mode", "owner", "password_complexity", "password_length", "path"])


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


#
# module path: pycklets.metabase_service_configuration_file.MetabaseServiceConfigurationFile
#


from pyckles import AutoPycklet

class MetabaseServiceConfigurationFile(AutoPycklet):
    """No documentation available.

       Args:
         group: The group of the file.
         jetty_host: Host on which the inbuilt jetty server listens,
         jetty_port: Port on which the inbuilt jetty server listens,
         metabase_db_file: The path to the database file, in case of h2.
         metabase_db_host: The database host.
         metabase_db_name: The name of the database.
         metabase_db_password: The database password.
         metabase_db_port: The database port.
         metabase_db_type: Database type to connect to.
         metabase_db_user: The database user.
         metabase_emoji_in_logs: Setting it true will include emojis in logs, to disable set it to false.
         mode: The permissions of the file.
         owner: The owner of the file.
         password_complexity: Allowed password complexity (weak|normal|strong).
         password_length: Minimal password length.
         path: The path to the file.

    """

    FRECKLET_ID = "metabase-service-configuration-file"

    def __init__(self, group=None, jetty_host="localhost", jetty_port=3000, metabase_db_file=None, metabase_db_host="localhost", metabase_db_name="metabase", metabase_db_password=None, metabase_db_port=None, metabase_db_type="h2", metabase_db_user="metabase", metabase_emoji_in_logs=True, mode=None, owner=None, password_complexity="normal", password_length=8, path=None):

        super(MetabaseServiceConfigurationFile, self).__init__(var_names=["group", "jetty_host", "jetty_port", "metabase_db_file", "metabase_db_host", "metabase_db_name", "metabase_db_password", "metabase_db_port", "metabase_db_type", "metabase_db_user", "metabase_emoji_in_logs", "mode", "owner", "password_complexity", "password_length", "path"])
        self._group = group
        self._jetty_host = jetty_host
        self._jetty_port = jetty_port
        self._metabase_db_file = metabase_db_file
        self._metabase_db_host = metabase_db_host
        self._metabase_db_name = metabase_db_name
        self._metabase_db_password = metabase_db_password
        self._metabase_db_port = metabase_db_port
        self._metabase_db_type = metabase_db_type
        self._metabase_db_user = metabase_db_user
        self._metabase_emoji_in_logs = metabase_emoji_in_logs
        self._mode = mode
        self._owner = owner
        self._password_complexity = password_complexity
        self._password_length = password_length
        self._path = path

    @property
    def group(self):
        return self._group

    @group.setter
    def group(self, group):
        self._group = group

    @property
    def jetty_host(self):
        return self._jetty_host

    @jetty_host.setter
    def jetty_host(self, jetty_host):
        self._jetty_host = jetty_host

    @property
    def jetty_port(self):
        return self._jetty_port

    @jetty_port.setter
    def jetty_port(self, jetty_port):
        self._jetty_port = jetty_port

    @property
    def metabase_db_file(self):
        return self._metabase_db_file

    @metabase_db_file.setter
    def metabase_db_file(self, metabase_db_file):
        self._metabase_db_file = metabase_db_file

    @property
    def metabase_db_host(self):
        return self._metabase_db_host

    @metabase_db_host.setter
    def metabase_db_host(self, metabase_db_host):
        self._metabase_db_host = metabase_db_host

    @property
    def metabase_db_name(self):
        return self._metabase_db_name

    @metabase_db_name.setter
    def metabase_db_name(self, metabase_db_name):
        self._metabase_db_name = metabase_db_name

    @property
    def metabase_db_password(self):
        return self._metabase_db_password

    @metabase_db_password.setter
    def metabase_db_password(self, metabase_db_password):
        self._metabase_db_password = metabase_db_password

    @property
    def metabase_db_port(self):
        return self._metabase_db_port

    @metabase_db_port.setter
    def metabase_db_port(self, metabase_db_port):
        self._metabase_db_port = metabase_db_port

    @property
    def metabase_db_type(self):
        return self._metabase_db_type

    @metabase_db_type.setter
    def metabase_db_type(self, metabase_db_type):
        self._metabase_db_type = metabase_db_type

    @property
    def metabase_db_user(self):
        return self._metabase_db_user

    @metabase_db_user.setter
    def metabase_db_user(self, metabase_db_user):
        self._metabase_db_user = metabase_db_user

    @property
    def metabase_emoji_in_logs(self):
        return self._metabase_emoji_in_logs

    @metabase_emoji_in_logs.setter
    def metabase_emoji_in_logs(self, metabase_emoji_in_logs):
        self._metabase_emoji_in_logs = metabase_emoji_in_logs

    @property
    def mode(self):
        return self._mode

    @mode.setter
    def mode(self, mode):
        self._mode = mode

    @property
    def owner(self):
        return self._owner

    @owner.setter
    def owner(self, owner):
        self._owner = owner

    @property
    def password_complexity(self):
        return self._password_complexity

    @password_complexity.setter
    def password_complexity(self, password_complexity):
        self._password_complexity = password_complexity

    @property
    def password_length(self):
        return self._password_length

    @password_length.setter
    def password_length(self, password_length):
        self._password_length = password_length

    @property
    def path(self):
        return self._path

    @path.setter
    def path(self, path):
        self._path = path



frecklet_class = MetabaseServiceConfigurationFile