Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Convert Gradle to Maven Build (#261)
* Issue #217 - Convert and port Gradle to Maven build for web5-kt * No security or license issues * All modules build and tests pass * Dependencies all correctly set via dependencyManagement which may be consumed by other projects (ie. tbDEX) * Ported Dokka to use Dokka CLI in GitHub Actions and instructions to run locally * Change: API Docs via Dokka now have no left sidebar because Gradle plugin enabled multimodule for us. * Detekt ported through Maven plugin * Ported Kover; we have coverage via CodeCov * Switched to use TBD Artifactory for single repo declaration to get 3rdparty deps not in Maven Central * Update README to reflect new build usage * Publish to TBD Artifactory * While we are at it, renames to GitHub Actions for clarity and correctness * Set Surefire patterns to run Test Vectors * Publish every build as a SNAPSHOT in format X.Y.Z-commit-$shortSHA-SNAPSHOT * Validate that SNAPSHOT publishing has a version defined that ends in -SNAPSHOT * SNAPSHOTs deployed to TBD Artifactory for every push to main, with version commit-$shortSHA-SNAPSHOT * TBD Artifactory Release and Publish, with tagging of git * API Docs Publishing - Verifiable at: https://alrubinger.github.io/web5-kt/docs/htmlMultiModule/index.html * Maven Central Publishing * Include sources in publishing * Sign all artifacts (POMs, JARs, Source JARs) with GPG in deploy to Artifactory and Maven Central * Only require one input (the release version) to trigger a release. Infer the next development version as a patch increment above the release version * Introduce a distribution POM to bring in all Web5 deps in a single declaration * Keep pom.xml effectively versionless at 0.0.0-main-SNAPSHOT; version at release time * Publish to Maven Central on successful release and publish to TBD Artifactory * Update README to reflect changes above and document all build and pipeline features * Do not double-trigger uploads to Artifactory, Test Vectors, or CodeCov by separating out MacOS and Ubuntu jobs * Make 'distribution' folder for the distribution pom.xml so that tbdex-kt can follow same convention * Add jose to Dokka API Docs generation * Rebased all work atop c1c8f3e, tag: v0.17.0 * Address Jiyoon PR Review: add names for all workflow jobs, document SNAPSHOT version format, add TBD OSS SNAPSHOT and Release repos to POM TODO: * Switch ALRubinger in SCM configuration of pom.xml to TBD again * Remove the comments at the end of build-test-publish workflow to re-enable sdk-report-runner * Issue #217: Remove testing configs to be ready for merge * Removes unnecessary comment * adding more git command examples for pushing to web5-spec module --------- Co-authored-by: Leo Ribeiro <[email protected]> Co-authored-by: Jiyoon Koo <[email protected]>
- Loading branch information