## confdroid_gitea::params.pp # Module name: confdroid_gitea # Author: 12ww1160 (12ww1160@confdroid.com) # @summary holds all parameters for the confdroid_gitea Puppet module. # @param [Boolean] ga_use_firewall Whether to enable firewall rules for Gitea. # @param [String] ga_http_port The main port number for Gitea. # @param [String] ga_ssh_port The SSH port number for Gitea. # @param [String] ga_order_prefix The order prefix for firewall rules. # @param [String] ga_host_fqdn The FQDN for the Gitea host. # @param [String] ga_opt_dir The installation directory for Gitea. # @param [String] ga_dl_url The download URL for Gitea. # @param [String] ga_dl_version The version of Gitea to download. # @param [String] ga_user The system user for Gitea. # @param [Array] ga_reqpackages The required packages for Gitea. # @param [String] ga_pkg_ensure The ensure state for required packages. # @param [String] ga_domain The domain for the Gitea host. # defaults to 'localhost'. # @param [String] ga_root_url The root URL for Gitea. # defaults to 'http://localhost:3000'. # @param [Boolean] ga_disable_ssh Whether to disable SSH access in Gitea. # @param [Boolean] ga_start_lfs Whether to start Git LFS support in Gitea. # @param [Boolean] ga_start_ssh Whether to start SSH support in Gitea. # @param [String] ga_db_type The database type for Gitea. # @param [String] ga_db_host The database host for Gitea. # @param [String] ga_db_port The database port for Gitea. # @param [String] ga_db_name The database name for Gitea. # @param [String] ga_db_user The database user for Gitea. # @param [String] ga_db_password The database password for Gitea. # @param [Boolean] ga_log_sql Whether to enable SQL query logging # in Gitea. # @param [String] ga_ssl_mode The SSL mode for the database connection # in Gitea. # @param [String] ga_log_mode The log mode for Gitea. # @param [String] ga_log_level The log level for Gitea. # @param [Boolean] ga_install_lock Whether to enable the install lock # for Gitea. # @param [String] ga_secret_key The secret key for Gitea. # @param [String] ga_reverse_proxy_limit The reverse proxy limit # for Gitea. # @param [String] ga_reverse_proxy_trusted_proxies The trusted proxies for # reverse proxy in Gitea. # @param [Boolean] ga_disable_root_check Whether to disable the root check # in Gitea. # @param [Boolean] ga_disable_registration Whether to disable user # registration in Gitea. # @param [Boolean] ga_require_signin_view Whether to require sign-in to view # in Gitea. # @param [String] ga_admin_username The admin username for Gitea. # @param [String] ga_admin_password The admin password for Gitea. # @param [String] ga_admin_email The admin email for Gitea. # @param [Boolean] ga_enable_packages Whether to allow packages registry # in Gitea. # @param [Boolean] ga_enable_registry Whether to allow container registry # in Gitea. # @param [String] ga_storage_type The storage type for Gitea. # @param [String] ga_instance_name The instance name for Gitea. # @param [String] ga_lfs_jwt_secret The JWT secret for Git L # FS in Gitea. # @param [String] ga_admin_allow_create_organization Whether to allow admin # to create organizations in Gitea. # @param [String] ga_internal_token The internal token for Gitea. # @param [String] ga_jwt_secret The JWT secret for Gitea. ############################################################################## class confdroid_gitea::params ( # main Array $ga_reqpackages = ['git', 'wget', 'tar'], String $ga_pkg_ensure = 'present', String $ga_host_fqdn = 'gitea.example.net', String $ga_opt_dir = '/opt/gitea', String $ga_dl_url = 'https://dl.gitea.com/gitea', String $ga_dl_version = '1.25.4', String $ga_user = 'git', String $ga_domain = 'localhost', String $ga_root_url = 'http://localhost:3000', Boolean $ga_disable_ssh = false, Boolean $ga_start_lfs = true, Boolean $ga_start_ssh = false, String $ga_instance_name = 'Your Gitea Instance', String $ga_lfs_jwt_secret = 'ChangeMeLFSJWTSecret', # database String $ga_db_type = 'postgres', String $ga_db_host = 'localhost', String $ga_db_port = '5432', String $ga_db_name = 'gitea', String $ga_db_user = 'ChangeMe', String $ga_db_password = 'ChangeMe', Boolean $ga_log_sql = false, String $ga_ssl_mode = 'require', # logging String $ga_log_mode = 'file', String $ga_log_level = 'info', # security Boolean $ga_install_lock = true, String $ga_secret_key = 'ChangeMe1234567890', String $ga_reverse_proxy_limit = '1', String $ga_reverse_proxy_trusted_proxies = '*', Boolean $ga_disable_root_check = true, String $ga_admin_username = 'admin', String $ga_admin_password = 'ChangeMeAdmin123!', String $ga_admin_email = 'admin@example.com', String $ga_admin_allow_create_organization = 'true', String $ga_internal_token = 'ChangeMeInternalToken', String $ga_jwt_secret = 'ChangeMeJWTSecret', # service Boolean $ga_disable_registration = false, Boolean $ga_require_signin_view = false, Boolean $ga_enable_packages = true, Boolean $ga_enable_registry = true, String $ga_storage_type = 'filesystem', # firewall Boolean $ga_use_firewall = true, String $ga_http_port = '3000', String $ga_ssh_port = '22', String $ga_order_prefix = '50', ) { # facts $fqdn = $facts['networking']['fqdn'] $domain = $facts['networking']['domain'] $os_name = $facts['os']['name'] $os_release = $facts['os']['release']['major'] # directories $ga_working_dir ='/var/lib/gitea' $ga_custom_dir = "${ga_working_dir}/custom" $ga_data_dir = "${ga_working_dir}/data" $ga_log_dir = "${ga_working_dir}/log" $ga_tmp_dir = "${ga_working_dir}/tmp" $ga_conf_dir = '/etc/gitea' $ga_git_dir = "${ga_data_dir}/git" $ga_repo_dir = "${ga_git_dir}/repositories" $ga_uploads_dir = "${ga_data_dir}/uploads" $ga_indexer_dir = "${ga_data_dir}/indexers" $ga_sessions_dir = "${ga_data_dir}/sessions" $ga_avatars_dir = "${ga_data_dir}/avatars" $ga_repo_avatars_dir = "${ga_data_dir}/repo-avatars" $ga_attachments_dir = "${ga_data_dir}/attachments" $ga_lfs_dir = "${ga_data_dir}/lfs" # files $ga_config_file = "${ga_conf_dir}/app.ini" $ga_config_erb = 'confdroid_gitea/app.ini.erb' $ga_service_file = '/etc/systemd/system/gitea.service' $ga_service_erb = 'confdroid_gitea/gitea_service.erb' # Service $ga_service_name = 'gitea' # includes must be last include confdroid_gitea::main::config }