Code Monkey home page Code Monkey logo

arrow-gradle-config's Introduction

Arrow Gradle config

Add basic config to a Kotlin Multiplatform project

In an Arrow KMP project, just add to the plugin block:

plugins {
    kotlin("multiplatform") version "$version"
    id("io.arrow-kt.arrow-gradle-config-kotlin")
    // ...
}

// ...

Publish Arrow projects

Add to the root build.gradle.kts the next plugin to the plugin block if it is not there yet:

plugins {
    id("io.arrow-kt.arrow-gradle-config-nexus") version "$version"
    // ...
}

Add the POM Gradle properties for the project (modify with the real value):

pom.name=Sample name
pom.description=Sample description
pom.url=https://github.com/arrow-kt/sample-repo
pom.license.name=The Apache License, Version 2.0
pom.license.url=https://www.apache.org/licenses/LICENSE-2.0.txt
pom.developer.id=arrow-kt
pom.developer.name=The Arrow Authors
pom.smc.url=https://github.com/arrow-kt/sample-repo
pom.smc.connection=scm:git:[email protected]:arrow-kt/sample-repo.git
pom.smc.developerConnection=scm:git:[email protected]:arrow-kt/sample-repo.git

And add the next Gradle properties and/or environment variables for signing the artifacts (they must not be exposed publicly):

  • Gradle properties
signing.gnupg.keyName=[keyName]
signing.gnupg.keyId=[keyId]
signing.gnupg.key=[key]
signing.gnupg.passphrase=[passphrase]
oss.user=[user]
oss.token=[token]
oss.stagingProfileId=[stagingProfileId]
  • Environment variables
SIGNING_KEY_NAME=[keyName]
SIGNING_KEY_ID=[keyId]
SIGNING_KEY=[key]
SIGNING_KEY_PASSPHRASE=[passphrase]
OSS_USER=[user]
OSS_TOKEN=[token]
OSS_STAGING_PROFILE_ID=[stagingProfileId]

Remember to replace the different properties with the real values

Remember to replace the signing.gnupg.key or SIGNING_KEY line breaks with \n

Publish projects

plugins {
    id("io.arrow-kt.arrow-gradle-config-publish") version "$version"
    // ...
}

// ...

Add the next properties to gradle.properties file

projects.group=[group]
projects.version=[version]

Remember to replace the different properties with the real values

if the project is a Gradle plugin

gradlePlugin {
    plugins {
        named("[pluginId]") {
            id = "[pluginId]"
            displayName = "[pluginName]"
            description = "[pluginDescription]"
        }
    }
}

// ...

Add the next Gradle properties (they must not be exposed publicly):

gradle.publish.key=[key]
gradle.publish.secret=[secret]

Remember to replace the different properties with the real values

arrow-gradle-config's People

Contributors

javiersegoviacordoba avatar renovate[bot] avatar i-walker avatar nomisrev avatar raulraja avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.