mirror of https://github.com/minio/minio.git
				
				
				
			fix: site-replication will reset group status when add user (#19594)
This commit is contained in:
		
							parent
							
								
									77d5331e85
								
							
						
					
					
						commit
						df93ff92ba
					
				|  | @ -106,6 +106,43 @@ if [ $failed_count_site2 -ne 0 ]; then | ||||||
| 	exit 1 | 	exit 1 | ||||||
| fi | fi | ||||||
| 
 | 
 | ||||||
|  | # Add user group test | ||||||
|  | ./mc admin user add site1 site-replication-issue-user site-replication-issue-password | ||||||
|  | ./mc admin group add site1 site-replication-issue-group site-replication-issue-user | ||||||
|  | 
 | ||||||
|  | max_wait_attempts=30 | ||||||
|  | wait_interval=5 | ||||||
|  | 
 | ||||||
|  | attempt=1 | ||||||
|  | while true; do | ||||||
|  | 	diff <(./mc admin group info site1 site-replication-issue-group) <(./mc admin group info site2 site-replication-issue-group) | ||||||
|  | 
 | ||||||
|  | 	if [[ $? -eq 0 ]]; then | ||||||
|  | 		echo "Outputs are consistent." | ||||||
|  | 		break | ||||||
|  | 	fi | ||||||
|  | 
 | ||||||
|  | 	remaining_attempts=$((max_wait_attempts - attempt)) | ||||||
|  | 	if ((attempt >= max_wait_attempts)); then | ||||||
|  | 		echo "Outputs remain inconsistent after $max_wait_attempts attempts. Exiting with error." | ||||||
|  | 		exit 1 | ||||||
|  | 	else | ||||||
|  | 		echo "Outputs are inconsistent. Waiting for $wait_interval seconds (attempt $attempt/$max_wait_attempts)." | ||||||
|  | 		sleep $wait_interval | ||||||
|  | 	fi | ||||||
|  | 
 | ||||||
|  | 	((attempt++)) | ||||||
|  | done | ||||||
|  | 
 | ||||||
|  | status=$(./mc admin group info site1 site-replication-issue-group --json | jq .groupStatus | tr -d '"') | ||||||
|  | 
 | ||||||
|  | if [[ $status == "enabled" ]]; then | ||||||
|  | 	echo "Success" | ||||||
|  | else | ||||||
|  | 	echo "Expected status: enabled, actual status: $status" | ||||||
|  | 	exit 1 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
| cleanup | cleanup | ||||||
| 
 | 
 | ||||||
| ## change working directory | ## change working directory | ||||||
|  |  | ||||||
|  | @ -1325,7 +1325,7 @@ func (c *SiteReplicationSys) PeerGroupInfoChangeHandler(ctx context.Context, cha | ||||||
| 			} else { | 			} else { | ||||||
| 				_, err = globalIAMSys.AddUsersToGroup(ctx, updReq.Group, updReq.Members) | 				_, err = globalIAMSys.AddUsersToGroup(ctx, updReq.Group, updReq.Members) | ||||||
| 			} | 			} | ||||||
| 			if err == nil && updReq.Status != madmin.GroupEnabled { | 			if err == nil && updReq.Status != "" { | ||||||
| 				_, err = globalIAMSys.SetGroupStatus(ctx, updReq.Group, updReq.Status == madmin.GroupEnabled) | 				_, err = globalIAMSys.SetGroupStatus(ctx, updReq.Group, updReq.Status == madmin.GroupEnabled) | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue