takeltau 0.34.13 → 0.35.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/lib/takeltau/completion/cli.rb +1 -1
  3. data/lib/takeltau/default.yml +10 -35
  4. data/lib/takeltau/docker/check/cli.rb +1 -1
  5. data/lib/takeltau/docker/check/daemon.rb +1 -1
  6. data/lib/takeltau/docker/cli.rb +1 -1
  7. data/lib/takeltau/docker/container/check/cli.rb +1 -1
  8. data/lib/takeltau/docker/container/check/existing.rb +1 -1
  9. data/lib/takeltau/docker/container/check/network.rb +1 -1
  10. data/lib/takeltau/docker/container/check/orphaned.rb +1 -1
  11. data/lib/takeltau/docker/container/clean.rb +1 -1
  12. data/lib/takeltau/docker/container/cli.rb +1 -1
  13. data/lib/takeltau/docker/container/command.rb +1 -1
  14. data/lib/takeltau/docker/container/daemon.rb +1 -1
  15. data/lib/takeltau/docker/container/lib.rb +1 -1
  16. data/lib/takeltau/docker/container/login.rb +1 -1
  17. data/lib/takeltau/docker/container/prune.rb +1 -1
  18. data/lib/takeltau/docker/image/cli.rb +1 -1
  19. data/lib/takeltau/docker/image/tag/check.rb +1 -1
  20. data/lib/takeltau/docker/image/tag/cli.rb +1 -1
  21. data/lib/takeltau/docker/image/tag/latest.rb +1 -1
  22. data/lib/takeltau/docker/image/tag/list.rb +1 -1
  23. data/lib/takeltau/docker/image/update.rb +1 -1
  24. data/lib/takeltau/git/check/clean.rb +1 -1
  25. data/lib/takeltau/git/check/cli.rb +14 -14
  26. data/lib/takeltau/git/check/hg.rb +26 -0
  27. data/lib/takeltau/git/check/workspace.rb +1 -1
  28. data/lib/takeltau/git/cli.rb +1 -1
  29. data/lib/takeltau/git/lib.rb +80 -0
  30. data/lib/takeltau/hg/cli.rb +56 -0
  31. data/lib/takeltau/hg/export.rb +18 -0
  32. data/lib/takeltau/hg/pull.rb +45 -0
  33. data/lib/takeltau/hg/push.rb +42 -0
  34. data/lib/takeltau/info/cli.rb +1 -1
  35. data/lib/takeltau/info/project/cli.rb +1 -1
  36. data/lib/takeltau/info/status/bar.rb +1 -1
  37. data/lib/takeltau/info/status/cli.rb +1 -1
  38. data/lib/takeltau/info/status/git.rb +1 -1
  39. data/lib/takeltau/info/status/gopass.rb +1 -1
  40. data/lib/takeltau/info/status/gpg.rb +1 -1
  41. data/lib/takeltau/info/status/lib.rb +1 -1
  42. data/lib/takeltau/info/status/ssh.rb +1 -1
  43. data/lib/takeltau/init/lib.rb +9 -28
  44. data/lib/takeltau/init/packer/cli.rb +4 -14
  45. data/lib/takeltau/init/packer/docker.rb +2 -5
  46. data/lib/takeltau/init/packer/templates/hgclone.tt +8 -0
  47. data/lib/takeltau/init/packer/templates/projectyml.tt +1 -5
  48. data/lib/takeltau/init/takelage/cli.rb +4 -14
  49. data/lib/takeltau/init/takelage/rake.rb +2 -5
  50. data/lib/takeltau/init/takelage/templates/hgclone.tt +2 -0
  51. data/lib/takeltau/lib/config.rb +2 -2
  52. data/lib/takeltau/lib/logging.rb +2 -2
  53. data/lib/takeltau/lib/project.rb +2 -2
  54. data/lib/takeltau/mutagen/check/cli.rb +1 -1
  55. data/lib/takeltau/mutagen/check/daemon.rb +1 -1
  56. data/lib/takeltau/mutagen/cli.rb +1 -1
  57. data/lib/takeltau/mutagen/socket/check.rb +1 -1
  58. data/lib/takeltau/mutagen/socket/cli.rb +1 -1
  59. data/lib/takeltau/mutagen/socket/create.rb +1 -1
  60. data/lib/takeltau/mutagen/socket/list.rb +1 -1
  61. data/lib/takeltau/mutagen/socket/terminate.rb +1 -1
  62. data/lib/takeltau/mutagen/socket/tidy.rb +1 -1
  63. data/lib/takeltau/self/cli.rb +1 -1
  64. data/lib/takeltau/self/config/cli.rb +1 -1
  65. data/lib/takeltau/self/list.rb +1 -1
  66. data/lib/takeltau/version +1 -1
  67. data/lib/takeltau.rb +37 -62
  68. metadata +9 -22
  69. data/lib/takeltau/bit/check/cli.rb +0 -23
  70. data/lib/takeltau/bit/check/workspace.rb +0 -37
  71. data/lib/takeltau/bit/cli.rb +0 -18
  72. data/lib/takeltau/bit/clipboard/cli.rb +0 -73
  73. data/lib/takeltau/bit/clipboard/copy.rb +0 -142
  74. data/lib/takeltau/bit/clipboard/lib.rb +0 -143
  75. data/lib/takeltau/bit/clipboard/paste.rb +0 -60
  76. data/lib/takeltau/bit/clipboard/pull.rb +0 -37
  77. data/lib/takeltau/bit/clipboard/push.rb +0 -37
  78. data/lib/takeltau/bit/require/cli.rb +0 -57
  79. data/lib/takeltau/bit/require/export.rb +0 -34
  80. data/lib/takeltau/bit/require/import.rb +0 -133
  81. data/lib/takeltau/bit/require/lib.rb +0 -19
  82. data/lib/takeltau/bit/scope/add.rb +0 -55
  83. data/lib/takeltau/bit/scope/cli.rb +0 -74
  84. data/lib/takeltau/bit/scope/list.rb +0 -41
  85. data/lib/takeltau/bit/scope/new.rb +0 -44
  86. data/lib/takeltau/bit/scope/ssh.rb +0 -13
  87. data/lib/takeltau/git/check/bit.rb +0 -26
  88. data/lib/takeltau/init/packer/templates/bitrequireyml.tt +0 -13
  89. data/lib/takeltau/init/takelage/templates/bitrequireyml.tt +0 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 409b3cf61f2e77f77584db90460fbcc4fa5894061b7a6c345e731c84445d0193
