Skip to content

Commit

Permalink
Merge pull request #25 from RedMadRobot/feature/add-publishing-on-ci
Browse files Browse the repository at this point in the history
добавил пулбликацию на CI
  • Loading branch information
AleksandrTabolin authored Sep 2, 2024
2 parents 99250f5 + b226884 commit 69edb4b
Show file tree
Hide file tree
Showing 185 changed files with 376 additions and 254 deletions.
65 changes: 50 additions & 15 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,61 @@
name: CI

on:
push:
branches: [main]
# Release tag format is v[version]
# For example: v1.3.5
tags: ["v*"]
pull_request:
branches: [ main ]
branches: [main]

jobs:
build:
check:
name: Check
runs-on: ubuntu-latest

steps:
- name: Checkout sources
uses: actions/checkout@v3

- name: set up JDK
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Checkout sources
uses: actions/checkout@v4
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: "temurin"
java-version: 17
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Run Check
run: ./gradlew check

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
publish:
name: Publish
needs: check
runs-on: ubuntu-latest
if: ${{ startsWith(github.ref, 'refs/tags/') }}

- name: Build
run: ./gradlew check
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: "temurin"
java-version: 17
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Run Publish
run: ./gradlew publish
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.SONATYPE_USERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.SONATYPE_PASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.SIGNING_KEY }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.SIGNING_KEY_PASSWORD }}
ORG_GRADLE_PROJECT_githubPackagesUsername: ${{ github.actor }}
ORG_GRADLE_PROJECT_githubPackagesPassword: ${{ secrets.GITHUB_TOKEN }}
- name: Extract release notes
uses: ffurrer2/extract-release-notes@v2
with:
release_notes_file: RELEASE_NOTES.md
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
body_path: RELEASE_NOTES.md
156 changes: 80 additions & 76 deletions docs/changelog.md → CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,76 +1,80 @@
# Changelog

## 0.9.0
### Изменения
* Переименованы модули.
* Gradle обновлен до 8.7
* compileSdk и targetSdk повышены до 34
* Добавлена возможность открыть DebugPanel без FragmentManager
* Добавлена поддержка Jetpack Compose
* accounts-plugin переведен на Jetpack Compose
* app-settings-plugin переведен на Jetpack Compose
* flipper-plugin переведен на Jetpack Compose
* servers-plugin переведен на Jetpack Compose
* **Breaking changes:** Изменены Maven-координаты библиотек. Наименования пакетов во всех модулях приведены к общему виду. См. [гайд по миграции][migration-guide].
* **Breaking changes:** Удален плагин Variable. Вместо него используйте плагин Konfeature. См. [гайд по миграции][migration-guide].

## 0.8.1
### Изменения
* Исправлен краш при остановке активити (#13)

## 0.8.0
### Изменения
* Исправлен краш на SDK 34 (#7)
* Исправлен краш при доступе к БД (#5)
* Обновлены зависимости:
* Kotlin 1.6.20 → 1.9.23
* Room 2.4.0 → 2.6.1
* KotlinX Coroutines 1.3.9 → 1.8.0
* Удалено использование синтетиков
* Обновлено окружение сборки проекта

## 0.7.5
### Изменения
* Добавлена поддержка строк для плагина Flipper.
Теперь их можно указывать в качестве изменяемых значений.

## 0.7.4
### Изменения
* Добавлена конфигурация для публикации в публичный Maven
* Проект переведен на Gradle Kotlin DSL

## 0.7.3
### Изменения

* Исправлена ошибка с отсутствием события изменения сервера.
* Метод observeEvents в DebugPanel возвращает не nullable Flow

## 0.7.2
### Изменения
* Добавил группирование для групп тоглов (без под групп).
Добавил возможность добавлять источники в рантайме Добавил возможность выбирать между источниками в рантайме.
Изменения в поведении: теперь в изменеённых тоглах будут приходить состояния всех тоглов, а не только имзененных

* Добавлен плагин для быстрой подмены переменных в проекте VariablePlugin

## 0.6.9
### Изменения
Исправлены ошибки в работе `flipper-plugin` для релизной сборки

## 0.6.8
### Изменения
Добавлен [flipper-plugin](../plugins/flipper-plugin) для удобной работы с библиотекой [Flipper](https://github.com/RedMadRobot/flipper)

## 0.6.7
### Изменения
* Полностью удален Rx из зависимостей.
* Удален Groupie. Для списков используется [itemsAdapter](https://github.com/RedMadRobot/itemsadapter)
* Kotlin обновлен до 1.5.21.
* Android Gradle plugin обновлен до 4.2.0.
* Изменен способ удаления добавленных вручную элементов.
* Немного доработана цветовая тема библиотеки.
* Добавлена поддержка **viewbinding**.
* Исправлена проблема с задвоением логов при использовании Timber.
* Исправлены мелкие баги.

[migration-guide]: migration_guide.md
## [Unreleased]

### Changed

- no changes

## 0.9.0
### Изменения
* Переименованы модули.
* Gradle обновлен до 8.7
* compileSdk и targetSdk повышены до 34
* Добавлена возможность открыть DebugPanel без FragmentManager
* Добавлена поддержка Jetpack Compose
* accounts-plugin переведен на Jetpack Compose
* app-settings-plugin переведен на Jetpack Compose
* flipper-plugin переведен на Jetpack Compose
* servers-plugin переведен на Jetpack Compose
* **Breaking changes:** Изменены Maven-координаты библиотек. Наименования пакетов во всех модулях приведены к общему виду. См. [гайд по миграции][docs\migration-guide].
* **Breaking changes:** Удален плагин Variable. Вместо него используйте плагин Konfeature. См. [гайд по миграции][docs\migration-guide].

## 0.8.1
### Изменения
* Исправлен краш при остановке активити (#13)

## 0.8.0
### Изменения
* Исправлен краш на SDK 34 (#7)
* Исправлен краш при доступе к БД (#5)
* Обновлены зависимости:
* Kotlin 1.6.20 → 1.9.23
* Room 2.4.0 → 2.6.1
* KotlinX Coroutines 1.3.9 → 1.8.0
* Удалено использование синтетиков
* Обновлено окружение сборки проекта

## 0.7.5
### Изменения
* Добавлена поддержка строк для плагина Flipper.
Теперь их можно указывать в качестве изменяемых значений.

## 0.7.4
### Изменения
* Добавлена конфигурация для публикации в публичный Maven
* Проект переведен на Gradle Kotlin DSL

## 0.7.3
### Изменения

* Исправлена ошибка с отсутствием события изменения сервера.
* Метод observeEvents в DebugPanel возвращает не nullable Flow

## 0.7.2
### Изменения
* Добавил группирование для групп тоглов (без под групп).
Добавил возможность добавлять источники в рантайме Добавил возможность выбирать между источниками в рантайме.
Изменения в поведении: теперь в изменеённых тоглах будут приходить состояния всех тоглов, а не только имзененных

* Добавлен плагин для быстрой подмены переменных в проекте VariablePlugin

## 0.6.9
### Изменения
Исправлены ошибки в работе `flipper-plugin` для релизной сборки

## 0.6.8
### Изменения
Добавлен [flipper-plugin](../plugins/flipper-plugin) для удобной работы с библиотекой [Flipper](https://github.com/RedMadRobot/flipper)

## 0.6.7
### Изменения
* Полностью удален Rx из зависимостей.
* Удален Groupie. Для списков используется [itemsAdapter](https://github.com/RedMadRobot/itemsadapter)
* Kotlin обновлен до 1.5.21.
* Android Gradle plugin обновлен до 4.2.0.
* Изменен способ удаления добавленных вручную элементов.
* Немного доработана цветовая тема библиотеки.
* Добавлена поддержка **viewbinding**.
* Исправлена проблема с задвоением логов при использовании Timber.
* Исправлены мелкие баги.

[migration-guide]: migration_guide.md
14 changes: 0 additions & 14 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
id("io.github.gradle-nexus.publish-plugin") version "2.0.0"
}

subprojects {
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().configureEach {
Expand All @@ -11,17 +8,6 @@ subprojects {
}
}

nexusPublishing {
// Uncomment if you need to release artifacts uploaded using "publish" task.
// repositoryDescription.set("Implicitly created (auto staging).")
repositories {
sonatype {
nexusUrl.set(uri("https://s01.oss.sonatype.org/service/local/"))
snapshotRepositoryUrl.set(uri("https://s01.oss.sonatype.org/content/repositories/snapshots/"))
}
}
}

tasks.register("clean", Delete::class) {
delete(rootProject.layout.buildDirectory)
}
20 changes: 15 additions & 5 deletions buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,22 @@ plugins {

group = "com.redmadrobot.build"

repositories {
google()
mavenCentral()

tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
kotlinOptions.jvmTarget = JavaVersion.VERSION_11.toString()
}

java {
targetCompatibility = JavaVersion.VERSION_11
sourceCompatibility = JavaVersion.VERSION_11
}

dependencies {
implementation(kotlin("gradle-plugin", version = "1.9.23"))
implementation("com.android.tools.build:gradle:8.3.2")
implementation(libs.infrastructure.publish)
implementation(libs.infrastructure.android)
implementation(libs.publish.gradlePlugin)
implementation(libs.gradle.android.cacheFixGradlePlugin)
implementation(libs.kotlin.gradlePlugin)
implementation(libs.detekt.gradlePlugin)
implementation(libs.android.gradlePlugin)
}
37 changes: 37 additions & 0 deletions buildSrc/settings.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
pluginManagement {
repositories {
gradlePluginPortal()
google {
content {
includeGroupAndSubgroups("com.android")
includeGroupAndSubgroups("com.google")
includeGroupAndSubgroups("androidx")
}
}
mavenCentral()
}
}

@Suppress("UnstableApiUsage")
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)

repositories {
google {
content {
includeGroupAndSubgroups("com.android")
includeGroupAndSubgroups("com.google")
includeGroupAndSubgroups("androidx")
}
}

mavenCentral()
gradlePluginPortal()
}

versionCatalogs {
create("libs") {
from(files("../gradle/libs.versions.toml"))
}
}
}
Loading

0 comments on commit 69edb4b

Please sign in to comment.