Compare commits
2 Commits
bc362d0809
...
cb2273be12
Author | SHA1 | Date | |
---|---|---|---|
cb2273be12 | |||
633844d7ac |
25
.github/workflows/deploy.yml
vendored
25
.github/workflows/deploy.yml
vendored
@ -1,25 +0,0 @@
|
||||
name: Deploy
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Run deploy script
|
||||
run: python3 deploy.py
|
||||
|
||||
- name: Commit and push changes
|
||||
run: |
|
||||
git config --global user.name 'GitHub Actions'
|
||||
git config --global user.email 'actions@github.com'
|
||||
git add .
|
||||
git commit -m "Deploy changes"
|
||||
git push --force origin HEAD:deploy
|
48
deploy.py
48
deploy.py
@ -1,26 +1,54 @@
|
||||
import os
|
||||
|
||||
from subprocess import run
|
||||
from pathlib import Path
|
||||
|
||||
ON_CF = os.getenv("CF_PAGES") == "1"
|
||||
|
||||
|
||||
def get_env_info() -> dict[str, str]:
|
||||
# 读取环境变量
|
||||
env_info = {}
|
||||
# git branch
|
||||
# if on cf, read it from env: CF_PAGES_BRANCH
|
||||
if ON_CF:
|
||||
branch = os.getenv("CF_PAGES_BRANCH") or "unknown"
|
||||
else:
|
||||
branch = run(
|
||||
["git", "branch", "--show-current"], capture_output=True, text=True, encoding="utf-8"
|
||||
)
|
||||
env_info["branch"] = branch.stdout.strip()
|
||||
["git", "branch", "--show-current"],
|
||||
capture_output=True,
|
||||
text=True,
|
||||
encoding="utf-8",
|
||||
).stdout
|
||||
env_info["branch"] = branch.strip()
|
||||
# git commit hash
|
||||
commit = run(["git", "rev-parse", "HEAD"], capture_output=True, text=True, encoding="utf-8")
|
||||
env_info["commit"] = commit.stdout.strip()
|
||||
# on cf -> get from CF_PAGES_COMMIT_SHA
|
||||
if ON_CF:
|
||||
commit = os.getenv("CF_PAGES_COMMIT_SHA") or "unknown"
|
||||
else:
|
||||
commit = run(
|
||||
["git", "rev-parse", "HEAD"],
|
||||
capture_output=True,
|
||||
text=True,
|
||||
encoding="utf-8",
|
||||
).stdout
|
||||
env_info["commit"] = commit.strip()
|
||||
# git commit message
|
||||
message = run(
|
||||
["git", "log", "-1", "--pretty=%B"], capture_output=True, text=True, encoding="utf-8"
|
||||
["git", "log", "-1", "--pretty=%B"],
|
||||
capture_output=True,
|
||||
text=True,
|
||||
encoding="utf-8",
|
||||
)
|
||||
env_info["message"] = message.stdout.strip()
|
||||
# git tag
|
||||
tag = run(["git", "describe", "--tags"], capture_output=True, text=True, encoding="utf-8")
|
||||
env_info["tag"] = tag.stdout.strip()
|
||||
if ON_CF:
|
||||
tag = os.getenv("CF_PAGES_COMMIT_TAG") or "cf"
|
||||
else:
|
||||
tag = run(
|
||||
["git", "describe", "--tags"], capture_output=True, text=True, encoding="utf-8"
|
||||
).stdout
|
||||
env_info["tag"] = tag.strip()
|
||||
return env_info
|
||||
|
||||
|
||||
@ -70,7 +98,9 @@ if __name__ == "__main__":
|
||||
marker = marker_template.format(version_info)
|
||||
print(f"Master: {border}\n{marker}\n")
|
||||
|
||||
raw_content = raw_content.replace(border_raw, border).replace(marker_raw, marker)
|
||||
raw_content = raw_content.replace(border_raw, border).replace(
|
||||
marker_raw, marker
|
||||
)
|
||||
|
||||
# 写入文件
|
||||
try:
|
||||
|
Loading…
Reference in New Issue
Block a user