From d067d2b55fd41aaef6dbc79e2e60a8aa6195adbf Mon Sep 17 00:00:00 2001 From: yqtian Date: Mon, 15 Jun 2026 19:40:18 +1000 Subject: [PATCH 1/2] Fix SEN resource deployment paths --- .github/workflows/pr-preview.yml | 6 ++++++ .github/workflows/production-deploy.yml | 3 +++ Dockerfile | 2 +- content/SEN/guideline.md | 7 +++---- scripts/copy-legacy-sen-assets.mjs | 18 ++++++++++++++++++ ...T_SEN_Publication_Terms_and_Conditions.pdf | Bin .../ACM_SIGSOFT_SEN_Reviewers-Template.doc | Bin .../ACM_SIGSOFT_SEN_Reviewers_Template.doc | Bin .../sen}/ACM_SIGSOFT_pubform.doc | Bin .../sen}/ACM_SIGSOFT_pubform.docx | Bin .../SEN => static/sen}/acm_sen_article.cls | 0 {content/SEN => static/sen}/latex-example.zip | Bin 12 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 scripts/copy-legacy-sen-assets.mjs rename {content/SEN => static/sen}/ACM_SIGSOFT_SEN_Publication_Terms_and_Conditions.pdf (100%) rename {content/SEN => static/sen}/ACM_SIGSOFT_SEN_Reviewers-Template.doc (100%) rename {content/SEN => static/sen}/ACM_SIGSOFT_SEN_Reviewers_Template.doc (100%) rename {content/SEN => static/sen}/ACM_SIGSOFT_pubform.doc (100%) rename {content/SEN => static/sen}/ACM_SIGSOFT_pubform.docx (100%) rename {content/SEN => static/sen}/acm_sen_article.cls (100%) rename {content/SEN => static/sen}/latex-example.zip (100%) diff --git a/.github/workflows/pr-preview.yml b/.github/workflows/pr-preview.yml index d8637536..5bf8e1aa 100644 --- a/.github/workflows/pr-preview.yml +++ b/.github/workflows/pr-preview.yml @@ -94,6 +94,12 @@ jobs: --baseURL "${{ steps.base_url.outputs.base_url }}/" \ --destination "${{ github.workspace }}/public/pr-${{ github.event.number }}" + - name: Copy legacy SEN assets for PR preview + working-directory: pr + env: + PUBLIC_DIR: ${{ github.workspace }}/public/pr-${{ github.event.number }} + run: node scripts/copy-legacy-sen-assets.mjs + - name: Check internal links working-directory: pr env: diff --git a/.github/workflows/production-deploy.yml b/.github/workflows/production-deploy.yml index 76357510..b5059e1e 100644 --- a/.github/workflows/production-deploy.yml +++ b/.github/workflows/production-deploy.yml @@ -64,6 +64,9 @@ jobs: --minify \ --baseURL "${{ steps.pages.outputs.base_url }}/" + - name: Copy legacy SEN assets + run: node scripts/copy-legacy-sen-assets.mjs + - name: Check internal links env: SITE_BASE_URL: ${{ steps.pages.outputs.base_url }}/ diff --git a/Dockerfile b/Dockerfile index e773904d..5522fc77 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,7 +18,7 @@ RUN TARGETARCH="${TARGETARCH:-$(dpkg --print-architecture)}" \ && wget -q -O "/tmp/${HUGO_TARBALL}" "https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/${HUGO_TARBALL}" \ && wget -q -O /tmp/hugo_checksums.txt "https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_${HUGO_VERSION}_checksums.txt" \ && grep " ${HUGO_TARBALL}\$" /tmp/hugo_checksums.txt > /tmp/hugo_checksums_entry.txt \ - && sha256sum -c /tmp/hugo_checksums_entry.txt \ + && (cd /tmp && sha256sum -c hugo_checksums_entry.txt) \ && tar -xzf "/tmp/${HUGO_TARBALL}" -C /usr/local/bin hugo \ && rm -f "/tmp/${HUGO_TARBALL}" /tmp/hugo_checksums.txt /tmp/hugo_checksums_entry.txt diff --git a/content/SEN/guideline.md b/content/SEN/guideline.md index 772d95de..600f548b 100644 --- a/content/SEN/guideline.md +++ b/content/SEN/guideline.md @@ -18,9 +18,9 @@ Finally, as _reports_, we welcome summary reports from workshops conducted under Manuscripts should be prepared by using **SEN style** and submitted by sending their sources and/or .pdfs with all fonts embedded. The following templates are available: -* [.doc](/SEN/ACM_SIGSOFT_pubform.doc): MS Word 97-2003 -* [.docx](/SEN/ACM_SIGSOFT_pubform.docx): MS Word 2007 -* [.cls](/SEN/acm_sen_article.cls) or [.zip](/SEN/latex-example.zip): LaTeX +* [.doc](/sen/ACM_SIGSOFT_pubform.doc): MS Word 97-2003 +* [.docx](/sen/ACM_SIGSOFT_pubform.docx): MS Word 2007 +* [.cls](/sen/acm_sen_article.cls) or [.zip](/sen/latex-example.zip): LaTeX Authors are warmly encouraged to carefully structure the abstract of their manuscript, so as to ensure that it reflects the key points addressed in the document, which will appear in full in the ACM Digital Library. Authors are also encouraged to use the keywords found on the ACM Computer Classification System (CCS) that is available [online](https://dl.acm.org/ccs). @@ -59,4 +59,3 @@ Plagiarism is copying words from another published paper (your own or someone el Any copied text longer than a few words should be put in quotes and given a reference. If you copy more than a full sentence, use indented paragraphs to denote a block quote. Note that copying text and then changing words here and there is not good enough. Use quotes or rewrite completely. - diff --git a/scripts/copy-legacy-sen-assets.mjs b/scripts/copy-legacy-sen-assets.mjs new file mode 100644 index 00000000..931b8a0a --- /dev/null +++ b/scripts/copy-legacy-sen-assets.mjs @@ -0,0 +1,18 @@ +#!/usr/bin/env node + +import fs from "node:fs"; +import path from "node:path"; + +const publicRoot = path.resolve(process.env.PUBLIC_DIR || process.argv[2] || "public"); +const sourceDir = path.resolve(process.env.SEN_STATIC_DIR || process.argv[3] || "static/sen"); +const legacyDir = path.join(publicRoot, "SEN"); + +if (!fs.existsSync(sourceDir)) { + console.error(`Missing SEN static assets directory: ${sourceDir}`); + process.exit(1); +} + +fs.mkdirSync(legacyDir, { recursive: true }); +fs.cpSync(sourceDir, legacyDir, { recursive: true }); + +console.log(`Copied SEN assets to ${path.relative(process.cwd(), legacyDir) || legacyDir}`); diff --git a/content/SEN/ACM_SIGSOFT_SEN_Publication_Terms_and_Conditions.pdf b/static/sen/ACM_SIGSOFT_SEN_Publication_Terms_and_Conditions.pdf similarity index 100% rename from content/SEN/ACM_SIGSOFT_SEN_Publication_Terms_and_Conditions.pdf rename to static/sen/ACM_SIGSOFT_SEN_Publication_Terms_and_Conditions.pdf diff --git a/content/SEN/ACM_SIGSOFT_SEN_Reviewers-Template.doc b/static/sen/ACM_SIGSOFT_SEN_Reviewers-Template.doc similarity index 100% rename from content/SEN/ACM_SIGSOFT_SEN_Reviewers-Template.doc rename to static/sen/ACM_SIGSOFT_SEN_Reviewers-Template.doc diff --git a/content/SEN/ACM_SIGSOFT_SEN_Reviewers_Template.doc b/static/sen/ACM_SIGSOFT_SEN_Reviewers_Template.doc similarity index 100% rename from content/SEN/ACM_SIGSOFT_SEN_Reviewers_Template.doc rename to static/sen/ACM_SIGSOFT_SEN_Reviewers_Template.doc diff --git a/content/SEN/ACM_SIGSOFT_pubform.doc b/static/sen/ACM_SIGSOFT_pubform.doc similarity index 100% rename from content/SEN/ACM_SIGSOFT_pubform.doc rename to static/sen/ACM_SIGSOFT_pubform.doc diff --git a/content/SEN/ACM_SIGSOFT_pubform.docx b/static/sen/ACM_SIGSOFT_pubform.docx similarity index 100% rename from content/SEN/ACM_SIGSOFT_pubform.docx rename to static/sen/ACM_SIGSOFT_pubform.docx diff --git a/content/SEN/acm_sen_article.cls b/static/sen/acm_sen_article.cls similarity index 100% rename from content/SEN/acm_sen_article.cls rename to static/sen/acm_sen_article.cls diff --git a/content/SEN/latex-example.zip b/static/sen/latex-example.zip similarity index 100% rename from content/SEN/latex-example.zip rename to static/sen/latex-example.zip From c492daa14bbff99b898145dfa3d60088b745430a Mon Sep 17 00:00:00 2001 From: Yongqiang Tian <41743566+yqtian-se@users.noreply.github.com> Date: Wed, 17 Jun 2026 09:52:16 +1000 Subject: [PATCH 2/2] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- scripts/copy-legacy-sen-assets.mjs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scripts/copy-legacy-sen-assets.mjs b/scripts/copy-legacy-sen-assets.mjs index 931b8a0a..cebfaa0d 100644 --- a/scripts/copy-legacy-sen-assets.mjs +++ b/scripts/copy-legacy-sen-assets.mjs @@ -7,7 +7,12 @@ const publicRoot = path.resolve(process.env.PUBLIC_DIR || process.argv[2] || "pu const sourceDir = path.resolve(process.env.SEN_STATIC_DIR || process.argv[3] || "static/sen"); const legacyDir = path.join(publicRoot, "SEN"); -if (!fs.existsSync(sourceDir)) { +if (!fs.existsSync(publicRoot) || !fs.statSync(publicRoot).isDirectory()) { + console.error(`Missing Hugo public directory: ${publicRoot}`); + process.exit(1); +} + +if (!fs.existsSync(sourceDir) || !fs.statSync(sourceDir).isDirectory()) { console.error(`Missing SEN static assets directory: ${sourceDir}`); process.exit(1); }