Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
e96a4cd
use sbom in frontend application
ismailbennani Apr 25, 2025
aafd1c6
allow to fold and unfold license blocks
ismailbennani Apr 25, 2025
84fe46b
add search to dependencies
ismailbennani Apr 25, 2025
09f9b32
use sbom in api
ismailbennani Apr 26, 2025
6b30617
improve frontend layout
ismailbennani Apr 26, 2025
85c109f
add download button
ismailbennani Apr 26, 2025
0bbd6b3
improve layout on small screens
ismailbennani Apr 26, 2025
ada8016
format package descriptions as markdown
ismailbennani Apr 26, 2025
79377bc
improve error messages when api is unreachable or api sbom is not found
ismailbennani Apr 26, 2025
59b2e32
use cyclonedx to generate license file in api CI
ismailbennani Apr 26, 2025
bea6740
Merge branch 'main' into feat/use-sbom
ismailbennani Apr 26, 2025
8488ff2
cleanup
ismailbennani Apr 26, 2025
9fbfeac
fix build
ismailbennani Apr 26, 2025
02f2a11
fix CI
ismailbennani Apr 26, 2025
250bc30
generate correct sbom files for docs
ismailbennani Apr 26, 2025
e9718f3
fix workflow
ismailbennani Apr 26, 2025
2ef3ca8
fix workflow
ismailbennani Apr 26, 2025
7c1b26b
use sbom in docs
ismailbennani Apr 26, 2025
3945bfb
move sbom to public assets
ismailbennani Apr 26, 2025
dbf0e24
minor
ismailbennani Apr 26, 2025
ee9f318
use sbom in docs
ismailbennani Apr 26, 2025
b80ad68
update CI to set version of docs in package json
ismailbennani Apr 26, 2025
c766eae
fix ci
ismailbennani Apr 26, 2025
881998f
use href correctly in sbom download link
ismailbennani Apr 26, 2025
e5e84e1
fix workflow name
ismailbennani Apr 26, 2025
c597123
fix bom files paths
ismailbennani Apr 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 21 additions & 53 deletions .github/workflows/reusable-build-docs-application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,16 +38,11 @@ jobs:
with:
fetch-depth: 0

- name: Setup .NET 9 (for lib and api)
- name: Setup .NET 9 (for CycloneDX, lib and api)
uses: actions/setup-dotnet@v4
with:
dotnet-version: 9.0.x

- name: Setup .NET 7 (for dotnet-project-licenses)
uses: actions/setup-dotnet@v4
with:
dotnet-version: 7.0.x

- name: Setup .NET 6 (for dfmg)
uses: actions/setup-dotnet@v4
with:
Expand All @@ -70,8 +65,8 @@ jobs:
- name: Install dfmg
run: dotnet tool install -g DocFxMarkdownGen

- name: Install dotnet-project-licenses
run: dotnet tool install -g dotnet-project-licenses
- name: Install CycloneDX
run: dotnet tool install --global CycloneDX

- name: Generate .NET API reference
run: |
Expand Down Expand Up @@ -155,61 +150,31 @@ jobs:
- name: Install dependencies
run: cd docs; npm ci

- name: Install dependencies in editor (for license-report)
- name: Install dependencies in editor (for sbom generation)
run: cd src/FacturXDotNet.WebEditor; npm ci

- name: Install license-report
run: npm i -g license-report
- name: Generate Editor SBOM
run: cd src/FacturXDotNet.WebEditor; npm sbom --sbom-format cyclonedx > ../../docs/src/public/editor.bom.json

- name: Generate licenses
run: |
license-report --config docs/license-report-config.json --package src/FacturXDotNet.WebEditor/package.json > docs/src/assets/editor-licenses.json

echo
echo docs/src/assets/editor-licenses.json
cat docs/src/assets/editor-licenses.json
echo
echo

license-report --config docs/license-report-config.json --package docs/package.json > docs/src/assets/docs-licenses.json

echo
echo docs/src/assets/docs-licenses.json
cat docs/src/assets/docs-licenses.json
echo
echo

dotnet-project-licenses -i src/FacturXDotNet/FacturXDotNet.csproj --json --output-directory docs/src/assets --outfile library-licenses.json

echo
echo docs/src/assets/library-licenses.json
cat docs/src/assets/library-licenses.json
echo
echo

dotnet-project-licenses -i src/FacturXDotNet.API/FacturXDotNet.API.csproj --json --output-directory docs/src/assets --outfile api-licenses.json

echo
echo docs/src/assets/api-licenses.json
cat docs/src/assets/api-licenses.json
echo
echo

dotnet-project-licenses -i src/FacturXDotNet.CLI/FacturXDotNet.CLI.csproj --json --output-directory docs/src/assets --outfile cli-licenses.json

echo
echo docs/src/assets/cli-licenses.json
cat docs/src/assets/cli-licenses.json
echo
echo
- name: Generate Docs SBOM
run: cd docs; npm sbom --sbom-format cyclonedx > src/public/docs.bom.json

- name: Generate API SBOM
run: cd src/FacturXDotNet.API; dotnet-CycloneDX FacturXDotNet.API.csproj -o ../../docs/src/public --json -fn api.bom.json

- name: Generate CLI SBOM
run: cd src/FacturXDotNet.CLI; dotnet-CycloneDX FacturXDotNet.CLI.csproj -o ../../docs/src/public --json -fn cli.bom.json

