@@ -266,6 +266,49 @@ get_events(){
266266 run_and_log " oc get events -n $1 " " $2 /all-events.txt"
267267}
268268
269+ # gets get_rollouts_manager_cr; takes namespace and directory as argument
270+ get_rollouts_manager_cr () {
271+ echo " * Getting Rollouts Manager CR contents in $1 ..."
272+ run_and_log " oc -n $1 get rolloutmanager" " $2 /rollouts-manager-cr.txt"
273+ run_and_log " oc -n $1 get rolloutmanager -o yaml" " $2 /rollouts-manager-cr.yaml"
274+ run_and_log " oc -n $1 get rolloutmanager -o json" " $2 /rollouts-manager-cr.json"
275+ }
276+
277+ # gets get_rollouts_cr; takes namespace and directory as argument
278+ get_rollouts_cr () {
279+ run_and_log " oc -n $1 get rollout" " $2 /rollouts-cr.txt"
280+ run_and_log " oc -n $1 get rollout -o yaml" " $2 /rollouts-cr.yaml"
281+ run_and_log " oc -n $1 get rollout -o json" " $2 /rollouts-cr.json"
282+ }
283+
284+ # gets get_rollout_deployments; takes namespace and directory as argument
285+ get_rollout_deployments (){
286+ echo " * Getting rollout deployments in $1 ..."
287+ local rolloutName
288+ rolloutName=" argo-rollouts"
289+ run_and_log " oc -n $1 get deployment/${rolloutName} " " $2 /rollout-deployments.txt"
290+ run_and_log " oc -n $1 get deployment/${rolloutName} -o yaml" " $2 /rollout-deployments.yaml"
291+ run_and_log " oc -n $1 get deployment/${rolloutName} -o json" " $2 /rollout-deployments.json"
292+ }
293+
294+ # gets get_rollout_replicaSet; takes namespace and directory as argument
295+ get_rollout_replicaSet (){
296+ echo " * Getting rollout replicaSet in $1 ..."
297+ run_and_log " oc -n $1 get replicaset/argo-rollouts" " $2 /rollout-replicaSet.txt"
298+ run_and_log " oc -n $1 get replicaset/argo-rollouts -o yaml" " $2 /rollout-replicaSet.yaml"
299+ run_and_log " oc -n $1 get replicaset/argo-rollouts -o json" " $2 /rollout-replicaSet.json"
300+ }
301+
302+ # gets services; takes namespace and directory as argument
303+ get_rollout_services (){
304+ echo " * Getting rollout services in $1 ..."
305+ local rolloutName
306+ rolloutName=" argo-rollouts-metrics"
307+ run_and_log " oc -n $1 get service/${rolloutName} " " $2 /rollout-service.txt"
308+ run_and_log " oc -n $1 get service/${rolloutName} -o yaml" " $2 /rollout-service.yaml"
309+ run_and_log " oc -n $1 get service/${rolloutName} -o json" " $2 /rollout-service.json"
310+ }
311+
269312function main() {
270313
271314 # Initialize the directory where the must-gather data will be stored and the error log file
@@ -336,6 +379,31 @@ function main() {
336379 create_directory " ${APPLICATION_DIR} "
337380 get_applications " ${namespace} " " ${APPLICATION_DIR} "
338381
382+ # rollouts
383+ echo " Creating directory for rollouts"
384+ ROLLOUTS_DIR=" ${RESOURCES_DIR} /rollouts"
385+ create_directory " ${ROLLOUTS_DIR} "
386+
387+ ROLLOUTS_MANAGER_CR_DIR=" ${ROLLOUTS_DIR} /manager_cr"
388+ create_directory " ${ROLLOUTS_MANAGER_CR_DIR} "
389+ get_rollouts_manager_cr " ${namespace} " " ${ROLLOUTS_MANAGER_CR_DIR} "
390+
391+ ROLLOUTS_CR_DIR=" ${ROLLOUTS_DIR} /cr"
392+ create_directory " ${ROLLOUTS_CR_DIR} "
393+ get_rollouts_cr " ${namespace} " " ${ROLLOUTS_CR_DIR} "
394+
395+ ROLLOUTS_DEPLOYMENT_DIR=" ${ROLLOUTS_DIR} /rollout_deployment"
396+ create_directory " ${ROLLOUTS_DEPLOYMENT_DIR} "
397+ get_rollout_deployments " ${namespace} " " ${ROLLOUTS_DEPLOYMENT_DIR} "
398+
399+ ROLLOUTS_REPLICASET_DIR=" ${ROLLOUTS_DIR} /rollout_replicaSet"
400+ create_directory " ${ROLLOUTS_REPLICASET_DIR} "
401+ get_rollout_replicaSet " ${namespace} " " ${ROLLOUTS_REPLICASET_DIR} "
402+
403+ ROLLOUTS_SERVICES_DIR=" ${ROLLOUTS_DIR} /rollout_services"
404+ create_directory " ${ROLLOUTS_SERVICES_DIR} "
405+ get_rollout_services " ${namespace} " " ${ROLLOUTS_SERVICES_DIR} "
406+
339407 echo " * Getting ArgoCD Source Namespaces in ${namespace} ..."
340408 local sourceNamespaces
341409 run_and_log " oc get argocd -n ${namespace} -o jsonpath='{.items[*].spec.sourceNamespaces[*]}'" " ${ARGOCD_DIR} /sourceNamespaces.txt"
@@ -365,6 +433,11 @@ function main() {
365433 run_and_log " oc logs deployment/${argoCDName} -repo-server -n ${namespace} " " ${ARGOCD_LOG_DIR} /repo-server-logs.txt"
366434 run_and_log " oc logs deployment/${argoCDName} -redis -n ${namespace} " " ${ARGOCD_LOG_DIR} /redis-logs.txt"
367435 run_and_log " oc logs deployment/${argoCDName} -dex-server -n ${namespace} " " ${ARGOCD_LOG_DIR} /dex-server-logs.txt"
436+
437+ echo " * Getting Rollout logs in ${namespace} ..."
438+ ROLLOUTS_LOG_DIR=" ${ROLLOUTS_DIR} /logs"
439+ create_directory " ${ROLLOUTS_LOG_DIR} "
440+ run_and_log " oc logs deployment/argo-rollouts -n ${namespace} " " ${ROLLOUTS_LOG_DIR} /rollout-logs.txt"
368441
369442 echo " * Getting ArgoCD Managed namespaces in ${namespace} ..."
370443 run_and_log " oc get namespaces --selector=argocd.argoproj.io/managed-by=${namespace} " " ${ARGOCD_DIR} /managed-namespaces.txt"
0 commit comments