找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 210|回复: 3

有没有github action的大佬帮忙看看input输入为什么不对

[复制链接]
悬赏100恩山币未解决
本帖最后由 欧哈哈哈 于 2023-2-19 22:27 编辑

自己瞎写的github自动编译,但是卡在矩阵并行编译多个固件的地方了。
action文件在这里,看到帖子时可能已经多次尝试修改

问题出在这一部分:

on:
  repository_dispatch:
  workflow_dispatch:
    inputs:
      devices:
        description: 'select device'
        default: '["x86_64","cr660x"]'

      clean:
        description: 'clean ccache'
        default: 'false'
jobs:
  create-matrix:
    runs-on: ubuntu-latest
    name: Create Matrix
    steps:
      - name: Set Matrix
        id: set-matrix
        env:
          MATRIXS: ${{ github.event.inputs.devices }}
        run: |
          if [ -z $MATRIXS ]; then
            MATRIXS='["x86_64","newifi-d2","cr660x","psg1218a"]'

          fi
          echo "matrix=$MATRIXS" >> $GITHUB_OUTPUT
    outputs:
      matrix: ${{ steps.set-matrix.outputs.matrix }}


标红部分,默认定义了需要编译的固件,但是橙色部分github.event.inputs.devices无法正常赋值给MATRIXS,run部分添加MATRIXS=${{ github.event.inputs.devices }}也只能获取到空值而不读取inputs部分的defalut默认值,从而if判断无变量,then直接赋值全部固件编译。


但是,如果在手动出发run workflow的时候,在对话框手动输入一次["x86_64","newifi-d2","cr660x"],if那句就能正确读取到相应值然后并行编译这几项而不编译psg1218a。
即,问题是手动输入可以正常识别,而不做修改按照默认无法识别



我的恩山、我的无线 The best wifi forum is right here.
按照我的理解repository_dispatch和workflow_dispatch是两个不同的事件,因此你手动输入可以触发是命中了workflow_dispatch事件,而这个事件你是配置了参数的,所以能正常编译.而repository_dispatch不能正常编译,那是你没有配置相关的参数,你可以试下把你标红的部分复制一份到repository_dispatch下面,然后看看

点评

还是不行。。我换了个思路,既然默认没法赋值,我在橙色部分就只写常用的MATRIXS='["x86_64""cr660x"]',需要编译其他的时候手动输入就行了,是能识别的  详情 回复 发表于 2023-2-21 18:38
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
wzmlove1121 发表于 2023-2-21 11:01
按照我的理解repository_dispatch和workflow_dispatch是两个不同的事件,因此你手动输入可以触发是命中了wor ...

还是不行。。我换了个思路,既然默认没法赋值,我在橙色部分就只写常用的MATRIXS='["x86_64""cr660x"]',需要编译其他的时候手动输入就行了,是能识别的

点评

好吧,我去看了下官方的文档,这个repository_dispatch事件是不会被你的定时任务触发的,这个事件需要使用HTTP请求并携带参数才能实现,可以参考:https://havee.me/linux/2020-06/manually-trigger-workflow-for-github.  详情 回复 发表于 2023-2-22 11:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

欧哈哈哈 发表于 2023-2-21 18:38
还是不行。。我换了个思路,既然默认没法赋值,我在橙色部分就只写常用的MATRIXS='["x86_64""cr660x"]', ...

好吧,我去看了下官方的文档,这个repository_dispatch事件是不会被你的定时任务触发的,这个事件需要使用HTTP请求并携带参数才能实现,可以参考:https://havee.me/linux/2020-06/m ... low-for-github.html
如果想通过定时任务来传递参数,我看官网文档是没有提供的,这个就需要你去研究一下了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-5-2 08:02

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表