/gradle-dependency-submission

Calculates dependencies for a Gradle build-target and submits the list to the Dependency Submission API

Primary LanguageTypeScriptApache License 2.0Apache-2.0

:octocat:

gradle-dependency-submission

... calculates dependencies for a Gradle build-target and submits the list to the Dependency Submission API.



What's included 🚀Setup 🛠️Sample 🖥️Contribute 🧬License 📓


What's included 🚀

  • Supports any Gradle project
    • Uses the Gradle dependencies task
  • Highly flexible configuration
  • Submits all maven dependencies via the Dependency Submission API

This action executes the dependencies task of a given Gradle project, and will submit the dependency tree via the Dependency Submission API.

Setup

Configure the workflow

name: build
on:
  push:
    branches:
      - develop # run the action on your projects default branch

jobs:
  build:
    name: Dependencies
    runs-on: ubuntu-latest
    permissions: # The Dependency Submission API requires write permission
      contents: write
    steps:
      - name: 'Checkout Repository'
        uses: actions/checkout@v3

      - name: Run snapshot action
        uses: mikepenz/gradle-dependency-submission@{latest}
        with:
          gradle-project-path: "gradle-example"
          gradle-dependency-path: "app/build.gradle"
          gradle-build-module: ":app"
          gradle-build-configuration: "debugCompileClasspath"

ℹ️ Currently the action has to be run on the default branch. Running it as part of a PR won't update the Dependency graph of your projects Insights

Inputs

Input Description
use-gradlew Defines if ./gradlew or gradle cli will be used to retrieve the dependencies.
gradle-project-path Defines the path to the gradle project. Defaults to ''
gradle-dependency-path Defines the path to the gradle dependency file, relative to the gradle-project-path. Defaults to 'build.gradle'
gradle-build-module Defines the module to retrieve the dependencies for. This is often :app. Defaults to ''.
gradle-build-configuration The configuration for which dependencies are resolved. Defaults to debugCompileClasspath.

Sample 🖥️

Snapshot dependencies

Contribute 🧬

# Install the dependencies  
$ npm install

# Verify lint is happy
$ npm run lint -- --fix

# Build the typescript and package it for distribution
$ npm run build && npm run package

# Run the tests, use to debug, and test it out
$ npm test

Credits

Other actions

License

Copyright (C) 2022 Mike Penz

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.