4
- data.tar.gz: 1492fdfa0a64000e5b4f083bac308814e725e944d235204993dd08c81253526c
3
+ metadata.gz: 687dfd0bf4c599e31749250c27416d121141688698127647301eaeada8d840a7
4
+ data.tar.gz: '01487d8cb0f8d59e9749c0e76c655b35f6ad35ea23ad82d21c5734319470636c'
5
5
  SHA512:
6
- metadata.gz: 8e98155a180b556afca6403769b352708d3dd5547111a8368d146ff1940fe39f7c9c45fe1e3f0c56f214707111e64510edf1c07cdfdd4b5614c06e08b2824949
7
- data.tar.gz: ed1ad5cca7c1f41233a05309f7584bb8d6ad4fe70372160298f11a881e471034e9c51fa2e05c6c8714d3a0a052224ba76c6edd0f23c8db6fce65927ed119cdbc
6
+ metadata.gz: a6465cf6ce9e5b6c5f597bcdd9e9ba22e55a28aa2b21f308760f10fa4e7622462044605ddb0d7148a8a4a497593d7b3d8ffffc2c17f9b613706ee3ef2b3e91d2
7
+ data.tar.gz: 1d3332d3afc1562cedabe046cde12364257f9a5669257ab2c1a647e04b65bfd425ae1b521933a7fbd97bf52bb084a8158ec2ae9456d75cf607f9b82ea6ed2ce5
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau completion
4
+ # tau completion
5
5
  class Completion < SubCommandBase
6
6
  include LoggingModule
7
7
 
@@ -1,35 +1,4 @@
1
1
  ---
