[ Server ] [ Harbor ] - sync projects - 6

This commit is contained in:
zeaslity
2023-11-16 10:48:48 +08:00
parent 45868bc83f
commit 1132d37adf

View File

@@ -289,20 +289,22 @@ func (hOp *HarborOperator) SyncProjectExec(funcArgs []string) (bool, []string) {
// 在源 Harbor 中创建复制策略 // 在源 Harbor 中创建复制策略
log.Info("[Harbor Sync Project ] - Start To Sync Project !") log.Info("[Harbor Sync Project ] - Start To Sync Project !")
existReplicationPolicy, err := targetClient.GetReplicationPolicyByName(ctx, octopusReplicationPolicy.Name) policies, err := targetClient.ListReplicationPolicies(ctx)
if err != nil { if err != nil {
return false, []string{ return false, []string{
"[Harbor Sync Project ] - get exists replication policy failed !", "[Harbor Sync Project ] - get exists replication policy failed !",
} }
} }
if existReplicationPolicy != nil { for _, policy := range policies {
err := targetClient.DeleteReplicationPolicyByID(ctx, existReplicationPolicy.ID) if policy.Name == octopusReplicationPolicy.Name {
err := targetClient.DeleteReplicationPolicyByID(ctx, policy.ID)
if err != nil { if err != nil {
return false, []string{ return false, []string{
"[Harbor Sync Project ] - delete exists replication policy failed !", "[Harbor Sync Project ] - delete exists replication policy failed !",
} }
} }
} }
}
err = targetClient.NewReplicationPolicy(ctx, octopusReplicationPolicy.DestRegistry, octopusReplicationPolicy.SrcRegistry, octopusReplicationPolicy.Deletion, octopusReplicationPolicy.Override, octopusReplicationPolicy.Enabled, octopusReplicationPolicy.Filters, octopusReplicationPolicy.Trigger, octopusReplicationPolicy.DestNamespace, octopusReplicationPolicy.Name, octopusReplicationPolicy.Name) err = targetClient.NewReplicationPolicy(ctx, octopusReplicationPolicy.DestRegistry, octopusReplicationPolicy.SrcRegistry, octopusReplicationPolicy.Deletion, octopusReplicationPolicy.Override, octopusReplicationPolicy.Enabled, octopusReplicationPolicy.Filters, octopusReplicationPolicy.Trigger, octopusReplicationPolicy.DestNamespace, octopusReplicationPolicy.Name, octopusReplicationPolicy.Name)
if err != nil { if err != nil {