| 
									
										
										
										
											2023-10-05 01:21:05 -04:00
										 |  |  | #!/usr/bin/env bash
 | 
					
						
							|  |  |  | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) | 
					
						
							| 
									
										
										
										
											2024-01-01 12:13:05 -05:00
										 |  |  | # Copyright (c) 2021-2024 tteck | 
					
						
							| 
									
										
										
										
											2023-10-05 01:21:05 -04:00
										 |  |  | # Author: tteck (tteckster) | 
					
						
							|  |  |  | # License: MIT | 
					
						
							|  |  |  | # https://github.com/tteck/Proxmox/raw/main/LICENSE | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function header_info { | 
					
						
							|  |  |  | clear | 
					
						
							|  |  |  | cat <<"EOF" | 
					
						
							|  |  |  |     ____  _                   _          _____ __                   | 
					
						
							|  |  |  |    / __ \(_)___  ____ __   __(_)___     / ___// /_  ____ _________ | 
					
						
							|  |  |  |   / /_/ / / __ \/ __ `/ | / / / __ \    \__ \/ __ \/ __ `/ ___/ _ \
 | 
					
						
							|  |  |  |  / ____/ / / / / /_/ /| |/ / / / / /   ___/ / / / / /_/ / /  /  __/ | 
					
						
							|  |  |  | /_/   /_/_/ /_/\__, / |___/_/_/ /_/   /____/_/ /_/\__,_/_/   \___/ | 
					
						
							|  |  |  |               /____/ | 
					
						
							|  |  |  | EOF | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | header_info | 
					
						
							|  |  |  | echo -e "Loading..." | 
					
						
							|  |  |  | APP="Pingvin" | 
					
						
							|  |  |  | var_disk="8" | 
					
						
							|  |  |  | var_cpu="2" | 
					
						
							|  |  |  | var_ram="2048" | 
					
						
							|  |  |  | var_os="debian" | 
					
						
							|  |  |  | var_version="12" | 
					
						
							|  |  |  | variables | 
					
						
							|  |  |  | color | 
					
						
							|  |  |  | catch_errors | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function default_settings() { | 
					
						
							|  |  |  |   CT_TYPE="1" | 
					
						
							|  |  |  |   PW="" | 
					
						
							|  |  |  |   CT_ID=$NEXTID | 
					
						
							|  |  |  |   HN=$NSAPP | 
					
						
							|  |  |  |   DISK_SIZE="$var_disk" | 
					
						
							|  |  |  |   CORE_COUNT="$var_cpu" | 
					
						
							|  |  |  |   RAM_SIZE="$var_ram" | 
					
						
							|  |  |  |   BRG="vmbr0" | 
					
						
							|  |  |  |   NET="dhcp" | 
					
						
							|  |  |  |   GATE="" | 
					
						
							| 
									
										
										
										
											2024-01-12 15:00:42 -05:00
										 |  |  |   APT_CACHER="" | 
					
						
							|  |  |  |   APT_CACHER_IP="" | 
					
						
							| 
									
										
										
										
											2023-10-05 01:21:05 -04:00
										 |  |  |   DISABLEIP6="no" | 
					
						
							|  |  |  |   MTU="" | 
					
						
							|  |  |  |   SD="" | 
					
						
							|  |  |  |   NS="" | 
					
						
							|  |  |  |   MAC="" | 
					
						
							|  |  |  |   VLAN="" | 
					
						
							|  |  |  |   SSH="no" | 
					
						
							|  |  |  |   VERB="no" | 
					
						
							|  |  |  |   echo_default | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function update_script() { | 
					
						
							|  |  |  | header_info | 
					
						
							| 
									
										
										
										
											2023-10-05 09:11:08 -04:00
										 |  |  | if [[ ! -d /opt/pingvin-share ]]; then msg_error "No ${APP} Installation Found!"; exit; fi | 
					
						
							|  |  |  | msg_info "Stopping Pingvin Share" | 
					
						
							|  |  |  | pm2 stop pingvin-share-backend pingvin-share-frontend &>/dev/null | 
					
						
							|  |  |  | msg_ok "Stopped Pingvin Share" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | msg_info "Updating Pingvin Share" | 
					
						
							|  |  |  | cd /opt/pingvin-share | 
					
						
							|  |  |  | git fetch --tags | 
					
						
							|  |  |  | git checkout $(git describe --tags `git rev-list --tags --max-count=1`) &>/dev/null | 
					
						
							|  |  |  | cd backend | 
					
						
							| 
									
										
										
										
											2024-07-05 01:09:30 -04:00
										 |  |  | npm install &>/dev/null | 
					
						
							| 
									
										
										
										
											2023-10-05 09:11:08 -04:00
										 |  |  | npm run build &>/dev/null | 
					
						
							|  |  |  | cd ../frontend | 
					
						
							| 
									
										
										
										
											2024-07-05 01:09:30 -04:00
										 |  |  | npm install &>/dev/null | 
					
						
							| 
									
										
										
										
											2023-10-05 09:11:08 -04:00
										 |  |  | npm run build &>/dev/null | 
					
						
							|  |  |  | msg_ok "Updated Pingvin Share" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | msg_info "Starting Pingvin Share" | 
					
						
							|  |  |  | pm2 start pingvin-share-backend pingvin-share-frontend &>/dev/null | 
					
						
							|  |  |  | msg_ok "Started Pingvin Share" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | msg_ok "Updated Successfully" | 
					
						
							| 
									
										
										
										
											2023-10-05 01:21:05 -04:00
										 |  |  | exit | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | start | 
					
						
							|  |  |  | build_container | 
					
						
							|  |  |  | description | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | msg_ok "Completed Successfully!\n" | 
					
						
							|  |  |  | echo -e "${APP} should be reachable by going to the following URL.
 | 
					
						
							|  |  |  |          ${BL}http://${IP}:3000 ${CL} \n"
 |