标签: github-actions

如何使用python以github操作的格式将字符串列表写入yaml文件

pythonyaml包(版本 5.1.2)能够正确加载以下文件,即使该列表不是用前导编写的-

xx: [x1, x2]
yy: [y1, y2, y3]
Run Code Online (Sandbox Code Playgroud)

加载代码如下

import yaml

with open('some file') as f:
    data = yaml.load(f, Loader=yaml.FullLoader)
Run Code Online (Sandbox Code Playgroud)

此格式用于 github actions 配置 yaml 文件。例如,

on: [push, pull_request]

jobs:
  build:

    runs-on: ubuntu-latest
    strategy:
      matrix:
        python-version: [2.7, 3.5, 3.6, 3.7, 3.8]
        os: [ubuntu-16.04, ubuntu-18.04]
        node: [6, 8, 10]
Run Code Online (Sandbox Code Playgroud)

但是当我data使用 写入文件时yaml.dump(data, f),它采用-约定,即

xx:
- x1
- x2
yy:
- y1
- y2
- y3
Run Code Online (Sandbox Code Playgroud)

有没有办法强制它变成类似 github-actions 的格式?

有人告诉我default_flow_style,但它并没有给出我想要的。

yaml.dump({"A":[1,2,3],"B":[4,5,6]},default_flow_style=True) …
Run Code Online (Sandbox Code Playgroud)

python formatting yaml github-actions

3
推荐指数
1
解决办法
9437
查看次数

Github Action 中的 Git 历史记录

我想在 Github Action 中记录 git 历史记录。但 Action 的环境似乎有所不同:

echo $(git log -5 --oneline)
Run Code Online (Sandbox Code Playgroud)

外壳:/bin/bash -e {0}

7c0faa6 将 c245982a87ef5538d42ab905706faa08f4d67ce9 合并到 8a939ef1f71eaecac0ae52d625dad3e3c9fa4c16

这不是 git 日志,并且这些哈希值都不与我的存储库中的内容匹配。

这是为什么?

如何从 Github Action 的环境访问提交历史记录?

git continuous-integration github-actions

3
推荐指数
1
解决办法
3927
查看次数

禁用 Github Actions 检查从注释文件运行

寻找一种方法来禁用 Github Actions 检查从注释文件运行。

/* 上下文 - 处理 eslint 工作流程操作来评论 PR,因为默认情况下运行注释所有文件的此检查很烦人 */

参考 PR- https://github.com/tamdilip/ember_poc/pull/143/files

annotations github github-actions github-check-run

3
推荐指数
1
解决办法
3570
查看次数

github 操作 - npm 安装失败并退出代码 1

我正在尝试使用 github 操作将我的 npm 应用程序部署到 azure。运行 npm install 时出现错误,退出代码为 1.v 这是抛出的错误...

 npm install, build, and test5s
##[error]Process completed with exit code 1.

> ejs@3.1.3 postinstall /home/runner/work/readbetter/readbetter/node_modules/ejs
> node --harmony ./postinstall.js

npm notice created a lockfile as package-lock.json. You should commit this file.
added 133 packages from 70 contributors and audited 133 packages in 3.913s

1 package is looking for funding
  run `npm fund` for details

found 0 vulnerabilities


> readbetter@1.0.0 test /home/runner/work/readbetter/readbetter
> echo "Error: no test specified" && exit …
Run Code Online (Sandbox Code Playgroud)

github npm github-actions

3
推荐指数
1
解决办法
1万
查看次数

使用 Github Actions 进行部署

我使用Github作为我的源代码管理,并使用Github Actions作为我的 CI/CD 解决方案。我在某处有一个专用的 Windows Server,它接受我的存储库的已发布版本。

我有一个 Github Action,它可以进行构建、测试、发布和部署(使用 FTP)。我不相信“部署”的想法。例如,假设我的网站有一个巨大的代码库,然后每次我们进行提交(推送)时进行 FTPing 并不是一个富有成效的想法(我正在发布已发布的目录......而不是我的服务器的源代码)。有时,由于 IIS 锁定文件,FTPing 根本不起作用。使用 Github Actions(或任何其他提供商)将文件发布/部署到远程服务器的最可靠方法是什么。

下面是我的示例 Yaml 文件...

name: .NET Core

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2
    - name: Setup .NET Core
      uses: actions/setup-dotnet@v1
      with:
        dotnet-version: 2.1
    - name: Install dependencies
      run: dotnet restore
    - name: Build
      run: dotnet build --configuration Release --no-restore
    - name: Test …
Run Code Online (Sandbox Code Playgroud)

github continuous-deployment asp.net-core github-actions

3
推荐指数
1
解决办法
9137
查看次数

如何获取 GitHub Pull 请求 ID 号

