Skip to content

Commit

Permalink
check_git_status() asserts (#1977)
Browse files Browse the repository at this point in the history
  • Loading branch information
glenn-jocher committed Jan 18, 2021
1 parent e9941d5 commit b1cf25d
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 12 deletions.
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ RUN apt update && apt install -y screen libgl1-mesa-glx
# Install python dependencies
RUN pip install --upgrade pip
COPY requirements.txt .
RUN pip install -r requirements.txt
RUN pip install gsutil
RUN pip install -r requirements.txt gsutil wandb
RUN wandb disabled

# Create working directory
RUN mkdir -p /usr/src/app
Expand Down
23 changes: 13 additions & 10 deletions utils/general.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,16 +60,19 @@ def check_git_status():
# Recommend 'git pull' if code is out of date
print(colorstr('github: '), end='')
try:
if Path('.git').exists() and not Path('/workspace').exists() and check_online(): # not exist '/.dockerenv'
url = subprocess.check_output(
'git fetch && git config --get remote.origin.url', shell=True).decode('utf-8')[:-1]
n = int(subprocess.check_output(
'git rev-list $(git rev-parse --abbrev-ref HEAD)..origin/master --count', shell=True)) # commits behind
if n > 0:
print(f"⚠️ WARNING: code is out of date by {n} {'commits' if n > 1 else 'commmit'}. "
f"Use 'git pull' to update or 'git clone {url}' to download latest.")
else:
print(f'up to date with {url} ✅')
assert Path('.git').exists(), 'skipping check (not a git repository)'
assert not Path('/workspace').exists(), 'skipping check (Docker image)' # not Path('/.dockerenv').exists()
assert check_online(), 'skipping check (offline)'

cmd = 'git fetch && git config --get remote.origin.url' # github repo url
url = subprocess.check_output(cmd, shell=True).decode()[:-1]
cmd = 'git rev-list $(git rev-parse --abbrev-ref HEAD)..origin/master --count' # commits behind
n = int(subprocess.check_output(cmd, shell=True))
if n > 0:
print(f"⚠️ WARNING: code is out of date by {n} {'commits' if n > 1 else 'commmit'}. "
f"Use 'git pull' to update or 'git clone {url}' to download latest.")
else:
print(f'up to date with {url} ✅')
except Exception as e:
print(e)

Expand Down

0 comments on commit b1cf25d

Please sign in to comment.