diff --git a/.github/workflows/dependencies_matches.yaml b/.github/workflows/dependencies_matches.yaml new file mode 100644 index 0000000..5552539 --- /dev/null +++ b/.github/workflows/dependencies_matches.yaml @@ -0,0 +1,74 @@ +name: Check if dependencies match +# Sometimes we have the libraries in two (or more) places +# at the same time, this check makes sure that we do use +# the same version of said libraries. +on: [push] + +jobs: + wownero-seed: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + submodules: recursive + - name: Patch sources + run: | + git config --global --add safe.directory '*' + git config --global user.email "ci@mrcyjanek.net" + git config --global user.name "CI mrcyjanek.net" + ./apply_patches.sh monero + ./apply_patches.sh wownero + - name: obtain hashes + run: | + set -x + pushd external/wownero-seed + echo "EXTERNAL_WOWNEROSEED=$(git rev-parse HEAD)" >> $GITHUB_ENV + popd + echo "WOWNERO_WOWNEROSEED=$(cat wownero/contrib/depends/packages/wownero_seed.mk | grep _download_file | tr '=.' '\n' | head -2 | tail -1)" >> $GITHUB_ENV + - name: compare hashes + run: | + if [[ "x$WOWNERO_WOWNEROSEED" == "x" ]]; + then + echo "Unable to obtain wownero seed from wownero repo" + exit 1 + fi + if [[ ! "x$EXTERNAL_WOWNEROSEED" == "x$WOWNERO_WOWNEROSEED" ]]; + then + echo "external/wownero-seed doesn't match wownero/contrib/depends/packages/wownero_seed.mk checksum" + exit 1 + fi + polyseed: + strategy: + matrix: + coin: [monero, wownero] + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + submodules: recursive + - name: Patch sources + run: | + git config --global --add safe.directory '*' + git config --global user.email "ci@mrcyjanek.net" + git config --global user.name "CI mrcyjanek.net" + ./apply_patches.sh ${{ matrix.coin }} + - name: prepare + run: | + set -x + pushd ${{ matrix.coin }}/contrib/depends + make download # sorry, this is the easiest way + mkdir sources/polyseed + pushd sources/polyseed + tar xzf ../polyseed*.tar.gz + popd + popd + - name: diff + run: | + OUTPUT=$(diff -ra external/polyseed ${{ matrix.coin }}/contrib/depends/sources/polyseed/* | grep -v .git | wc -l) + if [[ ! "x$OUTPUT" == "x0" ]]; + then + diff -ra external/polyseed ${{ matrix.coin }}/contrib/depends/sources/polyseed/* + exit 1 + fi diff --git a/external/polyseed b/external/polyseed index b7c35bb..3ef3669 160000 --- a/external/polyseed +++ b/external/polyseed @@ -1 +1 @@ -Subproject commit b7c35bb3c6b91e481ecb04fc235eaff69c507fa1 +Subproject commit 3ef366993258a6f1c837d4908e3e4afb2cfefff7