diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 81b6bbe..82b1acf 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -36,24 +36,30 @@ jobs: strategy: fail-fast: false matrix: - machine: [x64_linux, arm64_linux] + machine: [x64_linux] + platform: [avx2] + compiler: [g++-13] leiden: [true] include: - - machine: x64_mac - leiden: false - - machine: arm64_mac - leiden: false + - {machine: arm64_linux, platform: arm8, compiler: g++-12, leiden: true} + - {machine: x64_mac, platform: avx2, compiler: g++-13, leiden: false} + - {machine: arm64_mac, platform: m1, compiler: g++-13, leiden: false} - runs-on: [self-hosted, vclust, '${{ matrix.machine }}'] + runs-on: [self-hosted, vclust, '${{ matrix.machine }}'] + env: + DIR: vclust-${{ github.event.release.tag_name }}-${{matrix.machine}} steps: - name: make clean run: make clean continue-on-error: true - name: make - run: make -j32 CXX=g++-12 STATIC_LINK=true LEIDEN=${{ matrix.leiden }} + run: make -j32 CXX=${{matrix.compiler}} STATIC_LINK=true PLATFORM=${{ matrix.platform }} LEIDEN=${{ matrix.leiden }} - name: tar artifacts - run: tar -cvzf vclust.tar.gz vclust.py test.py LICENSE example bin + run: | + mkdir ${DIR} + cp -r vclust.py test.py LICENSE example bin ${DIR} + tar -cvzf vclust.tar.gz ${DIR} ######################################################################################## diff --git a/.github/workflows/self-hosted.yml b/.github/workflows/self-hosted.yml new file mode 100644 index 0000000..81ef509 --- /dev/null +++ b/.github/workflows/self-hosted.yml @@ -0,0 +1,71 @@ +name: Self-hosted CI + +on: + pull_request: + branches: [ master, develop ] + paths-ignore: + - '**.md' + workflow_dispatch: + +jobs: + + ######################################################################################## + checkout: + name: Checkout + strategy: + matrix: + machine: [x64_linux, x64_mac, arm64_linux, arm64_mac] + runs-on: [self-hosted, vclust, '${{ matrix.machine }}'] + + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + - name: Get tags + run: | + cd ./3rd_party/clusty/libs/igraph + git fetch --prune --unshallow + echo exit code $? + git tag --list + continue-on-error: true + +######################################################################################## + make: + name: Make + needs: checkout + strategy: + fail-fast: false + matrix: + machine: [x64_linux] + platform: [avx2] + compiler: [g++-13] + leiden: [true] + include: + - {machine: arm64_linux, platform: arm8, compiler: g++-12, leiden: true} + - {machine: x64_mac, platform: avx2, compiler: g++-13, leiden: false} + - {machine: arm64_mac, platform: m1, compiler: g++-13, leiden: false} + + runs-on: [self-hosted, vclust, '${{ matrix.machine }}'] + + steps: + - name: make clean + run: make clean + continue-on-error: true + - name: make + run: make -j32 CXX=${{matrix.compiler}} STATIC_LINK=true PLATFORM=${{ matrix.platform }} LEIDEN=${{ matrix.leiden }} + +######################################################################################## + pipeline: + name: Pipeline + needs: make + strategy: + fail-fast: false + matrix: + machine: [x64_linux, arm64_linux] + runs-on: [self-hosted, vclust, '${{ matrix.machine }}'] + + steps: + + - name: run pipeline + run: | + pytest test.py diff --git a/vclust.py b/vclust.py index dbbca44..80b1c94 100755 --- a/vclust.py +++ b/vclust.py @@ -15,7 +15,7 @@ import typing import uuid -__version__ = '1.1.0' +__version__ = '1.1.1' DEFAULT_THREAD_COUNT = min(multiprocessing.cpu_count(), 64) @@ -1307,4 +1307,4 @@ def main(): p = run(cmd, args.verbose, logger) if __name__ == '__main__': - main() \ No newline at end of file + main()