2
- bit_dev_user: 'takelage'
3
- bit_remote: ''
4
- bit_require_file: 'bitrequire.yml'
5
- bit_root: '/bit'
6
- bit_ssh: ''
7
- cmd_bit: 'bit'
8
- cmd_bit_check_workspace_bit_list: 'bit status'
9
- cmd_bit_check_workspace_pwd: 'pwd'
10
- cmd_bit_clipboard_lib_bit_status: 'bit status'
11
- cmd_bit_clipboard_copy_bit_list_scope: 'bit list --json %{scope}'
12
- cmd_bit_clipboard_copy_bit_list_remotes: 'bit remote'
13
- cmd_bit_clipboard_copy_bit_add_dir: 'bit add --id %{id} --main %{dir}/README.bit %{dir}'
14
- cmd_bit_clipboard_copy_bit_tag_id: 'bit tag --skip-tests %{id}'
15
- cmd_bit_clipboard_copy_bit_export_to_scope: 'bit export %{scope}'
16
- cmd_bit_clipboard_git_add: 'git add %{file}'
17
- cmd_bit_clipboard_git_commit: 'git commit --message="%{message}"'
18
- cmd_bit_clipboard_git_pull: 'git pull origin %{main}'
19
- cmd_bit_clipboard_git_push: 'git push origin %{main}'
20
- cmd_bit_clipboard_paste_bit_list_scope: 'bit list --json %{scope}'
21
- cmd_bit_clipboard_paste_bit_import_cid: 'bit import --ignore-package-json --ignore-dist --path %{dir} %{cid}'
22
- cmd_bit_clipboard_pull_bit_import_all: 'bit import --ignore-package-json --ignore-dist'
23
- cmd_bit_clipboard_pull_bit_checkout_all: 'bit checkout --ignore-package-json --ignore-dist --all latest'
24
- cmd_bit_clipboard_push_bit_tag_all: 'bit tag --skip-tests --all'
25
- cmd_bit_clipboard_push_bit_export_all: 'bit export --all'
26
- cmd_bit_clipboard_export_bit_list: 'bit list --json %{scope}'
27
- cmd_bit_require_lib_bit_list: 'bit list --json'
28
- cmd_bit_require_lib_bit_list_ids: 'bit list --json --ids'
29
- cmd_bit_scope_add_scope: 'bit remote add %{remote}/%{scope}'
30
- cmd_bit_scope_list_find_scopes: 'find -L %{root} -name scope.json'
31
- cmd_bit_scope_new_bit_init: 'mkdir -p %{root}/%{scope} && cd %{root}/%{scope} && bit init --bare'
32
- cmd_bit_scope_remove_scope: 'rm --force --recursive %{root}/%{scope}'
33
2
  cmd_docker: 'docker'
34
3
  cmd_docker_check_daemon_docker_info: 'docker info'
35
4
  cmd_docker_container_check_existing_docker_ps: 'docker ps --filter name=^%{container}$ --quiet'
@@ -51,9 +20,16 @@ cmd_git: 'git'
51
20
  cmd_git_check_clean_git_unstaged: 'git diff --exit-code'
52
21
  cmd_git_check_clean_git_uncommitted: 'git diff --cached --exit-code'
53
22
  cmd_git_check_clean_git_status: 'git status --porcelain'
54
- cmd_git_check_bit_get_git_branch: 'git symbolic-ref HEAD'
23
+ cmd_git_check_hg_get_git_branch: 'git symbolic-ref HEAD'
55
24
  cmd_git_check_workspace_git_repo: 'git -C %{dir} rev-parse'
56
25
  cmd_git_check_workspace_pwd: 'pwd'
26
+ cmd_git_lib_git_add_all: 'git add --all'
27
+ cmd_git_lib_git_commit: 'git commit --message="%{message}"'
28
+ cmd_git_lib_git_pull_origin: 'git pull origin %{main}'
29
+ cmd_git_lib_git_push_origin: 'git push origin %{main}'
30
+ cmd_hg_export_repos: 'cd %{root}; find * -type d -name ".hg" | parallel hg paths default -R {//} -T "hg\ clone\ {url}\ " \; echo {//}'
31
+ cmd_hg_pull_repos: 'cd %{root}; find * -type d -name ".hg" -print0 | parallel -0 echo \; cd {//} \; pwd \; hg pull \; hg update'
32
+ cmd_hg_push_repos: 'cd %{root}; find * -type d -name ".hg" -print0 | parallel -0 echo \; cd {//} \; pwd \; hg add \; hg commit -m "Update\ hg\ repos" \; hg bookmark -f main \; hg push'
57
33
  cmd_info_status_lib_git_name: 'git -C %{root} config user.name'
