Skip to content

feat: add support for custom topology #420

feat: add support for custom topology

feat: add support for custom topology #420

Workflow file for this run

name: test flux-operator
on:
pull_request: []
jobs:
formatting:
name: Formatting
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup black linter
run: conda create --quiet --name black pyflakes
- name: Check Spelling
uses: crate-ci/typos@7ad296c72fa8265059cc03d1eda562fbdfcd6df2 # v1.9.0
with:
files: ./docs/*/*.md ./docs/*/*/*.md ./docs/*.md ./README.md ./docs/*.md
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Go
uses: actions/setup-go@v3
with:
go-version: ^1.20
- name: fmt check
run: make fmt
- name: Install zeromq
run: sudo apt-get update && sudo apt-get install -y libsodium-dev libzmq3-dev libczmq-dev
# These aren't written yet
- name: Run Unit tests
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: make test
- name: Check Updated flux-operator-arm.yaml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
cp examples/dist/flux-operator-arm.yaml /tmp/flux-operator-arm.yaml
make build-config-arm
diff examples/dist/flux-operator-arm.yaml /tmp/flux-operator-arm.yaml
# Ensure build-config is the same as the one we have
- name: Check Updated flux-operator.yaml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
cp examples/dist/flux-operator.yaml /tmp/flux-operator.yaml
make build-config
diff examples/dist/flux-operator.yaml /tmp/flux-operator.yaml
test-jobs:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
test: [["post", "", 100],
["batch", "", 100],
["timed", "", 100],
["debug", "", 100],
["volumes", "", 100],
["hello-world", "", 100],
["nginx-service", "", 100],
["custom-config", "", 100],
["minimal-service", "", 100],
["existing-volumes", "", 100],
["flux-resource-list", "", 100],
["nginx-sidecar-service", "", 100],
["pokemon", "ghcr.io/rse-ops/pokemon:app-latest", 100],
["snakemake", "ghcr.io/rse-ops/atacseq:app-latest", 100],
["singularity", "ghcr.io/rse-ops/singularity:tag-mamba", 100],
["lammps", "ghcr.io/converged-computing/metric-lammps:latest", 100],
["disable-view", "ghcr.io/rse-ops/lammps:flux-sched-focal", 100]]
steps:
- name: Clone the code
uses: actions/checkout@v3
- name: Setup Go
uses: actions/setup-go@v3
with:
go-version: ^1.20
- name: Install zeromq
run: sudo apt-get update && sudo apt-get install -y libsodium-dev libzmq3-dev libczmq-dev
- name: Start minikube
uses: medyagh/setup-minikube@697f2b7aaed5f70bf2a94ee21a4ec3dde7b12f92 # v0.0.9
- name: Pull Docker Containers to MiniKube
env:
container: ${{ matrix.test[1] }}
test: ${{ matrix[0] }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
export SHELL=/bin/bash
eval $(minikube -p minikube docker-env)
if [[ "${container}" != "" ]]; then
minikube ssh docker pull ${container}
fi
if [[ "${test}" == "nginx-service" ]]; then
minikube ssh docker pull nginx
fi
minikube ssh docker pull ghcr.io/converged-computing/flux-view-rocky:tag-9
make deploy-local
minikube image load ghcr.io/flux-framework/flux-operator:test
kubectl apply -f examples/dist/flux-operator-local.yaml
- name: Test ${{ matrix.test[0] }}
env:
name: ${{ matrix.test[0] }}
jobtime: ${{ matrix.test[2] }}
run: /bin/bash ./script/test.sh ${name} ${jobtime}