6 Aralık 2022 Salı

jib plugin

Örnek
Şöyle yaparız
plugins {
...
  id 'com.google.cloud.tools.jib' version '3.3.0' //You just need to add a plugin
}

jib {
  from {
    image = 'openjdk:alpine' //You may leave it empty to use a default image
  }
  to {
    image = 'alekseinovikov/jib-example' //By default Jib pushes images into Docker Hub
    tags = ['0.1', 'latest']
    auth {
      username = 'username' //Docker Hub requires authentication
      password = 'password'
    }
  }
  container {
    jvmFlags = ['-Xms128m'] //You may pass additional flags
    ports = ['8080'] //Open ports
    format = 'OCI' //Even choose a format of the image you are building
  }
}

5 Aralık 2022 Pazartesi

avro plugin

Örnek
Şöyle yaparız. .avsc dosyalarından kotlin kodu üretir.
plugins {
  ... 
  id("com.github.davidmc24.gradle.plugin.avro") version ("1.2.0")
}

tasks.withType<com.github.davidmc24.gradle.plugin.avro.GenerateAvroJavaTask> {
    source(file("${projectDir}\\src\\main\\resources\\avro"))
    setOutputDir(file("${projectDir}\\src\\main\\kotlin"))
}

avro {
    fieldVisibility.set("private")
    customConversion(org.apache.avro.Conversions.UUIDConversion::class.java)
}


3 Aralık 2022 Cumartesi

Software Bill Of Materials - SBOM

Giriş
Software Bill Of Materials - SBOM yazısına bakabilirsiniz.

1. CycloneDX
Şu satırı dahil ederiz
plugins {
  id 'org.cyclonedx.bom' version '1.7.2'
}
Şöyle yaparız. build işlemi sonucunda SBOM da üretilir.
cyclonedxBom {
  includeConfigs = ["runtimeClasspath"]
  skipConfigs = ["compileClasspath", "testCompileClasspath"]
  projectType = "application"
  schemaVersion = "1.4"
  destination = file("build/reports")
  outputName = "CycloneDX-Sbom"
  outputFormat = "all"
  includeBomSerialNumber = true
  componentVersion = "2.0.0"
}
...
build.finalizedBy('cyclonedxBom'

Gradle Daemon Nedir?

Giriş Açıklaması  şöyle . Gradle Daemon arka planda çalışır. Çünkü Gradle'ı ayağa kaldırmak ve ilklendirmek çok uzun sürüyor.  Gradle ru...