Compare commits
	
		
			55 Commits
		
	
	
		
			c279884da2
			...
			dev
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 0920493634 | |||
| 03b8169401 | |||
| cfc2694737 | |||
| fca20b31bd | |||
| 1f4abd2d6c | |||
| a42d1d05df | |||
| 07d1adc926 | |||
| 71ca410123 | |||
| c46c78519b | |||
| 816a0d4f69 | |||
| f8a60b4287 | |||
| a7f395a62a | |||
| f02aec2cdb | |||
| a94959bcf9 | |||
| 5004250f85 | |||
| 4c4d4bbef7 | |||
| d32b636a99 | |||
| a7083733cc | |||
| 97ddcc4573 | |||
| dc2ae57bd6 | |||
| 82ab31b9ea | |||
| 49ababedc5 | |||
| 0d3931d738 | |||
| 7c93f25a5d | |||
| 8445b64d6b | |||
| 8dfb3fe2a6 | |||
| 5b749d2100 | |||
| 57ca267aa5 | |||
| 2ca308c287 | |||
| 40ee72b587 | |||
| 13bc98d7ef | |||
| d916637798 | |||
| 71d236d0ba | |||
| d81c424878 | |||
| 73e527640f | |||
| aa3075a9fc | |||
| 89cdf8157f | |||
| 4e0ff86295 | |||
| 305b8df6ff | |||
| 6a78933875 | |||
| 7095636915 | |||
| 80bba3b21b | |||
| d98bbb02a9 | |||
| 00c87328ab | |||
| b4cdea984e | |||
| 4651726268 | |||
| 3410cf4426 | |||
| d5393f60f3 | |||
| 5f882df33f | |||
| 0dfbd0bd68 | |||
| 0d5b095ad6 | |||
| 07e32decf8 | |||
| afc3b20785 | |||
| ed160da316 | |||
| 2f08b1414e | 
							
								
								
									
										57
									
								
								files/scripts/backup_system.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										57
									
								
								files/scripts/backup_system.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,57 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  |  | ||||||
