diff --git a/.github/workflows/mock_release.yaml b/.github/workflows/mock_release.yaml index 738be30b9dd..66b84b0e302 100644 --- a/.github/workflows/mock_release.yaml +++ b/.github/workflows/mock_release.yaml @@ -6,18 +6,26 @@ jobs: name: Mock-release JGiven runs-on: ubuntu-latest env: + KEYSTORE_PASSWORD: 'clearlyNotARealPassword' + KEYSTORE_NAME: 'server.p12' SONATYPE_PASSWORD: 'notARealPassword' SONATYPE_USERNAME: 'notARealUsername' GPG_PASSWORD: 'espalhando' GPG_KEY_ID: 'notARealKeyId@example.com' VERSION: '0.0.1-TEST' steps: - - uses: actions/checkout@v4.1.1 - name: Set up JDK 11 uses: actions/setup-java@v3.13.0 with: java-version: '11' distribution: 'adopt' + - name: Set up a server certificate + run: | + openssl genrsa -out server.key 2048 + openssl req -new -key server.key -out server.csr -subj '/C=DE/ST=Berlin/L=Berlin/O=JGiven/OU=JGiven/CN=localhost' + openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt + openssl pkcs12 -export -in server.crt -inkey server.key -out ${KEYSTORE_NAME} -name "localhost" -password "pass:${KEYSTORE_PASSWORD}" + keytool -import -cacerts -storepass changeit -noprompt -alias "localhost" -file server.crt - name: Set up openpgp signing keys run: | gpg --quick-gen-key --batch --passphrase "${GPG_PASSWORD}" "${GPG_KEY_ID}" @@ -26,7 +34,8 @@ jobs: run: | wget https://repo1.maven.org/maven2/org/wiremock/wiremock-standalone/3.3.1/wiremock-standalone-3.3.1.jar wiremock=$(find ./ -name "wiremock-standalone-*.jar") - java -jar ${wiremock} --port 7000 --verbose & + java -jar ${wiremock} --port 7000 --https-port 8443 --verbose --https-keystore ${KEYSTORE_NAME} \ + --keystore-password ${KEYSTORE_PASSWORD} --keystore-type PKCS12 & while ! nc -z localhost 7000; do sleep 0.1 # wait for 1/10 of the second before check again done @@ -34,13 +43,17 @@ jobs: run: | curl -X POST --data '{"request": {"urlPattern": "/com/tngtech/jgiven/[^/]+/[^/]+/[^/]+", "method": "PUT"}, "response": {"status": 200, "body": "OK"}}' http://localhost:7000/__admin/mappings curl -X POST --data '{"request": {"urlPattern": "/com/tngtech/jgiven/.*?/maven-metadata.xml(?:[.]sha(?:1|512|256)|[.]md5)?", "method": "PUT"}, "response": {"status": 200, "body": "OK"}}' http://localhost:7000/__admin/mappings + - uses: actions/checkout@v4.1.1 - name: set an alternate version run: "source scripts/source_files/helper_functions.sh && updateAllVersionInformation ${VERSION}" - name: Attempt mock release run: > ./gradlew test publishMavenPublicationToMavenLocal publishMavenPublicationToMavenRepository -PsigningKey="$(gpg --batch --pinentry-mode=loopback --yes --passphrase "${GPG_PASSWORD}" --armor --export-secret-key "${GPG_KEY_ID}")" - -PsigningPassword="${GPG_PASSWORD}" -Ppublishing.releaseUrl=http://localhost:7000 -Ppublishing.allowInsecureProtocol=true + -PsigningPassword="${GPG_PASSWORD}" -Ppublishing.releaseUrl=https://localhost:8443 -Ppublishing.allowInsecureProtocol=false + -- info --stacktrace + env: + RELEASE: TRUE - name: Upload test results html files continue-on-error: true if: ${{failure()}} @@ -49,4 +62,7 @@ jobs: name: test-report.zip path: /home/runner/work/JGiven/JGiven/*/build/reports/tests if-no-files-found: ignore + - name: shut down server + continue-on-error: true + run: curl -X POST http://localhost:7000/__admin/shutdown diff --git a/build.gradle b/build.gradle index 268b5ee7849..d02f0597ab1 100644 --- a/build.gradle +++ b/build.gradle @@ -301,7 +301,6 @@ configure(subprojects) { } def signingKey = findProperty("signingKey") def signingPassword = findProperty("signingPassword") - println signingKey useInMemoryPgpKeys(signingKey, signingPassword) sign publishing.publications }