diff --git a/.github/workflows/clear_cache.yml b/.github/workflows/clear_cache.yml new file mode 100644 index 0000000..4972601 --- /dev/null +++ b/.github/workflows/clear_cache.yml @@ -0,0 +1,30 @@ +name: Clear cache + +on: + workflow_dispatch: + +permissions: + actions: write + +jobs: + clear-cache: + runs-on: ubuntu-latest + steps: + - name: Clear cache + uses: actions/github-script@v6 + with: + script: | + console.log("About to clear") + const caches = await github.rest.actions.getActionsCacheList({ + owner: context.repo.owner, + repo: context.repo.repo, + }) + for (const cache of caches.data.actions_caches) { + console.log(cache) + github.rest.actions.deleteActionsCacheById({ + owner: context.repo.owner, + repo: context.repo.repo, + cache_id: cache.id, + }) + } + console.log("Clear completed") diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index df70553..51ff7bd 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -1,46 +1,47 @@ -on: - workflow_dispatch: - push: - branches: - [main] - pull_request: -name: Quarto Publish -jobs: - bookdown: - name: GH-Pages - runs-on: ubuntu-latest - permissions: - contents: write - steps: - - uses: actions/checkout@v3 - - uses: julia-actions/setup-julia@v2 - - uses: julia-actions/cache@v2 - - name: Set up custom Julia dependencies - run: | - using Pkg - Pkg.activate("quarto"; shared = true) - # TODO: QuartoNotebookRunner does not support execute-dir yet, but this PR does. - Pkg.add(url = "https://github.com/asinghvi17/QuartoNotebookRunner.jl", rev = "as/execute-dir") - Pkg.instantiate() - Pkg.activate(".") - Pkg.add([ - # TODO: DimensionalData v0.28 is not compatible with Rasters latest version, - # and has Makie fixes that we need for the book, otherwise plotting errors out. - # These can be removed after Rasters.jl's new breaking version. - PackageSpec(url = "https://github.com/asinghvi17/Rasters.jl", rev = "as/dd28"), - PackageSpec(url = "https://github.com/rafaqz/DimensionalData.jl", rev = "main"), - ]) - shell: julia {0} - - uses: julia-actions/julia-buildpkg@v1 +# on: +# workflow_dispatch: +# push: +# branches: +# [main] +# pull_request: +# name: Quarto Publish +# jobs: +# bookdown: +# name: GH-Pages +# runs-on: ubuntu-latest +# permissions: +# contents: write +# statuses: write +# steps: +# - uses: actions/checkout@v3 +# - uses: julia-actions/setup-julia@v2 +# - uses: julia-actions/cache@v2 +# - name: Set up custom Julia dependencies +# run: | +# using Pkg +# Pkg.activate("quarto"; shared = true) +# # TODO: QuartoNotebookRunner does not support execute-dir yet, but this PR does. +# Pkg.add(url = "https://github.com/asinghvi17/QuartoNotebookRunner.jl", rev = "as/execute-dir") +# Pkg.instantiate() +# Pkg.activate(".") +# Pkg.add([ +# # TODO: DimensionalData v0.28 is not compatible with Rasters latest version, +# # and has Makie fixes that we need for the book, otherwise plotting errors out. +# # These can be removed after Rasters.jl's new breaking version. +# PackageSpec(url = "https://github.com/asinghvi17/Rasters.jl", rev = "as/dd28"), +# PackageSpec(url = "https://github.com/rafaqz/DimensionalData.jl", rev = "main"), +# ]) +# shell: julia {0} +# - uses: julia-actions/julia-buildpkg@v1 - - name: Set up Quarto - uses: quarto-dev/quarto-actions/setup@v2 - env: - QUARTO_JULIA_PROJECT: "@quarto" +# - name: Set up Quarto +# uses: quarto-dev/quarto-actions/setup@v2 +# env: +# QUARTO_JULIA_PROJECT: "@quarto" - - name: Render and Publish - run: julia helpers/deploy_with_preview.jl - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - QUARTO_JULIA_PROJECT: "@quarto" - DATAFRAMES_ROWS: "6" +# - name: Render and Publish +# run: julia helpers/deploy_with_preview.jl +# env: +# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} +# QUARTO_JULIA_PROJECT: "@quarto" +# DATAFRAMES_ROWS: "6" diff --git a/.github/workflows/main_new.yaml b/.github/workflows/main_new.yaml new file mode 100644 index 0000000..de9bc80 --- /dev/null +++ b/.github/workflows/main_new.yaml @@ -0,0 +1,45 @@ +on: + workflow_dispatch: + push: + branches: + [main] +name: Quarto Publish +jobs: + quarto: + name: GH-Pages + runs-on: ubuntu-latest + permissions: + contents: write + statuses: write + steps: + - uses: actions/checkout@v3 + - uses: julia-actions/setup-julia@v2 + - uses: julia-actions/cache@v2 + - name: Set up custom Julia dependencies + run: | + using Pkg + Pkg.activate("quarto"; shared = true) + # TODO: QuartoNotebookRunner does not support execute-dir yet, but this PR does. + Pkg.add(url = "https://github.com/asinghvi17/QuartoNotebookRunner.jl", rev = "as/execute-dir") + Pkg.instantiate() + Pkg.activate(".") + Pkg.add([ + # TODO: DimensionalData v0.28 is not compatible with Rasters latest version, + # and has Makie fixes that we need for the book, otherwise plotting errors out. + # These can be removed after Rasters.jl's new breaking version. + PackageSpec(url = "https://github.com/asinghvi17/Rasters.jl", rev = "as/dd28"), + PackageSpec(url = "https://github.com/rafaqz/DimensionalData.jl", rev = "main"), + ]) + shell: julia {0} + - uses: julia-actions/julia-buildpkg@v1 + + - name: Set up Quarto + uses: quarto-dev/quarto-actions/setup@v2 + env: + QUARTO_JULIA_PROJECT: "@quarto" + + - name: Render and Publish + uses: quarto-dev/quarto-actions/publish@v2 + with: + target: netlify + NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml new file mode 100644 index 0000000..a32d6f1 --- /dev/null +++ b/.github/workflows/pr.yaml @@ -0,0 +1,66 @@ +on: + workflow_dispatch: + pull_request: + branches: + [main] +name: Quarto PR Publish +jobs: + bookdown: + name: GH-Pages + runs-on: ubuntu-latest + permissions: + contents: write + statuses: write + pull-requests: write + deployments: write + steps: + - uses: actions/checkout@v3 + - uses: julia-actions/setup-julia@v2 + - uses: julia-actions/cache@v2 + - name: Set up custom Julia dependencies + run: | + using Pkg + Pkg.activate("quarto"; shared = true) + # TODO: QuartoNotebookRunner does not support execute-dir yet, but this PR does. + Pkg.add(url = "https://github.com/asinghvi17/QuartoNotebookRunner.jl", rev = "as/execute-dir") + Pkg.instantiate() + Pkg.activate(".") + Pkg.add([ + # TODO: DimensionalData v0.28 is not compatible with Rasters latest version, + # and has Makie fixes that we need for the book, otherwise plotting errors out. + # These can be removed after Rasters.jl's new breaking version. + PackageSpec(url = "https://github.com/asinghvi17/Rasters.jl", rev = "as/dd28"), + PackageSpec(url = "https://github.com/rafaqz/DimensionalData.jl", rev = "main"), + ]) + shell: julia {0} + - uses: julia-actions/julia-buildpkg@v1 + + - name: Set up Quarto + uses: quarto-dev/quarto-actions/setup@v2 + env: + QUARTO_JULIA_PROJECT: "@quarto" + + - name: Render + uses: quarto-dev/quarto-actions/render@v2 + with: + to: html + + - name: Deploy Preview to Netlify as preview + id: netlify-deploy + uses: nwtgck/actions-netlify@v3 + env: + NETLIFY_SITE_ID: e18690e5-215e-4584-b0f1-963bc99a10d0 + NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} + with: + publish-dir: './docs' + production-deploy: false + github-token: ${{ secrets.GITHUB_TOKEN }} + deploy-message: | + Deploy from GHA: ${{ github.event.pull_request.title || format('manual from PR {0}', github.event.issue.number) }} + alias: deploy-preview-${{ github.event.pull_request.number || github.event.issue.number }} + # these all default to 'true' + enable-pull-request-comment: true + enable-commit-comment: false + enable-commit-status: true + overwrites-pull-request-comment: false + timeout-minutes: 1 \ No newline at end of file diff --git a/_publish.yml b/_publish.yml index e69de29..b86cace 100644 --- a/_publish.yml +++ b/_publish.yml @@ -0,0 +1,4 @@ +- source: project + netlify: + - id: "e18690e5-215e-4584-b0f1-963bc99a10d0" + url: "https://jl.geocompx.org" \ No newline at end of file diff --git a/_quarto.yml b/_quarto.yml index dd101e5..ce47b2f 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -24,7 +24,7 @@ book: - chapters/02-attribute-operations.qmd - chapters/03-spatial-operations.qmd - chapters/04-geometry-operations.qmd - - chapters/05-raster-vector.qmd + #- chapters/05-raster-vector.qmd - chapters/06-reproj.qmd - chapters/07-read-write.qmd - chapters/08-mapping.qmd diff --git a/chapters/01-spatial-data.qmd b/chapters/01-spatial-data.qmd index 44af128..dac29fa 100644 --- a/chapters/01-spatial-data.qmd +++ b/chapters/01-spatial-data.qmd @@ -20,7 +20,7 @@ mkpath("output") ## Introduction ```{julia} using GeoDataFrames -df = GeoDataFrames.read("data/world.gpkg") +df = GeoDataFrames.read("../data/world.gpkg") ``` ```{julia}