diff --git a/.github/workflows/chart-test.yml b/.github/workflows/chart-test.yml
index 73c22f1a..3842c610 100644
--- a/.github/workflows/chart-test.yml
+++ b/.github/workflows/chart-test.yml
@@ -79,13 +79,13 @@ jobs:
tags: kind-registry:5000/credential-issuer-service:testing
- name: Build expiry app
- id: build-expiry-app-image
+ id: build-data-deletion-app-image
uses: docker/build-push-action@v6
with:
context: .
- file: ./docker/Dockerfile-credential-expiry-app
+ file: ./docker/Dockerfile-credential-data-deletion-app
push: true
- tags: kind-registry:5000/credential-expiry-app:testing
+ tags: kind-registry:5000/credential-data-deletion-app:testing
- name: Build processes worker
id: build-processes-worker-image
@@ -121,7 +121,7 @@ jobs:
run: ct lint --validate-maintainers=false --check-version-increment=false --target-branch ${{ github.event.repository.default_branch }}
- name: Run chart-testing (install)
- run: ct install --charts charts/ssi-credential-issuer --config charts/chart-testing-config.yaml --helm-extra-set-args "--set service.image.name=kind-registry:5000/credential-issuer-service --set service.image.tag=testing --set migrations.image.name=kind-registry:5000/credential-issuer-migrations --set migrations.image.tag=testing --set processesworker.image.name=kind-registry:5000/credential-issuer-processes-worker --set processesworker.image.tag=testing --set credentialExpiry.image.name=kind-registry:5000/credential-expiry-app --set credentialExpiry.image.tag=testing"
+ run: ct install --charts charts/ssi-credential-issuer --config charts/chart-testing-config.yaml --helm-extra-set-args "--set service.image.name=kind-registry:5000/credential-issuer-service --set service.image.tag=testing --set migrations.image.name=kind-registry:5000/credential-issuer-migrations --set migrations.image.tag=testing --set processesworker.image.name=kind-registry:5000/credential-issuer-processes-worker --set processesworker.image.tag=testing --set credentialExpiry.image.name=kind-registry:5000/credential-data-deletion-app --set credentialExpiry.image.tag=testing"
if: github.event_name != 'pull_request' || steps.list-changed.outputs.changed == 'true'
# Upgrade the released chart version with the locally available chart
@@ -132,5 +132,5 @@ jobs:
helm repo add tractusx-dev https://eclipse-tractusx.github.io/charts/dev
helm install ssi-credential-issuer tractusx-dev/ssi-credential-issuer --version ${{ github.event.inputs.upgrade_from || '1.0.0' }} --namespace upgrade --create-namespace
helm dependency update charts/ssi-credential-issuer
- helm upgrade ssi-credential-issuer charts/ssi-credential-issuer --set service.image.name=kind-registry:5000/credential-issuer-service --set service.image.tag=testing --set migrations.image.name=kind-registry:5000/credential-issuer-migrations --set migrations.image.tag=testing --set processesworker.image.name=kind-registry:5000/credential-issuer-processes-worker --set processesworker.image.tag=testing --set credentialExpiry.image.name=kind-registry:5000/credential-expiry-app --set credentialExpiry.image.tag=testing --namespace upgrade
+ helm upgrade ssi-credential-issuer charts/ssi-credential-issuer --set service.image.name=kind-registry:5000/credential-issuer-service --set service.image.tag=testing --set migrations.image.name=kind-registry:5000/credential-issuer-migrations --set migrations.image.tag=testing --set processesworker.image.name=kind-registry:5000/credential-issuer-processes-worker --set processesworker.image.tag=testing --set credentialExpiry.image.name=kind-registry:5000/credential-data-deletion-app --set credentialExpiry.image.tag=testing --namespace upgrade
if: github.event_name != 'pull_request' || steps.list-changed.outputs.changed == 'true'
diff --git a/.github/workflows/credential-expiry-app-docker.yml b/.github/workflows/credential-data-deletion-app-docker.yml
similarity index 88%
rename from .github/workflows/credential-expiry-app-docker.yml
rename to .github/workflows/credential-data-deletion-app-docker.yml
index 7689f33b..f9262bce 100644
--- a/.github/workflows/credential-expiry-app-docker.yml
+++ b/.github/workflows/credential-data-deletion-app-docker.yml
@@ -17,7 +17,7 @@
# SPDX-License-Identifier: Apache-2.0
###############################################################
-name: Build Credential Expiry App Image
+name: Build Credential Data Deletion App Image
on:
push:
@@ -25,9 +25,9 @@ on:
# service and transitive paths
- 'src/**'
# workflow file
- - '.github/workflows/credential-expiry-app-docker.yml'
+ - '.github/workflows/credential-data-deletion-app-docker.yml'
# dockerfile
- - 'docker/Dockerfile-credential-expiry-app'
+ - 'docker/Dockerfile-credential-data-deletion-app'
branches:
- 'main'
@@ -35,7 +35,7 @@ on:
env:
IMAGE_NAMESPACE: "tractusx"
- IMAGE_NAME: "ssi-credential-expiry-app"
+ IMAGE_NAME: "ssi-credential-data-deletion-app"
jobs:
build-and-push-image:
@@ -70,7 +70,7 @@ jobs:
uses: docker/build-push-action@1a162644f9a7e87d8f4b053101d1d9a712edc18c # v6.3.0
with:
context: .
- file: ./docker/Dockerfile-credential-expiry-app
+ file: ./docker/Dockerfile-credential-data-deletion-app
platforms: linux/amd64, linux/arm64
pull: true
push: ${{ github.event_name != 'pull_request' }}
@@ -85,4 +85,4 @@ jobs:
username: ${{ secrets.DOCKER_HUB_USER }}
password: ${{ secrets.DOCKER_HUB_TOKEN }}
repository: ${{ env.IMAGE_NAMESPACE }}/${{ env.IMAGE_NAME }}
- readme-filepath: ./docker/notice-credential-expiry-app.md
+ readme-filepath: ./docker/notice-credential-data-deletion-app.md
diff --git a/.github/workflows/owasp-zap.yml b/.github/workflows/owasp-zap.yml
index 3f5f2992..ec4b65f1 100644
--- a/.github/workflows/owasp-zap.yml
+++ b/.github/workflows/owasp-zap.yml
@@ -88,13 +88,13 @@ jobs:
tags: kind-registry:5000/credential-issuer-processes-worker:testing
- name: Build Expiry image
- id: build-expiry-image
+ id: build-data-deletion-image
uses: docker/build-push-action@1a162644f9a7e87d8f4b053101d1d9a712edc18c # v6.3.0
with:
context: .
- file: ./docker/Dockerfile-credential-expiry-app
+ file: ./docker/Dockerfile-credential-data-deletion-app
push: true
- tags: kind-registry:5000/credential-expiry-app:testing
+ tags: kind-registry:5000/credential-data-deletion-app:testing
- name: Add bitnami repo
run: |
@@ -107,7 +107,7 @@ jobs:
helm dependency build
- name: Install the chart on KinD cluster
- run: helm install testing -n apps --create-namespace --wait --set service.image.name=kind-registry:5000/credential-issuer-service --set service.image.tag=testing --set migrations.image.name=kind-registry:5000/credential-issuer-migrations --set migrations.image.tag=testing --set processesworker.image.name=kind-registry:5000/credential-issuer-processes-worker --set processesworker.image.tag=testing --set credentialExpiry.image.name=kind-registry:5000/credential-expiry-app --set credentialExpiry.image.tag=testing --set service.swaggerEnabled=true charts/ssi-credential-issuer
+ run: helm install testing -n apps --create-namespace --wait --set service.image.name=kind-registry:5000/credential-issuer-service --set service.image.tag=testing --set migrations.image.name=kind-registry:5000/credential-issuer-migrations --set migrations.image.tag=testing --set processesworker.image.name=kind-registry:5000/credential-issuer-processes-worker --set processesworker.image.tag=testing --set credentialExpiry.image.name=kind-registry:5000/credential-data-deletion-app --set credentialExpiry.image.tag=testing --set service.swaggerEnabled=true charts/ssi-credential-issuer
- name: Configure port forward to app in KinD
run: |
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 08df8407..42050729 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -100,9 +100,9 @@ jobs:
- image: tractusx/ssi-credential-issuer-processes-worker
dockerfile: ./docker/Dockerfile-credential-issuer-processes-worker
dockernotice: ./docker/notice-credential-issuer-processes-worker.md
- - image: tractusx/ssi-credential-expiry-app
- dockerfile: ./docker/Dockerfile-credential-expiry-app
- dockernotice: ./docker/notice-credential-expiry-app.md
+ - image: tractusx/ssi-credential-data-deletion-app
+ dockerfile: ./docker/Dockerfile-credential-data-deletion-app
+ dockernotice: ./docker/notice-credential-data-deletion-app.md
outputs:
app-version: ${{ steps.app-version.outputs.current }}
version-check: ${{ steps.version-check.outputs.exists }}
diff --git a/.github/workflows/release_candidate.yml b/.github/workflows/release_candidate.yml
index 2bbe046f..5f9f9b56 100644
--- a/.github/workflows/release_candidate.yml
+++ b/.github/workflows/release_candidate.yml
@@ -42,9 +42,9 @@ jobs:
- image: tractusx/ssi-credential-issuer-processes-worker
dockerfile: ./docker/Dockerfile-credential-issuer-processes-worker
dockernotice: ./docker/notice-credential-issuer-processes-worker.md
- - image: tractusx/ssi-credential-expiry-app
- dockerfile: ./docker/Dockerfile-credential-expiry-app
- dockernotice: ./docker/notice-credential-expiry-app.md
+ - image: tractusx/ssi-credential-data-deletion-app
+ dockerfile: ./docker/Dockerfile-credential-data-deletion-app
+ dockernotice: ./docker/notice-credential-data-deletion-app.md
steps:
- name: Checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
diff --git a/.github/workflows/trivy-main.yml b/.github/workflows/trivy-main.yml
index 3a5e5ace..ba53122d 100644
--- a/.github/workflows/trivy-main.yml
+++ b/.github/workflows/trivy-main.yml
@@ -144,7 +144,7 @@ jobs:
with:
sarif_file: "trivy-results3.sarif"
- analyze-ssi-credential-expiry-app:
+ analyze-ssi-credential-data-deletion-app:
runs-on: ubuntu-latest
permissions:
actions: read
@@ -165,7 +165,7 @@ jobs:
uses: aquasecurity/trivy-action@6c175e9c4083a92bbca2f9724c8a5e33bc2d97a5 # v0.30.0
with:
# Path to Docker image
- image-ref: "${{ env.IMAGE_NAMESPACE }}/ssi-credential-expiry-app:main"
+ image-ref: "${{ env.IMAGE_NAMESPACE }}/ssi-credential-data-deletion-app:main"
format: "sarif"
output: "trivy-results4.sarif"
vuln-type: "os,library"
diff --git a/.github/workflows/trivy.yml b/.github/workflows/trivy.yml
index 0b81fde3..1b201976 100644
--- a/.github/workflows/trivy.yml
+++ b/.github/workflows/trivy.yml
@@ -144,7 +144,7 @@ jobs:
with:
sarif_file: "trivy-results3.sarif"
- analyze-ssi-credential-expiry-app:
+ analyze-ssi-credential-data-deletion-app:
runs-on: ubuntu-latest
permissions:
actions: read
@@ -165,7 +165,7 @@ jobs:
uses: aquasecurity/trivy-action@6c175e9c4083a92bbca2f9724c8a5e33bc2d97a5 # v0.30.0
with:
# Path to Docker image
- image-ref: "${{ env.IMAGE_NAMESPACE }}/ssi-credential-expiry-app:latest"
+ image-ref: "${{ env.IMAGE_NAMESPACE }}/ssi-credential-data-deletion-app:latest"
format: "sarif"
output: "trivy-results4.sarif"
vuln-type: "os,library"
diff --git a/README.md b/README.md
index cf674977..53918bd4 100644
--- a/README.md
+++ b/README.md
@@ -39,7 +39,7 @@ See Docker notice files for more information:
- [credential-issuer-service](./docker//notice-credential-issuer-service.md)
- [credential-issuer-processes-worker](./docker/notice-credential-issuer-processes-worker.md)
-- [credential-expiry-app](./docker/notice-credential-expiry-app.md)
+- [credential-data-deletion-app](./docker/notice-credential-data-deletion-app.md)
- [credential-issuer-migrations](./docker/notice-credential-issuer-migrations.md)
## Contributing
diff --git a/charts/ssi-credential-issuer/README.md b/charts/ssi-credential-issuer/README.md
index d4f649d9..04aeef77 100644
--- a/charts/ssi-credential-issuer/README.md
+++ b/charts/ssi-credential-issuer/README.md
@@ -106,7 +106,7 @@ dependencies:
| processesworker.wallet.getCredentialPath | string | `"/api/v2.0.0/credentials/{0}"` | path to get a specific credential; {0} will be replaced by the credential id |
| processesworker.wallet.revokeCredentialPath | string | `"/api/v2.0.0/credentials/{0}"` | path to revoke a specific credential; {0} will be replaced by the credential id |
| credentialExpiry.name | string | `"expiry"` | |
-| credentialExpiry.image.name | string | `"docker.io/tractusx/ssi-credential-expiry-app"` | |
+| credentialExpiry.image.name | string | `"docker.io/tractusx/ssi-credential-data-deletion-app"` | |
| credentialExpiry.image.tag | string | `""` | |
| credentialExpiry.image.pullSecrets | list | `[]` | |
| credentialExpiry.imagePullPolicy | string | `"IfNotPresent"` | |
@@ -114,7 +114,7 @@ dependencies:
| credentialExpiry.processIdentity.identityId | string | `"ac1cf001-7fbc-1f2f-817f-bce058020006"` | |
| credentialExpiry.logging.default | string | `"Information"` | |
| credentialExpiry.expiry.expiredVcsToDeleteInMonth | int | `12` | |
-| credentialExpiry.expiry.inactiveVcsToDeleteInWeeks | int | `12` | |
+| credentialExpiry.expiry.inactiveVcsToDeleteInDays | int | `84` | |
| existingSecret | string | `""` | Secret containing the client-secrets for the connection to portal and wallet as well as encryptionKeys for issuer.credential and processesworker.wallet |
| dotnetEnvironment | string | `"Production"` | |
| dbConnection.schema | string | `"issuer"` | |
diff --git a/charts/ssi-credential-issuer/templates/cronjob-expiry-app.yaml b/charts/ssi-credential-issuer/templates/cronjob-data-deletion-app.yaml
similarity index 98%
rename from charts/ssi-credential-issuer/templates/cronjob-expiry-app.yaml
rename to charts/ssi-credential-issuer/templates/cronjob-data-deletion-app.yaml
index 26ee1783..dc322df0 100644
--- a/charts/ssi-credential-issuer/templates/cronjob-expiry-app.yaml
+++ b/charts/ssi-credential-issuer/templates/cronjob-data-deletion-app.yaml
@@ -72,8 +72,8 @@ spec:
{{- end }}
- name: "EXPIRY__EXPIREDVCSTODELETEINMONTH"
value: "{{ .Values.credentialExpiry.expiry.expiredVcsToDeleteInMonth }}"
- - name: "EXPIRY__INACTIVEVCSTODELETEINWEEKS"
- value: "{{ .Values.credentialExpiry.expiry.inactiveVcsToDeleteInWeeks }}"
+ - name: "EXPIRY__INACTIVEVCSTODELETEINDAYS"
+ value: "{{ .Values.credentialExpiry.expiry.inactiveVcsToDeleteInDays }}"
- name: "PROCESSIDENTITY__IDENTITYID"
value: "{{ .Values.credentialExpiry.processIdentity.identityId }}"
- name: "PORTAL__CLIENTID"
diff --git a/charts/ssi-credential-issuer/values.yaml b/charts/ssi-credential-issuer/values.yaml
index 9cc00070..01274e7b 100644
--- a/charts/ssi-credential-issuer/values.yaml
+++ b/charts/ssi-credential-issuer/values.yaml
@@ -149,7 +149,7 @@ processesworker:
credentialExpiry:
name: "expiry"
image:
- name: "docker.io/tractusx/ssi-credential-expiry-app"
+ name: "docker.io/tractusx/ssi-credential-data-deletion-app"
tag: ""
pullSecrets: []
imagePullPolicy: "IfNotPresent"
@@ -167,7 +167,7 @@ credentialExpiry:
default: "Information"
expiry:
expiredVcsToDeleteInMonth: 12
- inactiveVcsToDeleteInWeeks: 12
+ inactiveVcsToDeleteInDays: 84
# -- Secret containing the client-secrets for the connection to portal and wallet
# as well as encryptionKeys for issuer.credential and processesworker.wallet
diff --git a/docker/Dockerfile-credential-expiry-app b/docker/Dockerfile-credential-data-deletion-app
similarity index 80%
rename from docker/Dockerfile-credential-expiry-app
rename to docker/Dockerfile-credential-data-deletion-app
index 67987c51..be3d78f8 100644
--- a/docker/Dockerfile-credential-expiry-app
+++ b/docker/Dockerfile-credential-data-deletion-app
@@ -22,9 +22,9 @@ ARG TARGETARCH
WORKDIR /
COPY LICENSE NOTICE.md DEPENDENCIES /
COPY src/ src/
-RUN dotnet restore "src/credentials/SsiCredentialIssuer.Expiry.App/SsiCredentialIssuer.Expiry.App.csproj"
-WORKDIR /src/credentials/SsiCredentialIssuer.Expiry.App
-RUN dotnet publish "SsiCredentialIssuer.Expiry.App.csproj" -c Release -o /app/publish
+RUN dotnet restore "src/credentials/SsiCredentialIssuer.DataDeletion.App/SsiCredentialIssuer.DataDeletion.App.csproj"
+WORKDIR /src/credentials/SsiCredentialIssuer.DataDeletion.App
+RUN dotnet publish "SsiCredentialIssuer.DataDeletion.App.csproj" -c Release -o /app/publish
FROM mcr.microsoft.com/dotnet/runtime:9.0-alpine
ENV COMPlus_EnableDiagnostics=0
@@ -32,4 +32,4 @@ WORKDIR /app
COPY --from=publish /app/publish .
RUN chown -R 1000:3000 /app
USER 1000:3000
-ENTRYPOINT ["dotnet", "Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.dll"]
+ENTRYPOINT ["dotnet", "Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.dll"]
diff --git a/docker/notice-credential-expiry-app.md b/docker/notice-credential-data-deletion-app.md
similarity index 85%
rename from docker/notice-credential-expiry-app.md
rename to docker/notice-credential-data-deletion-app.md
index 5699ad67..a5a1c15a 100644
--- a/docker/notice-credential-expiry-app.md
+++ b/docker/notice-credential-data-deletion-app.md
@@ -1,6 +1,6 @@
## Notice for Docker image
-DockerHub: [https://hub.docker.com/r/tractusx/ssi-credential-expiry-app](https://hub.docker.com/r/tractusx/ssi-credential-expiry-app)
+DockerHub: [https://hub.docker.com/r/tractusx/ssi-credential-data-deletion-app](https://hub.docker.com/r/tractusx/ssi-credential-data-deletion-app)
Eclipse Tractus-X product(s) installed within the image:
@@ -8,7 +8,7 @@ __Credential Expiry App__
- GitHub: https://github.com/eclipse-tractusx/ssi-credential-issuer
- Project home: https://projects.eclipse.org/projects/automotive.tractusx
-- Dockerfile: https://github.com/eclipse-tractusx/ssi-credential-issuer/blob/main/docker/Dockerfile-credential-expiry-app
+- Dockerfile: https://github.com/eclipse-tractusx/ssi-credential-issuer/blob/main/docker/Dockerfile-credential-data-deletion-app
- Project license: [Apache License, Version 2.0](https://github.com/eclipse-tractusx/ssi-credential-issuer/blob/main/LICENSE)
__Used base images__
diff --git a/src/SsiCredentialIssuer.sln b/src/SsiCredentialIssuer.sln
index 14dfa31d..e6bdaf4b 100644
--- a/src/SsiCredentialIssuer.sln
+++ b/src/SsiCredentialIssuer.sln
@@ -27,11 +27,11 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CredentialProcess.Library",
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Portal.Service", "externalservices\Portal.Service\Portal.Service.csproj", "{8AF8FC7D-3448-422A-8739-0690AA700DAD}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SsiCredentialIssuer.Expiry.App", "credentials\SsiCredentialIssuer.Expiry.App\SsiCredentialIssuer.Expiry.App.csproj", "{9F9FFBEE-4256-494F-BEF7-8856145D45EC}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SsiCredentialIssuer.DataDeletion.App", "credentials\SsiCredentialIssuer.DataDeletion.App\SsiCredentialIssuer.DataDeletion.App.csproj", "{9F9FFBEE-4256-494F-BEF7-8856145D45EC}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{A2FC3E0F-5AFE-44FA-909B-B8016DD1EB44}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SsiCredentialIssuer.Expiry.App.Tests", "..\tests\credentials\SsiCredentialIssuer.Expiry.App.Tests\SsiCredentialIssuer.Expiry.App.Tests.csproj", "{FFB1423F-C41F-46A9-8D5D-115B3BC46682}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SsiCredentialIssuer.DataDeletion.App.Tests", "..\tests\credentials\SsiCredentialIssuer.DataDeletion.App.Tests\SsiCredentialIssuer.DataDeletion.App.Tests.csproj", "{FFB1423F-C41F-46A9-8D5D-115B3BC46682}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SsiCredentialIssuer.Service.Tests", "..\tests\issuer\SsiCredentialIssuer.Service.Tests\SsiCredentialIssuer.Service.Tests.csproj", "{D88007E0-603A-49B7-B4E4-AD255B06D252}"
EndProject
diff --git a/src/credentials/SsiCredentialIssuer.Expiry.App/ExpiryCheckService.cs b/src/credentials/SsiCredentialIssuer.DataDeletion.App/DataDeletionCheckService.cs
similarity index 93%
rename from src/credentials/SsiCredentialIssuer.Expiry.App/ExpiryCheckService.cs
rename to src/credentials/SsiCredentialIssuer.DataDeletion.App/DataDeletionCheckService.cs
index 88b38927..7e164622 100644
--- a/src/credentials/SsiCredentialIssuer.Expiry.App/ExpiryCheckService.cs
+++ b/src/credentials/SsiCredentialIssuer.DataDeletion.App/DataDeletionCheckService.cs
@@ -29,33 +29,33 @@
using Org.Eclipse.TractusX.SsiCredentialIssuer.DBAccess.Models;
using Org.Eclipse.TractusX.SsiCredentialIssuer.DBAccess.Repositories;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Entities.Enums;
-using Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.DependencyInjection;
+using Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.DependencyInjection;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Portal.Service.Models;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Portal.Service.Services;
using System.Text.Json;
-namespace Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App;
+namespace Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App;
///
/// Service to delete the pending and inactive documents as well as the depending consents from the database
///
-public class ExpiryCheckService
+public class DataDeletionCheckService
{
private static readonly JsonSerializerOptions Options = new() { PropertyNamingPolicy = JsonNamingPolicy.CamelCase };
private readonly IServiceScopeFactory _serviceScopeFactory;
- private readonly ILogger _logger;
- private readonly ExpiryCheckServiceSettings _settings;
+ private readonly ILogger _logger;
+ private readonly DataDeletionCheckServiceSettings _settings;
///
- /// Creates a new instance of
+ /// Creates a new instance of
///
/// access to the services
/// the logger
/// The options
- public ExpiryCheckService(
+ public DataDeletionCheckService(
IServiceScopeFactory serviceScopeFactory,
- ILogger logger,
- IOptions options)
+ ILogger logger,
+ IOptions options)
{
_serviceScopeFactory = serviceScopeFactory;
_logger = logger;
@@ -83,7 +83,7 @@ public async Task ExecuteAsync(CancellationToken stoppingToken)
var now = dateTimeProvider.OffsetNow;
var companySsiDetailsRepository = repositories.GetInstance();
var processStepRepository = repositories.GetInstance>();
- var inactiveVcsToDelete = now.AddDays(-(_settings.InactiveVcsToDeleteInWeeks * 7));
+ var inactiveVcsToDelete = now.AddDays(-_settings.InactiveVcsToDeleteInDays);
var expiredVcsToDelete = now.AddMonths(-_settings.ExpiredVcsToDeleteInMonth);
var credentials = outerLoopRepositories.GetInstance()
diff --git a/src/credentials/SsiCredentialIssuer.Expiry.App/DependencyInjection/ExpiryCheckServiceExtensions.cs b/src/credentials/SsiCredentialIssuer.DataDeletion.App/DependencyInjection/DataDeletionCheckServiceExtensions.cs
similarity index 87%
rename from src/credentials/SsiCredentialIssuer.Expiry.App/DependencyInjection/ExpiryCheckServiceExtensions.cs
rename to src/credentials/SsiCredentialIssuer.DataDeletion.App/DependencyInjection/DataDeletionCheckServiceExtensions.cs
index c8c9760c..aed19c38 100644
--- a/src/credentials/SsiCredentialIssuer.Expiry.App/DependencyInjection/ExpiryCheckServiceExtensions.cs
+++ b/src/credentials/SsiCredentialIssuer.DataDeletion.App/DependencyInjection/DataDeletionCheckServiceExtensions.cs
@@ -22,12 +22,12 @@
using Org.Eclipse.TractusX.Portal.Backend.Framework.DateTimeProvider;
using Org.Eclipse.TractusX.Portal.Backend.Framework.Models.Validation;
-namespace Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.DependencyInjection;
+namespace Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.DependencyInjection;
///
/// Extension method to register the expiry check service and dependent services
///
-public static class ExpiryCheckServiceExtensions
+public static class DataDeletionCheckServiceExtensions
{
///
/// Adds the expiry check service
@@ -38,11 +38,11 @@ public static class ExpiryCheckServiceExtensions
public static IServiceCollection AddExpiryCheckService(this IServiceCollection services, IConfigurationSection section)
{
services
- .AddOptions()
+ .AddOptions()
.Bind(section)
.EnvironmentalValidation(section);
services
- .AddTransient()
+ .AddTransient()
.AddTransient();
return services;
}
diff --git a/src/credentials/SsiCredentialIssuer.Expiry.App/DependencyInjection/ExpiryCheckServiceSettings.cs b/src/credentials/SsiCredentialIssuer.DataDeletion.App/DependencyInjection/DataDeletionCheckServiceSettings.cs
similarity index 87%
rename from src/credentials/SsiCredentialIssuer.Expiry.App/DependencyInjection/ExpiryCheckServiceSettings.cs
rename to src/credentials/SsiCredentialIssuer.DataDeletion.App/DependencyInjection/DataDeletionCheckServiceSettings.cs
index e544c53c..fe80dc27 100644
--- a/src/credentials/SsiCredentialIssuer.Expiry.App/DependencyInjection/ExpiryCheckServiceSettings.cs
+++ b/src/credentials/SsiCredentialIssuer.DataDeletion.App/DependencyInjection/DataDeletionCheckServiceSettings.cs
@@ -19,12 +19,12 @@
using System.ComponentModel.DataAnnotations;
-namespace Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.DependencyInjection;
+namespace Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.DependencyInjection;
///
/// Settings for the ExpiryCheckService
///
-public class ExpiryCheckServiceSettings
+public class DataDeletionCheckServiceSettings
{
///
/// Vcs which are older than the given value will be deleted when expired
@@ -36,5 +36,5 @@ public class ExpiryCheckServiceSettings
/// Vcs which are older than the given value will be deleted when declined
///
[Required]
- public int InactiveVcsToDeleteInWeeks { get; init; }
+ public int InactiveVcsToDeleteInDays { get; init; }
}
diff --git a/src/credentials/SsiCredentialIssuer.Expiry.App/Program.cs b/src/credentials/SsiCredentialIssuer.DataDeletion.App/Program.cs
similarity index 89%
rename from src/credentials/SsiCredentialIssuer.Expiry.App/Program.cs
rename to src/credentials/SsiCredentialIssuer.DataDeletion.App/Program.cs
index fec4fdda..aa37bde2 100644
--- a/src/credentials/SsiCredentialIssuer.Expiry.App/Program.cs
+++ b/src/credentials/SsiCredentialIssuer.DataDeletion.App/Program.cs
@@ -22,9 +22,8 @@
using Org.Eclipse.TractusX.Portal.Backend.Framework.Logging;
using Org.Eclipse.TractusX.Portal.Backend.Framework.Token;
using Org.Eclipse.TractusX.SsiCredentialIssuer.DBAccess;
-using Org.Eclipse.TractusX.SsiCredentialIssuer.Entities.Auditing.DependencyInjection;
-using Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App;
-using Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.DependencyInjection;
+using Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App;
+using Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.DependencyInjection;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Portal.Service.DependencyInjection;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Processes.ProcessIdentity;
using Serilog;
@@ -57,7 +56,7 @@
};
Log.Information("Start processing");
- var workerInstance = host.Services.GetRequiredService();
+ var workerInstance = host.Services.GetRequiredService();
await workerInstance.ExecuteAsync(tokenSource.Token).ConfigureAwait(ConfigureAwaitOptions.None);
Log.Information("Execution finished shutting down");
}
diff --git a/src/credentials/SsiCredentialIssuer.Expiry.App/Properties/launchSettings.json b/src/credentials/SsiCredentialIssuer.DataDeletion.App/Properties/launchSettings.json
similarity index 82%
rename from src/credentials/SsiCredentialIssuer.Expiry.App/Properties/launchSettings.json
rename to src/credentials/SsiCredentialIssuer.DataDeletion.App/Properties/launchSettings.json
index 8480e0aa..eb668b6f 100644
--- a/src/credentials/SsiCredentialIssuer.Expiry.App/Properties/launchSettings.json
+++ b/src/credentials/SsiCredentialIssuer.DataDeletion.App/Properties/launchSettings.json
@@ -1,7 +1,7 @@
{
"$schema": "http://json.schemastore.org/launchsettings.json",
"profiles": {
- "SsiCredentialIssuer.Expiry.App": {
+ "SsiCredentialIssuer.DataDeletion.App": {
"commandName": "Project",
"environmentVariables": {
"DOTNET_ENVIRONMENT": "Development"
diff --git a/src/credentials/SsiCredentialIssuer.Expiry.App/SsiCredentialIssuer.Expiry.App.csproj b/src/credentials/SsiCredentialIssuer.DataDeletion.App/SsiCredentialIssuer.DataDeletion.App.csproj
similarity index 94%
rename from src/credentials/SsiCredentialIssuer.Expiry.App/SsiCredentialIssuer.Expiry.App.csproj
rename to src/credentials/SsiCredentialIssuer.DataDeletion.App/SsiCredentialIssuer.DataDeletion.App.csproj
index 61b8d424..18549fd1 100644
--- a/src/credentials/SsiCredentialIssuer.Expiry.App/SsiCredentialIssuer.Expiry.App.csproj
+++ b/src/credentials/SsiCredentialIssuer.DataDeletion.App/SsiCredentialIssuer.DataDeletion.App.csproj
@@ -20,8 +20,8 @@
- Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App
- Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App
+ Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App
+ Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App
net9.0
enable
enable
diff --git a/src/credentials/SsiCredentialIssuer.Expiry.App/appsettings.json b/src/credentials/SsiCredentialIssuer.DataDeletion.App/appsettings.json
similarity index 88%
rename from src/credentials/SsiCredentialIssuer.Expiry.App/appsettings.json
rename to src/credentials/SsiCredentialIssuer.DataDeletion.App/appsettings.json
index ada86886..b1cb122a 100644
--- a/src/credentials/SsiCredentialIssuer.Expiry.App/appsettings.json
+++ b/src/credentials/SsiCredentialIssuer.DataDeletion.App/appsettings.json
@@ -17,7 +17,7 @@
"FromLogContext"
],
"Properties": {
- "Application": "Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App"
+ "Application": "Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App"
}
},
"ConnectionStrings": {
@@ -25,7 +25,7 @@
},
"Expiry": {
"ExpiredVcsToDeleteInMonth": 12,
- "InactiveVcsToDeleteInWeeks": 12
+ "InactiveVcsToDeleteInDays": 84
},
"ProcessIdentity": {
"IdentityId": ""
diff --git a/src/database/SsiCredentialIssuer.DbAccess/Repositories/CompanySsiDetailsRepository.cs b/src/database/SsiCredentialIssuer.DbAccess/Repositories/CompanySsiDetailsRepository.cs
index 210d0bed..58d834cb 100644
--- a/src/database/SsiCredentialIssuer.DbAccess/Repositories/CompanySsiDetailsRepository.cs
+++ b/src/database/SsiCredentialIssuer.DbAccess/Repositories/CompanySsiDetailsRepository.cs
@@ -317,8 +317,18 @@ public IAsyncEnumerable GetExpiryData(DateTimeOffset now,
.ToAsyncEnumerable();
}
- public void RemoveSsiDetail(Guid companySsiDetailId, string bpnl, string userId) =>
+ public void RemoveSsiDetail(Guid companySsiDetailId, string bpnl, string userId)
+ {
+ var assignments = context.CompanySsiDetailAssignedDocuments
+ .Where(x => x.CompanySsiDetailId == companySsiDetailId).ToList();
+
+ var documents = context.Documents.Where(document => assignments.Select(assign => assign.DocumentId).Contains(document.Id)).ToList();
+
+ context.CompanySsiDetailAssignedDocuments.RemoveRange(assignments);
+ context.Documents.RemoveRange(documents);
+
context.CompanySsiDetails.Remove(new CompanySsiDetail(companySsiDetailId, bpnl, default, default, bpnl, userId, DateTimeOffset.MinValue));
+ }
public void CreateProcessData(Guid companySsiDetailId, JsonDocument schema, VerifiedCredentialTypeKindId credentialTypeKindId, Action? setOptionalFields)
{
diff --git a/tests/credentials/SsiCredentialIssuer.Expiry.App.Tests/ExpiryCheckServiceTests.cs b/tests/credentials/SsiCredentialIssuer.DataDeletion.App.Tests/DataDeletionCheckServiceTests.cs
similarity index 94%
rename from tests/credentials/SsiCredentialIssuer.Expiry.App.Tests/ExpiryCheckServiceTests.cs
rename to tests/credentials/SsiCredentialIssuer.DataDeletion.App.Tests/DataDeletionCheckServiceTests.cs
index 6f9a102a..c1b87975 100644
--- a/tests/credentials/SsiCredentialIssuer.Expiry.App.Tests/ExpiryCheckServiceTests.cs
+++ b/tests/credentials/SsiCredentialIssuer.DataDeletion.App.Tests/DataDeletionCheckServiceTests.cs
@@ -31,29 +31,29 @@
using Org.Eclipse.TractusX.SsiCredentialIssuer.DBAccess.Repositories;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Entities.Entities;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Entities.Enums;
-using Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.DependencyInjection;
+using Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.DependencyInjection;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Portal.Service.Models;
using Org.Eclipse.TractusX.SsiCredentialIssuer.Portal.Service.Services;
using System.Runtime.CompilerServices;
-namespace Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.Tests;
+namespace Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.Tests;
-public class ExpiryCheckServiceTests
+public class DataDeletionCheckServiceTests
{
private readonly IFixture _fixture;
- private readonly ExpiryCheckService _sut;
+ private readonly DataDeletionCheckService _sut;
private readonly IDateTimeProvider _dateTimeProvider;
private readonly IIssuerRepositories _issuerRepositories;
private readonly IProcessStepRepository _processStepRepository;
private readonly IPortalService _portalService;
private readonly ICompanySsiDetailsRepository _companySsiDetailsRepository;
- private readonly ExpiryCheckServiceSettings _settings;
+ private readonly DataDeletionCheckServiceSettings _settings;
private readonly string Bpnl = "BPNL00000001TEST";
private static readonly string IssuerBpnl = "BPNL000001ISSUER";
- public ExpiryCheckServiceTests()
+ public DataDeletionCheckServiceTests()
{
_fixture = new Fixture().Customize(new AutoFakeItEasyCustomization { ConfigureMembers = true });
_fixture.Behaviors.OfType().ToList()
@@ -81,12 +81,12 @@ public ExpiryCheckServiceTests()
var serviceScopeFactory = _fixture.Create();
A.CallTo(() => serviceScopeFactory.CreateScope()).Returns(serviceScope);
- _settings = new ExpiryCheckServiceSettings
+ _settings = new DataDeletionCheckServiceSettings
{
ExpiredVcsToDeleteInMonth = 12,
- InactiveVcsToDeleteInWeeks = 8
+ InactiveVcsToDeleteInDays = 56
};
- _sut = new ExpiryCheckService(serviceScopeFactory, _fixture.Create>(), Options.Create(_settings));
+ _sut = new DataDeletionCheckService(serviceScopeFactory, _fixture.Create>(), Options.Create(_settings));
}
[Fact]
@@ -94,7 +94,7 @@ public async Task ExecuteAsync_WithInactiveAndEligibleForDeletion_RemovesEntry()
{
// Arrange
var now = DateTimeOffset.UtcNow;
- var inactiveVcsToDelete = now.AddDays(-(_settings.InactiveVcsToDeleteInWeeks * 7));
+ var inactiveVcsToDelete = now.AddDays(-_settings.InactiveVcsToDeleteInDays);
var credentialId = Guid.NewGuid();
var credentialScheduleData = _fixture.Build()
.With(x => x.IsVcToDelete, true)
diff --git a/tests/credentials/SsiCredentialIssuer.Expiry.App.Tests/GlobalUsings.cs b/tests/credentials/SsiCredentialIssuer.DataDeletion.App.Tests/GlobalUsings.cs
similarity index 100%
rename from tests/credentials/SsiCredentialIssuer.Expiry.App.Tests/GlobalUsings.cs
rename to tests/credentials/SsiCredentialIssuer.DataDeletion.App.Tests/GlobalUsings.cs
diff --git a/tests/credentials/SsiCredentialIssuer.Expiry.App.Tests/SsiCredentialIssuer.Expiry.App.Tests.csproj b/tests/credentials/SsiCredentialIssuer.DataDeletion.App.Tests/SsiCredentialIssuer.DataDeletion.App.Tests.csproj
similarity index 82%
rename from tests/credentials/SsiCredentialIssuer.Expiry.App.Tests/SsiCredentialIssuer.Expiry.App.Tests.csproj
rename to tests/credentials/SsiCredentialIssuer.DataDeletion.App.Tests/SsiCredentialIssuer.DataDeletion.App.Tests.csproj
index e1cf3d58..4d0e03e0 100644
--- a/tests/credentials/SsiCredentialIssuer.Expiry.App.Tests/SsiCredentialIssuer.Expiry.App.Tests.csproj
+++ b/tests/credentials/SsiCredentialIssuer.DataDeletion.App.Tests/SsiCredentialIssuer.DataDeletion.App.Tests.csproj
@@ -20,8 +20,8 @@
- Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.Tests
- Org.Eclipse.TractusX.SsiCredentialIssuer.Expiry.App.Tests
+ Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.Tests
+ Org.Eclipse.TractusX.SsiCredentialIssuer.DataDeletion.App.Tests
net9.0
enable
enable
@@ -40,8 +40,8 @@
-
-
+
+