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: Add CI and installation script #22

Open
1 of 2 tasks
Gonmeso opened this issue Sep 12, 2024 · 3 comments
Open
1 of 2 tasks

feat: Add CI and installation script #22

Gonmeso opened this issue Sep 12, 2024 · 3 comments
Labels
enhancement New feature or request

Comments

@Gonmeso
Copy link

Gonmeso commented Sep 12, 2024

Feature Request

Describe the Feature Request

As this is a CLI tool we need an easy way for developers to install and upgrade the CLI, making it so we need cargo to install this makes it harder to accomplish by agent developers.

I propose to create a CI/CD that compiles and generates the binary files for Giza most common systems (mainly MX MacOs - arm64) and we provide an easy way to install it, like scarb:

curl --proto '=https' --tlsv1.2 -sSf https://docs.swmansion.com/scarb/install.sh | sh

This way we abstract users on installing rust and more tools that probably the might not use.

Describe Preferred Solution

Taking a look into Scarb CI and create a similar one in order to provided this functionality as well as the installation script. This will then generate a release which will contain the binaries so its public (GitHub artifact) and easily to download

Describe Alternatives

Maybe do it by hand for as a first step

Additional Context

If the feature request is approved, would you be willing to submit a PR?
(Help can be provided if you need assistance submitting a PR)

  • Yes
  • No

cc: @raphaelDkhn @EduPonz

@Gonmeso Gonmeso added the enhancement New feature or request label Sep 12, 2024
@raphaelDkhn
Copy link
Collaborator

LGTM!

@EduPonz
Copy link

EduPonz commented Sep 12, 2024

This would be fantastic indeed! Once we have the installation script, we could upload it to the releases as an asset so users can curl/wget from the release directly; this is for instance how CMake does it. It seems automating release creation and uploading assets to them is rather straight forward:

I'd probably add the bootstrap script to the repo itself to get related things together.

@raphaelDkhn
Copy link
Collaborator

Sounds good!

I also like asdf, used by Scarb:
https://docs.swmansion.com/scarb/download.html#install-via-asdf

So we can easily manage different versions by adding to .tool-versions file:

scarb-agent 0.1.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants