Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add a pipeline and an ability to publish #2

Merged
merged 4 commits into from
Nov 21, 2024
Merged

feat: add a pipeline and an ability to publish #2

merged 4 commits into from
Nov 21, 2024

Conversation

gibiw
Copy link
Collaborator

@gibiw gibiw commented Nov 21, 2024

This pull request includes several changes to the build configuration and project setup for the Qase Kotlin repositories. The most important changes involve the addition of CI workflows, updates to the Gradle build scripts, and improvements to the project publishing process.

CI Workflow Addition:

  • Added a new GitHub Actions workflow for Kotlin CI, which includes jobs for testing and publishing the project. The workflow sets up the JDK, caches Gradle dependencies, builds the project, and runs tests. Additionally, it handles publishing to Sonatype when a tag is pushed. (.github/workflows/build.yml)

Gradle Build Script Updates:

  • Updated the compileSdkVersion to 34 and added description and signing plugins in qase-kaspresso-reporter/build.gradle.kts. Also modified the publishing configuration to include POM details and signing. (qase-kaspresso-reporter/build.gradle.kts) [1] [2] [3]
  • Updated the compileSdkVersion to 34, added description, and updated dependencies in qase-kotlin-android/build.gradle.kts. Also modified the publishing configuration to include POM details and signing. (qase-kotlin-android/build.gradle.kts) [1] [2] [3] [4] [5]
  • Added description to qase-kotlin-commons/build.gradle.kts. Removed redundant repository and subproject configurations. (qase-kotlin-commons/build.gradle.kts) [1] [2]

Codebase Improvements:

  • Added SuppressLint and Suppress annotations to handle restricted API usage in TestStorageResultsWriter class. (qase-kotlin-android/src/main/kotlin/io/qase/commons/kotlin/android/writer/TestStorageResultsWriter.kt) [1] [2]

- Introduces a CI pipeline triggered on `push` and `pull_request` events to the `main` branch.
- Configures environment with JDK 17 (Temurin distribution).
- Includes steps for project build and test execution using Gradle.
- Adjusted publishing settings in `build.gradle.kts` to standardize publication process.
- Ensured compatibility and alignment with updated project requirements.
- Added 'publish' job in GitHub Actions pipeline for tag-based release to Sonatype.
- Configured GPG key setup for signing the release artifacts.
- Implemented caching of Gradle dependencies to optimize build times.
- Integrated `publishToSonatype` and `closeAndReleaseSonatypeStagingRepository` tasks for streamlined publishing.
- Secured credentials management using GitHub secrets.
- Re-enabled signing configuration for Maven publication.
- Removed unnecessary dependencies to simplify the build setup.
@gibiw gibiw changed the title Feat/publish feat: add a pipeline and an ability to publish Nov 21, 2024
@n3r n3r self-requested a review November 21, 2024 15:28
@gibiw gibiw merged commit 44ee992 into main Nov 21, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants