Skip to content

Sign extension on my self hosted openvsx marketplace #1156

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
RichardSGFR opened this issue Mar 24, 2025 · 8 comments
Open

Sign extension on my self hosted openvsx marketplace #1156

RichardSGFR opened this issue Mar 24, 2025 · 8 comments

Comments

@RichardSGFR
Copy link

Hello,

I am trying to use OpenVsx as self hosted marketplace for my enterprise extension.
I have deployed the openvsx server and webui images on kubernetes and it works well, with enterprise SSO and certificate.

When I try to use my marketplace in vscodium I have isue with extension not being signed by the marketplace

Image

When connecting to the public openvsx marketplace the signature is working fine.

How should I set up my private signature between my self hosted openvsx server and vscodium ?

I tryed to add those line on application.yml but it does not seems to change anything :

ovsx:
integrity:
key-pair: renew

@amvanbaren
Copy link
Contributor

@RichardSGFR Do you have mirror mode enabled (ovsx.data.mirror.enabled)?

Is the JobRunr background server running?

org:
  jobrunr:
    job-scheduler:
      enabled: true
    background-job-server:
      enabled: true
      worker-count: 2

@RichardSGFR
Copy link
Author

Hello @amvanbaren ,

No the mirror mode is disabled, for the moment my deployment can't have access to internet. It has only access to internal network. Maybe in the future we will open it to have the mirror mode but not for the moment (it demands a lot of security concerns in my organisation).

I use openvsx-server image v0.23.1, and openvsx-webui v0.23.1.

Concerning the JobRunR it is enable. Here is my application.yml for further analysis :

logging:
  level:
    root: INFO
    org:
      springframework: INFO
      eclipse.openvsx: DEBUG
      springframework.security: INFO
      springframework.security.oauth2: INFO
      springframework.web: INFO
      springframework.session.web.http.SessionRepositoryFilter.SESSION_LOGGER: INFO
       
server:
  address: 0.0.0.0
  port: 8080
  shutdown: graceful
  use-forward-headers: true
  forward-headers-strategy: native
  tomcat:
    remote-ip-header: X-Forwarded-For
    protocol-header: X-Forwarded-Proto
  compression:
    enabled: true
    mime-types: text/html,text/plain,text/css,application/javascript,application/json,text/xml,application/xml,application/xml+rss,text/javascript
    min-response-size: 1024
  servlet:
    session:
      cookie:
        same-site: none
        secure: true
        domain: mydomain.com
  ssl:
    enabled: true
    certificate-private-key: /etc/ssl/certs/tls.key
    certificate: /etc/ssl/certs/tls.crt
    trustore: /app/keystores/truststore.p12
    trustore-password: ${TRUSTORE_PASSWORD}

spring:
  web:
    cors:
      allowed-origins: https://myoauth2.provider
      allowed-methods: GET,POST
      allowed-headers: Authorization,Content-Type
      allow-credentials: true
  datasource:
    url: "jdbc:postgresql://mypgdb:port/openvsx"
    username: ${PG_USER}
    password: ${PG_PASSWORD}
  cache:
    jcache:
      config: classpath:ehcache.xml
  flyway:
    baseline-on-migrate: true
    baseline-version: 0.1.0
    baseline-description: JobRunr tables
  jpa:
    open-in-view: false
    properties:
      hibernate:
        dialect: org.hibernate.dialect.PostgreSQLDialect
    hibernate:
      ddl-auto: none
  session:
    cookie:
      same-site: none
      domain: mydomain.com
      http-only: true
      secure: true
      max-age: 3600
    timeout: 3600 
    store-type: jdbc
    jdbc:
      initialize-schema: never
  profiles:
    include: ovsx
  security:
    oauth2:
      client:
        registration:
          mycustomauth:
            client-id: ${CLIENT_mycustomauth}
            client-secret: ${SECRET_mycustomauth}
            redirect-uri: "{baseUrl}/login/oauth2/code/{registrationId}"
            authorization-grant-type: authorization_code
            scope: 
              - openid
              - profile
        provider:
          mycustomauth:
            authorization-uri: https://myoauth2.provider/oauth2/authorize
            token-uri: https://myoauth2.provider/oauth2/token
            user-info-uri: https://myoauth2.provider/oauth2/userinfo
            jwk-set-uri: https://myoauth2.provider/oauth2/jwks.json
            user-name-attribute: name

