nmfs-ost/ss3-source-code

[Feature]: Test using new ADMB Docker images for building SS3

iantaylor-NOAA opened this issue · 9 comments

Issue description

Thanks to @johnoel, ADMB is now available as a Docker image. I think this means we could replace most of this code for installing ADMB https://github.com/nmfs-stock-synthesis/stock-synthesis/blob/main/.github/workflows/build-ss3.yml#L37-L80 with an updated version that uses the Docker images.

No need to explore this prior to the upcoming SS3 release.

Summary of issue history, discussion, and major aspects of code development

Related to previous changes in workflows that compile SS3 and previous changes among ADMB versions.

Items to do

  • Create a branch
  • Try changing the workflow files
  • See how long the github actions take
  • Confirm that model results are the same

Does documentation already exist in the SS3 User Manual?

Yes, the link to the section in the SS3 User Manual is provided below.

Documentation to add to the SS3 User Manual OR link to existing documentation

No change to documentation needed.

Are r4ss changes needed?

No, this issue doesn't require changes to r4ss

Are SSI changes needed?

No, this issue doesn't require changes to SSI

@iantaylor-NOAA could you provide a link to the ADMB docker image?

For the most part, that part of the code is just grabbing the admb executable. The part where the container might be helpful is with the mac portion since that workflow is actually compiling admb. But that would require the container to be using a mac machine instead of a linux machine which is what container usually use.

@e-gugliotti-NOAA, sorry, forgot to include the link to the new ADMB docker images in the original post: https://github.com/admb-project/admb/tree/main/scripts/docker.

@johnoel, after reading https://github.com/admb-project/admb/tree/main/scripts/docker, I'm a little confused on whether the end result would be an executable that we would run natively on MacOS or whether it could only be run within the Docker image (which is probably fine but would require a shift in the workflow).

@johnoel, correction, I meant after reading the Quick Start Unix instructions: https://github.com/admb-project/admb/blob/main/scripts/docker/quickstart-unix.md.

@johnoel Will you be making a docker image for MacOS as well?

There is no official Docker support for creating a MacOS image. You can use a 3rd party app which if I understand it uses a remote server to build the native MacOS executable. So, there won't be a ADMB Docker Image for the MacOS until it is has official support. The only option is to run ADMB programs using Linux image which works very well.

The quickstarts have been updated. Please give them a try....

Completed with PR #552 and #568.