【问题标题】:run a bash script located in public folder github actions运行位于公共文件夹 github 操作中的 bash 脚本
【发布时间】:2021-04-13 00:42:46
【问题描述】:

我在public/scripts 文件夹中有这个脚本createmap.sh。我需要在主部署上运行它 yaml文件中的代码是

name: create-map
on: push

run: .public/script.sh
runs-on: ubuntu-latest
shell: bash

这是一个简单的脚本,用于创建站点地图并 ping google

# yarn sitemap
$ cd public
$ rm -rf sitemap
$ mkdir sitemap
$ cd ..
$ cd scripts
$ node ./sitemap-posts.js
$ node ./compress-map.js
$ node ./create-one-map.js

$ curl http://google.com/ping?sitemap=https://website.com/sitemap.xml

我的文件夹结构是rootdirectory/scriptsrootdirectory/public

当我部署时,脚本没有运行,我不知道问题出在哪里

【问题讨论】:

  • 控制台有错误吗?如果是,则将其包含在帖子中,并使用ls -l 向我们展示目录脚本和公开的内容

标签: bash github-actions


【解决方案1】:

您需要添加执行权限:

jobs:
  run_tests:
    runs-on: ubuntu-20.04
    steps:
    - uses: actions/checkout@v2
    - name: Run script file
      run: |
         chmod +x ./public/scripts/test.sh
         ./public/scripts/test.sh
      shell: bash

【讨论】:

  • 这取决于你。这里没有限制。您只需要注意正确引用它们即可。在你方便的地方做。
  • 我是这方面的初学者。实际上,这是我将要在 Actions 中进行的唯一部署。您能否对其进行一些修改以包括安装 npm 模块。我认为 package.json 文件中的包会被使用
  • @KrzysztofMadej:在每次执行之前设置 x 位有什么意义?手动设置一次就足够了。另一种方法是使用bash ./public/scripts/test.sh 作为运行命令。在这种情况下,x 位无关紧要。
  • 关键是要有可执行文件。有多种方法可以得到这个。您的替代方案也应该有效。但是,只是 run: ./public/scripts/test.sh 不起作用。
猜你喜欢
  • 2018-07-12
  • 2019-12-21
  • 1970-01-01
  • 2017-03-08
  • 1970-01-01
  • 2017-04-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多