packages.yml 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. name: Build all core packages
  2. on:
  3. pull_request:
  4. paths:
  5. - '.github/workflows/build.yml'
  6. - '.github/workflows/packages.yml'
  7. - 'config/**'
  8. - 'include/**'
  9. - 'package/**'
  10. - 'target/linux/generic/**'
  11. - 'toolchain/**'
  12. push:
  13. paths:
  14. - '.github/workflows/build.yml'
  15. - '.github/workflows/packages.yml'
  16. - 'config/**'
  17. - 'include/**'
  18. - 'package/**'
  19. - 'target/linux/generic/**'
  20. - 'toolchain/**'
  21. branches-ignore:
  22. - master
  23. permissions:
  24. contents: read
  25. concurrency:
  26. group: ${{ github.workflow }}-${{ github.ref }}
  27. cancel-in-progress: ${{ github.event_name == 'pull_request' }}
  28. jobs:
  29. build:
  30. name: Build Packages with external toolchain
  31. permissions:
  32. contents: read
  33. packages: read
  34. actions: write
  35. strategy:
  36. fail-fast: False
  37. matrix:
  38. include:
  39. - target: malta
  40. subtarget: be
  41. - target: x86
  42. subtarget: 64
  43. uses: ./.github/workflows/build.yml
  44. with:
  45. container_name: toolchain
  46. target: ${{ matrix.target }}
  47. subtarget: ${{ matrix.subtarget }}
  48. build_kernel: true
  49. build_all_kmods: true
  50. build_all_modules: true
  51. build_full: true
  52. ccache_type: packages
  53. upload_ccache_cache: ${{ github.repository_owner == 'openwrt' }}
  54. upload-ccache-cache-in-s3:
  55. if: github.event_name == 'push' && github.repository_owner == 'openwrt'
  56. name: Upload ccache cache to s3
  57. needs: build
  58. strategy:
  59. fail-fast: False
  60. matrix:
  61. include:
  62. - target: malta
  63. subtarget: be
  64. - target: x86
  65. subtarget: 64
  66. secrets:
  67. s3_access_key: ${{ secrets.GCS_S3_ACCESS_KEY }}
  68. s3_secret_key: ${{ secrets.GCS_S3_SECRET_KEY }}
  69. uses: ./.github/workflows/upload-file-s3.yml
  70. with:
  71. endpoint: https://storage.googleapis.com
  72. bucket: openwrt-ci-cache
  73. download_id: ${{ matrix.target }}-${{ matrix.subtarget }}-ccache-cache
  74. filename: ccache-packages-${{ matrix.target }}-${{ matrix.subtarget }}.tar