58
34
  cmd_info_status_lib_git_email: 'git -C %{root} config user.email'
59
35
  cmd_info_status_lib_git_signingkey: 'git -C %{root} config user.signingKey'
@@ -63,10 +39,10 @@ cmd_info_status_gpg_agent: 'gpg-connect-agent /bye'
63
39
  cmd_info_status_gpg_keys: 'gpg --list-keys'
64
40
  cmd_info_status_ssh_keys: 'ssh-add -l'
65
41
  cmd_info_status_ssh_socket: 'gpgconf --list-dirs agent-ssh-socket'
66
- cmd_init_lib_bit_init: 'bit init'
67
42
  cmd_init_lib_git_init: 'git init && git checkout -b main'
68
43
  cmd_init_lib_git_add_all: 'git add --all'
69
44
  cmd_init_lib_git_commit_initial: 'git commit -m "Initial commit"'
45
+ cmd_init_lib_hg_clone: 'bash hgclone'
70
46
  cmd_mutagen: 'mutagen'
71
47
  cmd_mutagen_check_daemon_host_connection: 'mutagen forward list --label-selector="%{hostlabel}"'
72
48
  cmd_mutagen_check_daemon_version: 'mutagen version'
@@ -84,10 +60,9 @@ docker_run_options: '--env GOOGLE_APPLICATION_CREDENTIALS=/hostdir/.google/defau
84
60
  docker_shm_size: '512M'
85
61
  docker_tag: 'latest'
86
62
  docker_user: 'takelwerk'
87
- git_bit_branch: 'main'
63
+ git_hg_branch: 'main'
88
64
  info_project_main: 'project.yml'
89
65
  info_project_private: 'private/project.yml'
90
- init_bit_require_import: 'true'
91
66
  login_wait_for_sockets: '0'
92
67
  mutagen_socket_path_mutagen: '~/.mutagen/daemon/daemon.sock'
93
68
  mutagen_socket_path_gpg: '~/.gnupg/S.gpg-agent'
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau docker check
4
+ # tau docker check
5
5
  class DockerCheck < SubCommandBase
6
6
  include LoggingModule
7
7
  include SystemModule
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker check daemon
3
+ # tau docker check daemon
4
4
  module DockerCheckDaemon
5
5
  # Backend method for docker check daemon.
6
6
  # @return [Boolean] is the docker daemon running?
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau docker
4
+ # tau docker
5
5
  class Docker < SubCommandBase
6
6
  desc 'check [COMMAND]', 'Check docker'
7
7
  subcommand 'check', DockerCheck
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau docker container check
4
+ # tau docker container check
5
5
  class DockerContainerCheck < SubCommandBase
6
6
  include LoggingModule
7
7
  include SystemModule
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container check existing
3
+ # tau docker container check existing
4
4
  module DockerContainerCheckExisting
5
5
  # Backend method for docker container check existing.
6
6
  # @return [Boolean] is container existing?
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container check network
3
+ # tau docker container check network
4
4
  module DockerContainerCheckNetwork
5
5
  # Backend method for docker container check network.
6
6
  # @return [Boolean] is network existing?
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container check orphaned
3
+ # tau docker container check orphaned
4
4
  module DockerContainerCheckOrphaned
5
5
  # Backend method for docker container check orphaned.
6
6
  # @return [Boolean] is container orphaned?
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container clean
3
+ # tau docker container clean
4
4
  module DockerContainerClean
5
5
  # Backend method for docker container clean.
6
6
  def docker_container_clean
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau docker container
4
+ # tau docker container
5
5
  class DockerContainer < SubCommandBase
6
6
  include LoggingModule
