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

ci: upload client with bundled server as artifact #169

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

samcowger
Copy link
Contributor

@samcowger samcowger commented Feb 21, 2025

Following up on #130, which has gone stale. This aims to copy the server binary and Cerberus runtime files directly into cn-client, bundle the client with those files included, then upload the resulting .vsix file. I hope this will allow a user to download that one file and install it directly, without having to build the client or the server themselves. Because these files are included with the client in a known location, the client will know how to point the server at them, which solves the problem mentioned in #130 (comment).

This PR is a draft for a few reasons:

  • It involves CI experimentation, so I anticipate pushing changes to it to see how CI reacts
  • This only compiles the server and client in Ubuntu, but if that works, I'll want to update it to do so in macOS
  • This doesn't bother trying to statically link the server binary (e.g. by following the procedure in "Generating static and portable executables with OCaml"), and I don't know how/if that binary will break if it's downloaded and run locally

@samcowger samcowger force-pushed the sc/ci-dist branch 2 times, most recently from 4d2ea02 to 2bc8d67 Compare February 21, 2025 22:16
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