Provide interactive debug shell #2
Workflow file for this run
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: Provide interactive debug shell | |
on: | |
workflow_dispatch: | |
jobs: | |
build: | |
# There were errors on Mac that would lead to non-stop printing of | |
# error messages forever instead of the job crashing. To prevent this, | |
# a timeout is placed here (default value is otherwise 360min). | |
# Usually, jobs currently run through in around 10min. | |
timeout-minutes: 45 | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
#os: [ubuntu-latest, macos-latest, windows-latest] | |
os: [macos-latest] | |
# see supported versions at | |
# https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json | |
python-version: [3.7, 3.8] | |
# test only the latest 3.x on mac | |
# test only the latest 3.x on windows | |
exclude: | |
- os: macos-latest | |
python-version: 3.7 | |
- os: windows-latest | |
python-version: 3.7 | |
env: | |
OS: ${{ matrix.os }} | |
PYTHON: ${{ matrix.python-version }} | |
steps: | |
- uses: actions/checkout@v2 | |
# ---------------- | |
# Install python and base packages | |
# ---------------- | |
- name: Set up Python ${{ matrix.python-version }} on ${{ runner.os }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Display python version | |
run: | | |
python -c "import sys; print(sys.version)" | |
- name: Display system information | |
run : | | |
python -c "import sys; print(sys.maxsize);" | |
python -c "import platform; print(platform.uname());" | |
python -c "import platform; print(platform.platform());" | |
python -c "import platform; print(platform.architecture());" | |
python -c "import platform; print(platform.processor());" | |
python -c "import platform; print(platform.python_compiler());" | |
- name: Upgrade basic packages | |
run: | | |
python -m pip install --upgrade pip setuptools wheel | |
# ---------------- | |
# Set up pip cache | |
# ---------------- | |
- name: Get Date | |
id: get-date | |
run: | | |
echo "::set-output name=date::$(/bin/date -u "+%Y%m%d")" | |
shell: bash | |
- uses: actions/cache@v1 | |
if: startsWith(runner.os, 'Linux') | |
with: | |
path: ~/.cache/pip | |
key: ${{ runner.os }}-pip-${{ steps.get-date.outputs.date }}-${{ hashFiles('**/requirements.txt') }} | |
restore-keys: | | |
${{ runner.os }}-pip- | |
- uses: actions/cache@v1 | |
if: startsWith(runner.os, 'macOS') | |
with: | |
path: ~/Library/Caches/pip | |
key: ${{ runner.os }}-pip-${{ steps.get-date.outputs.date }}-${{ hashFiles('**/requirements.txt') }} | |
restore-keys: | | |
${{ runner.os }}-pip- | |
- uses: actions/cache@v1 | |
if: startsWith(runner.os, 'Windows') | |
with: | |
path: ~\AppData\Local\pip\Cache | |
key: ${{ runner.os }}-pip-${{ steps.get-date.outputs.date }}-${{ hashFiles('**/requirements.txt') }} | |
restore-keys: | | |
${{ runner.os }}-pip- | |
# ---------------- | |
# Install library | |
# ---------------- | |
- name: Install library | |
run: | | |
pip install .[dev] | |
# ---------------- | |
# Enable tmate ssh | |
# ---------------- | |
- name: Setup tmate session | |
uses: mxschmitt/action-tmate@v3 |