Setup CI testing and building #1
|
@ -0,0 +1,44 @@
|
|||
name: Publish Workflow
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- v*
|
||||
jobs:
|
||||
publish:
|
||||
name: Publish library
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Java
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: adopt
|
||||
java-version: 17
|
||||
|
||||
- name: Verify Gradle wrapper
|
||||
uses: gradle/wrapper-validation-action@v1
|
||||
|
||||
- name: Setup Gradle
|
||||
uses: gradle/gradle-build-action@v2
|
||||
|
||||
- name: Run checks
|
||||
run: ./gradlew check
|
||||
|
||||
- name: Parse parameters
|
||||
id: parse
|
||||
run: |
|
||||
export VERSION="$(echo ${{ github.ref_name }} | cut -c2-)"
|
||||
echo "Parsed version: '$VERSION'"
|
||||
echo "backup_version=$VERSION" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Build
|
||||
env:
|
||||
BACKUP_VERSION: ${{ steps.parse.outputs.backup_version }}
|
||||
run: ./gradlew shadowJar
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ShadowJAR
|
||||
path: build/libs/*-all.jar
|
|
@ -0,0 +1,29 @@
|
|||
name: Test Workflow
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
jobs:
|
||||
lint-and-test:
|
||||
name: Lint and test library
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Java
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: adopt
|
||||
java-version: 17
|
||||
|
||||
- name: Verify Gradle wrapper
|
||||
uses: gradle/wrapper-validation-action@v1
|
||||
|
||||
- name: Setup Gradle
|
||||
uses: gradle/gradle-build-action@v2
|
||||
|
||||
- name: Run checks
|
||||
run: ./gradlew check
|
|
@ -1,10 +1,12 @@
|
|||
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
|
||||
|
||||
plugins {
|
||||
kotlin("jvm") version "1.9.21"
|
||||
id("com.github.johnrengelman.shadow") version "8.1.1"
|
||||
}
|
||||
|
||||
group = "net.koval"
|
||||
version = "1.0-SNAPSHOT"
|
||||
group = "net.koval.teamcity-executors-test-task"
|
||||
version = System.getenv("BACKUP_VERSION")
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
@ -12,6 +14,7 @@ repositories {
|
|||
|
||||
dependencies {
|
||||
implementation("aws.sdk.kotlin:s3:1.0.25")
|
||||
implementation("org.slf4j:slf4j-simple:2.0.9")
|
||||
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3")
|
||||
testImplementation("org.jetbrains.kotlin:kotlin-test")
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package backup
|
||||
|
||||
import aws.sdk.kotlin.services.s3.S3Client
|
||||
import aws.sdk.kotlin.services.s3.model.ListBucketsRequest
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.runBlocking
|
||||
import java.io.File
|
||||
|
|
Reference in New Issue