Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: solvers package #302

Merged
merged 28 commits into from
Jun 6, 2024
Merged

feat: solvers package #302

merged 28 commits into from
Jun 6, 2024

Conversation

karmacoma-eth
Copy link
Collaborator

a minimalist Docker image with a few high perf SMT solvers ready to go

@karmacoma-eth karmacoma-eth requested a review from daejunpark June 4, 2024 23:47
workflow_dispatch:
push:
branches:
- feat-packages
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

this is needed until the workflow is merged to main, can't manually dispatch from a branch

@daejunpark daejunpark requested a review from mattg-a16z June 5, 2024 01:18
run: docker build . --file packages/solvers/Dockerfile --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}"

- name: Log in to registry
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
Copy link
Collaborator

@daejunpark daejunpark Jun 5, 2024

Choose a reason for hiding this comment

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

@mattg-a16z just to double check, do you have any security concerns with this authentication method?

@daejunpark
Copy link
Collaborator

@pillip do you have any feedback on this docker file and publishing method?

Copy link
Collaborator

@daejunpark daejunpark left a comment

Choose a reason for hiding this comment

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

looks good to me, thank you! let's have others take a look as well, as i have no experience with docker. 😅

Copy link
Contributor

@pillip pillip left a comment

Choose a reason for hiding this comment

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

LGTM!
The dockerfile and github workflow looks well-organized and solid 👍 👍 👍

I have left a few nit comments you might want to take a look at.
It would be grate if you could check :)

# Install Yices from the release binaries
WORKDIR /yices
ARG YICES_VERSION=2.6.4
RUN wget https://github.com/SRI-CSL/yices2/releases/download/Yices-2.6.4/yices-${YICES_VERSION}-x86_64-pc-linux-gnu.tar.gz -O yices.tar.gz && \
Copy link
Contributor

Choose a reason for hiding this comment

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

nit :
I suggest changing the wget URL address to https://github.com/SRI-CSL/yices2/releases/download/Yices-${YICES_VERSION}/yices-${YICES_VERSION}-x86_64-pc-linux-gnu.tar.gz
for simplify the process of upgrading or modifying the version of Yices

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ah you're right I missed a spot

packages/solvers/Dockerfile Outdated Show resolved Hide resolved
rm -rf /boolector

# Create the final image
FROM ubuntu:24.04
Copy link
Contributor

Choose a reason for hiding this comment

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

nit:
Is there a specific reason for using different Ubuntu versions between the final image and the builder?

If there is no specific reason, it would be better to unify them. This can help streamline the build process and reduce potential compatibility issues.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I wasn't able to build yices on 24.04, but since we moved to binary releases it should be fine. I'll unify on 24.04

@karmacoma-eth karmacoma-eth merged commit 338b8ea into main Jun 6, 2024
54 checks passed
@karmacoma-eth karmacoma-eth deleted the feat-packages branch June 6, 2024 21:26
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.

3 participants