Issue971

Title Find a way to run CPLEX during Github actions
Priority feature Status resolved
Superseder Nosy List florian, jendrik, malte, patfer, silvan
Assigned To Keywords infrastructure
Optional summary
blocker for issue940

TODO:
* ~~Look at the CPLEX licenses~~
* ~~Wait for response from IBM~~
* ~~See if self-hosted runners are an option~~

Created on 2020-07-01.11:50:15 by florian, last changed by silvan.

Summary
blocker for issue940

TODO:
* Look at the CPLEX licenses
* Wait for response from IBM
* See if self-hosted runners are an option
Files
File name Uploaded Type Edit Remove
Dockerfile patfer, 2020-07-02.18:27:30 application/octet-stream
Dockerfile patfer, 2020-07-02.18:58:01 application/octet-stream
international-program-license-agreement.txt silvan, 2020-07-03.17:34:09 text/plain
license-information.txt silvan, 2020-07-03.17:34:20 text/plain
Messages
msg9930 (view) Author: silvan Date: 2021-01-29.09:30:19
I opened issue1001 for replacing buildbot by Github actions. There, we have to look into Windows support for CPLEX.
msg9906 (view) Author: silvan Date: 2021-01-28.19:27:54
The Fast Downward wiki? I don't think we have anything there. I added a stub at
http://www.fast-downward.org/ForDevelopers/GithubActions to collect information on Github actions. I think filling the information there should be part of issue940.
msg9903 (view) Author: malte Date: 2021-01-28.19:18:02
I have no objections either. Do we need info on the wiki that says something about Github actions? Or perhaps we have that already?
msg9902 (view) Author: jendrik Date: 2021-01-28.19:04:17
I agree with Silvan.
msg9894 (view) Author: silvan Date: 2021-01-28.17:58:34
We didn't do this for SoPlex neither; I think running LP solvers on Windows could belong to the new issue "replace buildbot by Github actions" which I suggested to open in issue940.
msg9892 (view) Author: patfer Date: 2021-01-28.17:49:44
I agree, but if we close it, we should directly add an issue for running LP on windows with GitHub actions.
msg9889 (view) Author: silvan Date: 2021-01-28.17:08:32
Similar in spirit to issue970 (Find a way to run SoPlex during Github actions), I would consider this issue done. The part with how to run LP solvers on Windows is another story which holds for all three LP solvers we want to support.

Any objections?
msg9586 (view) Author: jendrik Date: 2020-07-10.19:16:26
Add TODO: Find out how to compile the planner with CPLEX on Windows on the command line in GitHub Actions.
msg9564 (view) Author: malte Date: 2020-07-09.14:54:11
Indeed, that was a requirement by IBM, and of course it also makes sense.
msg9549 (view) Author: silvan Date: 2020-07-09.11:36:29
Malte said that when running CPLEX in Github actions, we should make sure that everyone with admin access on the Github repo is registered in the IBM academic initiative.
msg9481 (view) Author: jendrik Date: 2020-07-06.13:59:56
I think this answer resolves all TODOs.
msg9480 (view) Author: jendrik Date: 2020-07-06.13:58:23
We got an answer from IBM:

"The Academic Initiative license doesn't restrict on which or how many machines you can run CPLEX.  So I don't see an issue with running it in GitHub. Of course, you should protect the software from unauthorized access, as all users running it must be registered in the Academic Initiative program."
msg9457 (view) Author: silvan Date: 2020-07-03.17:34:09
Regarding the other alternative of running CPLEX in non-self-hosted github actions, I  managed to obtain the license (however, for version 12.10; we only tested up to version 12.9). After having a first look at the license, it seems to me that only ยง3 is related to what we are granted to do with the program, and it remains quite unspecific. Most of the other parts are related to judicial things as far as I understand. I'll have a closer look on Monday.
msg9419 (view) Author: patfer Date: 2020-07-02.18:58:01
(Dockerfile uses now the github api)
msg9417 (view) Author: patfer Date: 2020-07-02.18:27:10
Update about self-hosted runners:
Yes they would work!
- github workflow allows to assign jobs to specific (e.g. one for SOPLEX, 
CPLEX) self hosted runners
- job should not run on pull request due to security issues (arbitrary code of 
peoples PR should not be executed on our machines)
- I have a docker prototype that sets up a self hosted runner and registers it 
with the repository.

- Todo: To register a self-hosted runner, each runner gets its own access 
token. The prototype requires the user to enter those tokens manually. I am 
now able to use the github api and will tomorrow automate this.
- Todo (after the previous todo): let a docker magician improve the Dockerfile
History
Date User Action Args
2021-01-29 09:30:19silvansetstatus: chatting -> resolved
messages: + msg9930
summary: blocker for issue940 TODO: * ~~Look at the CPLEX licenses~~ * ~~Wait for response from IBM~~ * ~~See if self-hosted runners are an option~~ * Find out how to compile the planner with CPLEX on Windows on the command line in GitHub Actions -> blocker for issue940 TODO: * ~~Look at the CPLEX licenses~~ * ~~Wait for response from IBM~~ * ~~See if self-hosted runners are an option~~
2021-01-28 19:27:54silvansetmessages: + msg9906
2021-01-28 19:18:02maltesetmessages: + msg9903
2021-01-28 19:04:17jendriksetmessages: + msg9902
2021-01-28 17:58:34silvansetmessages: + msg9894
2021-01-28 17:49:44patfersetmessages: + msg9892
2021-01-28 17:08:32silvansetmessages: + msg9889
2020-07-10 19:16:26jendriksetmessages: + msg9586
summary: blocker for issue940 TODO: * ~~Look at the CPLEX licenses~~ * ~~Wait for response from IBM~~ * ~~See if self-hosted runners are an option~~ -> blocker for issue940 TODO: * ~~Look at the CPLEX licenses~~ * ~~Wait for response from IBM~~ * ~~See if self-hosted runners are an option~~ * Find out how to compile the planner with CPLEX on Windows on the command line in GitHub Actions
2020-07-09 14:54:11maltesetmessages: + msg9564
2020-07-09 11:36:29silvansetmessages: + msg9549
2020-07-06 13:59:56jendriksetmessages: + msg9481
summary: blocker for issue940 TODO: * Look at the CPLEX licenses * Wait for response from IBM * See if self-hosted runners are an option -> blocker for issue940 TODO: * ~~Look at the CPLEX licenses~~ * ~~Wait for response from IBM~~ * ~~See if self-hosted runners are an option~~
2020-07-06 13:58:23jendriksetmessages: + msg9480
2020-07-03 17:34:20silvansetfiles: + license-information.txt
2020-07-03 17:34:10silvansetfiles: + international-program-license-agreement.txt
messages: + msg9457
2020-07-02 18:58:01patfersetfiles: + Dockerfile
messages: + msg9419
2020-07-02 18:27:30patfersetfiles: + Dockerfile
2020-07-02 18:27:10patfersetstatus: unread -> chatting
nosy: + patfer
messages: + msg9417
2020-07-02 17:21:50floriansetpriority: meta -> feature
keyword: + infrastructure
summary: TODO: * Look at the CPLEX licenses * Wait for response from IBM * See if self-hosted runners are an option -> blocker for issue940 TODO: * Look at the CPLEX licenses * Wait for response from IBM * See if self-hosted runners are an option
2020-07-01 13:05:20silvansetnosy: + silvan
2020-07-01 11:50:15floriancreate