refactor: use patch to only change IP
- remove proxy option, not needed - doesn't touch any other configured properties
This commit is contained in:
		
							parent
							
								
									cc3f52b849
								
							
						
					
					
						commit
						d7be713574
					
				| @ -102,7 +102,6 @@ ip4=1 | |||||||
| ip6=0 | ip6=0 | ||||||
| ip4DetectionSvc="http://ipv4.icanhazip.com" | ip4DetectionSvc="http://ipv4.icanhazip.com" | ||||||
| ip6DetectionSvc="http://ipv6.icanhazip.com" | ip6DetectionSvc="http://ipv6.icanhazip.com" | ||||||
| useCFProxy="false" |  | ||||||
| invalidDomainCount=0 | invalidDomainCount=0 | ||||||
| failedDomainCount=0 | failedDomainCount=0 | ||||||
| 
 | 
 | ||||||
| @ -160,10 +159,6 @@ while [ $# -gt 0 ]; do | |||||||
|             badParam null "$@" |             badParam null "$@" | ||||||
|         fi |         fi | ||||||
|         ;; |         ;; | ||||||
|     -p | --proxy) |  | ||||||
|         # use CloudFlare proxy for all updated hosts |  | ||||||
|         useCFProxy="true" |  | ||||||
|         ;; |  | ||||||
|     -4 | --ip4 | --ipv4) |     -4 | --ip4 | --ipv4) | ||||||
|         # operate in IP4 mode (default) |         # operate in IP4 mode (default) | ||||||
|         ip4=1 |         ip4=1 | ||||||
| @ -308,24 +303,8 @@ while [ "$dnsRecordsToUpdate" != "${dnsRecordsToUpdate#*${dnsSeparator}}" ] && { | |||||||
|         else |         else | ||||||
|             # update record |             # update record | ||||||
|             printf "%s[%s] Updating IP address for %s... " "$cyan" "$(stamp)" "$record" >>"$logFile" |             printf "%s[%s] Updating IP address for %s... " "$cyan" "$(stamp)" "$record" >>"$logFile" | ||||||
|             if [ "$ip4" -eq 1 ]; then |             updateJSON="$(jq -n --arg key0 content --arg value0 "${ipAddress}" '{($key0):$value0}')" | ||||||
|                 updateJSON="$(jq -n \ |             if ! cfResult="$(curl -s -X PATCH "https://api.cloudflare.com/client/v4/zones/${cfZoneId}/dns_records/${objectId}" \ | ||||||
|                     --arg key0 type --arg value0 A \ |  | ||||||
|                     --arg key1 name --arg value1 "${record}" \ |  | ||||||
|                     --arg key2 content --arg value2 "${ipAddress}" \ |  | ||||||
|                     --arg key3 ttl --arg value3 1 \ |  | ||||||
|                     --arg key4 proxied --arg value4 "${useCFProxy}" \ |  | ||||||
|                     '{($key0):$value0,($key1):$value1,($key2):$value2,($key3):$value3,($key4):$value4}')" |  | ||||||
|             elif [ "$ip6" -eq 1 ]; then |  | ||||||
|                 updateJSON="$(jq -n \ |  | ||||||
|                     --arg key0 type --arg value0 AAAA \ |  | ||||||
|                     --arg key1 name --arg value1 "${record}" \ |  | ||||||
|                     --arg key2 content --arg value2 "${ipAddress}" \ |  | ||||||
|                     --arg key3 ttl --arg value3 1 \ |  | ||||||
|                     --arg key4 proxied --arg value4 "${useCFProxy}" \ |  | ||||||
|                     '{($key0):$value0,($key1):$value1,($key2):$value2,($key3):$value3,($key4):$value4}')" |  | ||||||
|             fi |  | ||||||
|             if ! cfResult="$(curl -s -X PUT "https://api.cloudflare.com/client/v4/zones/${cfZoneId}/dns_records/${objectId}" \ |  | ||||||
|                 -H "Authorization: Bearer ${cfKey}" \ |                 -H "Authorization: Bearer ${cfKey}" \ | ||||||
|                 -H "Content-Type: application/json" \ |                 -H "Content-Type: application/json" \ | ||||||
|                 --data "${updateJSON}")"; then |                 --data "${updateJSON}")"; then | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user