Skip to content

Start Github Actions CI - #70

Merged
Robbybp merged 62 commits into
mainfrom
gha
Jul 18, 2026
Merged

Start Github Actions CI#70
Robbybp merged 62 commits into
mainfrom
gha

Conversation

@Robbybp

@Robbybp Robbybp commented May 4, 2026

Copy link
Copy Markdown
Owner

No description provided.

@Robbybp

Robbybp commented Jul 12, 2026

Copy link
Copy Markdown
Owner Author

I've added a reproduce.py script to the top-level of this repository. The CI workflow now runs this script to generate a subset of our results (and takes about 17 minutes). I'd still like to add some quick sanity checks to make sure the expected result files are generated. Maybe I'll even reproduce the full structural and solvetime results in CI, although this would likely take an hour or so.

@Robbybp Robbybp changed the title [WIP] Start Github Actions CI Start Github Actions CI Jul 14, 2026
Comment thread .github/workflows/ci.yml
sudo apt-get update
sudo apt-get install -y liblapack3 libblas3 gfortran

- name: Install latex

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Necessary for our matplotlib plotting scripts. The particular subpackages were chosen by trial-and-error as I didn't want to install an entire texlive distribution...

Comment thread .github/workflows/ci.yml
Comment on lines +38 to +41
python -m pip install pybind11 setuptools pyomo idaes-pse
pyomo download-extensions
pyomo build-extensions
idaes get-extensions --to $GITHUB_WORKSPACE/.idaes

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pyomo extensions are for libpynumeroASL and IDAES extensions are for libipopt. We install to a specific directory so we know where to set pkg-config and linker paths for CyIpopt later

Comment thread .github/workflows/ci.yml Outdated
Comment thread .github/workflows/ci.yml
tree $GITHUB_WORKSPACE/.idaes
echo "$GITHUB_WORKSPACE/.idaes/bin" >> "$GITHUB_PATH"
export PKG_CONFIG_PATH="$GITHUB_WORKSPACE/.idaes/lib/pkgconfig:$PKG_CONFIG_PATH"
python -m pip install ".[test]"

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here we are installing with latest dependency versions, per pyproject.toml. Alternatively, we could use the frozen environment from requirements.txt. I think I prefer using latest versions. If something starts failing, we can pin dependencies as necessary.

@Robbybp

Robbybp commented Jul 18, 2026

Copy link
Copy Markdown
Owner Author

I'm re-running with updated versions of dependencies. Once this is done, I'll update requirements.txt and merge this PR.

@Robbybp

Robbybp commented Jul 18, 2026

Copy link
Copy Markdown
Owner Author

I'm re-running with updated versions of dependencies. Once this is done, I'll update requirements.txt and merge this PR.

Scratch that. I'm keeping the "official dependencies" as is. This is mostly because of a large increase in elimination time for our pipeline runtime benchmark.

@Robbybp
Robbybp merged commit 73f5a47 into main Jul 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant