Skip to content

Git Actions

约 489 字大约 2 分钟

Git

2024-06-05


name: '123'
run-name: '345'
on: push # 多个事件:[push,fork]

jobs:
...

runner中设置代理无效

Act Runner 配置:Act Runner 的默认行为是在隔离的 Docker 容器中运行任务,容器的网络配置独立于宿主机或 Gitea 实例。你需要显式地在任务容器中设置代理。

有一个重要的事情没有完成; 新建一个用户指定一个只能他访问的目录 ,然后通过scp上传文件过来

问题解决

可以把几个镜像或者仓库下载的到自己的服务器上,这样能大大的提升速度。 git actions无法使用本地路径,也无法设置 GITHUB_SERVER_URL, 即使设置了 runner 仍然尝试从 github.com 拉取 action。 因为:Gitea 的 Actions Runner(基于 act-runner )在 v0.2.x 版本中存在一个已知问题:它不完全尊重 GITHUB_SERVER_URL 环境变量,特别是在拉取 Action 时仍可能默认指向 GitHub.com

- name: 部署到宿主机
	uses: http://192.168.1.96:8883/yuchen/scp-action@master
	with:
	host: 192.168.1.96
	username: user
	password: ${{ secrets.PUBLISH_PASSWORD }} #secrets是配置在gitactions中的
	port: 23333
	source: "docs/.vuepress/dist/*"
	target: "/volume2/Site/blog"
	strip_components: 3
name: "Bolg Publish"

on: # 指定触发条件
    push: #推送时触发
        branches: [release] #推送到release分支时触发

jobs:
    build-and-deploy:
        runs-on: ubuntu-latest
        env:
            http_proxy: http://192.168.1.96:17890
            https_proxy: http://192.168.1.96:17890
            no_proxy: localhost,127.0.0.1,192.168.1.96,csoyi.xyz,git.csoyi.xyz # 设置不使用代理的地址
        steps: # 步骤列表
            - name: 检出代码
              uses: http://192.168.1.96:8883/yuchen/checkout@v3

            - name: 设置node.js环境
              uses: http://192.168.1.96:8883/yuchen/setup-node@v3
              with:
                  node-version: "20.18.0" # 设置Node.js版本
                  cache: "npm" # 启用pnpm缓存
                  cache-dependency-path: package-lock.json
  
            - name: 安装依赖
              run: npm install # 安装项目依赖

            - name: 构建项目-打包
              run: |
                  npm run build || true
  

            - name: 部署到宿主机
              uses: http://192.168.1.96:8883/yuchen/scp-action@master
              with:
                  host: 192.168.1.96
                  username: user
                  password: pwd
                  port: 22 # 根据你的 Gitea 配置
                  source: "docs/.vuepress/dist/*"
                  target: "/volume2/Site/blog"
                  strip_components: 3
  

            - name: 完成
              run: echo "博客发布成功" # 打印成功信息

弊端!太吃资源,太耗时间,太麻烦!新策略: