copasi/cloud-copasi

Change the CopasiSE "install" to download all the platform binaries (and symlink as needed).

bdklahn opened this issue · 1 comments

Change the following to, instead, simply download all platforms under ~/copasi, and create any necessary symlink (e.g. for brusselator test).

cloud-copasi/Dockerfile

Lines 21 to 28 in 0376aa9

WORKDIR /usr/local/bin
ENV copasi_version="4.34" copasi_build="251"
RUN curl -L https://github.com/copasi/COPASI/releases/download/Build-${copasi_build}/COPASI-${copasi_version}.${copasi_build}-AllSE.tar.gz | \
tar -xvz --strip-components=2 "COPASI-${copasi_version}.${copasi_build}-AllSE/Linux64/CopasiSE" && chmod +x CopasiSE
# The current expected location of the CopasiSE binary (Is it better to just download it here, in the first place?)
WORKDIR /home/cloudcopasi/copasi/bin
RUN ln -s /usr/local/bin/CopasiSE

With the added platform directories level, we may need to modify server code to accomodate(?).

I just want to make sure 11d176f looks like it should work, before closing this.
Can others (@hasanbaig @pmendes ) confirm, this would be ok (for now?)?
e.g.

root@3bf2c126c193:/home/cloudcopasi# ls -R copasi/
copasi/:
Darwin  Linux  Linux64  WIN32  WIN64  bin

copasi/Darwin:
CopasiSE

copasi/Linux:
CopasiSE

copasi/Linux64:
CopasiSE

copasi/WIN32:
CopasiSE.exe

copasi/WIN64:
CopasiSE.exe

copasi/bin:
CopasiSE
root@3bf2c126c193:/home/cloudcopasi# ls -lh copasi/bin/CopasiSE 
lrwxrwxrwx 1 root root 19 Mar  4 01:43 copasi/bin/CopasiSE -> ../Linux64/CopasiSE

BTW, the copasi version will be apparent in the Dockerfile snapshot (and pinned for a given container tag), as well as be available from the running environment as copasi_version and copasi_build (and, of course, be apparent in the output from running ./CopasiSE)