summaryrefslogtreecommitdiff
path: root/tests/integration
diff options
context:
space:
mode:
authorJames Ennis <james.ennis@codethink.com>2019-01-07 18:00:54 +0000
committerJames Ennis <james.ennis@codethink.com>2019-01-22 12:32:43 +0000
commita3fc350fdf64897ae386aa913a55318d6b048276 (patch)
tree088bfa82769eb6f72262b430f51936a8a9249c16 /tests/integration
parentac13533300da75472e53d36ec03b4dddf4fe6c73 (diff)
downloadbuildstream-a3fc350fdf64897ae386aa913a55318d6b048276.tar.gz
Move push and pull to the new artifact subcommand group
This commit also ensures that if we try to use the 'old' commands, BuildStream will fail and instruct the user to use the new command.
Diffstat (limited to 'tests/integration')
-rw-r--r--tests/integration/build-tree.py5
-rw-r--r--tests/integration/pullbuildtrees.py34
2 files changed, 20 insertions, 19 deletions
diff --git a/tests/integration/build-tree.py b/tests/integration/build-tree.py
index 8c0628da8..b50d84152 100644
--- a/tests/integration/build-tree.py
+++ b/tests/integration/build-tree.py
@@ -130,7 +130,8 @@ def test_buildtree_pulled(cli, tmpdir, datafiles):
assert cli.get_element_state(project, element_name) != 'cached'
# Pull from cache, ensuring cli options is set to pull the buildtree
- result = cli.run(project=project, args=['--pull-buildtrees', 'pull', '--deps', 'all', element_name])
+ result = cli.run(project=project,
+ args=['--pull-buildtrees', 'artifact', 'pull', '--deps', 'all', element_name])
result.assert_success()
# Check it's using the cached build tree
@@ -164,7 +165,7 @@ def test_buildtree_options(cli, tmpdir, datafiles):
assert cli.get_element_state(project, element_name) != 'cached'
# Pull from cache, but do not include buildtrees.
- result = cli.run(project=project, args=['pull', '--deps', 'all', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', '--deps', 'all', element_name])
result.assert_success()
# The above is the simplest way I know to create a local cache without any buildtrees.
diff --git a/tests/integration/pullbuildtrees.py b/tests/integration/pullbuildtrees.py
index 36ac52885..e7ee90eee 100644
--- a/tests/integration/pullbuildtrees.py
+++ b/tests/integration/pullbuildtrees.py
@@ -55,12 +55,12 @@ def test_pullbuildtrees(cli, tmpdir, datafiles):
# Pull artifact with default config, assert that pulling again
# doesn't create a pull job, then assert with buildtrees user
# config set creates a pull job.
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name not in result.get_pulled_elements()
cli.configure({'cache': {'pull-buildtrees': True}})
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
default_state(cli, tmpdir, share1)
@@ -68,13 +68,13 @@ def test_pullbuildtrees(cli, tmpdir, datafiles):
# with buildtrees cli flag set creates a pull job.
# Also assert that the buildtree is added to the artifact's
# extract dir
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
elementdigest = share1.has_artifact('test', element_name, cli.get_element_key(project, element_name))
buildtreedir = os.path.join(str(tmpdir), 'artifacts', 'extract', 'test', 'autotools-amhello',
elementdigest.hash, 'buildtree')
assert not os.path.isdir(buildtreedir)
- result = cli.run(project=project, args=['--pull-buildtrees', 'pull', element_name])
+ result = cli.run(project=project, args=['--pull-buildtrees', 'artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
assert os.path.isdir(buildtreedir)
default_state(cli, tmpdir, share1)
@@ -83,21 +83,21 @@ def test_pullbuildtrees(cli, tmpdir, datafiles):
# that pulling with the same user config doesn't creates a pull job,
# or when buildtrees cli flag is set.
cli.configure({'cache': {'pull-buildtrees': True}})
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name not in result.get_pulled_elements()
- result = cli.run(project=project, args=['--pull-buildtrees', 'pull', element_name])
+ result = cli.run(project=project, args=['--pull-buildtrees', 'artifact', 'pull', element_name])
assert element_name not in result.get_pulled_elements()
default_state(cli, tmpdir, share1)
# Pull artifact with default config and buildtrees cli flag set, then assert
# that pulling with pullbuildtrees set in user config doesn't create a pull
# job.
- result = cli.run(project=project, args=['--pull-buildtrees', 'pull', element_name])
+ result = cli.run(project=project, args=['--pull-buildtrees', 'artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
cli.configure({'cache': {'pull-buildtrees': True}})
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name not in result.get_pulled_elements()
default_state(cli, tmpdir, share1)
@@ -105,10 +105,10 @@ def test_pullbuildtrees(cli, tmpdir, datafiles):
# can't be pushed to an artifact share, then assert that a complete build element
# can be. This will attempt a partial pull from share1 and then a partial push
# to share2
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
cli.configure({'artifacts': {'url': share2.repo, 'push': True}})
- result = cli.run(project=project, args=['push', element_name])
+ result = cli.run(project=project, args=['artifact', 'push', element_name])
assert element_name not in result.get_pushed_elements()
assert not share2.has_artifact('test', element_name, cli.get_element_key(project, element_name))
@@ -116,10 +116,10 @@ def test_pullbuildtrees(cli, tmpdir, datafiles):
# successfully pushed to the remote. This will attempt to pull the buildtree
# from share1 and then a 'complete' push to share2
cli.configure({'artifacts': {'url': share1.repo, 'push': False}})
- result = cli.run(project=project, args=['--pull-buildtrees', 'pull', element_name])
+ result = cli.run(project=project, args=['--pull-buildtrees', 'artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
cli.configure({'artifacts': {'url': share2.repo, 'push': True}})
- result = cli.run(project=project, args=['push', element_name])
+ result = cli.run(project=project, args=['artifact', 'push', element_name])
assert element_name in result.get_pushed_elements()
assert share2.has_artifact('test', element_name, cli.get_element_key(project, element_name))
default_state(cli, tmpdir, share1)
@@ -128,10 +128,10 @@ def test_pullbuildtrees(cli, tmpdir, datafiles):
# if pull-buildtrees is set, however as share3 is the only defined remote and is empty,
# assert that no element artifact buildtrees are pulled (no available remote buildtree) and thus the
# artifact cannot be pushed.
- result = cli.run(project=project, args=['pull', element_name])
+ result = cli.run(project=project, args=['artifact', 'pull', element_name])
assert element_name in result.get_pulled_elements()
cli.configure({'artifacts': {'url': share3.repo, 'push': True}})
- result = cli.run(project=project, args=['--pull-buildtrees', 'push', element_name])
+ result = cli.run(project=project, args=['--pull-buildtrees', 'artifact', 'push', element_name])
assert "Attempting to fetch missing artifact buildtrees" in result.stderr
assert element_name not in result.get_pulled_elements()
assert not os.path.isdir(buildtreedir)
@@ -143,7 +143,7 @@ def test_pullbuildtrees(cli, tmpdir, datafiles):
# to the empty share3. This gives the ability to attempt push currently partial artifacts to a remote,
# without exlipictly requiring a bst pull.
cli.configure({'artifacts': [{'url': share1.repo, 'push': False}, {'url': share3.repo, 'push': True}]})
- result = cli.run(project=project, args=['--pull-buildtrees', 'push', element_name])
+ result = cli.run(project=project, args=['--pull-buildtrees', 'artifact', 'push', element_name])
assert "Attempting to fetch missing artifact buildtrees" in result.stderr
assert element_name in result.get_pulled_elements()
assert os.path.isdir(buildtreedir)