Merge pull request #69 from akrherz/gh44_units #159
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: Install and Test | |
on: | |
pull_request: | |
branches: | |
- main | |
push: | |
branches: | |
- main | |
jobs: | |
build-linux: | |
name: Python (${{ matrix.PYTHON_VERSION }}) | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
# Ensures environment gets sourced right | |
shell: bash -l {0} | |
strategy: | |
matrix: | |
PYTHON_VERSION: ["3.12"] | |
env: | |
PYTHON_VERSION: ${{ matrix.PYTHON_VERSION }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Add /etc/hosts entries | |
run: | | |
cat .github/workflows/etchosts.txt | sudo tee -a /etc/hosts | |
# setup conda-forge with micromamba | |
- name: Setup Python | |
uses: mamba-org/setup-micromamba@v2 | |
with: | |
environment-file: environment.yml | |
condarc: | | |
channels: | |
- conda-forge | |
- defaults | |
create-args: >- | |
python=${{ env.PYTHON_VERSION }} | |
environment-name: prod | |
cache-environment: true | |
- name: Setup IEMFarm Environment | |
run: | | |
set -e | |
git clone --depth 1 https://github.com/akrherz/iem-database.git database | |
git clone --depth 1 https://github.com/akrherz/ci_tooling.git .ci_tooling | |
cd .ci_tooling | |
. postgres.sh | |
. iemwebfarm.sh | |
cd .. | |
cd database; sh bootstrap.sh | |
python schema_manager.py | |
# Get memcached running | |
- name: Setup Memcached | |
run: | | |
set -e | |
cd .ci_tooling | |
. memcached.sh | |
- name: Configure Apache | |
run: | | |
set -e | |
sudo ln -s `pwd` /opt/depbackend | |
sudo cp config/apache-vhost-ci.conf /etc/apache2/sites-enabled/depbackend.conf | |
sudo systemctl restart apache2 | |
#- name: Debug with SSH | |
# uses: lhotari/action-upterm@v1 | |
- name: Run Website Request Tests | |
run: | | |
set -e | |
python -m pytest -v tests/test_website_requests.py | |
- name: View Apache Logs | |
if: failure() | |
run: | | |
sudo systemctl status apache2 -l | |
sudo cat /var/log/apache2/error.log | |
- name: View PHP-FPM Logs | |
if: failure() | |
run: | | |
sudo cat /var/log/php*-fpm.log |