标签: github-actions

/github/home 是否在 github 操作之间持续存在?

到目前为止,根据文件系统文档,我的印象是(仅?)/github/workspace在操作(而不是工作流程)中持续存在:

Docker 容器的工作目录。GitHub Actions 在此目录中执行。该目录的路径在GITHUB_WORKSPACE环境变量中设置。

(...)

操作可以修改此目录的内容,后续操作可以访问该内容。

我现在有一个reprex(带有操作运行的实时存储库),显示它/github/home似乎也跨操作持续存在。

当然,我知道这些都不会在工作流程或运行中持续存在。就在行动之间。

文档(对我来说)对此有点不清楚,而且我还没有得到支持人员的答复。

从第一个操作开始记录/github/home

Running 'touch /github/home/foo'...
Successfully ran 'touch /github/home/foo'
Run Code Online (Sandbox Code Playgroud)

从第二个操作记录/github/home

Running 'ls /github/home'...
foo
Successfully ran 'ls /github/home'
Running 'rm /github/home/foo'...
Successfully ran 'rm /github/home/foo'
Run Code Online (Sandbox Code Playgroud)

这似乎表明这一点确实/github/home也持续存在,但我想确切地知道。

github github-actions

5
推荐指数
1
解决办法
1787
查看次数

如何避免为 setup-python 设置 ACTIONS_ALLOW_UNSECURE_COMMANDS?

Github Actions 的actions/setup-python步骤由于使用::set-env:and没有成功::add-path:,因为被认为不安全而被阻止(https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and -添加路径命令)。

通过ACTIONS_ALLOW_UNSECURE_COMMANDS=true为此步骤设置环境变量成功。

如何避免允许不安全的命令成功运行 Python 构建?


自定义构建的 docker 中的自托管运行器,带有 Ubuntu 20.04 基础映像。链接到 GHE 服务器 v2.22.4。

尝试使用 Python 3.9.0 和 3.9.1

工作流文件:

name: CD testing
on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

jobs:
    runs-on: [ Linux ]

    - uses: actions/checkout@v2

    - name: setup python
      uses: actions/setup-python@v2
      with:
        python-version: 3.9.0

    - name: execute py script
      run: |
        python -V
Run Code Online (Sandbox Code Playgroud)
##[debug]Found tool in cache Python 3.9.1 x64 …
Run Code Online (Sandbox Code Playgroud)

github-actions

5
推荐指数
1
解决办法
1143
查看次数

Julia:如何更新我发布的 julia 包?

我正在尝试开发我的第一个 Julia 包FeatureEng.jl,但我在更新注册表上的包时遇到了问题。

我已经设置了 GitHub 操作 TagBot 和 Register 并尝试通过 Project.toml 文件和 git 标签更新包版本,但我在 GitHub 上仍然只有一个版本(“v1.0.1”),我得到以下输出来自 TagBot:

Tag v1.0.1 already exists
Run Code Online (Sandbox Code Playgroud)

当我在自己的环境中运行我的包并检查我得到的版本时......

julia> using Pkg
julia> Pkg.activate(".")
Activating environment at `~/Desktop/code/julia/FeatureEng/Project.toml`
julia> using FeatureEng, PkgVersion
julia> PkgVersion.Version(FeatureEng)
v"1.2.7"
Run Code Online (Sandbox Code Playgroud)

但是当我在一个单独的环境中安装我的包时,从通用注册表,并运行相同的检查,我得到...

julia> PkgVersion.Version(FeatureEng)
v"1.0.1"
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?发布新的 Julia 包版本的正确方法是什么?

提前致谢!

package julia github-actions julia-pkg

5
推荐指数
1
解决办法
68
查看次数

GitHub Actions 意外的 bash 可读测试结果

移动电源

我有一个 GitHub Actions 工作流程,它最近在我没有进行更改的情况下停止工作。错误:

==> ERROR: /etc/makepkg.conf not found.
    Aborting...
Run Code Online (Sandbox Code Playgroud)

这是从运行# sudo -Eu builder makepkg --printsrcinfo

日志的顺序似乎是错误的,但在较早的日志中是正确的(可能是由于ls -l输出量大)。

此错误的来源似乎是libmakepkg/util/config.sh.in

==> ERROR: /etc/makepkg.conf not found.
    Aborting...
Run Code Online (Sandbox Code Playgroud)

我在入口点脚本中添加了以下内容:

    # Source the config file; fail if it is not found
    if [[ -r $MAKEPKG_CONF ]]; then
        source_safe "$MAKEPKG_CONF"
    else
        error "$(gettext "%s not found.")" "$MAKEPKG_CONF"
        plainerr "$(gettext "Aborting...")"
        exit $E_CONFIG_ERROR
    fi
Run Code Online (Sandbox Code Playgroud)

builder用户在创建build.sh

echo "Writing SRCINFO..."

# Debug
echo …
Run Code Online (Sandbox Code Playgroud)

linux archlinux docker github-actions

5
推荐指数
1
解决办法
191
查看次数

在 github-actions 中推送新提交(更新当前)时如何取消 PR 中的先前运行

当我将提交推送到 PR 时,我的测试会为此提交触发。之后,如果我向这个 PR 推送额外的提交,Github Actions 中的测试会在两个提交上运行。

我需要取消之前的运行并仅在最近的推送提交上运行它们。

如何配置我的 yaml 文件来实现这一目标?

git yaml github github-actions

5
推荐指数
3
解决办法
315
查看次数

Docker buildx 错误:rpc 错误:代码 = 未知描述 = 服务器消息:不足的范围:授权失败

我是 Docker 的新手,并尝试使用 GitHub Actions 执行 CI。

这是我.yml在 GitHub 上的文件。

name: CI to Docker Hub
on:
 push:
   branches: [main]
 pull_request:
   branches: [main]

jobs:
 build:

  runs-on: ubuntu-latest

   steps:
  - name: Check Out Repo
    uses: actions/checkout@v2

  - name: Login to Docker Hub
    uses: docker/login-action@v1
    with:
      username: ${{ secrets.DOCKER_HUB_USERNAME }}
      password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}

  - name: Set up Docker Buildx
    id: buildx
    uses: docker/setup-buildx-action@v1

  - name: Build and push
    id: docker_build
    uses: docker/build-push-action@v2
    with:
      context: .
      file: ./Dockerfile
      push: true
      tags: …
Run Code Online (Sandbox Code Playgroud)

continuous-integration docker github-actions buildx

5
推荐指数
1
解决办法
4057
查看次数

如何从 Github 工作流访问环境机密?

我正在尝试从 Github 工作流中将Python 包发布到 PyPI,但“Test PyPI”的身份验证失败。我从命令行成功发布到 Test PyPI,所以我的 API 令牌必须是正确的。我还检查了秘密值中的前导和尾随空格(即,在 GitHub 上)。

正如上次提交所示,我尝试了一些没有成功的事情。

我首先尝试将简单的 bash 命令内联到工作流程中,如下所示,但我无法将我的秘密放入环境变量中。当我打印这些变量时,日志中没有显示任何内容。

- name: Publish on Test PyPI 
  env:
     TWINE_USERNAME: __token__
     TWINE_PASSWORD: ${{ secrets.PYPI_TEST_TOKEN }}
     TWINE_REPOSITORY_URL: "https://test.pypi.org/legacy/"
  run: |
     echo "$TWINE_PASSWORD"
     pip install twine
     twine check dist/*
     twine upload dist/*
Run Code Online (Sandbox Code Playgroud)

我还尝试使用专用的 GitHub Action 如下,但它也不起作用。我想问题出在我的工作流程中不可用的秘密。让我感到困惑的是,我的工作流程使用另一个令牌/秘密就好了!但是,如果我将它放在环境变量中,则不会打印任何内容。我还以不同的名称(PYPI_TEST_TOKEN 和 TEST_PYPI_API_TOKEN)重新创建了我的秘密,但无济于事。

- name: Publish to Test PyPI
  uses: pypa/gh-action-pypi-publish@release/v1
  with:
    user: __token__
    password: ${{ secrets.TEST_PYPI_API_TOKEN }}
    repository_url: https://test.pypi.org/legacy/
Run Code Online (Sandbox Code Playgroud)

我想我错过了一些明显的东西(像往常一样)。任何帮助都受到高度赞赏。

python environment-variables token pypi github-actions

5
推荐指数
2
解决办法
1144
查看次数

Windows 的 Github 操作依赖项安装失败

我正在使用 Github Actions 来检查我的包。它曾经可以工作,但最近在 Windows 上安装一些依赖项失败(但不是 ubuntu 和 mac,它在我的 Windows PC 上也可以正常工作)并出现许多错误:

错误:包“MSnbase”的延迟加载失败错误:错误:loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = 中“ggplot2”的包或命名空间加载失败vI[[j]]): 错误: 延迟加载包 'caret' 失败错误: 错误: 包 'ggplot2' 无法加载

完整的日志可以在https://github.com/YasinEl/mzRAPP/runs/2612299525?check_suite_focus=true看到。有谁知道这里可能有什么问题?

r github github-actions

5
推荐指数
1
解决办法
159
查看次数

如何在 GitHub Actions 上运行 Kotlin 脚本?

我想在不依赖 Gradle 项目的情况下在 CI 中运行 Kotlin 脚本,这样我就可以轻松地执行使用 shell/bash/batch 难以编程的操作,并且在需要时可以使用库。

让 Kotlin 脚本仅在 Ubuntu/Linux 上运行很好,但理想情况下,有一种方法可以让它在 Windows 和 macOS 目标以及特定于平台的项目上运行。

kotlin github-actions kotlin-script

5
推荐指数
2
解决办法
247
查看次数

用于测试 Haskell 包的 GitHub 操作?

最近,我被 Travis CI 吸引到我的 Julia 项目的 GitHub 操作,因为我发现的所有示例操作易于配置且开箱即用,并认为我会在我的Haskell 项目中尝试相同的操作。但是我发现的所有示例 Haskell Actions都没有功能,大多数都因安全性或gcc编译器标志错误而失败,即使对于在 Travis CI 中工作的完全相同的命令也是如此。

是否有运行Haskell GitHub Actions 的示例?我怀疑我只是没有在正确的地方寻找最新的工作示例。

haskell github-actions

5
推荐指数
1
解决办法
60
查看次数