bucket4j:
  enabled: true
  filters:
    - cache-name: buckets
      url: '/api/-/(namespace/create|publish)'
      http-response-headers:
        Access-Control-Allow-Origin: '*'
        Access-Control-Expose-Headers: X-Rate-Limit-Retry-After-Seconds, kubeX-Rate-Limit-Remaining
      rate-limits:
        - cache-key: getParameter("token")
          bandwidths:
            - capacity: 15
              time: 1
              unit: seconds
    - cache-name: buckets
      url: '/vscode/asset/.*/.*/.*/Microsoft.VisualStudio.Services.Icons.Default'
      http-response-headers:
        Access-Control-Allow-Origin: '*'
        Access-Control-Expose-Headers: X-Rate-Limit-Retry-After-Seconds, X-Rate-Limit-Remaining
      rate-limits:
        - cache-key: getRemoteAddr()
          bandwidths:
            - capacity: 75
              time: 1
              unit: seconds
    - cache-name: buckets
      url: '/vscode/(?!asset/.*/.*/.*/Microsoft.VisualStudio.Services.Icons.Default).*|/api/(?!(.*/.*/review(/delete)?)|(-/(namespace/create|publish))).*'
      http-response-headers:
        Access-Control-Allow-Origin: '*'
        Access-Control-Expose-Headers: X-Rate-Limit-Retry-After-Seconds, X-Rate-Limit-Remaining
      rate-limits:
        - cache-key: getRemoteAddr()
          bandwidths:
            - capacity: 15
              time: 1
              unit: seconds

management:
  tracing:
    enabled: false
  zipkin:
    tracing:
      enabled: false

springdoc:
  swagger-ui:
    docExpansion: list
    operationsSorter: alpha
    supportedSubmitMethods:
      - get

org:
  jobrunr:
    job-scheduler:
      enabled: true
    background-job-server:
      enabled: true
      worker-count: 2
    dashboard:
      enabled: false
    database:
      type: sql
    miscellaneous:
      allow-anonymous-data-usage: false

ovsx:
  registry:
    version: 0.23.1
  webui:
    frontendRoutes: "/extension/**,/namespace/**,/user-settings/**,/admin-dashboard/**"
  elasticsearch:
    enabled: false
  databasesearch:
    enabled: true
  storage:
    local:
      directory: /app/storage
  extension-control:
    enabled: false
  integrity:
    key-pair: renew
  oauth2:
    provider: mycustomauth
    attribute-names:
      mycustomauth:
        avatar-url: avatar_url
        email: email
        full-name: name
        login-name: sub
        provider-url: ''

@amvanbaren
Copy link
Contributor

Ok, then it should work. You should see INFO log messages starting with: Generating signature for:

@RichardSGFR
Copy link
Author

Hello,

I see that a job has run this night and now most of the extension are correctly signed.

2025-03-26T03:00:03.445Z DEBUG 1 --- [ool-12-thread-2] o.e.o.adapter.VSCodeIdUpdateService : DAILY UPDATE ALL
2025-03-26T03:00:03.471Z DEBUG 1 --- [ool-12-thread-2] o.e.o.adapter.VSCodeIdUpdateService : UPSTREAM EXTENSIONS: 17
2025-03-26T03:00:03.471Z DEBUG 1 --- [ool-12-thread-2] o.e.o.adapter.VSCodeIdUpdateService : CHANGED EXTENSIONS: 0
2025-03-26T03:00:03.471Z DEBUG 1 --- [ool-12-thread-2] o.e.o.adapter.VSCodeIdUpdateService : UPSTREAM NAMESPACES: 7
2025-03-26T03:00:03.471Z DEBUG 1 --- [ool-12-thread-2] o.e.o.adapter.VSCodeIdUpdateService : CHANGED NAMESPACES: 0

