quarto-dev / quarto-actions

GNU General Public License v2.0
228 stars 53 forks source link

Trouble setting Quarto CI up #79

Closed kellertuer closed 10 months ago

kellertuer commented 1 year ago

I am trying to render my Julia Tutorials written in Quarto in CI to not commit the Markdown files longer.

But besides not knowing whether quarto brings Python/Jupyter with itself or I have to install that as well on CI (net yet sure how), it for now does not find the folder.

The repository is this

https://github.com/JuliaManifolds/Manopt.jl/tree/kellertuer/quarto-ci

the tutorials are in the tutorials/ folder (also the quarto config), but neither with not without trailing / that folder seems to be found with

https://github.com/JuliaManifolds/Manopt.jl/blob/98950441c56da211cbc26dfeb803e76546264ec9/.github/workflows/documenter.yml#L12-L21

see

https://github.com/JuliaManifolds/Manopt.jl/actions/runs/5098182999/jobs/9165174924#step:4:1

So I am not sure how I would correctly specify that I wan to render all files in that folder?

cderv commented 1 year ago

But besides not knowing whether quarto brings Python/Jupyter with itself or I have to install that as well on CI (net yet sure how)

Quarto does not come with R, nor Python, Julia or Jupyter. You need to set up by yourself.

We did not make it part of the action itself to not install by default for all because it depends on each project. Some use Conda, or other python installation.

You can use any Github actions in market place that can help you with this, or install with your own command.

We give some examples in our doc: https://quarto.org/docs/publishing/github-pages.html#executing-code

We can probably add some examples of workflow in this repo though to help 🤔 Thanks for the feedback !

So I am not sure how I would correctly specify that I wan to render all files in that folder?

You did not checkout your repository. So on the github action runner, there is no file to render.

We should the step in the YAML example: https://github.com/quarto-dev/quarto-actions/blob/main/examples/quarto-publish-example.yml or in our doc like https://quarto.org/docs/publishing/github-pages.html#executing-code

but this is also basic Github action step, so you'll find some information on Github action own documentation https://docs.github.com/en/actions/learn-github-actions/understanding-github-actions#understanding-the-workflow-file

Hope it helps

kellertuer commented 1 year ago

I already noticed the missing checkout as well (stupid me), and I now moved to doing python dependencies with CondaPkg since I feel most comfortable with Julia stuff (and got some great help at the Julia Slack). So maybe my Julia-Quarto-Documenter-jl can serve as one example as well.

cderv commented 1 year ago

Awesome!

So maybe my Julia-Quarto-Documenter-jl can serve as one example as well.

Yes definitely !

kellertuer commented 1 year ago

Current status: The Julia started within Python/Jupyter that is started from a quarto call from within Julia (nooo, not a long route) complains still, but I am getting there ;)

kellertuer commented 1 year ago

The current state of GH Actions and the docs/make.jl actually do the job https://github.com/JuliaManifolds/Manopt.jl/pull/254 – though that might be simplified maybe (I am not that much an GH expert). I could write a short post about that somewhere (just that I myself do not have a blog or so).

cderv commented 1 year ago

Cool !

I could write a short post about that somewhere (just that I myself do not have a blog or so).

We have the example folder here: https://github.com/quarto-dev/quarto-actions/tree/main/examples

You could add to README your repo so show an example, or we could add a .md in the folder to show an example with Julia project. What do you think ? PR welcome !

kellertuer commented 1 year ago

I could write the idea and setup with code parts and link to the concrete example at the end maybe?

But and example in that folder sounds like a good idea.

cderv commented 1 year ago

Do as you think is the easiest for you. Personally I think

kellertuer commented 10 months ago

The PR of how to do this is open for a while so this is basically resolved.