mirror of
https://github.com/goharbor/harbor
synced 2025-04-27 21:36:13 +00:00
Update the replication rule related to the Chartmuseum (#18274)
Update the registry and replication rule related to the Chartmuseum Update replication_policy and registry as Harbor v2.8.0 deprecates chartmuseum. Harbor deprecates chartmuseum as of v2.8.0 Epic: #17958 Discussion: #15057 Signed-off-by: Yang Jiao <jiaoya@vmware.com>
This commit is contained in:
parent
320c64e433
commit
1f3f732bd6
@ -1,2 +1,31 @@
|
||||
/* remove the redundant data from table artifact_blob */
|
||||
delete from artifact_blob afb where not exists (select digest from blob b where b.digest = afb.digest_af);
|
||||
delete from artifact_blob afb where not exists (select digest from blob b where b.digest = afb.digest_af);
|
||||
/* Update the registry and replication policy associated with the chartmuseum */
|
||||
UPDATE registry
|
||||
SET description = 'Chartmuseum has been deprecated in Harbor v2.8.0, please delete this registry.'
|
||||
WHERE type in ('artifact-hub', 'helm-hub');
|
||||
WITH filter_objects AS (
|
||||
SELECT id, jsonb_array_elements(filters::jsonb) AS filter
|
||||
FROM replication_policy
|
||||
WHERE filters IS NOT NULL AND filters != ''
|
||||
AND jsonb_typeof(CAST(filters AS jsonb)) = 'array'
|
||||
),
|
||||
replication_policy_ids AS (
|
||||
SELECT rp.id
|
||||
FROM registry r
|
||||
INNER JOIN replication_policy rp ON (rp.dest_registry_id = r.id OR rp.src_registry_id = r.id)
|
||||
WHERE r.type IN ('artifact-hub', 'helm-hub')
|
||||
)
|
||||
UPDATE replication_policy AS rp
|
||||
SET enabled = false,
|
||||
filters = (
|
||||
SELECT COALESCE(jsonb_agg(fo.filter)::text, '')
|
||||
FROM filter_objects AS fo
|
||||
WHERE fo.id = rp.id AND NOT(filter ->> 'type' = 'resource' AND filter ->> 'value' = 'chart')
|
||||
),
|
||||
description = 'Chartmuseum is deprecated in Harbor v2.8.0, because the Source resource filter of this rule is chart(chartmuseum), so please update this rule.'
|
||||
WHERE id IN (
|
||||
SELECT id FROM filter_objects WHERE (filter ->> 'type' = 'resource' AND filter ->> 'value' = 'chart')
|
||||
UNION
|
||||
SELECT id FROM replication_policy_ids
|
||||
);
|
||||
|
Loading…
x
Reference in New Issue
Block a user