标签: github-actions

如何在 GitHub 工作流程中安排和推送/拉请求事件?

如果触发 Push/pull_request 事件或触发计划事件时,我想运行工作流程...

这是我的错误(语法问题).github/workflows/docker.yml

name: Docker

on: [push, pull_request]
  schedule:
    # min hours day(month) month day(week)
    - cron: '0 0 */5 * *'

...
Run Code Online (Sandbox Code Playgroud)

不幸的是这个语法是错误的,错误如下:

Invalid workflow file
You have an error in your yaml syntax on line 3
Run Code Online (Sandbox Code Playgroud)

github github-actions

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

如何使用 Github Actions 进行 SFTP?

当我推送到 Github 时,我想使用 Github 操作通过 SFTP 将文件传输到远程服务器(此服务器的唯一选项)。

我正在使用此操作https://github.com/marketplace/actions/ftp-deploy

我在我的存储库中创建了一个文件,.github/workflows/main.yml并添加了:

on: push
name: Publish Website
jobs:
  FTP-Deploy-Action:
    name: FTP-Deploy-Action
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2.1.0
      with:
        fetch-depth: 2
    - name: FTP-Deploy-Action
      uses: SamKirkland/FTP-Deploy-Action@3.1.1
      with:
        ftp-server: ${{ secrets.FTP_SERVER }}
        ftp-username: ${{ secrets.FTP_USERNAME }}
        ftp-password: ${{ secrets.FTP_PASSWORD }}
Run Code Online (Sandbox Code Playgroud)

我为此存储库创建了一个 Secret,其中包含以下内容:

FTP_SERVER: sftp.server.com, FTP_USERNAME: user, FTP_PASSWORD: password
Run Code Online (Sandbox Code Playgroud)

我可以看到 Github 中正在运行的操作,但FTP-Deploy-Action任务出错了。

##[错误]需要输入但未提供:ftp-server

这是秘密的,并且可以与 Filezilla 配合使用。

有人知道我是否设置错误吗?

sftp github github-actions

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

使用特定节点版本通过 Azure 部署静态 Web 应用程序

我正在尝试使用 Azure 服务和 Github Actions 来部署静态 Web 应用程序。

问题是,我需要使用 NodeJS 运行脚本。我正在使用 ESM 模块,这些模块在 Node v14 中运行良好。问题是,在构建任务期间,Azure(或github)使用v12.8(我猜是LTS),其中不支持ESM模块。

name: Azure Static Web Apps CI/CD

on:
  push:
    branches:
      - master
  pull_request:
    types: [opened, synchronize, reopened, closed]
    branches:
      - master

