@maildock/mailctl 0.1.0-rc.2 → 0.1.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -98,9 +98,13 @@ services:
98
98
  environment:
99
99
  DATABASE_URL: postgres://${DB_ADMIN_USER:-mail}:${DB_ADMIN_PASSWORD:-mail}@postgres:5432/${DB_NAME:-mail}
100
100
  JWT_SECRET: ${JWT_SECRET:-dev-only-secret-change-me-please-32chars!!}
101
+ SECRET_ENCRYPTION_KEY: ${SECRET_ENCRYPTION_KEY:-dev-only-encryption-key-change-me-32chars!}
101
102
  DOVECOT_MASTER_USER: mailserver-api
102
103
  DOVECOT_MASTER_PASSWORD: ${DOVECOT_MASTER_PASSWORD:-change-me-at-install}
103
104
  APP_VERSION: ${IMAGE_TAG:-dev}
105
+ LICENSE_PUBLIC_KEY: ${LICENSE_PUBLIC_KEY:-}
106
+ # Seals migration source credentials (ADR 0018); shared with the worker, which opens them.
107
+ MIGRATION_SECRET_KEY: ${MIGRATION_SECRET_KEY:-dev-only-migration-key-change-me-42chars!!}
104
108
  PUBLIC_IP: ${PUBLIC_IP:-}
105
109
  COOKIE_SECURE: ${COOKIE_SECURE:-true}
106
110
  LOG_LEVEL: ${LOG_LEVEL:-info}
@@ -123,12 +127,25 @@ services:
123
127
  REPUTATION_CHECK_INTERVAL_MINUTES: ${REPUTATION_CHECK_INTERVAL_MINUTES:-60}
124
128
  DMARC_INGEST_INTERVAL_MINUTES: ${DMARC_INGEST_INTERVAL_MINUTES:-30}
125
129
  DELIVERY_LOG_RETENTION_DAYS: ${DELIVERY_LOG_RETENTION_DAYS:-30}
130
+ OUTBOUND_ABUSE_INTERVAL_MINUTES: ${OUTBOUND_ABUSE_INTERVAL_MINUTES:-10}
126
131
  DOVECOT_MASTER_USER: mailserver-api
127
132
  DOVECOT_MASTER_PASSWORD: ${DOVECOT_MASTER_PASSWORD:-change-me-at-install}
133
+ # Licence heartbeat: empty LICENSE_SERVER_URL disables it, which is what a dev stack wants.
134
+ LICENSE_SERVER_URL: ${LICENSE_SERVER_URL:-}
135
+ LICENSE_PUBLIC_KEY: ${LICENSE_PUBLIC_KEY:-}
136
+ LICENSE_HEARTBEAT_INTERVAL_MINUTES: ${LICENSE_HEARTBEAT_INTERVAL_MINUTES:-1440}
137
+ # Migration (Phase 6). The key must match the api's: the api seals credentials, the worker opens them.
138
+ MIGRATION_SECRET_KEY: ${MIGRATION_SECRET_KEY:-dev-only-migration-key-change-me-42chars!!}
139
+ MIGRATION_CONCURRENCY: ${MIGRATION_CONCURRENCY:-2}
140
+ MIGRATION_MAX_BYTES_PER_SECOND: ${MIGRATION_MAX_BYTES_PER_SECOND:-}
141
+ APP_VERSION: ${IMAGE_TAG:-dev}
128
142
  LOG_LEVEL: ${LOG_LEVEL:-info}
129
143
  volumes:
130
144
  - maillog:/var/log/mail
131
145
  - certs:/certs:ro
146
+ # imapsync's per-pair message-identity cache. Must outlive a single run, or a resumed migration
147
+ # re-examines every message it has already copied (ADR 0018).
148
+ - migration:/var/lib/mailserver/migration
132
149
  depends_on:
133
150
  api: { condition: service_healthy }
134
151
  redis: { condition: service_healthy }
@@ -174,3 +191,4 @@ volumes:
174
191
  certs:
175
192
  caddy_data:
176
193
  caddy_config:
194
+ migration: