我试图让它发挥作用,但我也很困惑,在触发彼得埃文斯公关之前,它之间缺少什么。
这个场景非常简单,我喜欢在任何 feature/* 分支上推送,自动创建 PR,但相反,我遇到了奇怪的场景,其中开发更改应用于 feature/* 分支之上。有人可以给我提示吗?
name: Pull Request Action
on:
push:
branches:
- feature/*
jobs:
create-pull-request:
runs-on: ubuntu-latest
steps:
- name: Check out repository code
uses: actions/checkout@v2
with:
fetch-depth: 0
ref: develop
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3.10.0
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: Simple demo
title: '[Example] Simple demo'
body: >
This PR is auto-generated by
[create-pull-request](https://github.com/peter-evans/create-pull-request).
labels: feature, automated pr
branch: feature/workflow-demo
Run Code Online (Sandbox Code Playgroud) 我有一个 GitHub 工作流程,可以为我的 Flutter 应用程序创建 APK。直到最近这一切都很好,我似乎已经耗尽了某种配额。现在,当工作流程运行时,我收到此错误:
Create Artifact Container failed: Artifact storage quota has been hit. Unable to upload any new artifacts
Run Code Online (Sandbox Code Playgroud)
我认为删除所有工件会再次释放空间,因此我使用了另一个工作流程来实现此目的:
name: 'Delete old artifacts'
on:
push:
branches:
- master
- develop
pull_request:
branches:
- master
- develop
jobs:
delete-artifacts:
runs-on: ubuntu-latest
steps:
- uses: kolpav/purge-artifacts-action@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
expire-in: 0days
Run Code Online (Sandbox Code Playgroud)
新的工作流程似乎正在运行,我不再在 GitHub UI 中看到旧文件。但是,在尝试运行 APK 工作流程时我仍然收到错误。有什么想法如何修复这个错误吗?
更新:
我有以下 GitHub Actions 配置文件(为简单起见,删除了部分内容)。
name: CI
on: push
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [8.x, 10.x, 12.x, 13.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm test
Run Code Online (Sandbox Code Playgroud)
我遇到的主要问题是 Node.js 版本 8 的测试失败了。但其余的都成功了。在这种情况下,如果一项作业失败,GitHub Actions 往往会取消所有作业。
有没有一种方法可以改变这种行为,以便所有作业即使出现故障也将继续运行?这有助于查明特定版本的问题。
我正在尝试深入研究 GitHub 操作,等等 .ylm 文件,并了解我想回显一些环境变量的过程,例如${{ github.repository }}或或类似或任何其他的${{ github.repository_owner }}事件秘密,并在输出中我'${{ secrets.GITHUB_TOKEN }}我得到了***。
有没有办法强制输出显示实际值而不是星号?
开发者ylm
name: Dev
on:
workflow_dispatch:
push:
branches:
- dev
env:
BUILD_TYPE: core
DEFAULT_PYTHON: 3.8
jobs:
any_name:
runs-on: ubuntu-latest
steps:
- name: Any Name Bash Test Step
shell: bash
run: |
echo "GH_REPO: $GH_REPO"
echo "GH_REPO_O: $GH_REPO_O"
echo "GH_T: $GH_T"
env:
GH_REPO: ${{ github.repository }}
GH_REPO_O: ${{ github.repository_owner }}
GH_T: ${{ secrets.GITHUB_TOKEN }}
Run Code Online (Sandbox Code Playgroud)
输出
Run echo "GH_REPO: $GH_REPO"
echo "GH_REPO_O: $GH_REPO_O" …Run Code Online (Sandbox Code Playgroud) 我有一个用于服务器和前端的 Github 存储库。目录结构如下:
root
|- frontend
|- server (Express App)
Run Code Online (Sandbox Code Playgroud)
GitHub 操作:
root
|- frontend
|- server (Express App)
Run Code Online (Sandbox Code Playgroud)
我只有一项工作来构建 Express 服务器(还不是前端),所以我working-directory将./server. 但是,我仍然收到错误:
Dependencies lock file is not found in /home/{username}/runners.../repository_name. Supported file patterns: package-lock.json,yarn.lock
Run Code Online (Sandbox Code Playgroud)
所以显然它并没有试图跑进去.../reposirtoy_name/server。
我只是想在单个 Github 操作中构建服务器和前端。
我想使用 Github Actions 将文件推送到当前存储库。
我已经写了一个使用官方actions/checkout@v3操作的基本配置。我的配置与自述文件示例中几乎相同:
name: Example
on: workflow_dispatch
jobs:
example:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- shell: bash
run: |
date > 1.txt
git config user.name github-actions
git config user.email github-actions@github.com
git add 1.txt
git commit -m updated
git push
Run Code Online (Sandbox Code Playgroud)
此配置适用于除 Github Pages 存储库之外的任何存储库。错误是:
remote: Permission to sirekanian/sirekanian.github.io.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sirekanian/sirekanian.github.io/': The requested URL returned error: 403
Error: Process completed with exit code 128.
Run Code Online (Sandbox Code Playgroud)
为什么 GitHub Pages 存储库与普通存储库不同?GitHub Pages …
我正在为项目存储库设置 Github Actions。
工作流程包括以下步骤:
但是,我有两种不同的 Kubernetes 部署:一种用于开发,一种用于生产。因此,我还有两个 Github Action 工作流。
每次推送提交时都会触发用于开发的 Github Action 工作流:
on:
push:
branches:
- master
Run Code Online (Sandbox Code Playgroud)
但我不希望在我的生产工作流程中出现这种情况。我需要一个手动触发器,比如发送到生产按钮。我在文档中没有看到任何与此接近的内容。
有没有办法在 Github Actions 中手动触发工作流?
我如何在 Github Actions、Docker 或 Kubernetes 上拆分我的开发和生产工作流以实现我想要的?
Github 操作是否可以上传构建工件以在发布分支上提交,然后让另一个工作流程下载并使用该工件?
name: Deploy release to UAT & archive artifact
on:
release:
types: [published]
jobs:
package:
name: package and archive
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '12'
- name: serverless package
uses: serverless/github-action@master
with:
args: package --stage=prod
- name: Upload Release Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: .serverless
asset_name: release-asset-${{ github.event.release.name }}.zip
asset_content_type: application/zip
- name: Upload Artifact
uses: actions/upload-artifact@v2
with:
name: release-artifact-${{ github.event.release.name }}
path: .serverless …Run Code Online (Sandbox Code Playgroud) 我开始学习 github actions(从 jenkins piplines 转换)。我对 yaml 不是很熟悉。
我无法弄清楚何时或为何应使用双花括号与单花括号引用变量。我感觉这里有一个重要的区别......你能告诉我吗?
name: sample
on:
workflow_dispatch
env:
MY_VAR: "something"
jobs:
do_things:
runs-on: ubuntu-latest
steps:
- name: "Step 1"
run: echo "${MY_VAR}"
- name: "Step 2"
run: echo "${{env.MY_VAR}}"
Run Code Online (Sandbox Code Playgroud)
我目前正在尝试运行 docker GitHub Action,它会构建 docker 映像并将其推送到 GitHub Packages,但我收到了一个我从未见过的错误。由于某种原因,它无法推送 docker 映像,因为write_permission被拒绝,但我有一个令牌允许我写入,所以我不明白问题是什么。
这是我的操作文件:
name: Docker Image CI
on:
workflow_dispatch:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 16
uses: actions/setup-java@v1
with:
java-version: 16
- name: Build with Maven
run: mvn -f ACS/pom.xml clean install dependency:copy-dependencies
- name: Login to GitHub Package Registry
run: echo ${{ secrets.GITHUB_TOKEN }} | docker login docker.pkg.github.com -u ${{ github.repository }} …Run Code Online (Sandbox Code Playgroud) github-actions ×10
github ×6
docker ×2
git-push ×1
github-pages ×1
kubernetes ×1
pull-request ×1
workflow ×1