有没有办法获取 Github\xe2\x80\x99s 拉取请求编号(例如 PR #323 )并将其设置到 Github Actions\xe2\x80\x99s 环境变量(没有主题标签)中?

\n
env:\nGITHUB_PR_NUMBER: 323\n
Run Code Online (Sandbox Code Playgroud)\n

github-actions

3
推荐指数
1
解决办法
5966
查看次数

如何通过 SSH 从 Github Action 执行命令到白名单服务器?

我在尝试使用 Github Action 将 CI/CD 应用到我们的项目时遇到了问题。服务器有防火墙,仅允许对列出的 IP 进行访问。

我找到了一个使用 Github meta api https://api.github.com/meta的方法,但他们拒绝申请。

还有其他方法可以应用这个吗?

我们目前的ci.yml

name: remote ssh
on:
  push:
    branches: [ master ]

jobs:
  build:
    name: Build
    runs-on: ubuntu-latest
    steps:
      - name: execute ssh command via using private key
        uses: appleboy/ssh-action@master
        with:
          host: ${{ secrets.REMOTE_HOST }}
          username: ${{ secrets.REMOTE_USER }}
          key: ${{ secrets.CICD_SSH_KEY }}
          port: ${{ secrets.PORT }}
          script:
            pwd
Run Code Online (Sandbox Code Playgroud)

continuous-deployment github-actions

3
推荐指数
1
解决办法
6251
查看次数

使用 Github Actions 编辑 JSON 数组内的值

我有一个像这样的 JSON 存储在执行我的 Github 操作的文件夹/路径中 -

{
   "version":"1",
   "sampleArray":[
      {
         "id":"1"
      }
   ],
   "secondArray":[
      {
         "secondId":"2"
      }
   ]
}
Run Code Online (Sandbox Code Playgroud)

使用 Github 操作如何编辑值,id例如:将id值设置为“5”,sampleArray以便我的 JSON 具有更新的值?

javascript continuous-integration json github github-actions

3
推荐指数
1
解决办法
5989
查看次数

Maven 构建中的 -B 开关有什么作用?我在 GitHub Actions 中看到它,但在其他地方没有看到它

我正在使用 GitHub Actions,对于每个 GitHub Actions Maven 项目,我看到构建文件都使用了一个-B package开关。

run: mvn -B package --file pom.xml
Run Code Online (Sandbox Code Playgroud)

Maven 标准开关还是 GitHub Actions 功能?

我假设 -B 只是代表构建?批?但通过谷歌搜索,甚至查看 Apache Maven 文档,我没有看到该-B开关的记录。我所有的搜索只是带我回到其他使用该开关的 GitHub Actions YAML 页面,但没有对其进行描述。

任何人都可以澄清该开关的含义-B package,并可能提供一些相关文档的链接吗?

java continuous-integration maven-plugin maven github-actions

3
推荐指数
1
解决办法
5701
查看次数

从 github 操作部署 Azure 函数会导致“错误:无法获取 Kudu 应用程序设置。错误请求(代码:400)”

我在尝试从 GitHub Action 部署 Azure Function 应用程序时遇到错误。

错误是

##[Initialize]
##[ValidateParameter]
##[ValidateAzureResource]
Using SCM credential for authentication, GitHub Action will not perform resource validation.
Run Code Online (Sandbox Code Playgroud)

错误:执行异常(状态:ValidateAzureResource)(步骤:调用)
错误:在 ValidateAzureResource 请求 Azure 资源时,获取函数应用程序设置:无法获取应用程序设置 (SCM)
错误:无法获取 Kudu 应用程序设置。
错误请求(代码:400)
错误:无法获取 Kudu 应用程序设置。
错误请求(代码:400)

在库杜。(D:\a_actions\Azure\functions-action\v1\node_modules\azure-actions-appservice-rest\Kudu\azure-app-kudu-service.js:62:23)
在 Generator.next () 处
已完成 (D :\a_actions\Azure\functions-action\v1\node_modules\azure-actions-appservice-rest\Kudu\azure-app-kudu-service.js:5:58)
在 processTicksAndRejections (内部/process/task_queues.js:93) :5)
错误:部署失败!

几个月来,它一直以完全相同的方式工作——我已经使用它进行了数百次部署,但在过去的几天里,它开始失败(跨多个存储库)。

它与这个问题非常相似,但是当我添加该问题的“变体”时,我被践踏并被告知要添加为一个新问题 - 所以我们就在这里。

我的情况的不同之处在于,我没有使用发布配置文件(至少没有明确地),而是使用服务主体凭证。如果这不是在幕后使用发布配置文件,我不会感到惊讶(这就是为什么我认为我的问题是上面问题的变体)。

非常重要的是,我的部署过程中没有任何手动步骤 - 因此我确实需要为此找到一个完全自动化的解决方法。我正要去搜寻 GitHub 操作的代码,但与此同时,有人知道如何立即解决这个问题吗?

azure-functions github-actions

3
推荐指数
1
解决办法
5235
查看次数