Skip to content

Commit 220d85d

Browse files
gerrod3mdellweg
authored andcommitted
Add support for new replicate features
1 parent 0817da4 commit 220d85d

4 files changed

Lines changed: 28 additions & 4 deletions

File tree

CHANGES/+replicate-policy.feature

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Added support for the replicate policy options added in pulpcore 3.73.0.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Added support for the replicate q-select option added in pulpcore 3.62.0.

pulpcore/cli/core/upstream_pulp.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import click
2-
from pulp_glue.common.context import PulpEntityContext
2+
from pulp_glue.common.context import PluginRequirement, PulpEntityContext
33
from pulp_glue.common.i18n import get_translation
44
from pulp_glue.core.context import PulpUpstreamPulpContext
55

@@ -12,6 +12,7 @@
1212
pass_entity_context,
1313
pass_pulp_context,
1414
pulp_group,
15+
pulp_option,
1516
resource_lookup_option,
1617
show_command,
1718
update_command,
@@ -52,7 +53,16 @@
5253
help=_("a PEM encode private key or @file containing same"),
5354
callback=load_string_callback,
5455
),
55-
click.option("--pulp-label-select"),
56+
pulp_option(
57+
"--pulp-label-select",
58+
needs_plugins=[PluginRequirement("core", specifier="<3.62.0")],
59+
),
60+
pulp_option("--q-select", needs_plugins=[PluginRequirement("core", specifier=">=3.62.0")]),
61+
pulp_option(
62+
"--policy",
63+
type=click.Choice(["all", "labeled", "nodelete"], case_sensitive=False),
64+
needs_plugins=[PluginRequirement("core", specifier=">=3.73.0")],
65+
),
5666
]
5767
create_options = [
5868
click.option("--name", required=True, help=_("Name of the upstream pulp")),

tests/scripts/pulpcore/test_upstream_pulp.sh

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,20 @@ trap cleanup EXIT
1414
expect_succ pulp upstream-pulp create --name "cli_test_upstream_pulp" --base-url "$PULP_BASE_URL" --api-root "/123/"
1515
expect_succ pulp upstream-pulp show --upstream-pulp "cli_test_upstream_pulp"
1616
expect_succ pulp upstream-pulp list
17-
# TODO: Add version check for this test
18-
# expect_succ pulp upstream-pulp update --id "cli_test_upstream_pulp" --pulp-label-select "doesnotexist"
17+
18+
if pulp debug has-plugin --name "core" --specifier "<=3.62.0"
19+
then
20+
expect_succ pulp upstream-pulp update --id "cli_test_upstream_pulp" --pulp-label-select "doesnotexist"
21+
else
22+
expect_succ pulp upstream-pulp update --id "cli_test_upstream_pulp" --q-select "pulp_label_select=doesnotexist"
23+
fi
24+
25+
if pulp debug has-plugin --name "core" --specifier ">=3.73.0"
26+
then
27+
expect_succ pulp upstream-pulp update --id "cli_test_upstream_pulp" --policy "nodelete"
28+
expect_succ pulp upstream-pulp update --id "cli_test_upstream_pulp" --policy "labeled"
29+
expect_fail pulp upstream-pulp update --id "cli_test_upstream_pulp" --policy "not_a_policy"
30+
fi
1931

2032
# Without credentials and a wrong API root, there is not much we can do...
2133
# Also this is a real dangerous command, deleting all existing repositories.

0 commit comments

Comments
 (0)