Github操作获取存储库的SSH链接
我正在使用github操作部署到服务器。现在我编写了一个小bash脚本来检查目录是否存在,如果存在的话Github操作获取存储库的SSH链接,git,github,github-actions,Git,Github,Github Actions,我正在使用github操作部署到服务器。现在我编写了一个小bash脚本来检查目录是否存在,如果存在的话git pullother wisegit clone 所有内容都是通用的,但我不确定如何从环境变量获取存储库的ssh链接: 作业: 建造: 运行于:ubuntu最新版本 步骤: -用途:行动/checkout@master -名称:创建项目目录 用法:appleboy/ssh-action@master 与: 主机:${secrets.HOST} 用户名:${secrets.USERNAME}
git pull
other wisegit clone
所有内容都是通用的,但我不确定如何从环境变量获取存储库的ssh链接:
作业:
建造:
运行于:ubuntu最新版本
步骤:
-用途:行动/checkout@master
-名称:创建项目目录
用法:appleboy/ssh-action@master
与:
主机:${secrets.HOST}
用户名:${secrets.USERNAME}
密钥:${secrets.KEY}
端口:${{secrets.PORT}
脚本:|
mkdir-p~/项目
cd~/项目
如果[-d“${{github.event.repository.name}}”];然后
echo“目录已存在”
cd${{github.event.repository.name}
git-pull——重基
其他的
git克隆git@github.com:orgname/projectname.git
fi
echo“部署到服务器成功!”
我们可以看到,git克隆git@github.com:orgname/projectname.git
仍然是硬编码的。我如何才能像github.event.repository.name那样获得此部件的一般信息
为VonC编辑:
GitHub操作的输出:
pwd
ls -alrth
git version
echo "GURL=$(git remote get-url origin)">>$GITHUB_ENV
shell: /bin/bash -e {0}
/home/runner/work/digitalocean-test-deploy/digitalocean-test-deploy
total 60K
drwxr-xr-x 3 runner docker 4.0K Dec 27 13:12 ..
drwxr-xr-x 2 runner docker 4.0K Dec 27 13:12 tests
drwxr-xr-x 2 runner docker 4.0K Dec 27 13:12 src
-rw-r--r-- 1 runner docker 1.1K Dec 27 13:12 setup.py
drwxr-xr-x 2 runner docker 4.0K Dec 27 13:12 settings
-rw-r--r-- 1 runner docker 26 Dec 27 13:12 requirements.txt
drwxr-xr-x 2 runner docker 4.0K Dec 27 13:12 notebooks
drwxr-xr-x 2 runner docker 4.0K Dec 27 13:12 docs
drwxr-xr-x 2 runner docker 4.0K Dec 27 13:12 data
-rw-r--r-- 1 runner docker 516 Dec 27 13:12 README.md
-rw-r--r-- 1 runner docker 1.1K Dec 27 13:12 LICENSE
-rw-r--r-- 1 runner docker 1.8K Dec 27 13:12 .gitignore
drwxr-xr-x 3 runner docker 4.0K Dec 27 13:12 .github
drwxr-xr-x 10 runner docker 4.0K Dec 27 13:12 .
drwxr-xr-x 8 runner docker 4.0K Dec 27 13:12 .git
git version 2.29.2
从2020年10月起,考虑到签出工作树中的
on:push
工作:
建造:
运行于:ubuntu最新版本
步骤:
-用途:行动/checkout@v2
-运行:|
echo“GURL=$(git远程获取url源)”>>$GITHUB\u ENV
-名称:创建项目目录
git克隆$GURL
,但是,这似乎不适用于使用ssh操作的步骤
,因此。谢谢,如果我理解正确,您的答案是一个额外的步骤,以替代我的git克隆,对吗?或者不止这些?@Zal这是一个将URL存储在变量中的附加步骤,供您在下一步的脚本中使用。非常好,谢谢。小问题。我是否正确使用了脚本:
部分?因为您使用了run:
@Zal-run:是一个工作流命令()with:script:
是为您正在使用的操作指定的操作输入参数。实际上,我在一个不存在该项目的项目中对此进行了测试,因此它必须执行git clone$GURL
,并且GURL
env变量为空。所以它失败了,你知道这是什么原因吗?