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

docs: mention GitHub CI build artifacts in README #8541

Closed
ulysses4ever opened this issue Oct 20, 2022 · 9 comments · Fixed by #8914
Closed

docs: mention GitHub CI build artifacts in README #8541

ulysses4ever opened this issue Oct 20, 2022 · 9 comments · Fixed by #8914

Comments

@ulysses4ever
Copy link
Collaborator

We often have to reference them, so maybe adding a reference to the README could save us some effort...

@Mikolaj
Copy link
Member

Mikolaj commented Oct 20, 2022

Also, gitlab artifacts, citing @jneira:

https://discourse.haskell.org/t/request-for-testing-of-the-xdg-enabled-cabal-install/5200/3?u=jneira

and below in the same post is how to install from gitlab via ghcup (I wonder if one can install from github in this way and if there's any advantage).

@athas
Copy link
Collaborator

athas commented Oct 21, 2022

One way of doing this, which seems fairly common for other projects, is to have a GitHub "release" that is automatically updated on every commit. GitHub releases are mutable, so you only need a single one that you keep changing. This is pretty visible to users.

@Mikolaj
Copy link
Member

Mikolaj commented Nov 28, 2022

Yes, such a release would be much more convenient that artifacts hidden in some of the CI jobs. PR welcome (this requires tweaks to GHA scripts and some Settings changes presumably).

@athas
Copy link
Collaborator

athas commented Nov 28, 2022

Not sure about Settings, but it does require GHA additions. As inspiration for someone who wants to embark on this, here are the salient parts from another Haskell project.

I don't remember any downsides or problems, although you'll have a GitHub-side tag nightly that keeps changing. As long as the release is marked as a "prerelease", no automated tooling that checks for new Cabal versions should be confused by the constantly changing release.

@ulysses4ever
Copy link
Collaborator Author

I also think no need in settings is required. @athas could you submit a PR with that snippet you referenced? A point of bike shedding: I don't like the title/tag "nightly" because it feels like it updates once a day. I'd call it "latest".

@ulysses4ever
Copy link
Collaborator Author

We'll also need a sizeable update to the Readme. A new item under "Ways to get the cabal-install binary", perhaps: "Continuous Integration products", with three subitems: GitHub prerelease, GitHub binaries in every PR, and GitLab.

@athas
Copy link
Collaborator

athas commented Nov 28, 2022

A point of bike shedding: I don't like the title/tag "nightly" because it feels like it updates once a day. I'd call it "latest".

This colour is perhaps problematic because some tools use the string "latest" to refer to "the latest proper release". Maybe "snapshot" or "prerelease"?

@ulysses4ever
Copy link
Collaborator Author

Indeed. How about head? Currently, our upload-artifact action uses cabal-head as the name of the file. Otherwise, pick what you prefer from those two.

I looked a bit more in the config you referenced: you may need to copy more than what you highlighted in your link.

@Mikolaj
Copy link
Member

Mikolaj commented Dec 21, 2022

As a stop-gap before we have nightly pre-releases, would it make sense to extend building (no-assert) binaries on gitlab from all tags to all PR merges (if that's possible; alternatively, all pushes, that's almost the same)?

@bgamari: would that burden gitlab too much? We don't have a high traffic compared to GHC, I think.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants