@@ -416,6 +416,15 @@ FROM openfeature-provider-js.test AS openfeature-provider-js.test_e2e
416416RUN --mount=type=secret,id=js_e2e_test_env,target=.env.test \
417417 make test-e2e
418418
419+ # ==============================================================================
420+ # Test Secrets
421+ # ==============================================================================
422+ FROM alpine AS secrets-testing.print
423+
424+ # Never do this at home kids!
425+ RUN --mount=type=secret,id=test_secret,target=/run/secrets/secret.txt \
426+ cp /run/secrets/secret.txt /secret.txt
427+
419428# ==============================================================================
420429# Build OpenFeature Provider
421430# ==============================================================================
@@ -485,19 +494,35 @@ FROM openfeature-provider-java-base AS openfeature-provider-java.build
485494
486495RUN make build
487496
497+ # ==============================================================================
498+ # Publish OpenFeature Provider (Java) to Maven Central
499+ # ==============================================================================
500+ FROM openfeature-provider-java.build AS openfeature-provider-java.install
501+
502+ # Import GPG private key and deploy to Maven Central
503+ RUN --mount=type=secret,id=maven_settings \
504+ --mount=type=secret,id=gpg_private_key \
505+ --mount=type=secret,id=gpg_pass \
506+ # Import GPG key
507+ cat /run/secrets/gpg_private_key | gpg --batch --quiet --import && \
508+ export MAVEN_GPG_PASSPHRASE=$(cat /run/secrets/gpg_pass) && \
509+ # Install to Maven Local
510+ mvn -s /run/secrets/maven_settings --batch-mode install
511+
488512# ==============================================================================
489513# Publish OpenFeature Provider (Java) to Maven Central
490514# ==============================================================================
491515FROM openfeature-provider-java.build AS openfeature-provider-java.publish
492516
493517# Import GPG private key and deploy to Maven Central
494- RUN --mount=type=secret,id=maven_settings,target=/root/.m2/settings.xml \
518+ RUN --mount=type=secret,id=maven_settings \
495519 --mount=type=secret,id=gpg_private_key \
496520 --mount=type=secret,id=gpg_pass \
521+ --env=GPG_PASS=$(cat /run/secrets/gpg_pass) \
497522 # Import GPG key
498523 cat /run/secrets/gpg_private_key | gpg --batch --import && \
499524 # Deploy to Maven Central
500- mvn -Dgpg.passphrase="$(cat /run/secrets/gpg_pass)" --batch-mode deploy
525+ mvn -s /run/secrets/maven_settings - Dgpg.passphrase="$(cat /run/secrets/gpg_pass)" --batch-mode deploy
501526
502527# ==============================================================================
503528# All - Build and validate everything (default target)
0 commit comments