WIP Energy redistribution check with pytest #27
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: osx-full | |
on: | |
push: | |
paths-ignore: | |
- '**.md' | |
pull_request: | |
paths-ignore: | |
- '**.md' | |
# The below variables reduce repetitions across similar targets | |
env: | |
APT_SET_CONF: | | |
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 | |
jobs: | |
build-ubuntu: | |
runs-on: ubuntu-latest | |
env: | |
CCACHE_TEMPDIR: /tmp/.ccache-temp | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
# Volatile cache | |
- name: ccache | |
uses: actions/cache@v3 | |
with: | |
path: ~/.ccache | |
key: ccache01-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.linkage }}-build-${{ github.sha }} | |
restore-keys: ccache01-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.linkage }}-build- | |
# Less volatile cache | |
- name: data cache | |
uses: actions/cache@v3 | |
with: | |
path: externals/tsqsim/build/data/data/txt | |
key: data-${{ hashFiles('externals/tsqsim/data/data/txt/**/*') }} | |
restore-keys: data-${{ hashFiles('externals/tsqsim/data/data/txt/**/*') }} | |
# Expendable, volatile & large cache | |
- name: diff cache | |
uses: actions/cache@v3 | |
with: | |
path: /tmp/diff_XMR.pkl | |
key: data-diff-01-${{ github.sha }} | |
restore-keys: | | |
data-diff-01-${{ github.sha }} | |
data-diff-01 | |
# - name: deps cache | |
# uses: actions/cache@v3 | |
# with: | |
# path: build/deps/dload | |
# key: deps-${{ hashFiles('build/deps/dload/*') }} | |
# restore-keys: deps-${{ hashFiles('build/deps/dload/*') }} | |
- name: Cache pip packages | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
cache: 'pip' # caching pip dependencies | |
- name: prepare environment | |
run: util/prep-env.sh | |
- name: set apt conf | |
run: ${{env.APT_SET_CONF}} | |
- name: install dependencies | |
run: util/deps-pull.sh | |
- name: build & install the unmanaged dependencies | |
run: util/deps-build.sh | |
- name: Configure your rig | |
run: util/config.sh | |
- name: build generic | |
run: ./util/ci.sh 1 | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: SolOptXMR-ubuntu-latest | |
path: /home/runner/work/SolOptXMR/SolOptXMR/build/*.png | |
test-ubuntu: | |
needs: build-ubuntu | |
runs-on: ubuntu-latest | |
env: | |
CCACHE_TEMPDIR: /tmp/.ccache-temp | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
# Volatile cache | |
- name: ccache | |
uses: actions/cache@v3 | |
with: | |
path: ~/.ccache | |
key: ccache01-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.linkage }}-build-${{ github.sha }} | |
restore-keys: ccache01-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.linkage }}-build- | |
# Less volatile cache | |
- name: data cache | |
uses: actions/cache@v3 | |
with: | |
path: externals/tsqsim/build/data/data/txt | |
key: data-${{ hashFiles('externals/tsqsim/data/data/txt/**/*') }} | |
restore-keys: data-${{ hashFiles('externals/tsqsim/data/data/txt/**/*') }} | |
# Expendable, volatile & large cache | |
- name: diff cache | |
uses: actions/cache@v3 | |
with: | |
path: /tmp/diff_XMR.pkl | |
key: data-diff-01-${{ github.sha }} | |
restore-keys: | | |
data-diff-01-${{ github.sha }} | |
data-diff-01 | |
# - name: deps cache | |
# uses: actions/cache@v3 | |
# with: | |
# path: build/deps/dload | |
# key: deps-${{ hashFiles('build/deps/dload/*') }} | |
# restore-keys: deps-${{ hashFiles('build/deps/dload/*') }} | |
- name: Cache pip packages | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
cache: 'pip' # caching pip dependencies | |
- name: prepare environment | |
run: util/prep-env.sh | |
- name: set apt conf | |
run: ${{env.APT_SET_CONF}} | |
- name: install dependencies | |
run: util/deps-pull.sh | |
- name: build & install the unmanaged dependencies | |
run: util/deps-build.sh | |
- name: Configure your rig | |
run: util/config.sh | |
- name: build generic | |
run: ./util/ci.sh 1 | |
- name: Run production | |
run: python3 ./src/prod.py | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: SolOptXMR-ubuntu-latest | |
path: /home/runner/work/SolOptXMR/SolOptXMR/build/*.png | |
build-macos: | |
needs: test-ubuntu | |
runs-on: macOS-latest | |
env: | |
CCACHE_TEMPDIR: /tmp/.ccache-temp | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
# Volatile cache | |
- name: ccache | |
uses: actions/cache@v3 | |
with: | |
path: /Users/runner/Library/Caches/ccache | |
key: ccache03-${{ runner.os }}-${{ matrix.os }}-build-${{ github.sha }} | |
restore-keys: ccache03-${{ runner.os }}-${{ matrix.os }}-build- | |
# Less volatile cache | |
- name: data cache | |
uses: actions/cache@v3 | |
with: | |
path: build/data/data/txt | |
key: data-${{ hashFiles('build/data/data/txt/**/*') }} | |
restore-keys: data-${{ hashFiles('build/data/data/txt/**/*') }} | |
# Expendable, volatile & large cache | |
- name: diff cache | |
uses: actions/cache@v3 | |
with: | |
path: /tmp/diff_XMR.pkl | |
key: data-diff-01-${{ github.sha }} | |
restore-keys: | | |
data-diff-01-${{ github.sha }} | |
data-diff-01 | |
- name: Cache pip packages | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
cache: 'pip' # caching pip dependencies | |
- name: prepare environment | |
run: util/prep-env.sh | |
- name: install dependencies | |
run: util/deps-pull.sh | |
- name: build & install the unmanaged dependencies | |
run: util/deps-build.sh | |
- name: build generic | |
run: ./util/ci.sh 1 | |
test-macos: | |
needs: build-macos | |
runs-on: macOS-latest | |
timeout-minutes: 90 | |
continue-on-error: true # It will timeout and appear to have failed, so let's ignore the warning | |
env: | |
CCACHE_TEMPDIR: /tmp/.ccache-temp | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
# Volatile cache | |
- name: ccache | |
uses: actions/cache@v3 | |
with: | |
path: /Users/runner/Library/Caches/ccache | |
key: ccache03-${{ runner.os }}-${{ matrix.os }}-build-${{ github.sha }} | |
restore-keys: ccache03-${{ runner.os }}-${{ matrix.os }}-build- | |
# Less volatile cache | |
- name: data cache | |
uses: actions/cache@v3 | |
with: | |
path: build/data/data/txt | |
key: data-${{ hashFiles('build/data/data/txt/**/*') }} | |
restore-keys: data-${{ hashFiles('build/data/data/txt/**/*') }} | |
# Expendable, volatile & large cache | |
- name: diff cache | |
uses: actions/cache@v3 | |
with: | |
path: /tmp/diff_XMR.pkl | |
key: data-diff-01-${{ github.sha }} | |
restore-keys: | | |
data-diff-01-${{ github.sha }} | |
data-diff-01 | |
- name: Cache pip packages | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
cache: 'pip' # caching pip dependencies | |
- name: prepare environment | |
run: util/prep-env.sh | |
- name: install dependencies | |
run: util/deps-pull.sh | |
- name: build & install the unmanaged dependencies | |
run: util/deps-build.sh | |
- name: build generic | |
run: ./util/ci.sh | |
- name: Run production | |
run: python3 ./src/prod.py | |