- name: Generate Library SBOM
run: cd src/FacturXDotNet; dotnet-CycloneDX FacturXDotNet.csproj -o ../../docs/src/public --json -fn library.bom.json

- name: Write env.json
run: |
echo '{' > docs/src/env.json
echo ' "buildName": "${{ inputs.build-name }}",' >> docs/src/env.json
echo ' "version": "${{ inputs.version }}",' >> docs/src/env.json
echo ' "editor": {' >> docs/src/env.json
echo ' "url": "${{ inputs.editor-url }}"' >> docs/src/env.json
echo ' "url": "${{ inputs.editor-url }}"' >> docs/src/env.json
echo ' },' >> docs/src/env.json
echo ' "api": {' >> docs/src/env.json
echo ' "url": "${{ inputs.api-url }}"' >> docs/src/env.json
Expand All @@ -218,6 +183,9 @@ jobs:

cat docs/src/env.json

- name: Set version in package json
run: cd docs; npm version ${{ inputs.version }}

- name: Build
run: cd docs; npm run build -- --base /docs/ --outDir dist/

Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/reusable-build-publish-api-docker-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,16 +48,16 @@ jobs:
with:
fetch-depth: 0

- name: Setup .NET 6 (for dotnet-project-licenses)
- name: Setup .NET 9 (for CycloneDX)
uses: actions/setup-dotnet@v4
with:
dotnet-version: 6.0.x
dotnet-version: 9.0.x

- name: Install dotnet-project-licenses
run: dotnet tool install -g dotnet-project-licenses --framework net6.0
- name: Install CycloneDX
run: dotnet tool install --global CycloneDX

- name: Generate licenses file
run: cd src/FacturXDotNet.API; dotnet-project-licenses -i dotnet-project-licenses-input.json --json --output-directory Resources
run: cd src/FacturXDotNet.API; dotnet-CycloneDX FacturXDotNet.API.csproj -o Resources --json -fn api.bom.json

- name: Build the Docker image
run: cd src; docker build . --file FacturXDotNet.API/Dockerfile --tag facturxdotnet-api --label "runnumber=${GITHUB_RUN_ID}" --build-arg VERSION=${{ inputs.version }}
Expand Down Expand Up @@ -88,7 +88,7 @@ jobs:
package-name: facturxdotnet-api
tag: ${{ inputs.tag }}
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: Push ${{ inputs.tag }}
if: inputs.tag != ''
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/reusable-compute-version.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ env:

jobs:
compute_version:
name: Build Docker Image
name: Compute version
runs-on: ubuntu-latest
outputs:
version: ${{ steps.compute_version.outputs.version }}
Expand Down
10 changes: 5 additions & 5 deletions docs/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,8 @@ TODOs.md
src/api-reference/**
src/cli/**
src/assets/facturxdotnet.openapi.json
src/assets/docs-licenses.json
src/assets/editor-licenses.json
src/assets/api-licenses.json
src/assets/cli-licenses.json
src/assets/library-licenses.json
src/public/docs.bom.json
src/public/editor.bom.json
src/public/api.bom.json
src/public/cli.bom.json
src/public/library.bom.json
6 changes: 3 additions & 3 deletions docs/.vitepress/config.mts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ let cliItems =
collapsed: false,
collapsible: false,
})[0]?.items ?? [];
cliItems = cliItems.map((item) => ({
cliItems = cliItems.map(item => ({
...item,
text: item.text.toLowerCase() === "subcommands" ? "Sub Commands" : item.text,
}));
Expand All @@ -39,7 +39,7 @@ let apiReferenceItems =
collapsible: true,
})[0]?.items ?? [];
apiReferenceItems = apiReferenceItems.filter(
(i) => i.items !== undefined && i.items.length > 0,
i => i.items !== undefined && i.items.length > 0,
);

const semVersion = semver.valid(env.version)
Expand Down Expand Up @@ -218,7 +218,7 @@ export default defineConfigWithTheme({
},
},

transformPageData: (pageData) => {
transformPageData: pageData => {
const result = { ...pageData };
result.frontmatter = expandEnvInRecord(pageData.frontmatter);
return result;
Expand Down
5 changes: 5 additions & 0 deletions docs/.vitepress/theme/custom.css
Original file line number Diff line number Diff line change
Expand Up @@ -103,3 +103,8 @@ p:has(.sidebar-footer) {
--vp-sidebar-width: 472px; /* default: 272px */
}
}

.dependency-description p {
margin-top: 0;
margin-bottom: 0;
}
5 changes: 0 additions & 5 deletions docs/license-report-config.json

This file was deleted.

59 changes: 58 additions & 1 deletion docs/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion docs/package.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
{
"name": "facturxdotnet-docs",
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vitepress dev --port 40850",
"build": "vitepress build",
"preview": "vitepress preview --port 40850"
},
"devDependencies": {
"license-report": "^6.7.2",
"vitepress": "^1.6.3",
"vitepress-plugin-nprogress": "^0.0.4"
},
"dependencies": {
"markdown-it": "^14.1.0",
"semver": "^7.7.1",
"vitepress-openapi": "^0.0.3-alpha.76",
"vitepress-plugin-auto-sidebar": "^1.3.5",
Expand Down
21 changes: 0 additions & 21 deletions docs/src/components/Licenses.vue

This file was deleted.

Loading