name: Build and test GAM on: push: branches: [ master ] schedule: - cron: '37 22 * * *' defaults: run: shell: bash env: BUILD_PYTHON_VERSION: "3.9.0" MIN_PYTHON_VERSION: "3.9.0" BUILD_OPENSSL_VERSION: "1.1.1h" MIN_OPENSSL_VERSION: "1.1.1h" PATCHELF_VERSION: "0.11" PYINSTALLER_COMMIT: "5bc2c4620bfc5dde5a76a007c7ff50ee74223ca5" jobs: build: runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-16.04, ubuntu-18.04, ubuntu-20.04, macos-10.15, windows-2016, windows-2019] include: - goal: "test" python: "3.6" - goal: "test" python: "3.7" - goal: "test" python: "3.8" steps: - uses: actions/checkout@master with: persist-credentials: false fetch-depth: 0 - name: Cache multiple paths uses: actions/cache@v2 if: matrix.goal == 'test' with: path: | ~/python ~/ssl key: ${{ matrix.os }} - name: Build and install Python/OpenSSL if: steps.cache-primes.outputs.cache-hit != 'true' run: | set +e if [ "${RUNNER_OS}" == "macOS" ]; then export GAMOS="macos" else export GAMOS=$"${RUNNER_OS,,}" fi if [ "${ImageOS}" == "win16" ]; then export PLATFORM="x86"; else export PLATFORM="x86_64" fi echo "GAMOS=${GAMOS}" >> $GITHUB_ENV echo "PLATFORM=${PLATFORM}" >> $GITHUB_ENV cd src source travis/${GAMOS}-before-install.sh echo "python=$python" >> $GITHUB_ENV echo "pip=$pip" >> $GITHUB_ENV echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" >> $GITHUB_ENV - name: Build GAM run: | set +e cd src source travis/${GAMOS}-install.sh