diff --git a/.claude/settings.local.json b/.claude/settings.local.json index bc5358b85..e43cf8dbf 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -6,13 +6,13 @@ "Bash(./gradlew:*)", "Bash(grep:*)", "Bash(cat:*)", + "Bash(nc:*)", + "Bash(timeout:*)", + "Bash(cat:*)", "Bash(find:*)", "Bash(grep:*)", - "Bash(rg:*)", - "Bash(strings:*)", - "Bash(pkill:*)", - "Bash(true)" + "Bash(strings:*)" ], "deny": [] } -} \ No newline at end of file +} diff --git a/app/core/src/main/resources/application-saas.properties b/app/core/src/main/resources/application-saas.properties new file mode 100644 index 000000000..af7f1a9c2 --- /dev/null +++ b/app/core/src/main/resources/application-saas.properties @@ -0,0 +1,51 @@ +multipart.enabled=true +logging.level.org.springframework=WARN +logging.level.org.hibernate=WARN +logging.level.org.eclipse.jetty=WARN +#logging.level.org.springframework.security.saml2=TRACE +#logging.level.org.springframework.security=DEBUG +#logging.level.org.opensaml=DEBUG +#logging.level.stirling.software.SPDF.config.security: DEBUG +logging.level.com.zaxxer.hikari=WARN +spring.jpa.open-in-view=false +server.forward-headers-strategy=NATIVE +server.error.path=/error +server.error.whitelabel.enabled=false +server.error.include-stacktrace=always +server.error.include-exception=true +server.error.include-message=always +#logging.level.org.springframework.web=DEBUG +#logging.level.org.springframework=DEBUG +#logging.level.org.springframework.security=DEBUG + +spring.servlet.multipart.max-file-size=2000MB +spring.servlet.multipart.max-request-size=2000MB +server.servlet.session.tracking-modes=cookie +server.servlet.context-path=${SYSTEM_ROOTURIPATH:/} +spring.devtools.restart.enabled=true +spring.devtools.livereload.enabled=true +spring.devtools.restart.exclude=stirling.software.proprietary.security/** +spring.thymeleaf.encoding=UTF-8 +spring.web.resources.mime-mappings.webmanifest=application/manifest+json +spring.mvc.async.request-timeout=${SYSTEM_CONNECTIONTIMEOUTMILLISECONDS:1200000} + +#spring.datasource.url=jdbc:postgresql://aws-0-us-east-2.pooler.supabase.com:5432/postgres?sslmode=require&user=postgres.nrlkjfznsavsbmweiyqu&password=${SAAS_DB_PASSWORD} +#spring.datasource.driver-class-name=org.postgresql.Driver +#spring.datasource.username=postgres.nrlkjfznsavsbmweiyqu +#spring.datasource.password=${SAAS_DB_PASSWORD} +spring.h2.console.enabled=false +spring.jpa.hibernate.ddl-auto=update +spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect +server.servlet.session.timeout:30m +# Change the default URL path for OpenAPI JSON +springdoc.api-docs.path=/v1/api-docs +# Set the URL of the OpenAPI JSON for the Swagger UI +springdoc.swagger-ui.url=/v1/api-docs +springdoc.swagger-ui.path=/index.html +posthog.api.key=phc_fiR65u5j6qmXTYL56MNrLZSWqLaDW74OrZH0Insd2xq +posthog.host=https://eu.i.posthog.com + +spring.main.allow-bean-definition-overriding=true + +# Set up a consistent temporary directory location +java.io.tmpdir=${stirling.tempfiles.directory:${java.io.tmpdir}/stirling-pdf} diff --git a/app/proprietary/src/main/java/stirling/software/proprietary/model/Team.java b/app/proprietary/src/main/java/stirling/software/proprietary/model/Team.java index 5157b3233..c55421bee 100644 --- a/app/proprietary/src/main/java/stirling/software/proprietary/model/Team.java +++ b/app/proprietary/src/main/java/stirling/software/proprietary/model/Team.java @@ -11,7 +11,7 @@ import lombok.*; import stirling.software.proprietary.security.model.User; @Entity -@Table(name = "teams") +@Table(name = "teams", schema = "stirling_pdf") @NoArgsConstructor @Getter @Setter diff --git a/app/proprietary/src/main/java/stirling/software/proprietary/model/security/PersistentAuditEvent.java b/app/proprietary/src/main/java/stirling/software/proprietary/model/security/PersistentAuditEvent.java index bec0eb21c..62733bcde 100644 --- a/app/proprietary/src/main/java/stirling/software/proprietary/model/security/PersistentAuditEvent.java +++ b/app/proprietary/src/main/java/stirling/software/proprietary/model/security/PersistentAuditEvent.java @@ -19,7 +19,8 @@ import lombok.*; @jakarta.persistence.Index( name = "idx_audit_type_timestamp", columnList = "type,timestamp") - }) + }, + schema = "stirling_pdf") @Data @Builder @NoArgsConstructor @@ -33,7 +34,9 @@ public class PersistentAuditEvent { private String principal; private String type; - @Lob private String data; // JSON blob + @Lob + @Column(columnDefinition = "TEXT") + private String data; // JSON blob private Instant timestamp; } diff --git a/app/proprietary/src/main/java/stirling/software/proprietary/security/model/Authority.java b/app/proprietary/src/main/java/stirling/software/proprietary/security/model/Authority.java index a32e7d7ca..f9e883452 100644 --- a/app/proprietary/src/main/java/stirling/software/proprietary/security/model/Authority.java +++ b/app/proprietary/src/main/java/stirling/software/proprietary/security/model/Authority.java @@ -17,7 +17,7 @@ import lombok.Getter; import lombok.Setter; @Entity -@Table(name = "authorities") +@Table(name = "authorities", schema = "stirling_pdf") @Getter @Setter public class Authority implements GrantedAuthority, Serializable { diff --git a/app/proprietary/src/main/java/stirling/software/proprietary/security/model/PersistentLogin.java b/app/proprietary/src/main/java/stirling/software/proprietary/security/model/PersistentLogin.java index ef096f7fb..774283563 100644 --- a/app/proprietary/src/main/java/stirling/software/proprietary/security/model/PersistentLogin.java +++ b/app/proprietary/src/main/java/stirling/software/proprietary/security/model/PersistentLogin.java @@ -10,7 +10,7 @@ import jakarta.persistence.Table; import lombok.Data; @Entity -@Table(name = "persistent_logins") +@Table(name = "persistent_logins", schema = "stirling_pdf") @Data public class PersistentLogin { diff --git a/app/proprietary/src/main/java/stirling/software/proprietary/security/model/SessionEntity.java b/app/proprietary/src/main/java/stirling/software/proprietary/security/model/SessionEntity.java index db94eae6f..735eb028e 100644 --- a/app/proprietary/src/main/java/stirling/software/proprietary/security/model/SessionEntity.java +++ b/app/proprietary/src/main/java/stirling/software/proprietary/security/model/SessionEntity.java @@ -11,7 +11,7 @@ import lombok.Data; @Entity @Data -@Table(name = "sessions") +@Table(name = "sessions", schema = "stirling_pdf") public class SessionEntity implements Serializable { @Id private String sessionId; diff --git a/app/proprietary/src/main/java/stirling/software/proprietary/security/model/User.java b/app/proprietary/src/main/java/stirling/software/proprietary/security/model/User.java index 7d1b235cd..9e23ed5fe 100644 --- a/app/proprietary/src/main/java/stirling/software/proprietary/security/model/User.java +++ b/app/proprietary/src/main/java/stirling/software/proprietary/security/model/User.java @@ -21,7 +21,7 @@ import stirling.software.common.model.enumeration.Role; import stirling.software.proprietary.model.Team; @Entity -@Table(name = "users") +@Table(name = "users", schema = "stirling_pdf") @NoArgsConstructor @Getter @Setter