diff --git a/.github/workflows/pr-preview.yml b/.github/workflows/pr-preview.yml index d863753..5bf8e1a 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 7635751..b5059e1 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 e773904..5522fc7 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 772d95d..600f548 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 0000000..cebfaa0 --- /dev/null +++ b/scripts/copy-legacy-sen-assets.mjs @@ -0,0 +1,23 @@ +#!/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(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); +} + +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