diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml new file mode 100644 index 00000000..37abb26e --- /dev/null +++ b/.gitea/workflows/build.yml @@ -0,0 +1,48 @@ +name: Build +run-name: Build Docker Image +on: [push, pull_request] + +jobs: + docker-build: + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v1 + with: + submodules: recursive + + - name: install dependencies + run: sudo apt -y install xvfb libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xkb1 libxcb-shape0 libxkbcommon-x11-0 + + - name: Set up Docker BuildX + uses: docker/setup-buildx-action@v2 + with: + config-inline: | + [registry."gitea:3000"] + http = true + insecure = true + + - name: Login to Registry + uses: docker/login-action@v2 + with: + registry: http://gitea:3000 + username: ${{ gitea.repository_owner }} + password: ${{ secrets.REGISTRY_TOKEN }} + + - name: prepare build environment + run: docker build --tag monero:build-env-linux --build-arg THREADS=3 --file Dockerfile.linux . + + - name: build + run: docker run --rm -v /home/runner/work/monero-gui/monero-gui:/monero-gui -w /monero-gui monero:build-env-linux sh -c 'make release-static -j3' + + - name: sha256sum + run: shasum -a256 /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui + + - name: test qml + run: xvfb-run -a /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui --test-qml + + - uses: actions/upload-artifact@v4 + with: + name: ${{ gitea.job }} + path: | + /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui + /home/runner/work/monero-gui/monero-gui/build/release/bin/monerod \ No newline at end of file diff --git a/.github/qt_helper.py b/.github/qt_helper.py deleted file mode 100644 index 309b3974..00000000 --- a/.github/qt_helper.py +++ /dev/null @@ -1,107 +0,0 @@ -#!/usr/bin/env python3 -import defusedxml.ElementTree -import hashlib -import mmap -import pathlib -import subprocess -import sys -import urllib.parse -import urllib.request -import xml.etree.ElementTree as ET - -MAX_TRIES = 32 - -def fetch_links_to_archives(os, target, major, minor, patch, toolchain): - MAX_XML_SIZE = 1024 * 1024 * 1024 - MIRROR = 'download.qt.io' - base_url = f'https://{MIRROR}/online/qtsdkrepository/{os}/{target}/qt{major}_{major}{minor}{patch}' - url = f'{base_url}/Updates.xml' - for _ in range(MAX_TRIES): - try: - resp = urllib.request.urlopen(url).read(MAX_XML_SIZE) - update_xml = defusedxml.ElementTree.fromstring(resp) - break - except KeyboardInterrupt: - raise - except BaseException as e: - print('error', e, flush=True) - else: - return - for pkg in update_xml.findall('./PackageUpdate'): - name = pkg.find('.//Name') - if name == None: - continue - if name.text != f'qt.qt{major}.{major}{minor}{patch}.{toolchain}': - continue - version = pkg.find('.//Version') - if version == None: - continue - archives = pkg.find('.//DownloadableArchives') - if archives == None or archives.text == None: - continue - for archive in archives.text.split(', '): - url = f'{base_url}/{name.text}/{version.text}{archive}' - file_name = pathlib.Path(urllib.parse.urlparse(url).path).name - yield {'name': file_name, 'url': url} - -def download(links): - metalink = ET.Element('metalink', xmlns = "urn:ietf:params:xml:ns:metalink") - for link in links: - file = ET.SubElement(metalink, 'file', name = link['name']) - ET.SubElement(file, 'url').text = link['url'] - data = ET.tostring(metalink, encoding='UTF-8', xml_declaration=True) - for _ in range(MAX_TRIES): - with subprocess.Popen([ - 'aria2c', - '--connect-timeout=8', - '--console-log-level=warn', - '--continue', - '--follow-metalink=mem', - '--max-concurrent-downloads=100', - '--max-connection-per-server=16', - '--max-file-not-found=100', - '--max-tries=100', - '--min-split-size=1MB', - '--retry-wait=1', - '--split=100', - '--summary-interval=0', - '--timeout=8', - '--user-agent=', - '--metalink-file=-', - ], stdin=subprocess.PIPE) as aria: - aria.communicate(data) - if aria.wait() == 0: - return True - return False - -def calc_hash_sum(files): - obj = hashlib.new('sha256') - for path in files: - with open(path, 'rb') as f: - with mmap.mmap(f.fileno(), 0, mmap.MAP_SHARED, mmap.PROT_READ) as m: - file_hash = hashlib.new('sha256', m).digest() - obj.update(file_hash) - return obj.digest().hex() - -def extract_archives(files, out='.', targets=[]): - for path in files: - if subprocess.Popen(['7z', 'x', '-bd', '-y', '-aoa', f'-o{out}', path] + targets, - stdout=subprocess.DEVNULL, - ).wait() != 0: - return False - return True - -def main(): - os, target, version, toolchain, expect = sys.argv[1:] - major, minor, patch = version.split('.') - links = [*fetch_links_to_archives(os, target, major, minor, patch, toolchain)] - print(*[l['url'].encode() for l in links], sep='\n', flush=True) - assert download(links) - result = calc_hash_sum([l['name'] for l in links]) - print('result', result, 'expect', expect, flush=True) - assert result == expect - assert extract_archives([l['name'] for l in links], '.', ['{}.{}.{}'.format(major, minor, patch)]) - [pathlib.Path(l['name']).unlink() for l in links] - -if __name__ == '__main__': - main() diff --git a/.github/verify_p2pool.py b/.github/verify_p2pool.py deleted file mode 100644 index 2c1de806..00000000 --- a/.github/verify_p2pool.py +++ /dev/null @@ -1,107 +0,0 @@ -import requests -import subprocess -from urllib.request import urlretrieve -import difflib - -sech_key = "https://p2pool.io/SChernykh.asc" -sech_key_backup = "https://raw.githubusercontent.com/monero-project/gitian.sigs/master/gitian-pubkeys/SChernykh.asc" -sech_key_fp = "1FCA AB4D 3DC3 310D 16CB D508 C47F 82B5 4DA8 7ADF" - -p2pool_files = [{ - "os": "WIN", - "filename": "windows-x64.zip", - }, - { - "os": "LINUX", - "filename": "linux-x64.tar.gz" - }, - { - "os": "MACOS_AARCH64", - "filename": "macos-aarch64.tar.gz", - }, - { - "os": "MACOS", - "filename": "macos-x64.tar.gz", - }] - -def get_hash(fname): - fhash = subprocess.check_output(["sha256sum", fname]).decode("utf-8") - print(fhash.strip()) - return fhash.split()[0] - -def main(): - global p2pool_files, sech_key, sech_key_backup, sech_key_fp - p2pool_tag_api = "https://api.github.com/repos/SChernykh/p2pool/releases/latest" - data = requests.get(p2pool_tag_api).json() - tag = data["tag_name"] - head = f"p2pool-{tag}-" - url = f"https://github.com/SChernykh/p2pool/releases/download/{tag}/" - - try: - urlretrieve(sech_key,"SChernykh.asc") - except: - urlretrieve(sech_key_backup,"SChernykh.asc") - - urlretrieve(f"{url}sha256sums.txt.asc","sha256sums.txt.asc") - - subprocess.check_call(["gpg", "--import", "SChernykh.asc"]) - subprocess.check_call(["gpg", "--verify", "sha256sums.txt.asc"]) - fingerprint = subprocess.check_output(["gpg","--fingerprint", "SChernykh"]).decode("utf-8").splitlines()[1].strip() - - assert fingerprint == sech_key_fp - - with open("sha256sums.txt.asc","r") as f: - lines = f.readlines() - - signed_hashes = {} - for line in lines: - if "Name:" in line: - signed_fname = line.split()[1] - if "SHA256:" in line: - signed_hashes[signed_fname] = line.split()[1].lower() - - expected = "" - for i in range(len(p2pool_files)): - fname = p2pool_files[i]["filename"] - str_os =p2pool_files[i]["os"] - dl = f"{url}{head}{fname}" - urlretrieve(dl,f"{head}{fname}") - fhash = get_hash(f"{head}{fname}") - assert signed_hashes[f"{head}{fname}"] == fhash - if i == 0: - expected += f" #ifdef Q_OS_{str_os}\n" - else: - expected += f" #elif defined(Q_OS_{str_os})\n" - expected += f" url = \"https://github.com/SChernykh/p2pool/releases/download/{tag}/{head}{fname}\";\n" - expected += f" fileName = m_p2poolPath + \"/{head}{fname}\";\n" - expected += f" validHash = \"{fhash}\";\n" - expected += " #endif\n" - - print(f"Expected:\n{expected}") - - with open("src/p2pool/P2PoolManager.cpp","r") as f: - p2pool_lines = f.readlines() - - unexpected = "" - ignore = 1 - for line in p2pool_lines: - if ignore == 0: - unexpected += line - if "QString validHash;" in line: - ignore = 0 - if "#endif" in line and ignore == 0: - break - - d = difflib.Differ() - diff = d.compare(str(unexpected).splitlines(True),str(expected).splitlines(True)) - - print("Unexpected:") - for i in diff: - if i.startswith("?"): - continue - print(i.replace("\n","")) - - assert unexpected == expected - -if __name__ == "__main__": - main() diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index 8a0b8511..00000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,201 +0,0 @@ -name: ci/gh-actions/gui - -on: [push, pull_request] - -env: - FREE_DISKSPACE: | - sudo rm -rf /usr/local/.ghcup /usr/share/dotnet /usr/share/swift /usr/share/miniconda - -jobs: - build-macos: - runs-on: macOS-latest - steps: - - uses: actions/checkout@v1 - with: - submodules: recursive - - name: install dependencies - run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq libpgm libsodium miniupnpc expat libunwind-headers protobuf qt5 pkg-config - - name: build - run: DEV_MODE=ON make release -j3 - - name: test qml - run: build/release/bin/monero-wallet-gui.app/Contents/MacOS/monero-wallet-gui --test-qml - - build-ubuntu: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v1 - with: - submodules: recursive - - name: remove bundled boost - run: sudo rm -rf /usr/local/share/boost - - name: set apt conf - run: | - echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom - echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom - echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom - - name: update apt - run: sudo apt update - - name: install monero dependencies - run: sudo apt -y install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev libsodium-dev libhidapi-dev libnorm-dev libusb-1.0-0-dev libpgm-dev libprotobuf-dev protobuf-compiler - - name: install monero gui dependencies - run: sudo apt -y install qtbase5-dev qtdeclarative5-dev qml-module-qtqml-models2 qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-dialogs qml-module-qtquick-xmllistmodel qml-module-qt-labs-settings qml-module-qt-labs-platform qml-module-qt-labs-folderlistmodel qttools5-dev-tools qml-module-qtquick-templates2 libqt5svg5-dev libgcrypt20-dev xvfb - - name: build - run: DEV_MODE=ON make release -j3 - - name: test qml - run: xvfb-run -a build/release/bin/monero-wallet-gui --test-qml - - build-windows: - runs-on: windows-latest - defaults: - run: - shell: msys2 {0} - steps: - - uses: actions/checkout@v1 - with: - submodules: recursive - - uses: eine/setup-msys2@v2 - with: - update: true - install: mingw-w64-x86_64-toolchain make mingw-w64-x86_64-pcre mingw-w64-x86_64-cmake mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-unbound git mingw-w64-x86_64-qt5 mingw-w64-x86_64-libgcrypt - - name: build - run: DEV_MODE=ON make release-win64 -j2 - - name: deploy - run: make deploy - working-directory: build/release - - name: test qml - run: build/release/bin/monero-wallet-gui --test-qml - - macos-bundle: - runs-on: macOS-latest - steps: - - uses: actions/checkout@v1 - with: - submodules: recursive - - name: install dependencies - run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq libpgm miniupnpc expat libunwind-headers protobuf pkg-config python3 p7zip aria2 - - name: install dependencies - run: pip3 install defusedxml - - name: download qt - run: python3 monero-gui/.github/qt_helper.py mac_x64 desktop 5.15.2 clang_64 c384008156fe63cc183bade0316828c598ff3e5074397c0c9ccc588d6cdc5aca - working-directory: ../ - - name: build - run: | - mkdir build && cd build - cmake -D CMAKE_BUILD_TYPE=Release -D ARCH=default -D CMAKE_PREFIX_PATH=/Users/runner/work/monero-gui/5.15.2/clang_64 .. - make - - name: deploy - run: make deploy - working-directory: build - - name: test qml - run: build/bin/monero-wallet-gui.app/Contents/MacOS/monero-wallet-gui --test-qml - - name: create .tar - run: tar -cf monero-wallet-gui.tar monero-wallet-gui.app - working-directory: build/bin - - uses: actions/upload-artifact@v2 - with: - name: ${{ github.job }} - path: build/bin/monero-wallet-gui.tar - - docker-linux-static: - runs-on: ubuntu-20.04 - steps: - - uses: actions/checkout@v1 - with: - submodules: recursive - - uses: satackey/action-docker-layer-caching@v0.0.11 - if: "!startsWith(github.ref, 'refs/tags/v')" - continue-on-error: true - with: - key: docker-linux-static-{hash} - restore-keys: | - docker-linux-static- - - name: install dependencies - run: sudo apt -y install xvfb libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xkb1 libxcb-shape0 libxkbcommon-x11-0 - - name: free up diskspace - run: ${{env.FREE_DISKSPACE}} - - name: prepare build environment - run: docker build --tag monero:build-env-linux --build-arg THREADS=3 --file Dockerfile.linux . - - name: build - run: docker run --rm -v /home/runner/work/monero-gui/monero-gui:/monero-gui -w /monero-gui monero:build-env-linux sh -c 'make release-static -j3' - - name: sha256sum - run: shasum -a256 /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui - - name: test qml - run: xvfb-run -a /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui --test-qml - - uses: actions/upload-artifact@v2 - with: - name: ${{ github.job }} - path: | - /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui - /home/runner/work/monero-gui/monero-gui/build/release/bin/monerod - - docker-windows-static: - runs-on: ubuntu-20.04 - steps: - - uses: actions/checkout@v1 - with: - submodules: recursive - - uses: satackey/action-docker-layer-caching@v0.0.11 - if: "!startsWith(github.ref, 'refs/tags/v')" - continue-on-error: true - with: - key: docker-windows-static-{hash} - restore-keys: | - docker-windows-static- - - name: free up diskspace - run: ${{env.FREE_DISKSPACE}} - - name: prepare build environment - run: docker build --tag monero:build-env-windows --build-arg THREADS=3 --file Dockerfile.windows . - - name: build - run: docker run --rm -v /home/runner/work/monero-gui/monero-gui:/monero-gui -w /monero-gui monero:build-env-windows sh -c 'make depends root=/depends target=x86_64-w64-mingw32 tag=win-x64 -j3' - - name: sha256sum - run: shasum -a256 /home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/monero-wallet-gui.exe - - uses: actions/upload-artifact@v2 - with: - name: ${{ github.job }} - path: | - /home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/monero-wallet-gui.exe - /home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/monerod.exe - - docker-android: - runs-on: ubuntu-20.04 - steps: - - uses: actions/checkout@v1 - with: - submodules: recursive - - uses: satackey/action-docker-layer-caching@v0.0.11 - if: "!startsWith(github.ref, 'refs/tags/v')" - continue-on-error: true - with: - key: docker-android-static-{hash} - restore-keys: | - docker-android-static- - - name: free up diskspace - run: ${{env.FREE_DISKSPACE}} - - name: prepare build environment - run: docker build --tag monero:build-env-android --build-arg THREADS=3 --file Dockerfile.android . - - name: build - run: docker run --rm -v /home/runner/work/monero-gui/monero-gui:/monero-gui -e THREADS=3 monero:build-env-android - - name: Remove obsolete docker layers - run: docker images -a | grep none | awk '{ print $3; }' | xargs docker rmi || true - - uses: actions/upload-artifact@v2 - with: - name: ${{ github.job }} - path: /home/runner/work/monero-gui/monero-gui/build/Android/release/android-build/monero-gui.apk - - source-archive: - runs-on: ubuntu-20.04 - steps: - - uses: actions/checkout@v1 - with: - submodules: recursive - - name: archive - run: | - pip install git-archive-all - export VERSION="monero-gui-$(git describe)" - export OUTPUT="$VERSION.tar" - echo "OUTPUT=$OUTPUT" >> $GITHUB_ENV - /home/runner/.local/bin/git-archive-all --prefix "$VERSION/" --force-submodules "$OUTPUT" - - uses: actions/upload-artifact@v2 - with: - name: ${{ env.OUTPUT }} - path: /home/runner/work/monero-gui/monero-gui/${{ env.OUTPUT }} diff --git a/.github/workflows/flatpak.yml b/.github/workflows/flatpak.yml deleted file mode 100644 index 27fb3326..00000000 --- a/.github/workflows/flatpak.yml +++ /dev/null @@ -1,174 +0,0 @@ -name: Flatpak - -on: - release: - types: released - -jobs: - part1: - name: Part 1/3 - if: github.repository == 'monero-project/monero-gui' - runs-on: ubuntu-latest - container: - image: bilelmoussaoui/flatpak-github-actions:kde-5.15-22.08 - options: --privileged - strategy: - matrix: - arch: [x86_64, aarch64] - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - submodules: recursive - - - name: Install deps - run: dnf -y install docker - - - name: Setup QEMU - uses: docker/setup-qemu-action@v2 - with: - platforms: arm64 - - - name: Build flatpak - uses: flatpak/flatpak-github-actions/flatpak-builder@v6 - env: - FLATPAK_BUILDER_N_JOBS: 3 - with: - manifest-path: share/org.getmonero.Monero.yaml - arch: ${{ matrix.arch }} - cache: false - stop-at-module: boost - - - name: Tar flatpak-builder - run: tar -cvf flatpak-builder.tar .flatpak-builder - - - name: Save flatpak-builder - uses: actions/upload-artifact@v3 - with: - name: flatpak-builder-${{ matrix.arch }} - path: flatpak-builder.tar - - part2: - name: Part 2/3 - if: github.repository == 'monero-project/monero-gui' - needs: part1 - runs-on: ubuntu-latest - container: - image: bilelmoussaoui/flatpak-github-actions:kde-5.15-22.08 - options: --privileged - strategy: - matrix: - arch: [x86_64, aarch64] - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Install deps - run: dnf -y install docker - - - name: Setup QEMU - uses: docker/setup-qemu-action@v2 - with: - platforms: arm64 - - - name: Restore flatpak-builder - uses: actions/download-artifact@v3 - with: - name: flatpak-builder-${{ matrix.arch }} - - - name: Untar flatpak-builder - run: tar -xvf flatpak-builder.tar - - - name: Build flatpak - uses: flatpak/flatpak-github-actions/flatpak-builder@v6 - env: - FLATPAK_BUILDER_N_JOBS: 3 - with: - manifest-path: share/org.getmonero.Monero.yaml - arch: ${{ matrix.arch }} - cache: false - stop-at-module: monero-gui - - - name: Tar flatpak-builder - run: tar -cvf flatpak-builder.tar .flatpak-builder - - - name: Save flatpak-builder - uses: actions/upload-artifact@v3 - with: - name: flatpak-builder-${{ matrix.arch }} - path: flatpak-builder.tar - - part3: - name: Part 3/3 - if: github.repository == 'monero-project/monero-gui' - needs: [part1, part2] - runs-on: ubuntu-latest - container: - image: bilelmoussaoui/flatpak-github-actions:kde-5.15-22.08 - options: --privileged - strategy: - matrix: - arch: [x86_64, aarch64] - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - submodules: recursive - - - name: Add version and date - run: | - sed -i 's//${{ github.event.release.tag_name }}/g' $GITHUB_WORKSPACE/share/org.getmonero.Monero.metainfo.xml - sed -i 's//'"$(date '+%F')"'/g' $GITHUB_WORKSPACE/share/org.getmonero.Monero.metainfo.xml - - - name: Install deps - run: dnf -y install docker - - - name: Setup QEMU - uses: docker/setup-qemu-action@v2 - with: - platforms: arm64 - - - name: Restore flatpak-builder - uses: actions/download-artifact@v3 - with: - name: flatpak-builder-${{ matrix.arch }} - - - name: Untar flatpak-builder - run: tar -xvf flatpak-builder.tar - - - name: Build flatpak - uses: flatpak/flatpak-github-actions/flatpak-builder@v6 - env: - FLATPAK_BUILDER_N_JOBS: 3 - with: - manifest-path: share/org.getmonero.Monero.yaml - arch: ${{ matrix.arch }} - cache: false - - - name: Validate AppData - working-directory: flatpak_app/files/share/appdata - run: appstream-util validate org.getmonero.Monero.appdata.xml - - - name: Delete flatpak-builder - uses: geekyeggo/delete-artifact@v2 - with: - name: flatpak-builder-${{ matrix.arch }} - - - name: Print hashes - working-directory: flatpak_app/files/bin - run: | - echo "Hashes of the ${{ matrix.arch }} binaries:" >> $GITHUB_STEP_SUMMARY - echo "\`\`\`" >> $GITHUB_STEP_SUMMARY - for bin in monero-blockchain-ancestry monero-blockchain-depth monero-blockchain-export monero-blockchain-import monero-blockchain-mark-spent-outputs monero-blockchain-prune monero-blockchain-prune-known-spent-data monero-blockchain-stats monero-blockchain-usage monerod monero-gen-ssl-cert monero-gen-trusted-multisig monero-wallet-cli monero-wallet-gui monero-wallet-rpc p2pool; do sha256sum $bin; done >> $GITHUB_STEP_SUMMARY - echo "\`\`\`" >> $GITHUB_STEP_SUMMARY - echo "An example command to check hashes:" >> $GITHUB_STEP_SUMMARY - echo "\`\`\`" >> $GITHUB_STEP_SUMMARY - echo "$ flatpak run --command=sha256sum org.getmonero.Monero /app/bin/monero-wallet-gui" >> $GITHUB_STEP_SUMMARY - echo "\`\`\`" >> $GITHUB_STEP_SUMMARY - - - name: Publish to Flathub Beta - uses: flatpak/flatpak-github-actions/flat-manager@v6 - with: - flat-manager-url: https://hub.flathub.org - repository: beta - token: ${{ secrets.FLATHUB_ }} diff --git a/.github/workflows/verify_p2pool.yml b/.github/workflows/verify_p2pool.yml deleted file mode 100644 index c1653570..00000000 --- a/.github/workflows/verify_p2pool.yml +++ /dev/null @@ -1,16 +0,0 @@ -name: ci/gh-actions/verify -on: - push: - paths: - - 'src/p2pool/P2PoolManager.cpp' - pull_request: - paths: - - 'src/p2pool/P2PoolManager.cpp' -jobs: - p2pool-hashes: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v1 - - name: Verify Hashes - run: | - python3 .github/verify_p2pool.py