7
7
  include SystemModule
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container command
3
+ # tau docker container command
4
4
  module DockerContainerCommand
5
5
  # Backend method for docker container command.
6
6
  def docker_container_command(command)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container daemon
3
+ # tau docker container daemon
4
4
  module DockerContainerDaemon
5
5
  # Backend method for docker container daemon.
6
6
  def docker_container_daemon
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container lib
3
+ # tau docker container lib
4
4
  # rubocop:disable Metrics/ModuleLength
5
5
  # rubocop:disable Style/IfUnlessModifier
6
6
  module DockerContainerLib
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container login
3
+ # tau docker container login
4
4
  module DockerContainerLogin
5
5
  # Backend method for docker container login.
6
6
  def docker_container_login
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker container prune
3
+ # tau docker container prune
4
4
  module DockerContainerPrune
5
5
  # Backend method for docker container prune.
6
6
  def docker_container_prune
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau docker image
4
+ # tau docker image
5
5
  class DockerImage < SubCommandBase
6
6
  include LoggingModule
7
7
  include SystemModule
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker image tag check
3
+ # tau docker image tag check
4
4
  module DockerImageTagCheck
5
5
  # Backend method for docker image tag check.
6
6
  # @return [Boolean] does docker image tag exist?
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau docker image tag
4
+ # tau docker image tag
5
5
  class DockerImageTag < SubCommandBase
6
6
  include LoggingModule
7
7
  include SystemModule
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker image tag latest
3
+ # tau docker image tag latest
4
4
  module DockerImageTagLatest
5
5
  # Backend method for docker image tag latest.
6
6
  # @return [String] latest docker image tag
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker image tag list
3
+ # tau docker image tag list
4
4
  module DockerImageTagList
5
5
  # Backend method for docker image tag list.
6
6
  # @return [Array] docker image tags
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau docker image uppdate
3
+ # tau docker image uppdate
4
4
  module DockerImageUpdate
5
5
  # Backend method for docker image update.
6
6
  def docker_image_update
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau git check clean
3
+ # tau git check clean
4
4
  module GitCheckClean
5
5
  # Backend method for git check clean.
6
6
  # @return [Boolean] is git workspace clean?
@@ -1,27 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau git check
4
+ # tau git check
5
5
  class GitCheck < SubCommandBase
6
6
  include LoggingModule
7
7
  include SystemModule
8
8
  include ConfigModule
9
9
  include GitCheckClean
10
- include GitCheckBit
10
+ include GitCheckHg
11
11
  include GitCheckWorkspace
12
12
 
13
- #
14
- # git check bit
15
- #
16
- desc 'bit', 'Check if we are on the git bit branch'
17
- long_desc <<-LONGDESC.gsub("\n", "\x5")
18
- Check if we are on the git bit branch
19
- LONGDESC
20
- # Check if we are on the git bit branch.
21
- def bit
22
- exit git_check_bit
23
- end
24
-
25
13
  #
26
14
  # git check clean
27
15
  #
@@ -34,6 +22,18 @@ module Takeltau
34
22
  exit git_check_clean
35
23
  end
36
24
 
25
+ #
26
+ # git check hg
27
+ #
28
+ desc 'hg', 'Check if we are on the git hg branch'
29
+ long_desc <<-LONGDESC.gsub("\n", "\x5")
30
+ Check if we are on the git hg branch
31
+ LONGDESC
32
+ # Check if we are on the git hg branch.
33
+ def hg
34
+ exit git_check_hg
35
+ end
36
+
37
37
  #
38
38
  # git check workspace
39
39
  #
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ # tau git check hg
4
+ module GitCheckHg
5
+ # Backend method for git check hg.
6
+ # @return [Boolean] are we on the git hg branch?
7
+ def git_check_hg
8
+ log.debug 'Check if we are on the git hg branch'
9
+
10
+ return false unless git_check_workspace
11
+
12
+ branch = _git_check_hg_get_branch
13
+ log.debug "We are on git branch \"#{branch}\""
14
+
15
+ branch == config.active['git_hg_branch']
16
+ end
17
+
18
+ private
19
+
20
+ # Get git branch.
21
+ def _git_check_hg_get_branch
22
+ cmd_get_branch =
23
+ config.active['cmd_git_check_hg_get_git_branch']
24
+ (run cmd_get_branch).chomp.split('/')[-1]
25
+ end
26
+ end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau git check workspace
3
+ # tau git check workspace
4
4
  module GitCheckWorkspace
