| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- name: Build host tools
- on:
- workflow_call:
- inputs:
- generate_prebuilt_artifacts:
- type: boolean
- permissions:
- contents: read
- jobs:
- build:
- name: Build tools
- runs-on: ubuntu-latest
- container: registry.gitlab.com/openwrt/buildbot/buildworker-3.4.1
- steps:
- - name: Checkout
- uses: actions/checkout@v3
- with:
- path: openwrt
- - name: Fix permission
- run: chown -R buildbot:buildbot openwrt
- - name: Set configs for tools container
- shell: su buildbot -c "sh -e {0}"
- working-directory: openwrt
- run: |
- touch .config
- echo CONFIG_DEVEL=y >> .config
- echo CONFIG_AUTOREMOVE=y >> .config
- echo CONFIG_CCACHE=y >> .config
- - name: Make prereq
- shell: su buildbot -c "sh -e {0}"
- working-directory: openwrt
- run: make defconfig
- - name: Build tools
- shell: su buildbot -c "sh -e {0}"
- working-directory: openwrt
- run: make tools/install -j$(nproc) BUILD_LOG=1 || ret=$? .github/workflows/scripts/show_build_failures.sh
- - name: Upload logs
- if: always()
- uses: actions/upload-artifact@v3
- with:
- name: linux-buildbot-logs
- path: openwrt/logs
- - name: Upload config
- if: always()
- uses: actions/upload-artifact@v3
- with:
- name: linux-buildbot-config
- path: openwrt/.config
- - name: Archive prebuilt tools
- if: inputs.generate_prebuilt_artifacts == true
- shell: su buildbot -c "sh -e {0}"
- working-directory: openwrt
- run: tar -cf tools.tar staging_dir/host build_dir/host
- - name: Upload prebuilt tools
- if: inputs.generate_prebuilt_artifacts == true
- uses: actions/upload-artifact@v3
- with:
- name: linux-buildbot-prebuilt-tools
- path: openwrt/tools.tar
- retention-days: 1
|