mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 16:57:49 +03:00
a37a294fda
Summary: `hg cloud rejoin` is used in fbclone By providing a bit more information about the workspaces available we can improve user experience and try to eliminate the confusion multiple workspaces cause. Reviewed By: mitrandir77 Differential Revision: D23623063 fbshipit-source-id: 7598c1b58597032c9cfcef0b44b0ec1b00510ffa
106 lines
3.1 KiB
Python
106 lines
3.1 KiB
Python
# Copyright (c) Facebook, Inc. and its affiliates.
|
|
#
|
|
# This software may be used and distributed according to the terms of the
|
|
# GNU General Public License version 2.
|
|
|
|
from __future__ import absolute_import
|
|
|
|
from testutil.dott import feature, sh, testtmp # noqa: F401
|
|
|
|
|
|
sh % "configure dummyssh"
|
|
sh % "enable commitcloud infinitepush"
|
|
|
|
sh % "cat" << r"""
|
|
[commitcloud]
|
|
hostname = testhost
|
|
servicetype = local
|
|
servicelocation = $TESTTMP
|
|
""" >> "$HGRCPATH"
|
|
|
|
sh % "setconfig 'remotefilelog.reponame=server'"
|
|
sh % "hg init server"
|
|
sh % "cd server"
|
|
sh % "cat" << r"""
|
|
[infinitepush]
|
|
server = yes
|
|
indextype = disk
|
|
storetype = disk
|
|
reponame = testrepo
|
|
""" >> ".hg/hgrc"
|
|
|
|
sh % "hg clone 'ssh://user@dummy/server' client -q"
|
|
sh % "cd client"
|
|
|
|
|
|
sh % "cat" << r"""
|
|
{ "workspaces_data" : { "workspaces": [ { "name": "user/test/old", "archived": true, "version": 0 }, { "name": "user/test/default", "archived": false, "version": 0 } ] } }
|
|
""" >> "$TESTTMP/workspacesdata"
|
|
|
|
sh % "hg cloud list" == r"""
|
|
commitcloud: searching workspaces for the 'server' repo
|
|
the following commitcloud workspaces are available:
|
|
default
|
|
run `hg cloud sl -w <workspace name>` to view the commits
|
|
run `hg cloud switch -w <workspace name>` to switch to a different workspace
|
|
run `hg cloud list --all` to list all workspaces, including deleted
|
|
"""
|
|
|
|
sh % "hg cloud list --all" == r"""
|
|
commitcloud: searching workspaces for the 'server' repo
|
|
the following commitcloud workspaces are available:
|
|
default
|
|
old (archived)
|
|
run `hg cloud sl -w <workspace name>` to view the commits
|
|
run `hg cloud switch -w <workspace name>` to switch to a different workspace
|
|
"""
|
|
|
|
sh % "hg cloud delete -w default" == r"""
|
|
commitcloud: workspace user/test/default has been deleted
|
|
"""
|
|
|
|
sh % "hg cloud delete -w default_abc" == r"""
|
|
abort: unknown workspace: user/test/default_abc
|
|
[255]
|
|
"""
|
|
|
|
sh % "hg cloud list --all" == r"""
|
|
commitcloud: searching workspaces for the 'server' repo
|
|
the following commitcloud workspaces are available:
|
|
old (archived)
|
|
default (archived)
|
|
run `hg cloud sl -w <workspace name>` to view the commits
|
|
run `hg cloud switch -w <workspace name>` to switch to a different workspace
|
|
"""
|
|
|
|
sh % "hg cloud list" == r"""
|
|
commitcloud: searching workspaces for the 'server' repo
|
|
no active workspaces found with the prefix user/test/
|
|
"""
|
|
|
|
sh % "hg cloud undelete -w default" == r"""
|
|
commitcloud: workspace user/test/default has been restored
|
|
"""
|
|
|
|
sh % "hg cloud list" == r"""
|
|
commitcloud: searching workspaces for the 'server' repo
|
|
the following commitcloud workspaces are available:
|
|
default
|
|
run `hg cloud sl -w <workspace name>` to view the commits
|
|
run `hg cloud switch -w <workspace name>` to switch to a different workspace
|
|
run `hg cloud list --all` to list all workspaces, including deleted
|
|
"""
|
|
|
|
sh % "hg cloud undelete -w old" == r"""
|
|
commitcloud: workspace user/test/old has been restored
|
|
"""
|
|
|
|
sh % "hg cloud list" == r"""
|
|
commitcloud: searching workspaces for the 'server' repo
|
|
the following commitcloud workspaces are available:
|
|
default
|
|
old
|
|
run `hg cloud sl -w <workspace name>` to view the commits
|
|
run `hg cloud switch -w <workspace name>` to switch to a different workspace
|
|
"""
|