|  | ## Variables ## | ||||||
|  |  | ||||||
|  | if [[ -z "$HOSTNAME" ]]; then | ||||||
|  | 	echo "*** Pulling Hostname From Command ***" | ||||||
|  | 	export HOSTNAME="`hostname`" | ||||||
|  | fi | ||||||
|  | if [[ -z "$HOSTNAME" ]]; then | ||||||
|  | 	echo "*** Pulling Hostname From /etc/ File ***" | ||||||
|  | 	export HOSTNAME="`cat /etc/hostname`" | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | EXTRA="$1" | ||||||
|  | TAG="System" | ||||||
|  | DATE="`date "+%Y%m%d-%H%M%S"`" | ||||||
|  | BACKUP_DIR="/srv/backup" | ||||||
|  | BASENAME="Backup" | ||||||
|  | BACKUP="$BACKUP_DIR/$BASENAME.$DATE.$HOSTNAME.$TAG.zip" | ||||||
|  |  | ||||||
|  | ## Initialization ## | ||||||
|  |  | ||||||
|  | echo "*** Creating Backup Directory ***" | ||||||
|  | sudo mkdir -pv "$BACKUP_DIR" | ||||||
|  | sudo mkdir -pv "$BACKUP_DIR/TRASH" | ||||||
|  | sudo chmod -Rv 775 "$BACKUP_DIR" | ||||||
|  | sudo chown -Rv root:root "$BACKUP_DIR" | ||||||
|  |  | ||||||
|  | ## Cleanup ## | ||||||
|  |  | ||||||
|  | echo "*** Removing Old Backups ***" | ||||||
|  | cd "$BACKUP_DIR" | ||||||
|  | sudo mv -v "$BASENAME"*"$TAG"* TRASH/ | ||||||
|  | sudo rm -v TRASH/* | ||||||
|  |  | ||||||
|  | ## Main | ||||||
|  |  | ||||||
|  | echo "*** Creating backup at '$BACKUP' ***" | ||||||
|  | sudo zip -rv "$BACKUP" \ | ||||||
|  | 	/etc /var/{log,mail,spool} /srv /boot \ | ||||||
|  | 	/usr/local/etc $EXTRA \ | ||||||
|  | 	-x "/srv/backup/*" | ||||||
|  | status="$?" | ||||||
|  |  | ||||||
|  | if [[ "$status" != 0 ]]; then | ||||||
|  | 	echo "*** ERROR: Failed to create '$BACKUP', file may be incorrect. ***" | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | if [[ -e "$BACKUP" ]]; then | ||||||
|  | 	ls -alh "$BACKUP" | ||||||
|  | 	echo "*** '$BACKUP' created successfully! ***" | ||||||
|  | else | ||||||
|  | 	echo "*** '$BACKUP' not found! ***" | ||||||
|  | 	exit 1 | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | exit 0 | ||||||
							
								
								
									
										81
									
								
								setup.sh
									
									
									
									
									
								
							
							
						
						
									
										81
									
								
								setup.sh
									
									
									
									
									
								
							| @@ -9,13 +9,18 @@ LOCAL=$DIR/local.yml | |||||||
| URL="https://git.hyperling.com/me/env-ansible" | URL="https://git.hyperling.com/me/env-ansible" | ||||||
| BRANCH="main" | BRANCH="main" | ||||||
|  |  | ||||||
|  | config_dir="/usr/local/etc/hyperling-scm" | ||||||
|  | general_config="$config_dir/general.ini" | ||||||
|  | workstation_config="$config_dir/workstation.ini" | ||||||
|  | server_config="$config_dir/server.ini" | ||||||
|  |  | ||||||
| ## Functions ## | ## Functions ## | ||||||
|  |  | ||||||
| # Accepts 1 parameter, it is used as the exit status. | # Accepts 1 parameter, it is used as the exit status. | ||||||
| function usage { | function usage { | ||||||
| 	cat <<- EOF | 	cat <<- EOF | ||||||
|  |  | ||||||
| 	  $PROG [-l] [-b branch_name] [-h] | 	  $PROG [-l] [-b branch_name] [-g] [-w] [-s] [-h] | ||||||
| 	    Program to initialize synchronization with Hyperling's Ansible configuration. | 	    Program to initialize synchronization with Hyperling's Ansible configuration. | ||||||
| 	      $URL | 	      $URL | ||||||
|  |  | ||||||
| @@ -24,6 +29,9 @@ function usage { | |||||||
| 	             This is helpful for development or just saving bandwidth. | 	             This is helpful for development or just saving bandwidth. | ||||||
| 	             It also provides prettier colors than the plaintext from ansible-pull. ;) | 	             It also provides prettier colors than the plaintext from ansible-pull. ;) | ||||||
| 	      -b branch_name : Download and run a specific branch. Default is $BRANCH. | 	      -b branch_name : Download and run a specific branch. Default is $BRANCH. | ||||||
|  | 	      -g : Enable the General config with test contents. | ||||||
|  | 	      -w : Enable the Workstation config with test contents. | ||||||
|  | 	      -s : Enable the Server config with test contents. | ||||||
| 	      -h : Display this help text | 	      -h : Display this help text | ||||||
|  |  | ||||||
| 	EOF | 	EOF | ||||||
| @@ -32,10 +40,13 @@ function usage { | |||||||
|  |  | ||||||
| ## Parameter Parsing ## | ## Parameter Parsing ## | ||||||
|  |  | ||||||
| while getopts ":lb:h" arg; do | while getopts ":lb:gwsh" arg; do | ||||||
| 	case $arg in | 	case $arg in | ||||||
| 		l) local="Y" && echo "Running $LOCAL as the playbook." ;; | 		l) local="Y" && echo "Running $LOCAL as the playbook." ;; | ||||||
| 		b) branch="$OPTARG" && echo "Using branch $branch instead of $BRANCH." ;; | 		b) branch="$OPTARG" && echo "Using branch $branch instead of $BRANCH." ;; | ||||||
|  | 		g) create_general="Y" && echo "Requested '$general_config'." ;; | ||||||
|  | 		w) create_workstation="Y" && echo "Requested '$workstation_config'." ;; | ||||||
|  | 		s) create_server="Y" && echo "Requested '$server_config'." ;; | ||||||
| 		h) usage ;; | 		h) usage ;; | ||||||
| 		*) echo "ERROR: Parameter $OPTARG was not recognized." && usage 1 ;; | 		*) echo "ERROR: Parameter $OPTARG was not recognized." && usage 1 ;; | ||||||
| 	esac | 	esac | ||||||
| @@ -47,15 +58,32 @@ if [[ ! -z $1 && $1 != "-"* ]]; then | |||||||
| 	usage 1 | 	usage 1 | ||||||
| fi | fi | ||||||
|  |  | ||||||
| if [[ $branch == "" ]]; then | if [[ -z "$local" && "$branch" == "" ]]; then | ||||||
| 	echo "Using default branch $BRANCH." | 	echo "Using default branch $BRANCH." | ||||||
| 	branch="$BRANCH" | 	branch="$BRANCH" | ||||||
| fi | fi | ||||||
|  |  | ||||||
|  | if [[ -n "$create_general" && -f "$general_config" ]]; then | ||||||
|  | 	echo "WARNING: General configuration already exists, will not overwrite." | ||||||
|  | 	ls -lh "$general" | ||||||
|  | fi | ||||||
|  | if [[ -n "$create_workstation" && -f "$workstation_config" ]]; then | ||||||
|  | 	echo "WARNING: Workstation configuration already exists, will not overwrite." | ||||||
|  | 	ls -lh "$workstation_config" | ||||||
|  | fi | ||||||
|  | if [[ -n "$create_server" && -f "$server_config" ]]; then | ||||||
|  | 	echo "WARNING: Server configuration already exists, will not overwrite." | ||||||
|  | 	ls -lh "$server_config" | ||||||
|  | fi | ||||||
|  |  | ||||||
| ## Main ## | ## Main ## | ||||||
|  |  | ||||||
| os="$(cat /etc/os-release)" | os="$(cat /etc/os-release)" | ||||||
|  | if [[ ! -f /.dockerenv ]]; then | ||||||
|  | 	# If we are not in a Docker container, also check what the kernel says. | ||||||
| 	os="$os $(uname -a)" | 	os="$os $(uname -a)" | ||||||
|  | 	# Docker containers use the host kernel which gives an incorrect reading. | ||||||
|  | fi | ||||||
|  |  | ||||||
| echo "Making sure all necessary packages are installed..." | echo "Making sure all necessary packages are installed..." | ||||||
| if [[ `which ansible > /dev/null; echo $?` != 0 ]]; then | if [[ `which ansible > /dev/null; echo $?` != 0 ]]; then | ||||||
| @@ -101,6 +129,53 @@ echo "Installed!" | |||||||
| #ansible-galaxy collection install community.general | #ansible-galaxy collection install community.general | ||||||
| #echo "Added!" | #echo "Added!" | ||||||
|  |  | ||||||
|  | # Create basic layouts if configs do not exist and are requested. | ||||||
|  | if [[ -n "$create_general" | ||||||
|  | 	|| -n "$create_workstation" | ||||||
|  | 	|| -n "$create_server" ]] | ||||||
|  | then | ||||||
|  | 	sudo mkdir -pv "$config_dir" | ||||||
|  | fi | ||||||
|  | if [[ -n "$create_general" && ! -f "$general_config" ]]; then | ||||||
|  | 	function print_general_contents { | ||||||
|  | 		cat <<- EOF | ||||||
|  | 			; TEST DATA | ||||||
|  | 			enable=true | ||||||
|  | 			user=test | ||||||
|  | 			user_desc=Test | ||||||
|  | 			branch=$branch | ||||||
|  | 			; TEST DATA | ||||||
|  | 		EOF | ||||||
|  | 	} | ||||||
|  | 	print_general_contents | sudo tee "$general_config" | ||||||
|  | 	ls -lh "$general_config" | ||||||
|  | fi | ||||||
|  | if [[ -n "$create_workstation" && ! -f "$workstation_config" ]]; then | ||||||
|  | 	function print_workstation_contents { | ||||||
|  | 		cat <<- EOF | ||||||
|  | 			; TEST DATA | ||||||
|  | 			enable=true | ||||||
|  | 			coding=true | ||||||
|  | 			editing=false | ||||||
|  | 			gaming=false | ||||||
|  | 			; TEST DATA | ||||||
|  | 		EOF | ||||||
|  | 	} | ||||||
|  | 	print_workstation_contents | sudo tee "$workstation_config" | ||||||
|  | 	ls -lh "$workstation_config" | ||||||
|  | fi | ||||||
|  | if [[ -n "$create_server" && ! -f "$server_config" ]]; then | ||||||
|  | 	function print_server_contents { | ||||||
|  | 		cat <<- EOF | ||||||
|  | 			; TEST DATA | ||||||
|  | 			enable=true | ||||||
|  | 			; TEST DATA | ||||||
|  | 		EOF | ||||||
|  | 	} | ||||||
|  | 	print_server_contents | sudo tee "$server_config" | ||||||
|  | 	ls -lh "$server_config" | ||||||
|  | fi | ||||||
|  |  | ||||||
| echo "Provisioning Ansible..." | echo "Provisioning Ansible..." | ||||||
| if [[ $local == "Y" ]]; then | if [[ $local == "Y" ]]; then | ||||||
| 	sudo ansible-playbook $LOCAL | 	sudo ansible-playbook $LOCAL | ||||||
|   | |||||||
| @@ -415,6 +415,7 @@ | |||||||
|       function clean() { |       function clean() { | ||||||
|         clean-trash |         clean-trash | ||||||
|         clean-code |         clean-code | ||||||
|  |         clean-backups | ||||||
|       } |       } | ||||||
|     function_flatpak_usage: | |     function_flatpak_usage: | | ||||||
|       function flatpak-usage() { |       function flatpak-usage() { | ||||||
| @@ -563,6 +564,16 @@ | |||||||
|           echo -e "\n*** `basename $project` ***" |           echo -e "\n*** `basename $project` ***" | ||||||
|           cd $project |           cd $project | ||||||
|           if [[ -d .git ]]; then |           if [[ -d .git ]]; then | ||||||
|  |             git ls-remote --exit-code --heads origin dev | ||||||
|  |             dev_exists="$?" | ||||||
|  |             if [[ "$dev_exists" == 0 ]]; then | ||||||
|  |               git switch dev | ||||||
|  |             elif [[ "$dev_exists" == 2 ]]; then | ||||||
|  |               git switch main | ||||||
|  |             else | ||||||
|  |               echo "ERROR: Unknown status for dev_exists, '$dev_exists'." | ||||||
|  |               continue | ||||||
|  |             fi | ||||||
|             git pull |             git pull | ||||||
|             git push |             git push | ||||||
|           else |           else | ||||||
| @@ -767,6 +778,7 @@ | |||||||
|     alias_ls: | |     alias_ls: | | ||||||
|       alias l='ls' |       alias l='ls' | ||||||
|       alias ll='ls -alh' |       alias ll='ls -alh' | ||||||
|  |       alias lh='ls -ash' | ||||||
|     alias_progs: | |     alias_progs: | | ||||||
|       alias progs='ps -ef' |       alias progs='ps -ef' | ||||||
|     alias_nethogs: | |     alias_nethogs: | | ||||||
| @@ -781,28 +793,70 @@ | |||||||
|         date "+%Y%m%d" |         date "+%Y%m%d" | ||||||
|       } |       } | ||||||
|     function_backup: | |     function_backup: | | ||||||
|  |       export BACKUP_DIR="/srv/backup" | ||||||
|       function backup { |       function backup { | ||||||
|         EXTRA="$1" |         /usr/local/bin/backup_system.sh | ||||||
|         TAG="System" |       } | ||||||
|         BASENAME="/tmp/Backup" |       alias backup-system="backup" | ||||||
|         BACKUP="$BASENAME.`now`.$HOSTNAME.$TAG.zip" |       alias system-backup="backup" | ||||||
|         echo "*** Removing Old Backups ***" |       alias check-backups="ll $BACKUP_DIR" | ||||||
|         sh -c 'rm -fv "$BASENAME"*"$TAG"*' |       function clean-backup { | ||||||
|         echo "*** Creating backup at '$BACKUP' ***" |         sh -c "rm -rfv $BACKUP_DIR/*" | ||||||
|         sudo zip -rv "$BACKUP" \ |       } | ||||||
|           /etc /var/{log,mail,spool} /srv /boot \ |       alias clean-backups="clean-backup" | ||||||
|           /usr/local/etc $EXTRA |     function_pull_prod_backups: | | ||||||
|         status="$?" |       export DOCKER="Docker" | ||||||
|         if [[ "$status" != 0 ]]; then |       export SYSTEM="System" | ||||||
|           echo "*** ERROR: Failed to create '$BACKUP', file may be incorrect. ***" |       function pull_prod_backup { | ||||||
|  |         if [[ -z "$1" || ("$1" != "$DOCKER" && "$1" != "$SYSTEM") ]]; then | ||||||
|  |           echo "ERROR: Parameter 1 not correct, expecting '$DOCKER' or '$SYSTEM'." | ||||||
|  |           return 1 | ||||||
|         fi |         fi | ||||||
|         if [[ -e "$BACKUP" ]]; then |         backup_type="$1" | ||||||
|           ls -alh "$BACKUP" |         echo "Looking for '*${backup_type}*.zip'" | ||||||
|           echo "*** '$BACKUP' created successfully! ***" |         ls -lh *${backup_type}*.zip 2>/dev/null | ||||||
|  |         status="$?" | ||||||
|  |         if [[ "$status" == "0" ]]; then | ||||||
|  |           echo "File already downloaded, skipping." | ||||||
|  |           return 0 | ||||||
|         else |         else | ||||||
|           echo "*** '$BACKUP' not found! ***" |           echo "File still needed, downloading to local tmp/." | ||||||
|  |         fi | ||||||
|  |         mkdir -pv tmp | ||||||
|  |         scp -P {{ prod_port }} \ | ||||||
|  |           {{ prod_user }}@{{ prod_host }}:"$BACKUP_DIR/*${backup_type}*.zip" \ | ||||||
|  |           tmp/ | ||||||
|  |         if [[ "$?" == "0" ]]; then | ||||||
|  |           echo "Succeeded!" | ||||||
|  |           mv -v tmp/*.zip ./ | ||||||
|  |           rmdir -v tmp | ||||||
|  |         else | ||||||
|  |           echo "Failed!" | ||||||
|  |           mv tmp ~/TRASH/"tmp_`now`" | ||||||
|         fi |         fi | ||||||
|       } |       } | ||||||
|  |       function pull_prod_backups { | ||||||
|  |         dir="ProductionBackups-Pulled`today`" | ||||||
|  |         mkdir -pv "$dir" | ||||||
|  |         cd "$dir" | ||||||
|  |         pull_prod_backup "$DOCKER" | ||||||
|  |         pull_prod_backup "$SYSTEM" | ||||||
|  |         du -h *.zip | sort -h | ||||||
|  |         status="$?" | ||||||
|  |         cd .. | ||||||
|  |         if [[ "$status" != 0 ]]; then | ||||||
|  |           echo "Failed to find zip files, removing folder." | ||||||
|  |           rmdir -v "$dir" | ||||||
|  |           return 1 | ||||||
|  |         fi | ||||||
|  |         echo "Done!" | ||||||
|  |       } | ||||||
|  |       alias pull-prod-backups="pull_prod_backups" | ||||||
|  |       alias pull-backups="pull_prod_backups" | ||||||
|  |       alias prod-backups="pull_prod_backups" | ||||||
|  |       alias prod-backup="pull_prod_backups" | ||||||
|  |       alias pull-prod="pull_prod_backups" | ||||||
|  |       alias prod-pull="pull_prod_backups" | ||||||
|     function_log: | |     function_log: | | ||||||
|       function log { |       function log { | ||||||
|         echo -e "$1" |         echo -e "$1" | ||||||
| @@ -888,6 +942,77 @@ | |||||||
|       } |       } | ||||||
|       alias ebooks="ebook-convert" |       alias ebooks="ebook-convert" | ||||||
|       alias convert="ebook-convert" |       alias convert="ebook-convert" | ||||||
|  |     alias_sudo: | | ||||||
|  |       # Allows for alias expansions when using sudo, such as doing "sudo ll". | ||||||
|  |       alias sudo="sudo " | ||||||
|  |     function_load_branch: | | ||||||
|  |       # Change a branch to point at another. | ||||||
|  |       function load-branch { | ||||||
|  |         rcvr="$1" # branch which we want to modify | ||||||
|  |         base="$2" # branch with the changes we want | ||||||
|  |  | ||||||
|  |         if [[ "$rcvr" == "main" ]]; then | ||||||
|  |           echo "*** ERROR: Are you nuts, fool!? Not main! Do it manually! ***" | ||||||
|  |           exit 1 | ||||||
|  |         fi | ||||||
|  |  | ||||||
|  |         if [[ -z "$base" ]]; then | ||||||
|  |           if [[ "$rcvr" == "prod" ]]; then | ||||||
|  |             base="stage" | ||||||
|  |           elif [[ "$rcvr" == "stage" ]]; then | ||||||
|  |             base="dev" | ||||||
|  |           else | ||||||
|  |             echo "* Unsure which branch to use for '$rcvr'. Please specify." | ||||||
|  |             exit 1 | ||||||
|  |           fi | ||||||
|  |           echo "* Base was not specified, using '$base' for '$rcvr'." | ||||||
|  |         else | ||||||
|  |           echo "* Requested pointing '$rcvr' branch to '$base'." | ||||||
|  |         fi | ||||||
|  |  | ||||||
|  |         echo -e "\n* Ensuring we are on base branch '$base'." && | ||||||
|  |         git switch "$base" && | ||||||
|  |         echo -e "\n* Changing pointer for '$rcvr' to '$base'." && | ||||||
|  |         git branch -f "$rcvr" "$base" && | ||||||
|  |         #echo -e "\n* Switching to branch '$rcvr'." && | ||||||
|  |         #git switch "$rcvr" && | ||||||
|  |         echo -e "\n* Forcing push on branch '$rcvr'." && | ||||||
|  |         git push --force --set-upstream origin "$rcvr" && | ||||||
|  |         echo -e "\n* Done! Displaying list of remote branches." && | ||||||
|  |         git ls-remote --heads | sort | ||||||
|  |  | ||||||
|  |         if [[ "$base" != "dev" ]]; then | ||||||
|  |           echo -e "\n* Checking if a dev branch exists." | ||||||
|  |           git ls-remote --exit-code --heads origin dev | ||||||
|  |           dev_exists="$?" | ||||||
|  |           if [[ "$dev_exists" == 0 ]]; then | ||||||
|  |             echo -e "\n* Switching back to dev." | ||||||
|  |             git switch dev | ||||||
|  |           elif [[ "$dev_exists" == 2 ]]; then | ||||||
|  |             echo -e "\n* Switching back to main." | ||||||
|  |             git switch main | ||||||
|  |           else | ||||||
|  |             echo "*** ERROR: Unknown status for dev_exists, '$dev_exists'. ***" | ||||||
|  |           fi | ||||||
|  |         fi | ||||||
|  |  | ||||||
|  |         echo -e "\n* Verifying which branch we're on." | ||||||
|  |         git branch | ||||||
|  |       } | ||||||
|  |       alias load-prod="load-branch prod" | ||||||
|  |       alias load-stage="load-branch stage" | ||||||
|  |       alias rollback-prod="load-branch prod main" | ||||||
|  |       alias rollback-stage="load-branch stage prod" | ||||||
|  |       alias rollback-dev="load-branch dev stage" | ||||||
|  |       alias reset-prod="load-branch prod main" | ||||||
|  |       alias reset-stage="load-branch stage main" | ||||||
|  |       alias reset-dev="load-branch dev main" | ||||||
|  |     alias_reload_bash: | | ||||||
|  |       alias reload-bash="source ~/.bashrc" | ||||||
|  |       alias bash-reload="reload-bash" | ||||||
|  |       alias shell-reload="reload-bash" | ||||||
|  |       alias reload-shell="reload-bash" | ||||||
|  |       alias reload="reload-bash" | ||||||
|  |  | ||||||
| - name: General | Account Management | Users | Files | Common Variable | - name: General | Account Management | Users | Files | Common Variable | ||||||
|   set_fact: |   set_fact: | ||||||
| @@ -959,9 +1084,13 @@ | |||||||
|       {{ alias_ansible_facts }} |       {{ alias_ansible_facts }} | ||||||
|       {{ function_now }} |       {{ function_now }} | ||||||
|       {{ function_backup }} |       {{ function_backup }} | ||||||
|  |       {{ function_pull_prod_backups }} | ||||||
|       {{ function_log }} |       {{ function_log }} | ||||||
|       {{ function_debian_upgrade }} |       {{ function_debian_upgrade }} | ||||||
|       {{ function_ebook_convert }} |       {{ function_ebook_convert }} | ||||||
|  |       {{ alias_sudo }} | ||||||
|  |       {{ function_load_branch }} | ||||||
|  |       {{ alias_reload_bash }} | ||||||
|  |  | ||||||
| - name: General | Account Management | Users | Files | .bashrc | - name: General | Account Management | Users | Files | .bashrc | ||||||
|   blockinfile: |   blockinfile: | ||||||
|   | |||||||
| @@ -1,12 +1,18 @@ | |||||||
| --- | --- | ||||||
| # Jobs relating to the ansible user. | # Jobs relating to the ansible user. | ||||||
|  |  | ||||||
|  | # $RANDOM is anywhere from 0 to 32767 in BASH. This would be up to ~9 hours. | ||||||
|  | # $RANDOM /  10 can be up to about 3200 seconds, or ~55 minutes. | ||||||
|  | # $RANDOM /  20 can be up to about 1600 seconds, or ~27 minutes. | ||||||
|  | # $RANDOM /  50 can be up to about  650 seconds, or ~11 minutes. | ||||||
|  | # $RANDOM / 100 can be up to about  320 seconds, or  ~5 minutes. | ||||||
|  | # This prevents multiple systems from hitting it at the exact same time. | ||||||
| - name: General | Cron | Ansible | Create Subscriber Job | - name: General | Cron | Ansible | Create Subscriber Job | ||||||
|   cron: |   cron: | ||||||
|     user: ansible |     user: ansible | ||||||
|     name: "Ansible Sync" |     name: "Ansible Sync" | ||||||
|     minute: "*/30" |     minute: "*/30" | ||||||
|     job: "sudo {{ ansible_pull_exec.stdout }} -v -o -U {{ git_repo_http }} --checkout {{ branch }}" |     job: "bash -c 'sleep $(( $RANDOM / 20 )); sudo {{ ansible_pull_exec.stdout }} -v -o -U {{ git_repo_http }} --checkout {{ branch }}'" | ||||||
|     state: present |     state: present | ||||||
|     disabled: "{{ 'yes' if no_telem else 'no' }}" |     disabled: "{{ 'yes' if no_telem else 'no' }}" | ||||||
|  |  | ||||||
| @@ -14,7 +20,7 @@ | |||||||
|   cron: |   cron: | ||||||
|     user: ansible |     user: ansible | ||||||
|     name: "Ansible Weekly Forced Sync" |     name: "Ansible Weekly Forced Sync" | ||||||
|     special_time: weekly |     special_time: daily | ||||||
|     job: "{{ user_root.home }}/bin/scm.sh" |     job: "bash -c 'sleep $(( $RANDOM /  1 )); sudo {{ ansible_pull_exec.stdout }} -v    -U {{ git_repo_http }} --checkout {{ branch }}'" | ||||||
|     state: present |     state: present | ||||||
|     disabled: "{{ 'yes' if no_telem else 'no' }}" |     disabled: "{{ 'yes' if no_telem else 'no' }}" | ||||||
|   | |||||||
| @@ -43,6 +43,7 @@ | |||||||
|       - { app: "org.gimp.GIMP", name: "gimp", extra: "" } |       - { app: "org.gimp.GIMP", name: "gimp", extra: "" } | ||||||
|       - { app: "org.libreoffice.LibreOffice", name: "office", extra: "" } |       - { app: "org.libreoffice.LibreOffice", name: "office", extra: "" } | ||||||
|       - { app: "com.transmissionbt.Transmission", name: "transmission", extra: "" } |       - { app: "com.transmissionbt.Transmission", name: "transmission", extra: "" } | ||||||
|  |       - { app: "app.grayjay.Grayjay", name: "grayjay", extra: "" } | ||||||
|     flatpaks_coding: |     flatpaks_coding: | ||||||
|       - { app: "com.vscodium.codium", name: "codium-flatpak", extra: "" } |       - { app: "com.vscodium.codium", name: "codium-flatpak", extra: "" } | ||||||
|       - { app: "com.google.AndroidStudio", name: "android-studio", extra: "" } |       - { app: "com.google.AndroidStudio", name: "android-studio", extra: "" } | ||||||
|   | |||||||
| @@ -19,6 +19,7 @@ | |||||||
|                       , 'codium.desktop' |                       , 'codium.desktop' | ||||||
|                       , 'org.shotcut.Shotcut.desktop' |                       , 'org.shotcut.Shotcut.desktop' | ||||||
|                       , 'io.lmms.LMMS.desktop' |                       , 'io.lmms.LMMS.desktop' | ||||||
|  |                       , 'app.grayjay.Grayjay.desktop' | ||||||
|                       , 'io.lbry.lbry-app.desktop', 'lbry.desktop' |                       , 'io.lbry.lbry-app.desktop', 'lbry.desktop' | ||||||
|                       , 'com.valvesoftware.Steam.desktop' |                       , 'com.valvesoftware.Steam.desktop' | ||||||
|                       , 'net.lutris.Lutris.desktop' |                       , 'net.lutris.Lutris.desktop' | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user