5
5
  # Backend method for git check workspace.
6
6
  # @return [Boolean] is this a git workspace?
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau git
4
+ # tau git
5
5
  class Git < SubCommandBase
6
6
  desc 'check [COMMAND]', 'Check git state'
7
7
  subcommand 'check', GitCheck
@@ -0,0 +1,80 @@
1
+ # frozen_string_literal: true
2
+
3
+ # tau git lib
4
+ module GitLib
5
+ # Pull git workspace.
6
+ def git_lib_pull_workspace
7
+ log.info 'Pulling git workspace'
8
+
9
+ _git_lib_git_pull_origin_hg
10
+ end
11
+
12
+ # Push git workspace.
13
+ def git_lib_push_workspace(message)
14
+ log.info 'Pushing git workspace'
15
+
16
+ return false unless _git_lib_git_add_all
17
+ return false unless _git_lib_git_commit message
18
+ return false unless _git_lib_git_pull_origin_hg
19
+
20
+ _git_lib_git_push_origin_hg
21
+ end
22
+
23
+ private
24
+
25
+ # git add all.
26
+ def _git_lib_git_add_all
27
+ log.debug 'Adding all files to git'
28
+
29
+ cmd_git_add_all = config.active['cmd_git_lib_git_add_all']
30
+
31
+ return true if try cmd_git_add_all
32
+
33
+ log.error 'Unable to add all files to git'
34
+ false
35
+ end
36
+
37
+ # git commit.
38
+ def _git_lib_git_commit(message)
39
+ log.debug "Committing to git with message \"#{message}\""
40
+
41
+ cmd_git_commit = format(
42
+ config.active['cmd_git_lib_git_commit'],
43
+ message: message
44
+ )
45
+
46
+ return true if try cmd_git_commit
47
+
48
+ log.error 'Unable to commit to git'
49
+ false
50
+ end
51
+
52
+ # git pull origin hg.
53
+ def _git_lib_git_pull_origin_hg
54
+ log.info 'Pulling git hg branch from origin'
55
+ cmd_git_lib_git_pull_origin = format(
56
+ config.active['cmd_git_lib_git_pull_origin'],
57
+ main: config.active['git_hg_branch']
58
+ )
59
+
60
+ return true if (try cmd_git_lib_git_pull_origin).exitstatus.zero?
61
+
62
+ log.error 'Unable to pull git hg branch'
63
+ false
64
+ end
65
+
66
+ # git push origin hg.
67
+ def _git_lib_git_push_origin_hg
68
+ log.debug 'Pushing git hg branch to origin'
69
+
70
+ cmd_git_lib_git_push_origin = format(
71
+ config.active['cmd_git_lib_git_push_origin'],
72
+ main: config.active['git_hg_branch']
73
+ )
74
+
75
+ return true if (try cmd_git_lib_git_push_origin).exitstatus.zero?
76
+
77
+ log.error 'Unable to push git hg branch'
78
+ false
79
+ end
80
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Takeltau
4
+ # tau hg
5
+ class Hg < SubCommandBase
6
+ include LoggingModule
7
+ include SystemModule
8
+ include ConfigModule
9
+ include GitCheckClean
10
+ include GitCheckHg
11
+ include GitCheckWorkspace
12
+ include GitLib
13
+ include HgExport
14
+ include HgPull
15
+ include HgPush
16
+
17
+ #
18
+ # hg export
19
+ #
20
+ desc 'export', 'Export hg repos'
21
+ long_desc <<-LONGDESC.gsub("\n", "\x5")
22
+ Export hg repos
23
+ LONGDESC
24
+ # Export hg repos.
25
+ def export
26
+ hgclone = hg_export
27
+ exit false if hgclone == false
28
+ say hgclone
29
+ true
30
+ end
31
+
32
+ #
33
+ # hg pull
34
+ #
35
+ desc 'pull', 'Pull hg repos'
36
+ long_desc <<-LONGDESC.gsub("\n", "\x5")
37
+ Pull hg repos
38
+ LONGDESC
39
+ # Pull hg repos.
40
+ def pull
41
+ exit hg_pull
42
+ end
43
+
44
+ #
45
+ # hg push
46
+ #
47
+ desc 'push', 'Push hg repos'
48
+ long_desc <<-LONGDESC.gsub("\n", "\x5")
49
+ Push hg repos
50
+ LONGDESC
51
+ # Push hg repos.
52
+ def push
53
+ exit hg_push
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ # tau hg export
4
+ module HgExport
5
+ # Backend method for hg export.
6
+ def hg_export
7
+ log.debug 'Export hg repos'
8
+
9
+ return false unless configured? %w[project_root_dir]
10
+
11
+ cmd_hg_export_repos = format(
12
+ config.active['cmd_hg_export_repos'],
13
+ root: config.active['project_root_dir']
14
+ )
15
+
16
+ run cmd_hg_export_repos
17
+ end
18
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ # tau hg pull
4
+ module HgPull
5
+ # Backend method for hg pull.
6
+ # rubocop:disable Metrics/MethodLength
7
+ def hg_pull
8
+ log.debug 'Pull hg repos'
9
+
10
+ return false unless configured? %w[project_root_dir]
11
+
12
+ unless git_check_hg
13
+ log.error 'Not on git hg branch'
14
+ return false
15
+ end
16
+
17
+ unless git_check_clean
18
+ log.error 'No clean git workspace'
19
+ return false
20
+ end
21
+
22
+ unless git_lib_pull_workspace
23
+ log.error 'Unable to pull git workspace'
24
+ return false
25
+ end
26
+
27
+ _hg_pull_hg_pull_repos
28
+ end
29
+ # rubocop:enable Metrics/MethodLength
30
+
31
+ private
32
+
33
+ # Pull hg repos.
34
+ def _hg_pull_hg_pull_repos
35
+ cmd_hg_pull_repos = format(
36
+ config.active['cmd_hg_pull_repos'],
37
+ root: config.active['project_root_dir']
38
+ )
39
+
40
+ return true if try cmd_hg_pull_repos
41
+
42
+ log.error 'Unable to pull hg repos'
43
+ false
44
+ end
45
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # tau hg push
4
+ module HgPush
5
+ # Backend method for hg push.
6
+ # rubocop:disable Metrics/MethodLength
7
+ def hg_push
8
+ log.debug 'Push hg repos'
9
+
10
+ return false unless configured? %w[project_root_dir]
11
+
12
+ unless git_check_hg
13
+ log.error 'Not on git hg branch'
14
+ return false
15
+ end
16
+
17
+ unless git_check_clean
18
+ log.error 'No clean git workspace'
19
+ return false
20
+ end
21
+
22
+ log.info _hg_push_hg_push_repos
23
+
24
+ return true if git_lib_push_workspace 'tau hg push'
25
+
26
+ log.error 'Unable to push git workspace'
27
+ false
28
+ end
29
+ # rubocop:enable Metrics/MethodLength
30
+
31
+ private
32
+
33
+ # Push hg repos.
34
+ def _hg_push_hg_push_repos
35
+ cmd_hg_push_repos = format(
36
+ config.active['cmd_hg_push_repos'],
37
+ root: config.active['project_root_dir']
38
+ )
39
+
40
+ run cmd_hg_push_repos
41
+ end
42
+ end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau info
4
+ # tau info
5
5
  class Info < SubCommandBase
6
6
  desc 'project [COMMAND]', 'Get project info'
7
7
  subcommand 'project', InfoProject
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Takeltau
4
- # takeltau info project
4
+ # tau info project
5
5
  class InfoProject < SubCommandBase
6
6
  include LoggingModule
7
7
  include SystemModule
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # takeltau info status bar
3
+ # tau info status bar
4
4
  module InfoStatusBar
5
5
  # Backend method for info status bar.
6
6
  # @return [String] status info bar