Skip to content

Sskf & Sslz: update determine footnote #5531

Sskf & Sslz: update determine footnote

Sskf & Sslz: update determine footnote #5531

Workflow file for this run

# This workflow will build the main SET application and publish it to GitHub Packages
name: Build SET
on:
repository_dispatch:
pull_request:
push:
tags:
- 'v**'
branches:
- 'release/**'
- 'main'
paths-ignore:
- DEPENDENCIES
# Enable concurrency to avoid multiple builds at the same time
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
DEPLOY_DIR: ${{ github.workspace }}/java-test/m2deploy
DIFF_DIR: java-test/diff
TEST_APPLICATION_DIR: ${{ github.workspace }}/java-test/application-under-test
jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Install Asciidoctor & Hugo
uses: eclipse-set/build/.github/actions/setup-asciidoctor@main
- name: Build About
run: hugo
working-directory: web/about
- name: Store artifact
uses: actions/upload-artifact@v6
with:
name: about-artifact
path: web/about/dist
retention-days: 1
developerhelp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Install Asciidoctor & Hugo
uses: eclipse-set/build/.github/actions/setup-asciidoctor@main
- name: Build About
run: hugo
working-directory: web/developerhelp
- name: Store artifact
uses: actions/upload-artifact@v6
with:
name: developerhelp-artifact
path: web/developerhelp/dist
retention-days: 1
textviewer:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Build
run: |
npm ci
npm run build-prod
working-directory: web/textviewer
- name: Store artifact
uses: actions/upload-artifact@v6
with:
name: textviewer-artifact
path: web/textviewer/dist
retention-days: 1
pdfviewer:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Build
run: |
wget --no-verbose -O pdfjs.zip https://github.com/mozilla/pdf.js/releases/download/v$(node getVersion.js)/pdfjs-$(node getVersion.js)-dist.zip
npm ci
npm run build-prod
working-directory: web/pdf
- name: Store artifact
uses: actions/upload-artifact@v6
with:
name: pdfviewer-artifact
path: web/pdf/dist
retention-days: 1
siteplan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Cache node_modules
uses: actions/cache@v5
with:
enableCrossOsArchive: true
path: ${{ github.workspace }}/web/siteplan/node_modules/
key: ${{ runner.os }}-node_modules-${{ hashFiles('web/siteplan/package-lock.json') }}
restore-keys: ${{ runner.os }}-node_modules-
- name: Build
run: |
npm ci
npm run build-prod
working-directory: web/siteplan
- name: Store artifact
uses: actions/upload-artifact@v6
with:
name: siteplan-artifact
path: web/siteplan/dist
retention-days: 1
news:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Setup Java
uses: eclipse-set/build/.github/actions/setup-java@main
- name: Install Asciidoctor & Hugo
uses: eclipse-set/build/.github/actions/setup-asciidoctor@main
- name: Build Release Notes
run: mvn -Dnote-file-path="${{github.workspace}}/RELEASE_NOTES.md" clean compile
working-directory: web/news
- name: Store artifact
uses: actions/upload-artifact@v6
with:
name: news-artifact
path: web/news/public
retention-days: 1
java:
runs-on: ubuntu-latest
needs:
- docs
- textviewer
- pdfviewer
- siteplan
- developerhelp
- news
permissions:
contents: write
packages: write
checks: write
pull-requests: write
actions: read
security-events: write
steps:
- uses: actions/checkout@v6
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
if: github.ref == 'refs/heads/main'
with:
languages: java, javascript
config: |
paths-ignore:
- '**/dist/**'
- '**/target/**'
- '**/siteplan/assets/**'
- '**/monaco/vs/**'
- name: Setup Java
uses: eclipse-set/build/.github/actions/setup-java@main
- name: Fetch pdf viewer
uses: actions/download-artifact@v7
with:
name: pdfviewer-artifact
path: web/pdf/dist
- name: Fetch text viewer
uses: actions/download-artifact@v7
with:
name: textviewer-artifact
path: web/textviewer/dist
- name: Fetch about
uses: actions/download-artifact@v7
with:
name: about-artifact
path: web/about/dist
- name: Fetch siteplan
uses: actions/download-artifact@v7
with:
name: siteplan-artifact
path: web/siteplan/dist
- name: Fetch developerhelp
uses: actions/download-artifact@v7
with:
name: developerhelp-artifact
path: web/developerhelp/dist
- name: Fetch news
uses: actions/download-artifact@v7
with:
name: news-artifact
path: web/news/public
- name: Cache m2repo
uses: actions/cache@v5
with:
enableCrossOsArchive: true
path: ~/.m2/repository/
key: ${{ runner.os }}-m2repo-${{ hashFiles('**/java/bundles/org.eclipse.set.releng.target/org.eclipse.set.releng.target.target', 'pom.xml') }}
restore-keys: ${{ runner.os }}-m2repo-
- name: Build
run: |
m2RepoPath="local::file://${{ env.DEPLOY_DIR }}"
if [[ ${{github.ref}} == "refs/heads/main" || "${{github.ref}}" == refs/tags/* ]]; then
m2RepoPath="set-github::https://maven.pkg.github.com/${{ github.repository }}"
fi
mvn -T 1.5C -U -B clean deploy checkstyle:checkstyle --settings .github/settings.xml -DaltDeploymentRepository="$m2RepoPath"
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Upload artifact
uses: actions/upload-artifact@v6
with:
name: eclipse-set-snapshot-${{github.run_number}}
path: java/bundles/org.eclipse.set.releng.set.product/target/products/SET/win32/win32/x86_64/
retention-days: 7
- name: Upload m2repo artifact
uses: actions/upload-artifact@v6
if: github.event_name == 'pull_request' || startsWith(github.ref, 'refs/heads/release')
with:
name: set-m2deploy-${{github.run_number}}
path: ${{ env.DEPLOY_DIR }}
retention-days: 1
- name: Prepare release asset
if: startsWith(github.ref, 'refs/tags/')
run: |
VERSION=$(echo ${{ github.ref_name }} | cut -c 2-)
mv *.zip unsigned-Eclipse-SET-$VERSION.zip
working-directory: java/bundles/org.eclipse.set.releng.set.product/target/products
- name: Upload release asset
if: startsWith(github.ref, 'refs/tags/')
uses: softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b # v2.5.0
with:
files: java/bundles/org.eclipse.set.releng.set.product/target/products/unsigned-Eclipse-SET-*.zip
- name: Publish Test Results
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
if: always()
with:
files: |
${{ github.workspace }}/**/surefire-reports/*.xml
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
if: github.ref == 'refs/heads/main'
swtbot:
runs-on: windows-latest
needs:
- java
permissions:
contents: write
checks: write
pull-requests: write
actions: read
steps:
- uses: actions/checkout@v6
- name: Setup Java
uses: eclipse-set/build/.github/actions/setup-java@main
- name: Fetch SET
uses: actions/download-artifact@v7
with:
name: eclipse-set-snapshot-${{github.run_number}}
path: ${{ env.TEST_APPLICATION_DIR }}
- name: Fetch m2 Deploy
# For main or tag build, the m2 packages can be taken directly from github m2package
if: github.ref != 'refs/heads/main' && !startsWith(github.ref, 'refs/tags/')
uses: actions/download-artifact@v7
with:
name: set-m2deploy-${{github.run_number}}
path: ${{ env.DEPLOY_DIR }}
- name: Fetch main csv files
if: github.ref != 'refs/heads/main' && !startsWith(github.ref, 'refs/heads/release/') && !startsWith(github.ref, 'refs/tags/')
uses: eclipse-set/build/.github/actions/fetch-main-table-csv-ref@main
with:
repo: ${{ github.repository }}
continue-on-error: true
- name: Cache m2repo
uses: actions/cache@v5
with:
enableCrossOsArchive: true
path: ~/.m2/repository
key: ${{ runner.os }}-m2repo-${{ hashFiles('**/java/bundles/org.eclipse.set.releng.target/org.eclipse.set.releng.target.target', 'pom.xml') }}
restore-keys: ${{ runner.os }}-m2repo-
- name: Run Test
id: test-steps
shell: bash
run: |
m2RepoPath="https://maven.pkg.github.com/eclipse-set/set"
if [[ "${{ github.event_name }}" == "pull_request" || "${{github.ref}}" == refs/heads/release/* ]]; then
m2RepoPath="file://${{ env.DEPLOY_DIR }}"
fi
mvn -T 1.5C -U -B -f java-test/pom.xml clean verify \
--settings ./.github/settings.xml \
-Dskip-test=false \
-Dm2-repo-path="$m2RepoPath" \
-Dapplication-under-test="${{ env.TEST_APPLICATION_DIR }}" \
- name: Upload csv files
if: failure() && steps.test-steps.outcome == 'failure'
uses: actions/upload-artifact@v6
with:
name: table-csv-${{github.run_number}}
path: ${{ github.workspace}}/java/bundles/org.eclipse.set.swtbot/target/classes/diff/**/*.csv
retention-days: 7
table-diff-view:
runs-on: ubuntu-latest
needs: swtbot
if: always() && github.actor_id != 49699333 && !startsWith(github.ref, 'refs/heads/release/') && !startsWith(github.ref, 'refs/tags/')
container: ghcr.io/eclipse-set/table-diff-view:latest
permissions:
contents: write
checks: write
pull-requests: write
actions: read
issues: write
steps:
- name: Get Branchname
shell: bash
run: |
if [ "${{ github.event_name }}" == "pull_request" ]; then
echo "BRANCH_NAME=${{ github.head_ref }}" >> $GITHUB_ENV
else
echo "BRANCH_NAME=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV
fi
- name: Fetch table csv
if: needs.swtbot.result == 'failure'
uses: actions/download-artifact@v7
with:
name: table-csv-${{github.run_number}}
path: ${{ env.DIFF_DIR }}
- name: Create diff view
shell: bash
run: |
python -m tablediffview \
--diffDir=${{ env.DIFF_DIR }} \
--branchName=${{ env.BRANCH_NAME }} \
--prNumber=${{github.event.pull_request.number}} \
--runId=${{github.run_id}}
- name: Upload Diff-File
if: needs.swtbot.result == 'failure'
uses: actions/upload-artifact@v6
with:
name: table-diff-files-${{github.run_number}}
path: ${{ env.DIFF_DIR }}/diff-md
retention-days: 5