But I still have two extensions (the bigger ones) that are not correctly signed. I see no error in the openvsx server log. What log level should I change to have more info about what is happening ?

@amvanbaren
Copy link
Contributor

The logs you've included are something different.
You should look for ExtensionVersionSignatureJobRequestHandler, the log level is INFO

@RichardSGFR
Copy link
Author

There is no mention to ExtensionVersionSignatureJobRequestHandler in my logs.
Even after settings jobrunr log to trace i don't have any trace of ExtensionVersionSignatureJobRequestHandler

Here is my logs :

JVM_ARGS: ''
Standard Commons Logging discovery in action with spring-jcl: please remove commons-logging.jar from classpath in order to avoid potential conflicts

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v3.2.4)

2025-03-26T13:37:04.610Z  INFO 1 --- [           main] o.eclipse.openvsx.RegistryApplication    : Starting RegistryApplication using Java 17.0.7 with PID 1 (/home/openvsx/server/BOOT-INF/classes started by openvsx in /home/openvsx/server)
2025-03-26T13:37:04.613Z DEBUG 1 --- [           main] o.eclipse.openvsx.RegistryApplication    : Running with Spring Boot v3.2.4, Spring v6.1.5
2025-03-26T13:37:04.614Z  INFO 1 --- [           main] o.eclipse.openvsx.RegistryApplication    : The following 1 profile is active: "ovsx"
2025-03-26T13:37:07.611Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2025-03-26T13:37:07.613Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Elasticsearch repositories in DEFAULT mode.
2025-03-26T13:37:07.711Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.AdminStatisticsRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.712Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.AzureDownloadCountProcessedItemRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.713Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.ExtensionRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.713Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.ExtensionReviewRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.715Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.ExtensionVersionRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.716Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.FileResourceRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.716Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.MigrationItemRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.717Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.NamespaceMembershipRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.718Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.NamespaceRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.719Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.PersistedLogRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.719Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.PersonalAccessTokenRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.720Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.SignatureKeyPairRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.721Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.UserDataRepository; If you want this repository to be a Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ElasticsearchRepository, org.springframework.data.elasticsearch.repository.ElasticsearchRepository
2025-03-26T13:37:07.722Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 104 ms. Found 0 Elasticsearch repository interfaces.
2025-03-26T13:37:07.728Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2025-03-26T13:37:07.728Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Reactive Elasticsearch repositories in DEFAULT mode.
2025-03-26T13:37:07.746Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.AdminStatisticsRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.747Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.AzureDownloadCountProcessedItemRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.747Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.ExtensionRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.747Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.ExtensionReviewRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.747Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.ExtensionVersionRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.748Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.FileResourceRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.748Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.MigrationItemRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.748Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.NamespaceMembershipRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.748Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.NamespaceRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.748Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.PersistedLogRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.748Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.PersonalAccessTokenRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.749Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.SignatureKeyPairRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.749Z  INFO 1 --- [           main] .RepositoryConfigurationExtensionSupport : Spring Data Reactive Elasticsearch - Could not safely identify store assignment for repository candidate interface org.eclipse.openvsx.repositories.UserDataRepository; If you want this repository to be a Reactive Elasticsearch repository, consider annotating your entities with one of these annotations: org.springframework.data.elasticsearch.annotations.Document (preferred), or consider extending one of the following types with your repository: org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository
2025-03-26T13:37:07.749Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 20 ms. Found 0 Reactive Elasticsearch repository interfaces.
2025-03-26T13:37:07.775Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2025-03-26T13:37:07.777Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2025-03-26T13:37:07.947Z  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 166 ms. Found 13 JPA repository interfaces.
2025-03-26T13:37:10.363Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'database.search' created in EhcacheManager.
2025-03-26T13:37:10.413Z  INFO 1 --- [           main] .e.s.o.t.o.p.UpfrontAllocatingPageSource : Allocating 2MB in chunks
2025-03-26T13:37:10.453Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'malicious.extensions' created in EhcacheManager.
2025-03-26T13:37:10.460Z  INFO 1 --- [           main] .e.s.o.t.o.p.UpfrontAllocatingPageSource : Allocating 32MB in chunks
2025-03-26T13:37:10.478Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'latest.extension.version' created in EhcacheManager.
2025-03-26T13:37:10.481Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'files.extension' created in EhcacheManager.
2025-03-26T13:37:10.487Z  INFO 1 --- [           main] .e.s.o.t.o.p.UpfrontAllocatingPageSource : Allocating 32MB in chunks
2025-03-26T13:37:10.494Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'buckets' created in EhcacheManager.
2025-03-26T13:37:10.495Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'files.webresource' created in EhcacheManager.
2025-03-26T13:37:10.500Z  INFO 1 --- [           main] .e.s.o.t.o.p.UpfrontAllocatingPageSource : Allocating 1MB in chunks
2025-03-26T13:37:10.504Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'average.review.rating' created in EhcacheManager.
2025-03-26T13:37:10.508Z  INFO 1 --- [           main] .e.s.o.t.o.p.UpfrontAllocatingPageSource : Allocating 32MB in chunks
2025-03-26T13:37:10.515Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'extension.json' created in EhcacheManager.
2025-03-26T13:37:10.518Z  INFO 1 --- [           main] .e.s.o.t.o.p.UpfrontAllocatingPageSource : Allocating 2MB in chunks
2025-03-26T13:37:10.543Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'sitemap' created in EhcacheManager.
2025-03-26T13:37:10.547Z  INFO 1 --- [           main] .e.s.o.t.o.p.UpfrontAllocatingPageSource : Allocating 32MB in chunks
2025-03-26T13:37:10.554Z  INFO 1 --- [           main] org.ehcache.core.EhcacheManager          : Cache 'namespace.details.json' created in EhcacheManager.
2025-03-26T13:37:10.679Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=database.search
2025-03-26T13:37:10.681Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=malicious.extensions
2025-03-26T13:37:10.682Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=latest.extension.version
2025-03-26T13:37:10.682Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=files.extension
2025-03-26T13:37:10.682Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=buckets
2025-03-26T13:37:10.683Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=files.webresource
2025-03-26T13:37:10.683Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=average.review.rating
2025-03-26T13:37:10.684Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=extension.json
2025-03-26T13:37:10.684Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=sitemap
2025-03-26T13:37:10.684Z  INFO 1 --- [           main] org.ehcache.jsr107.Eh107CacheManager     : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=file./home/openvsx/server/BOOT-INF/classes/ehcache.xml,Cache=namespace.details.json
2025-03-26T13:37:10.949Z  INFO 1 --- [           main] s.Bucket4JAutoConfigurationServletFilter : create-servlet-filter;1;buckets;/api/-/(namespace/create|publish)
2025-03-26T13:37:10.950Z  INFO 1 --- [           main] s.Bucket4JAutoConfigurationServletFilter : create-servlet-filter;2;buckets;/vscode/asset/.*/.*/.*/Microsoft.VisualStudio.Services.Icons.Default
2025-03-26T13:37:10.950Z  INFO 1 --- [           main] s.Bucket4JAutoConfigurationServletFilter : create-servlet-filter;3;buckets;/vscode/(?!asset/.*/.*/.*/Microsoft.VisualStudio.Services.Icons.Default).*|/api/(?!(.*/.*/review(/delete)?)|(-/(namespace/create|publish))).*
2025-03-26T13:37:11.411Z  INFO 1 --- [           main] o.s.b.w.e.j.JettyServletWebServerFactory : Server initialized with port: 8080
2025-03-26T13:37:11.685Z  INFO 1 --- [           main] org.eclipse.jetty.server.Server          : jetty-12.0.7; built: 2024-02-29T21:19:41.771Z; git: c89aca8fd34083befd79f328a3b8b6ffff04347e; jvm 17.0.7+7
2025-03-26T13:37:11.718Z  INFO 1 --- [           main] o.e.j.s.h.ContextHandler.application     : Initializing Spring embedded WebApplicationContext
2025-03-26T13:37:11.719Z  INFO 1 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 6913 ms
Standard Commons Logging discovery in action with spring-jcl: please remove commons-logging.jar from classpath in order to avoid potential conflicts
2025-03-26T13:37:12.436Z  INFO 1 --- [           main] o.e.j.session.DefaultSessionIdManager    : Session workerName=node0
2025-03-26T13:37:12.441Z  INFO 1 --- [           main] o.e.jetty.server.handler.ContextHandler  : Started osbwej.JettyEmbeddedWebAppContext@1c8da7e8{application,/,b=[file:/tmp/jetty-docbase.8080.2491959363330535717/, jar:file:///home/openvsx/server/BOOT-INF/lib/swagger-ui-4.18.2.jar!/META-INF/resources/],a=AVAILABLE,h=oeje10s.SessionHandler@6c79a7c1{STARTED}}
2025-03-26T13:37:12.442Z  INFO 1 --- [           main] o.e.j.e.servlet.ServletContextHandler    : Started osbwej.JettyEmbeddedWebAppContext@1c8da7e8{application,/,b=[file:/tmp/jetty-docbase.8080.2491959363330535717/, jar:file:///home/openvsx/server/BOOT-INF/lib/swagger-ui-4.18.2.jar!/META-INF/resources/],a=AVAILABLE,h=oeje10s.SessionHandler@6c79a7c1{STARTED}}
2025-03-26T13:37:12.443Z  INFO 1 --- [           main] org.eclipse.jetty.server.Server          : Started oejs.Server@1299fed3{STARTING}[12.0.7,sto=0] @9498ms
2025-03-26T13:37:12.652Z  INFO 1 --- [           main] o.f.c.internal.license.VersionPrinter    : Flyway Community Edition 9.19.1 by Redgate
2025-03-26T13:37:12.652Z  INFO 1 --- [           main] o.f.c.internal.license.VersionPrinter    : See release notes here: https://rd.gt/416ObMi
2025-03-26T13:37:12.652Z  INFO 1 --- [           main] o.f.c.internal.license.VersionPrinter    :
2025-03-26T13:37:12.671Z  INFO 1 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
2025-03-26T13:37:13.045Z  INFO 1 --- [           main] com.zaxxer.hikari.pool.HikariPool        : HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@4b93a232
2025-03-26T13:37:13.048Z  INFO 1 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
2025-03-26T13:37:13.083Z  INFO 1 --- [           main] o.f.c.i.database.base.BaseDatabaseType   : Database: anonymised
2025-03-26T13:37:13.175Z  INFO 1 --- [           main] o.f.core.internal.command.DbValidate     : Successfully validated 54 migrations (execution time 00:00.064s)
2025-03-26T13:37:13.306Z  INFO 1 --- [           main] o.f.core.internal.command.DbMigrate      : Current version of schema "public": 1.52
2025-03-26T13:37:13.308Z  INFO 1 --- [           main] o.f.core.internal.command.DbMigrate      : Schema "public" is up to date. No migration necessary.
2025-03-26T13:37:13.511Z  INFO 1 --- [           main] o.hibernate.jpa.internal.util.LogHelper  : HHH000204: Processing PersistenceUnitInfo [name: default]
2025-03-26T13:37:13.604Z  INFO 1 --- [           main] org.hibernate.Version                    : HHH000412: Hibernate ORM core version 6.2.2.Final
2025-03-26T13:37:13.606Z  INFO 1 --- [           main] org.hibernate.cfg.Environment            : HHH000406: Using bytecode reflection optimizer
2025-03-26T13:37:13.775Z  INFO 1 --- [           main] o.h.b.i.BytecodeProviderInitiator        : HHH000021: Bytecode provider name : bytebuddy
2025-03-26T13:37:13.906Z  INFO 1 --- [           main] o.s.o.j.p.SpringPersistenceUnitInfo      : No LoadTimeWeaver setup: ignoring JPA class transformer
2025-03-26T13:37:13.953Z  INFO 1 --- [           main] org.hibernate.orm.dialect                : HHH035001: Using dialect: org.hibernate.dialect.PostgreSQLDialect, version: org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$DialectResolutionInfoImpl@51ce8293
2025-03-26T13:37:14.447Z  INFO 1 --- [           main] o.h.b.i.BytecodeProviderInitiator        : HHH000021: Bytecode provider name : bytebuddy
2025-03-26T13:37:15.416Z  INFO 1 --- [           main] o.h.e.t.j.p.i.JtaPlatformInitiator       : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
2025-03-26T13:37:15.419Z  INFO 1 --- [           main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2025-03-26T13:37:16.023Z  INFO 1 --- [           main] o.s.d.j.r.query.QueryEnhancerFactory     : Hibernate is in classpath; If applicable, HQL parser will be used.
ANTLR Tool version 4.10.1 used for code generation does not match the current runtime version 4.13.0
ANTLR Runtime version 4.10.1 used for parser compilation does not match the current runtime version 4.13.0
ANTLR Tool version 4.10.1 used for code generation does not match the current runtime version 4.13.0
ANTLR Runtime version 4.10.1 used for parser compilation does not match the current runtime version 4.13.0
2025-03-26T13:37:21.457Z  INFO 1 --- [           main] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 1 endpoint(s) beneath base path '/actuator'
2025-03-26T13:37:21.662Z  INFO 1 --- [           main] o.s.s.web.DefaultSecurityFilterChain     : Will secure any request with [org.springframework.security.web.session.DisableEncodeUrlFilter@645494c5, org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5fc9593d, org.springframework.security.web.context.SecurityContextHolderFilter@1acfebc4, org.springframework.security.web.header.HeaderWriterFilter@3131b41, org.springframework.web.filter.CorsFilter@672c8149, org.springframework.web.filter.CorsFilter@418068a7, org.springframework.security.web.csrf.CsrfFilter@1ee3ad6, org.springframework.security.web.authentication.logout.LogoutFilter@2b37a0dd, org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter@a3b417, org.springframework.security.oauth2.client.web.OAuth2LoginAuthenticationFilter@72e48a21, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@7d24645, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@703bd69c, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@1b23eee, org.springframework.security.web.access.ExceptionTranslationFilter@5573267, org.springframework.security.web.access.intercept.AuthorizationFilter@5eff0651]
2025-03-26T13:37:22.077Z  INFO 1 --- [           main] .j.s.t.PlatformThreadPoolJobRunrExecutor : ThreadManager of type 'ScheduledThreadPool' started
2025-03-26T13:37:22.102Z  INFO 1 --- [ool-11-thread-1] org.jobrunr.server.BackgroundJobServer   : JobRunr BackgroundJobServer (a3cf79a2-e907-4cf1-8378-62c6aaf5447c) using PostgresStorageProvider and 2 BackgroundJobPerformers started successfully
2025-03-26T13:37:22.129Z  INFO 1 --- [ool-11-thread-1] org.jobrunr.server.ServerZooKeeper       : Server a3cf79a2-e907-4cf1-8378-62c6aaf5447c is master (this BackgroundJobServer)
2025-03-26T13:37:23.057Z DEBUG 1 --- [           main] o.e.openvsx.web.ShallowEtagHeaderFilter  : Filter 'shallowEtagHeaderFilter' configured for use
2025-03-26T13:37:23.060Z  INFO 1 --- [           main] o.e.j.s.h.ContextHandler.application     : Initializing Spring DispatcherServlet 'dispatcherServlet'
2025-03-26T13:37:23.060Z  INFO 1 --- [           main] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2025-03-26T13:37:23.062Z  INFO 1 --- [           main] o.s.web.servlet.DispatcherServlet        : Completed initialization in 2 ms
2025-03-26T13:37:23.077Z  INFO 1 --- [           main] o.e.jetty.util.ssl.SslContextFactory     : x509=X509@d5632b7(ssl,h=[anonymised, openvsx],a=[],w=[]) for Server@309876a8[provider=null,keyStore=null,trustStore=null]     
2025-03-26T13:37:23.093Z  INFO 1 --- [           main] o.e.jetty.server.AbstractConnector       : Started SslValidatingServerConnector@3cb6bb8b{SSL, (ssl, http/1.1)}{0.0.0.0:8080}
2025-03-26T13:37:23.094Z  INFO 1 --- [           main] o.s.b.web.embedded.jetty.JettyWebServer  : Jetty started on port 8080 (ssl, http/1.1) with context path '/'
2025-03-26T13:37:23.124Z  INFO 1 --- [           main] o.eclipse.openvsx.RegistryApplication    : Started RegistryApplication in 19.447 seconds (process running for 20.18)
2025-03-26T13:37:23.203Z  INFO 1 --- [           main] o.j.scheduling.AbstractJobScheduler      : Skipped Job with id 3df3f96a-e083-3e31-b374-84216e0931d7 as it already exists
2025-03-26T13:40:18.389Z  INFO 1 --- [qtp992521115-25] org.jooq.Constants                       :

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@  @@        @@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@        @@@@@@@@@@
@@@@@@@@@@@@@@@@  @@  @@    @@@@@@@@@@
@@@@@@@@@@  @@@@  @@  @@    @@@@@@@@@@
@@@@@@@@@@        @@        @@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@        @@        @@@@@@@@@@
@@@@@@@@@@    @@  @@  @@@@  @@@@@@@@@@
@@@@@@@@@@    @@  @@  @@@@  @@@@@@@@@@
@@@@@@@@@@        @@  @  @  @@@@@@@@@@
@@@@@@@@@@        @@        @@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Thank you for using jOOQ 3.18.13 (Build date: 2024-03-08T10:59:42Z)

2025-03-26T13:40:18.391Z  INFO 1 --- [qtp992521115-25] org.jooq.Constants                       :

jOOQ tip of the day: When creating dynamic SQL Conditions, the DSL.trueCondition(), DSL.falseCondition(), DSL.noCondition(): https://blog.jooq.org/create-empty-optional-sql-clauses-with-jooq/

2025-03-26T13:40:18.452Z  INFO 1 --- [qtp992521115-25] o.j.i.D.logVersionSupport                : Version                  : Database version is supported by dialect POSTGRES: 15.11
2025-03-26T13:47:32.393Z  WARN 1 --- [         task-8] org.eclipse.jetty.util.Blocker           : Blocking.Shared incomplete
2025-03-26T13:47:32.398Z  WARN 1 --- [qtp992521115-29] .w.s.m.s.DefaultHandlerExceptionResolver : Ignoring exception, response committed already: org.springframework.web.context.request.async.AsyncRequestTimeoutException
2025-03-26T13:47:32.398Z  WARN 1 --- [qtp992521115-29] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.context.request.async.AsyncRequestTimeoutException]
2025-03-26T13:48:11.668Z  WARN 1 --- [         task-4] org.eclipse.jetty.util.Blocker           : Blocking.Shared incomplete
2025-03-26T13:48:11.670Z  WARN 1 --- [qtp992521115-26] .w.s.m.s.DefaultHandlerExceptionResolver : Ignoring exception, response committed already: org.springframework.web.context.request.async.AsyncRequestTimeoutException
2025-03-26T13:48:11.670Z  WARN 1 --- [qtp992521115-26] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.context.request.async.AsyncRequestTimeoutException]
2025-03-26T13:48:54.137Z  WARN 1 --- [         task-9] org.eclipse.jetty.util.Blocker           : Blocking.Shared incomplete
2025-03-26T13:48:54.141Z  WARN 1 --- [qtp992521115-29] .w.s.m.s.DefaultHandlerExceptionResolver : Ignoring exception, response committed already: org.springframework.web.context.request.async.AsyncRequestTimeoutException
2025-03-26T13:48:54.141Z  WARN 1 --- [qtp992521115-29] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.context.request.async.AsyncRequestTimeoutException]

@amvanbaren
Copy link
Contributor

What happens when you set ovsx.integrity.key-pair to create or delete?

@RichardSGFR
Copy link
Author

Hello, when set to create or delete, I see nothing more on the logs with level INFO. But, when set to delete, I then see all my extension as unsigned by the marketplace in vscodium.

Then I restart the openvsx server with create, still nothing in the log. But then I go back to the previous step where most of the extension are recognised as signed but two of them are not. Looks like there is an issue with the signin for those two extension but can't find a way to log this service.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants