diff --git a/.github/htmldocs/index.html b/.github/htmldocs/index.html new file mode 100644 index 0000000..eb43b87 --- /dev/null +++ b/.github/htmldocs/index.html @@ -0,0 +1,71 @@ + + + + + + + Rustframe + + + + + +
+

+ Rustframe Logo
+ Rustframe +

+

A lightweight dataframe & math toolkit for Rust

+

+ 📚 Docs +

+ 🦀 Crates.io | + 🔖 docs.rs +

+ 🐙 GitHub | + 🌐 Gitea mirror +

+
+ + + \ No newline at end of file diff --git a/.github/workflows/docs-and-testcov.yml b/.github/workflows/docs-and-testcov.yml index 8ace0a8..81a184f 100644 --- a/.github/workflows/docs-and-testcov.yml +++ b/.github/workflows/docs-and-testcov.yml @@ -6,10 +6,14 @@ concurrency: on: push: - branches: [main] + branches: [main, docs_page] # pull_request: # branches: [main] workflow_dispatch: + workflow_run: + workflows: ["run-benchmarks"] + types: + - completed permissions: contents: read @@ -100,6 +104,30 @@ jobs: <(echo '{}') \ > last-commit-date.json + - name: Download last available benchmark report + run: | + artifact_url=$(gh api -H "Accept: application/vnd.github+json" \ + /repos/${{ github.repository }}/actions/artifacts \ + | jq -r '.artifacts[] | select(.name | startswith("benchmark-reports")) | .archive_download_url' | head -n 1) + + if [ -z "$artifact_url" ]; then + echo "No benchmark artifact found!" + exit 1 + fi + + curl -L -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \ + -o benchmark-report.zip "$artifact_url" + + mkdir -p benchmark-report + unzip benchmark-report.zip -d benchmark-report + # there will be a tar file in the benchmark-report directory + # called artifact.tar. unzip it into the benchmark-report + tar -xvf benchmark-report/artifact.tar -C benchmark-report + # remove the artifact.tar file + rm benchmark-report/artifact.tar + # add an index.html that points to benchmark-report/report/index.html + echo "" > benchmark-report/index.html + - name: Copy files to output directory run: | # mkdir docs @@ -116,6 +144,9 @@ jobs: echo "" > target/doc/index.html touch target/doc/.nojekyll + # copy the benchmark report to the output directory + cp -r benchmark-report target/doc/ + # verify that logo exists in the output directory - name: Verify logo directory run: | diff --git a/.github/workflows/run-benchmarks.yml b/.github/workflows/run-benchmarks.yml index 50ec98c..baea81a 100644 --- a/.github/workflows/run-benchmarks.yml +++ b/.github/workflows/run-benchmarks.yml @@ -1,4 +1,4 @@ -name: Run benchmarks +name: run-benchmarks on: workflow_dispatch: