diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..22358de --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,55 @@ +name: Deploy + +on: + push: + branches: [main, artifinder] + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: pages + cancel-in-progress: false + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + + - uses: actions/setup-python@v5 + with: + python-version: "3.x" + + - run: pip install pyyaml + + - run: python3 generate_artifinder_data.py + + - uses: ruby/setup-ruby@v1 + with: + ruby-version: "3.2" + bundler-cache: true + + - id: pages + uses: actions/configure-pages@v5 + + - run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" + env: + JEKYLL_ENV: production + + - uses: actions/upload-pages-artifact@v3 + + deploy: + needs: build + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - id: deployment + uses: actions/deploy-pages@v4 diff --git a/.gitignore b/.gitignore index 4ef8024..36558d0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,9 @@ _site .jekyll-cache +_data/artifinder_nonevaluated.yaml +_data/artifinder_authorlinks.yaml .jekyll-metadata .DS_Store vendor/ .bundle/ +.venv diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..89fe1be --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "_artifinder"] + path = _artifinder + url = git@github.com:DistriNet/ArtiFinder-Data.git diff --git a/README.md b/README.md index 6da5606..7bccbe5 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ We ask you to build the repository and preview your changes before submitting th You have three options to preview changes: * configure your forked repository on GitHub to use your branch for GitHub Pages and view it at `your_username.github.io/secartifacts.github.io` -* install Jekyll and Bundler locally then run `bundle exec jekyll serve` at the root of the repository +* install Jekyll and Bundler locally, run `./generate.sh` to generate required data files, then run `bundle exec jekyll serve` at the root of the repository * build the repository via [jekyll's docker container](https://github.com/envygeeks/jekyll-docker), for example using the following command to start a jekyll server on [http://localhost:4000/](http://localhost:4000/): ``` sh diff --git a/_artifinder b/_artifinder new file mode 160000 index 0000000..81e25e9 --- /dev/null +++ b/_artifinder @@ -0,0 +1 @@ +Subproject commit 81e25e90ff30e080c81b0467140bc437e1e280f5 diff --git a/_conferences/acsac2017/results.md b/_conferences/acsac2017/results.md index 1cf347b..551b474 100644 --- a/_conferences/acsac2017/results.md +++ b/_conferences/acsac2017/results.md @@ -70,9 +70,10 @@ Results automatically obtained from
{% endif %} - - + + {% include artifinder_link_cell.html title=artifact.title %} + {% endfor %} diff --git a/_conferences/acsac2018/results.md b/_conferences/acsac2018/results.md index faea73d..02211e8 100644 --- a/_conferences/acsac2018/results.md +++ b/_conferences/acsac2018/results.md @@ -110,9 +110,10 @@ Results automatically obtained from

{% endif %} - - + + {% include artifinder_link_cell.html title=artifact.title %} + {% endfor %} diff --git a/_conferences/acsac2019/results.md b/_conferences/acsac2019/results.md index b108fa5..0682ec9 100644 --- a/_conferences/acsac2019/results.md +++ b/_conferences/acsac2019/results.md @@ -107,9 +107,10 @@ Results automatically obtained from

{% endif %} - - + + {% include artifinder_link_cell.html title=artifact.title %} + {% endfor %} diff --git a/_conferences/acsac2020/results.md b/_conferences/acsac2020/results.md index f5bc379..66e917c 100644 --- a/_conferences/acsac2020/results.md +++ b/_conferences/acsac2020/results.md @@ -132,9 +132,10 @@ Results automatically obtained from

{% endif %} - - + + {% include artifinder_link_cell.html title=artifact.title %} + {% endfor %} diff --git a/_conferences/acsac2021/results.md b/_conferences/acsac2021/results.md index 57c5d1c..ff2dbd8 100644 --- a/_conferences/acsac2021/results.md +++ b/_conferences/acsac2021/results.md @@ -108,9 +108,10 @@ Results automatically obtained from

{% endif %} - - + + {% include artifinder_link_cell.html title=artifact.title %} + {% endfor %} diff --git a/_conferences/acsac2022/results.md b/_conferences/acsac2022/results.md index 5a130bb..a0879bf 100644 --- a/_conferences/acsac2022/results.md +++ b/_conferences/acsac2022/results.md @@ -200,9 +200,10 @@ Results automatically obtained from

{% endif %} - - + + {% include artifinder_link_cell.html title=artifact.title %} + {% endfor %} diff --git a/_conferences/acsac2023/results.md b/_conferences/acsac2023/results.md index 5b572a5..f023b51 100644 --- a/_conferences/acsac2023/results.md +++ b/_conferences/acsac2023/results.md @@ -150,6 +150,7 @@ Results automatically obtained from
{% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/acsac2024/results.md b/_conferences/acsac2024/results.md index 7ee937b..001c36b 100644 --- a/_conferences/acsac2024/results.md +++ b/_conferences/acsac2024/results.md @@ -224,6 +224,7 @@ Results automatically obtained from {% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/acsac2025/results.md b/_conferences/acsac2025/results.md index 828cffe..480ee11 100644 --- a/_conferences/acsac2025/results.md +++ b/_conferences/acsac2025/results.md @@ -200,6 +200,7 @@ Results automatically obtained from {% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/ndss2024/results.md b/_conferences/ndss2024/results.md index 4c9dd26..481201a 100644 --- a/_conferences/ndss2024/results.md +++ b/_conferences/ndss2024/results.md @@ -180,6 +180,7 @@ artifacts: Functional Reproduced Available at + {% include artifinder_link_header.html %} @@ -214,6 +215,7 @@ artifacts: Artifact
{% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/ndss2025/results.md b/_conferences/ndss2025/results.md index f739ec5..f16ef6e 100644 --- a/_conferences/ndss2025/results.md +++ b/_conferences/ndss2025/results.md @@ -282,6 +282,7 @@ artifacts: Functional Reproduced Available at + {% include artifinder_link_header.html %} @@ -316,6 +317,7 @@ artifacts: Artifact
{% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/usenixsec2020/results.md b/_conferences/usenixsec2020/results.md index 82bd813..1248dfb 100644 --- a/_conferences/usenixsec2020/results.md +++ b/_conferences/usenixsec2020/results.md @@ -195,6 +195,7 @@ artifacts: Title Badge Artifact URL + {% include artifinder_link_header.html %} @@ -217,6 +218,7 @@ artifacts: Artifact {% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/usenixsec2021/results.md b/_conferences/usenixsec2021/results.md index 54b0979..45552b8 100644 --- a/_conferences/usenixsec2021/results.md +++ b/_conferences/usenixsec2021/results.md @@ -176,6 +176,7 @@ artifacts: Title Badge Artifact URL + {% include artifinder_link_header.html %} @@ -198,6 +199,7 @@ artifacts: Artifact {% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/usenixsec2022/results.md b/_conferences/usenixsec2022/results.md index a1b58f0..5c84de9 100644 --- a/_conferences/usenixsec2022/results.md +++ b/_conferences/usenixsec2022/results.md @@ -693,6 +693,7 @@ Results include evaluation of the USENIX Security Summer submissions and will be Repro. Repository Appendix + {% include artifinder_link_header.html %} @@ -728,6 +729,7 @@ Results include evaluation of the USENIX Security Summer submissions and will be Appendix {% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/usenixsec2023/results.md b/_conferences/usenixsec2023/results.md index 1eefebc..cbbe438 100644 --- a/_conferences/usenixsec2023/results.md +++ b/_conferences/usenixsec2023/results.md @@ -881,6 +881,7 @@ artifacts: Funct. Repro. Available At + {% include artifinder_link_header.html %} @@ -919,6 +920,7 @@ artifacts: Appendix
{% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/usenixsec2024/results.md b/_conferences/usenixsec2024/results.md index 645ac2b..c80532f 100644 --- a/_conferences/usenixsec2024/results.md +++ b/_conferences/usenixsec2024/results.md @@ -1034,6 +1034,7 @@ artifacts: Funct. Repro. Available At + {% include artifinder_link_header.html %} @@ -1079,6 +1080,7 @@ artifacts: 📄 Appendix
{% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_conferences/usenixsec2025/results.md b/_conferences/usenixsec2025/results.md index fcbabe2..3e0b6e4 100644 --- a/_conferences/usenixsec2025/results.md +++ b/_conferences/usenixsec2025/results.md @@ -3127,6 +3127,7 @@ artifacts: Funct. Repro. Available At + {% include artifinder_link_header.html %} @@ -3172,6 +3173,7 @@ artifacts: 📄 Appendix
{% endif %} + {% include artifinder_link_cell.html title=artifact.title %} {% endfor %} diff --git a/_includes/artifinder_link_cell.html b/_includes/artifinder_link_cell.html new file mode 100644 index 0000000..beea4f4 --- /dev/null +++ b/_includes/artifinder_link_cell.html @@ -0,0 +1,5 @@ + + {% assign dir_name = page.path | remove_first:"_conferences/" | split:"/" | first %} + {% assign af_entry = site.data.artifinder_authorlinks[dir_name][include.title] %} + {% if af_entry %}Author's link{% if af_entry.validated %} ✓{% endif %}{% endif %} + diff --git a/_includes/artifinder_link_header.html b/_includes/artifinder_link_header.html new file mode 100644 index 0000000..ede9927 --- /dev/null +++ b/_includes/artifinder_link_header.html @@ -0,0 +1 @@ +Author's link ? diff --git a/_includes/masthead.html b/_includes/masthead.html index d28e62a..a3213ab 100644 --- a/_includes/masthead.html +++ b/_includes/masthead.html @@ -30,6 +30,9 @@ {% endif %} {% endfor %} +
  • + Non-evaluated +
  • {% if site.search == true %}