name: 测试构建 on: push: branches: [ master ] jobs: build: runs-on: ubuntu-latest name: 编译 "${{matrix.platform}} ${{matrix.version}}" strategy: fail-fast: false matrix: include: # 两行一组,删除不需要的版本 - platform: ds3615xs version: 6.2.4-25556 - platform: ds3615xs version: 7.0-41222 - platform: ds3615xs version: 7.0.1-42218 - platform: ds918p version: 6.2.4-25556 - platform: ds918p version: 7.0-41890 - platform: ds918p version: 7.0.1-42218 - platform: ds3617xs version: 7.0.1-42218 - platform: ds3622xsp version: 7.0.1-42218 - platform: ds920p version: 7.0.1-42218 - platform: ds1621p version: 7.0.1-42218 steps: - name: 检出项目文件 uses: actions/checkout@v2 - name: 缓存加速 uses: actions/cache@v2 with: path: | cache/*.pat docker/downloads/*.txz key: ${{matrix.platform}}-${{matrix.version}}-${{ hashFiles('global_config.json') }} - name: 准备构建环境 run: | ./redpill_tool_chain.sh build ${{matrix.platform}}-${{matrix.version}} - name: 配置引导镜像 run: | cp sample_user_config.json ${{matrix.platform}}_user_config.json # 调整VID和PID sed -i -e 's\0x0001\0x0002\g' -e 's\0x46f4\0x0002\g' ${{matrix.platform}}_user_config.json # 调整SN和MAC 最好使用 actions secrets 引入 sed -i -e 's\1234XXX123\0123456789\g' -e 's\XXYYXXYYXXYY\00AAAAAAAAAA\g' ${{matrix.platform}}_user_config.json # 添加第二张网卡mac并设置网卡数量 sed -i -e 's/00AAAAAAAAAA"/&,\n\t"mac2": "00BBBBBBBBBB",\n\t"netif_num": 2/' ${{matrix.platform}}_user_config.json # 调整synoinfo sed -i -e 's/"synoinfo": {},/"synoinfo": {\n\t"maxlanport": "2"\n },/' ${{matrix.platform}}_user_config.json # 添加扩展驱动 ./redpill_tool_chain.sh add https://github.com/jumkey/redpill-load/raw/develop/redpill-acpid/rpext-index.json ./redpill_tool_chain.sh add https://github.com/jumkey/redpill-load/raw/develop/redpill-virtio/rpext-index.json - name: 添加 jumkey.misc if: endsWith(matrix.version,'42218') run: | ./redpill_tool_chain.sh add https://github.com/jumkey/redpill-load/raw/develop/redpill-misc/rpext-index.json - name: 添加 jumkey.dtb !!!Create your own device tree binary!!! if: matrix.platform == 'ds920p' || matrix.platform == 'ds1621p' run: | ./redpill_tool_chain.sh add https://github.com/jumkey/redpill-load/raw/develop/redpill-dtb/rpext-index.json echo '!!!Create your own device tree binary!!!' echo 'see https://github.com/jumkey/redpill-load/blob/develop/redpill-dtb/README.md' - name: 编译引导镜像 run: ./redpill_tool_chain.sh auto ${{matrix.platform}}-${{matrix.version}} - name: 上传引导镜像到 github actions uses: actions/upload-artifact@v2 with: name: dsm-${{matrix.platform}}-${{matrix.version}} path: images/redpill-DS[39]*.img if-no-files-found: error - name: 删除旧的工作流 uses: Mattraks/delete-workflow-runs@v2 with: token: ${{ github.token }} repository: ${{ github.repository }} retain_days: 3 keep_minimum_runs: 6