]>
git.proxmox.com Git - proxmox-backup.git/blob - src/bin/proxmox-backup-proxy.rs
1 extern crate proxmox_backup
;
3 use proxmox_backup
::api
::router
::*;
4 use proxmox_backup
::api
::config
::*;
5 use proxmox_backup
::server
::rest
::*;
6 use proxmox_backup
::auth_helpers
::*;
9 use lazy_static
::lazy_static
;
11 use futures
::future
::Future
;
17 if let Err(err
) = syslog
::init(
18 syslog
::Facility
::LOG_DAEMON
,
19 log
::LevelFilter
::Info
,
20 Some("proxmox-backup-proxy")) {
21 eprintln
!("unable to inititialize syslog: {}", err
);
22 std
::process
::exit(-1);
25 let _
= public_auth_key(); // load with lazy_static
26 let _
= csrf_secret(); // load with lazy_static
28 let addr
= ([0,0,0,0,0,0,0,0], 8007).into();
31 static ref ROUTER
: Router
= proxmox_backup
::api2
::router();
34 let mut config
= ApiConfig
::new(
35 env
!("PROXMOX_JSDIR"), &ROUTER
, RpcEnvironmentType
::PUBLIC
);
37 // add default dirs which includes jquery and bootstrap
38 // my $base = '/usr/share/libpve-http-server-perl';
39 // add_dirs($self->{dirs}, '/css/' => "$base/css/");
40 // add_dirs($self->{dirs}, '/js/' => "$base/js/");
41 // add_dirs($self->{dirs}, '/fonts/' => "$base/fonts/");
42 config
.add_alias("novnc", "/usr/share/novnc-pve");
43 config
.add_alias("extjs", "/usr/share/javascript/extjs");
44 config
.add_alias("fontawesome", "/usr/share/fonts-font-awesome");
45 config
.add_alias("xtermjs", "/usr/share/pve-xtermjs");
46 config
.add_alias("widgettoolkit", "/usr/share/javascript/proxmox-widget-toolkit");
48 let rest_server
= RestServer
::new(config
);
50 let server
= hyper
::Server
::bind(&addr
)
52 .map_err(|e
| eprintln
!("server error: {}", e
));
55 // Run this server for... forever!
56 hyper
::rt
::run(server
);