name: Build on: workflow_dispatch: schedule: - cron: '0 0 * * 0' # at midnight of each sunday push: branches: - main jobs: build-rustfs: runs-on: ubuntu-latest strategy: matrix: variant: - { profile: dev, target: x86_64-unknown-linux-gnu, glibc: "default" } - { profile: release, target: x86_64-unknown-linux-gnu, glibc: "default" } - { profile: release, target: x86_64-unknown-linux-gnu, glibc: "2.31" } steps: - uses: actions/checkout@v4 - uses: ./.github/actions/setup with: cache-shared-key: rustfs.${{ matrix.variant.profile }}.${{ matrix.variant.target }}.${{ matrix.variant.glibc }} - name: Build run: | ./scripts/build.py \ --profile ${{ matrix.variant.profile }} \ --target ${{ matrix.variant.target }} \ --glibc ${{ matrix.variant.glibc }} - uses: actions/upload-artifact@v4 with: name: rustfs.${{ matrix.variant.profile }}.${{ matrix.variant.target }}.${{ matrix.variant.glibc }} path: ./target/artifacts/* merge: runs-on: ubuntu-latest needs: build-rustfs steps: - uses: actions/upload-artifact/merge@v4 with: name: rustfs delete-merged: true