mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 12:02:48 +01:00
Merge #6401: ci: deduplicate depends building
2f18c1af30
ci: deduplicate depends building (pasta) Pull request description: ## Issue being fixed or feature implemented Currently we build the same host / options multiple times. Don't do this! ## What was done? Now building depends only twice ## How Has This Been Tested? Local CI appears to be working ## Breaking Changes None ## Checklist: _Go over all the following points, and put an `x` in all the boxes that apply._ - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: kwvg: utACK2f18c1af30
UdjinM6: utACK2f18c1af30
Tree-SHA512: 67460508a2e9458152f7c8bb5f4a1a786aedcfded0e5c54fb03d85010ba8bb87362b66a0c322b51aeba75752e36418fc235d8dc4197ef10695e234ccc5a00a39
This commit is contained in:
parent
7ca56632cf
commit
66f67879dc
70
.github/workflows/build.yml
vendored
70
.github/workflows/build.yml
vendored
@ -25,7 +25,6 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
ref: ${{ github.event.pull_request.head.sha }}
|
ref: ${{ github.event.pull_request.head.sha }}
|
||||||
|
|
||||||
|
|
||||||
- name: Prepare
|
- name: Prepare
|
||||||
id: prepare
|
id: prepare
|
||||||
run: |
|
run: |
|
||||||
@ -68,18 +67,6 @@ jobs:
|
|||||||
host: arm-linux-gnueabihf
|
host: arm-linux-gnueabihf
|
||||||
- build_target: linux64
|
- build_target: linux64
|
||||||
host: x86_64-pc-linux-gnu
|
host: x86_64-pc-linux-gnu
|
||||||
- build_target: linux64_tsan
|
|
||||||
host: x86_64-pc-linux-gnu
|
|
||||||
- build_target: linux64_ubsan
|
|
||||||
host: x86_64-pc-linux-gnu
|
|
||||||
- build_target: linux64_fuzz
|
|
||||||
host: x86_64-pc-linux-gnu
|
|
||||||
- build_target: linux64_cxx20
|
|
||||||
host: x86_64-pc-linux-gnu
|
|
||||||
- build_target: linux64_sqlite
|
|
||||||
host: x86_64-pc-linux-gnu
|
|
||||||
- build_target: linux64_nowallet
|
|
||||||
host: x86_64-pc-linux-gnu
|
|
||||||
|
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/${{ needs.build-image.outputs.repo-name }}/dashcore-ci-runner:${{ needs.build-image.outputs.image-tag }}
|
image: ghcr.io/${{ needs.build-image.outputs.repo-name }}/dashcore-ci-runner:${{ needs.build-image.outputs.image-tag }}
|
||||||
@ -90,7 +77,6 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
ref: ${{ github.event.pull_request.head.sha }}
|
ref: ${{ github.event.pull_request.head.sha }}
|
||||||
|
|
||||||
|
|
||||||
- name: Cache depends sources
|
- name: Cache depends sources
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
@ -113,6 +99,12 @@ jobs:
|
|||||||
- name: Build dependencies
|
- name: Build dependencies
|
||||||
run: make -j$(nproc) -C depends HOST=${{ matrix.host }}
|
run: make -j$(nproc) -C depends HOST=${{ matrix.host }}
|
||||||
|
|
||||||
|
- name: Upload built depends
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: depends-${{ matrix.build_target }}
|
||||||
|
path: depends/${{ matrix.host }}
|
||||||
|
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
needs: [build-image, build-depends]
|
needs: [build-image, build-depends]
|
||||||
@ -123,20 +115,28 @@ jobs:
|
|||||||
include:
|
include:
|
||||||
- build_target: arm-linux
|
- build_target: arm-linux
|
||||||
host: arm-linux-gnueabihf
|
host: arm-linux-gnueabihf
|
||||||
|
depends_on: arm-linux
|
||||||
- build_target: linux64
|
- build_target: linux64
|
||||||
host: x86_64-pc-linux-gnu
|
host: x86_64-pc-linux-gnu
|
||||||
|
depends_on: linux64
|
||||||
- build_target: linux64_tsan
|
- build_target: linux64_tsan
|
||||||
host: x86_64-pc-linux-gnu
|
host: x86_64-pc-linux-gnu
|
||||||
|
depends_on: linux64
|
||||||
- build_target: linux64_ubsan
|
- build_target: linux64_ubsan
|
||||||
host: x86_64-pc-linux-gnu
|
host: x86_64-pc-linux-gnu
|
||||||
|
depends_on: linux64
|
||||||
- build_target: linux64_fuzz
|
- build_target: linux64_fuzz
|
||||||
host: x86_64-pc-linux-gnu
|
host: x86_64-pc-linux-gnu
|
||||||
|
depends_on: linux64
|
||||||
- build_target: linux64_cxx20
|
- build_target: linux64_cxx20
|
||||||
host: x86_64-pc-linux-gnu
|
host: x86_64-pc-linux-gnu
|
||||||
|
depends_on: linux64
|
||||||
- build_target: linux64_sqlite
|
- build_target: linux64_sqlite
|
||||||
host: x86_64-pc-linux-gnu
|
host: x86_64-pc-linux-gnu
|
||||||
|
depends_on: linux64
|
||||||
- build_target: linux64_nowallet
|
- build_target: linux64_nowallet
|
||||||
host: x86_64-pc-linux-gnu
|
host: x86_64-pc-linux-gnu
|
||||||
|
depends_on: linux64
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/${{ needs.build-image.outputs.repo-name }}/dashcore-ci-runner:${{ needs.build-image.outputs.image-tag }}
|
image: ghcr.io/${{ needs.build-image.outputs.repo-name }}/dashcore-ci-runner:${{ needs.build-image.outputs.image-tag }}
|
||||||
options: --user root
|
options: --user root
|
||||||
@ -146,16 +146,11 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
ref: ${{ github.event.pull_request.head.sha }}
|
ref: ${{ github.event.pull_request.head.sha }}
|
||||||
|
|
||||||
|
- name: Download built depends
|
||||||
- name: Restore Cache dependencies
|
uses: actions/download-artifact@v4
|
||||||
uses: actions/cache/restore@v4
|
|
||||||
with:
|
with:
|
||||||
path: |
|
name: depends-${{ matrix.depends_on }}
|
||||||
depends/${{ matrix.host }}
|
path: depends/${{ matrix.host }}
|
||||||
key: ${{ runner.os }}-depends-${{ matrix.build_target }}-${{ hashFiles('depends/packages/*') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-depends-${{ matrix.build_target }}-${{ hashFiles('depends/packages/*') }}
|
|
||||||
${{ runner.os }}-depends-${{ matrix.build_target }}
|
|
||||||
|
|
||||||
- name: Determine PR Base SHA
|
- name: Determine PR Base SHA
|
||||||
id: vars
|
id: vars
|
||||||
@ -192,32 +187,3 @@ jobs:
|
|||||||
name: build-artifacts-${{ matrix.build_target }}
|
name: build-artifacts-${{ matrix.build_target }}
|
||||||
path: |
|
path: |
|
||||||
/output
|
/output
|
||||||
|
|
||||||
|
|
||||||
# Come back to this later and implement tests :)
|
|
||||||
# test:
|
|
||||||
# name: Test
|
|
||||||
# needs: [build-image, build]
|
|
||||||
# runs-on: ubuntu-22.04
|
|
||||||
# container:
|
|
||||||
# image: ghcr.io/${{ needs.build-image.outputs.repo-name }}/dashcore-ci-runner:${{ needs.build-image.outputs.image-tag }}
|
|
||||||
# options: --user root
|
|
||||||
# steps:
|
|
||||||
# - name: Checkout code
|
|
||||||
# uses: actions/checkout@v4
|
|
||||||
# with:
|
|
||||||
# ref: ${{ github.event.pull_request.head.sha }}
|
|
||||||
#
|
|
||||||
# - name: Download build artifacts
|
|
||||||
# uses: actions/download-artifact@v4
|
|
||||||
# with:
|
|
||||||
# name: build-artifacts
|
|
||||||
# path: src/
|
|
||||||
#
|
|
||||||
## - name: Setup environment
|
|
||||||
## run: |
|
|
||||||
## echo "BUILD_TARGET=${{ needs.build.matrix.build_target }}"
|
|
||||||
## source ./ci/dash/matrix.sh
|
|
||||||
#
|
|
||||||
# - name: Run integration tests
|
|
||||||
# run: ./ci/dash/test_integrationtests.sh --extended --exclude feature_pruning,feature_dbcrash
|
|
||||||
|
Loading…
Reference in New Issue
Block a user