jobs:
  build_and_deploy_job:

    if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed')

    runs-on: ubuntu-latest

    name: Build and Deploy Job

    steps:

      - uses: actions/checkout@v2
        with:
          submodules: true

      - name: Build And Deploy
        id: builddeploy
        uses: Azure/static-web-apps-deploy@v0.0.1-preview
        with:
          azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_LEMON_GLACIER_0C510BD03 }}
          repo_token: ${{ …
Run Code Online (Sandbox Code Playgroud)

azure node.js github-actions

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

GitHub Actions:仅针对某些拉取请求基础分支运行步骤

我已经在 GitHub Actions 上工作了一段时间了,我们已经制定了指定的工作流程。工作流程是用 yaml 编写的。

我试图ifgithub.ref和 yaml 的块设置一些条件,该块在运行时被跳过。这意味着 - 如果针对 X 分支提出拉取请求 - 该代码块应该运行。

像这样的东西:

 
      - name: Branch name check - Running only for DEV branch.. 
        if: ${{contains(github.ref, 'DEV*')}}
        uses: mathrix-education/sonar-scanner@master

        with:
          version: 4.2.0.1873 # required
          typescript: false
          scan: true

Run Code Online (Sandbox Code Playgroud)

谁能帮我解决这个问题吗?

yaml github sonarqube github-actions

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

使用 wxpython 对拉取请求进行 github 操作

我正在尝试设置一个 Github 操作来测试使用 wxPython 的 python 应用程序,但我不知道如何设置,以免 wxPython 无法构建并出现 GTK3 错误:

这是操作文件:

on:
  pull_request:
    branches:
      - development
jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v1
    - name: Set up Python 3.7
      uses: actions/setup-python@v1
      with:
        python-version: 3.7

    # pip install wheel
    - name: Install Requirements
      run: |
       sudo apt-get update -q && sudo apt-get install
       sudo apt-get install python-wxgtk3.0
       python -m pip install --upgrade pip
       pip install jsonschema
       pip install pylint
       pip install twisted
       pip install wheel
       pip install -U wxpython …
Run Code Online (Sandbox Code Playgroud)

wxpython github github-actions

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

github 操作 npm run build 不工作,但在本地工作

我们的团队创建了一个 React Web 应用程序,并希望使用 github Action 将项目推送到 Kubernetes。这是 Dockerfile:

### STAGE 1: Build ###
FROM node:14.5.0 as build

RUN mkdir -p /src/app
WORKDIR /src/app

# Install app dependencies
COPY package.json /src/app/
RUN npm install && \
    npm install -g pushstate-server

# Bundle app source
COPY . /src/app

# Build and optimize react app
RUN npm run build:staging

### STAGE 2: Production Environment ###
FROM nginx:1.19.2
COPY nginx.conf /etc/nginx/conf.d/default.conf
COPY --from=build /src/app/build /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Run Code Online (Sandbox Code Playgroud)

当我使用命令在本地运行 …

npm docker reactjs github-actions

5
推荐指数
0
解决办法
4045
查看次数

关于 terraform 和 github 操作/秘密的问题

我开始学习 terraform/github 操作。作为 Github 操作的一部分,是否可以让 TF 读取 Github 机密?例如 ..

我的 main.tf 文件创建一个 AWS EC2 实例,并且需要使用配置程序安装 nginx。为此,我需要向provisoner提供我的私钥/公钥信息,以便它对EC2实例进行身份验证以安装应用程序。我创建了一个 github 秘密,其中包含我的私钥。

目前,工作流程一直失败,因为我无法让它读取包含私钥信息的 github 秘密。

我怎样才能做到这一点?

任何建议将非常受欢迎!谢谢

terraform github-actions

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

如何通过 github actions 部署 firebase 函数?

在我的项目中,其文件夹结构如下所示:

dev-internal-web
-.firebase
-.github
-e2e
-functions
-node_modules
-src
(misc files)
Run Code Online (Sandbox Code Playgroud)

我有一个函数文件夹,其中包含 firebase 函数。我希望通过我的操作脚本自动部署它,如下所示:

name: CI

on:
  push:
    branches:
    - master

jobs:
  hosting-deploy:
    name: Deploy Hosting
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@master
    - uses: actions/setup-node@master
      with:
        node-version: '10.x'
    - run: npm install
    - run: npm run build
    - uses: w9jds/firebase-action@master
      with:
        args: deploy --only hosting --project=tombstone-roleplay
      env:
        FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}

  functions-deploy:
      name: Deploy Functions
      runs-on: ubuntu-latest

      steps:
      - uses: actions/checkout@master
      - uses: chrissank/deploy-firebase-functions@1.0.0
        env:
          FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
          TARGET: default …
Run Code Online (Sandbox Code Playgroud)

npm firebase google-cloud-functions firebase-cli github-actions

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

使用 Octokit API 从 GitHub Actions 获取最新的工作流程运行

我正在使用Octokit API来请求特定的工作流程运行。我可以在文档中看到,我可以通过提供工作流运行 ID 来请求特定的工作流运行。不过,我希望始终请求运行最新的工作流程。如果我不知道 ID 是什么,我该如何实现这一目标?

例如,这里的值workflow-run-latest总是在变化。

octokit.actions.getWorkflowRun({
    owner: owner,
    repo: repo-name,
    run_id: workflow-run-latest,
});
Run Code Online (Sandbox Code Playgroud)

谢谢!

github github-api octokit github-actions

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

在 GitHub Actions 中缓存通过 CMake FetchContent 获取的源代码

我有一个基于 CMake 的项目,其中我严重依赖FetchContent来检索多个库(源代码)。下载所有库可能需要一些时间,我想在 CI 运行器上进行编译时节省时间(GitHub Actions)。

我看到有一个缓存操作,如何使用它来缓存获取的源代码?

作为奖励,缓存这些获取的库的​​编译代码也可能会有所帮助。有可能吗?

cmake github-actions

5
推荐指数
0
解决办法
1192
查看次数