package: allow removing multiple repos in one command (#925)
This commit is contained in:
committed by
tamarrow
parent
02f4b1a9ba
commit
2f9c217da6
@@ -18,7 +18,7 @@ Usage:
|
||||
dcos package repo add <repo-name> <repo-url> [--index=<index>]
|
||||
dcos package repo import <repos-file>
|
||||
dcos package repo list [--json]
|
||||
dcos package repo remove <repo-name>
|
||||
dcos package repo remove <repo-names>...
|
||||
dcos package search [<query> --json]
|
||||
dcos package uninstall <package-name>
|
||||
[--cli | [--app --app-id=<app-id> --all]]
|
||||
|
||||
@@ -65,7 +65,7 @@ def _cmds():
|
||||
|
||||
cmds.Command(
|
||||
hierarchy=['package', 'repo', 'remove'],
|
||||
arg_keys=['<repo-name>'],
|
||||
arg_keys=['<repo-names>'],
|
||||
function=_remove_repo),
|
||||
|
||||
cmds.Command(
|
||||
@@ -232,17 +232,18 @@ def _raise_invalid_repos_file():
|
||||
'{"repositories": [{"name": "Universe", "uri": "uri-here"}]}')
|
||||
|
||||
|
||||
def _remove_repo(repo_name):
|
||||
def _remove_repo(repo_names):
|
||||
"""Remove package repo and update repo with new repo
|
||||
|
||||
:param repo_name: name to call repo
|
||||
:type repo_name: str
|
||||
:param repo_names: names of repos
|
||||
:type repo_name: [str]
|
||||
:returns: Process status
|
||||
:rtype: int
|
||||
"""
|
||||
|
||||
package_manager = get_package_manager()
|
||||
package_manager.remove_repo(repo_name)
|
||||
for repo_name in repo_names:
|
||||
package_manager.remove_repo(repo_name)
|
||||
|
||||
return 0
|
||||
|
||||
|
||||
@@ -110,6 +110,26 @@ def test_repo_remove():
|
||||
_repo_remove(['Universe'], repo_list)
|
||||
|
||||
|
||||
def test_repo_remove_multi():
|
||||
# Add "Universe" repo so we can test removing it
|
||||
repo_list = bytes("test-universe: {}\nUniverse: {}\n".format(
|
||||
UNIVERSE_TEST_REPO, UNIVERSE_REPO), 'utf-8')
|
||||
args = ["Universe", UNIVERSE_REPO]
|
||||
_repo_add(args, repo_list)
|
||||
|
||||
# Add "1.7-universe" repo so we can test removing it
|
||||
repo17 = "http://universe.mesosphere.com/repo-1.7"
|
||||
repo_list = bytes(
|
||||
"test-universe: {}\n1.7-universe: {}\nUniverse: {}\n".format(
|
||||
UNIVERSE_TEST_REPO, repo17, UNIVERSE_REPO), 'utf-8')
|
||||
args = ["1.7-universe", repo17, '--index=1']
|
||||
_repo_add(args, repo_list)
|
||||
|
||||
repo_list = bytes(
|
||||
"test-universe: {}\n".format(UNIVERSE_TEST_REPO), 'utf-8')
|
||||
_repo_remove(['1.7-universe', 'Universe'], repo_list)
|
||||
|
||||
|
||||
def test_repo_empty():
|
||||
assert_command(
|
||||
['dcos', 'package', 'repo', 'remove', 'test-universe'])
|
||||
|
||||
Reference in New Issue
Block a user