Puppet Class: vnc::client::novnc

Inherited by:
vnc::client::novnc::config
vnc::client::novnc::install
vnc::client::novnc::service
Defined in:
manifests/client/novnc.pp

Summary

Setup a websocket service for running the NoVNC interface

Overview

Parameters:

  • manage_packages (Boolean)

    Should this class manage the packages

  • packages (Array)

    List of packages to install

  • packages_ensure (String)

    Ensure state of the vnc server packages

  • manage_service_config (Boolean)

    should this class manage any config files?

  • websockify_config_dir (Stdlib::Absolutepath)

    where are config files kept

  • websockify_config_mode (String)

    what should the config mode be

  • websockify_token_plugin (String)

    what type of token plugin is in use

  • websockify_token_source (String)

    what is the data source for the token plugin if $websockify_token_plugin == ‘TokenFile’ or ‘ReadOnlyTokenFile’, this should be the filename

  • websockify_auth_plugin (String)

    what type of auth plugin is in use

  • websockify_auth_source (String)

    what is the data source for the auth plugin

  • websockify_service_user (String)

    User to run the service as

  • websockify_service_group (String)

    Group to run the service as

  • websockify_service_dynamicuser (Boolean)

    Use systemd dynamic users for this service

  • make_webserver_vnc_index (Boolean)

    Make a simple index file listing out known sessions

  • webserver_novnc_location (Stdlib::Absolutepath)

    What is the URL base for novnc (probably /novnc)

  • webserver_vnc_index (Stdlib::Absolutepath)

    Where should we write out the known session index?

  • manage_service (Boolean)

    Should this service be managed

  • websockify_command (Stdlib::Absolutepath)

    where is /usr/bin/websockify?

  • websockify_service_name (String)

    Name of service to manage

  • websockify_service_ensure (String)

    Ensure for service

  • websockify_service_enable (Boolean)

    Enable for service

  • websockify_port (Variant[String, Integer[0,65535]])

    Port to listen on

  • websockify_webroot (Stdlib::Absolutepath)

    Webroot for service to use

  • websockify_prefer_ipv6 (Boolean)

    Try IPv6 before IPv4

  • websockify_use_ssl (Boolean)

    Use an SSL certificate for websockify

  • websockify_use_ssl_only (Boolean)

    Only use SSL connections

  • websockify_ssl_ca (Stdlib::Absolutepath)

    SSL Certificate Authority for websockify

  • websockify_ssl_cert (Stdlib::Absolutepath)

    SSL certificate for websockify

  • websockify_ssl_key (Stdlib::Absolutepath)

    SSL key for websockify

  • vnc_servers (Hash)

    A hash of VNC servers to connect to. ie. => ‘host:port’



65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# File 'manifests/client/novnc.pp', line 65

class vnc::client::novnc (
  Boolean $manage_packages,
  Array $packages,
  String $packages_ensure,

  Boolean $manage_service_config,
  Stdlib::Absolutepath $websockify_config_dir,
  String $websockify_config_mode,
  String $websockify_service_user,
  String $websockify_service_group,
  Boolean $websockify_service_dynamicuser,
  String $websockify_token_plugin,
  String $websockify_token_source,
  String $websockify_auth_plugin,
  String $websockify_auth_source,

  Boolean $make_webserver_vnc_index,
  Stdlib::Absolutepath $webserver_novnc_location,
  Stdlib::Absolutepath $webserver_vnc_index,

  Boolean $manage_service,
  String $websockify_service_name,
  String $websockify_service_ensure,
  Boolean $websockify_service_enable,
  Stdlib::Absolutepath $websockify_command,
  Variant[String, Integer[0,65535]] $websockify_port,
  Stdlib::Absolutepath $websockify_webroot,
  Boolean $websockify_prefer_ipv6,
  Boolean $websockify_use_ssl,
  Boolean $websockify_use_ssl_only,
  Stdlib::Absolutepath $websockify_ssl_ca,
  Stdlib::Absolutepath $websockify_ssl_cert,
  Stdlib::Absolutepath $websockify_ssl_key,

  Hash $vnc_servers,
) {
  contain 'vnc::client::novnc::install'
  contain 'vnc::client::novnc::config'
  contain 'vnc::client::novnc::service'

  Class['vnc::client::novnc::install'] -> Class['vnc::client::novnc::config'] ~> Class['vnc::client::novnc::service']
  Class['vnc::client::novnc::install'] ~> Class['vnc::client::novnc::service']
}