Skip to content

Commit

Permalink
modify command line options
Browse files Browse the repository at this point in the history
  • Loading branch information
corentincarton committed Mar 3, 2023
1 parent 6e13b2c commit 76015b9
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 16 deletions.
28 changes: 14 additions & 14 deletions trackploy/deploy.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,18 +29,18 @@ def __init__(
"""

print("Creating deployer:")
deploy_user = os.getenv("USER")
deploy_host = os.getenv("HOSTNAME")
self.user = deploy_user if user is None else user
self.host = deploy_host if host is None else host
self.deploy_user = os.getenv("USER")
self.deploy_host = os.getenv("HOSTNAME")
self.user = self.deploy_user if user is None else user
self.host = self.deploy_host if host is None else host

self.staging_dir = staging_dir

self.local_dir = local_repo
self.target_dir = target_repo

# setup local repo
self.target_repo = f"ssh://{self.host}:{target_repo}"
self.target_repo = f"ssh://{self.user}@{self.host}:{target_repo}"
try:
print(f" -> Loading local repo {local_repo}")
self.repo = git.Repo(local_repo)
Expand Down Expand Up @@ -131,7 +131,7 @@ def commit(self, message=None):
"""
try:
commit_message = (
f"deployed by {self.user} from {self.host}:{self.staging_dir}\n"
f"deployed by {self.deploy_user} from {self.deploy_host}:{self.staging_dir}\n"
)
if message:
commit_message += message
Expand Down Expand Up @@ -161,16 +161,16 @@ def push(self, remote):
+ "Check configuration and states of remote repository!"
)

def pull_remote(self, remote):
def pull_remotes(self):
"""
Git pull the remote repository to the local repository
Parameters:
remote(str): Name of the remote repository (typically "target").
"""
remote_repo = self.repo.remotes[remote]
remote_repo = self.repo.remotes["target"]
remote_repo.pull()
self.check_sync_local_remote(remote)
self.check_sync_local_remote("target")
if self.backup_repo:
self.check_sync_local_remote("backup")
self.check_sync_remotes("target", "backup")

def diff_staging(self):
"""
Expand Down Expand Up @@ -317,10 +317,10 @@ def main(args=None):
parser.add_argument("--backup", help="URL to backup git repository")
parser.add_argument("--host", default=os.getenv("HOSTNAME"), help="Target host")
parser.add_argument("--user", default=os.getenv("USER"), help="Deploy user")
parser.add_argument("--message", help="Git message")
parser.add_argument(
"--push", action="store_true", help="Push staged suite to target"
)
parser.add_argument("--message", help="Git message")

args = parser.parse_args()

Expand All @@ -342,7 +342,7 @@ def main(args=None):
backup_repo=args.backup,
)

deployer.pull_remote("target")
deployer.pull_remotes()
deployer.diff_staging()

if args.push:
Expand Down
6 changes: 4 additions & 2 deletions trackploy/init.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ def setup_remote(host, user, target_dir, remote=None, push_options=None):
else:
ssh.exec("git init", dir=target_dir)
ssh.exec("git config receive.denyCurrentBranch updateInstead", dir=target_dir)
ssh.exec("touch suite.def", dir=target_dir)
ssh.exec("touch dummy.txt", dir=target_dir)
ssh.exec("git add .", dir=target_dir)
ssh.exec("git commit -am 'first commit'", dir=target_dir)
if remote:
Expand All @@ -96,10 +96,12 @@ def main(args=None):
parser.add_argument("--host", default=os.getenv("HOSTNAME"), help="Target host")
parser.add_argument("--user", default=os.getenv("USER"), help="Deploy user")
parser.add_argument("--force", action="store_true", help="Force push to remote")
parser.add_argument("--no_prompt", action="store_true",
help="No prompt, --force will go through without user input")
args = parser.parse_args()

push_options = ""
if args.backup and args.force:
if args.backup and args.force and not args.no_prompt:
push_options += "-f"
check = input(
"You are about to force push to the remote repository. Are you sure? (Y/n)"
Expand Down

0 comments on commit 76015b9

Please sign in to comment.