diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 000000000..14f5f8fa8 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,15 @@ +version: 2 +updates: + - package-ecosystem: 'maven' + directory: '/' + schedule: + interval: 'daily' + time: '00:00' + open-pull-requests-limit: 15 + + - package-ecosystem: 'github-actions' + directory: '/' + schedule: + interval: 'daily' + time: '00:00' + open-pull-requests-limit: 10 diff --git a/.github/release_drafter.yml b/.github/release_drafter.yml new file mode 100644 index 000000000..2fe7a3e60 --- /dev/null +++ b/.github/release_drafter.yml @@ -0,0 +1,45 @@ +name-template: 'v$RESOLVED_VERSION' +tag-template: 'v$RESOLVED_VERSION' +categories: + - title: '✨ Features' + labels: + - 'feature' + - title: '🐛 Bug Fixes' + labels: + - 'bug' + - title: '🧰 Maintenance' + labels: + - 'chore' + +change-template: '- $TITLE (#$NUMBER by @$AUTHOR)' +change-title-escapes: '\<*_&' +# You can add # and @ to disable mentions, and add ` to disable code blocks. +version-resolver: + major: + labels: + - 'major' + minor: + labels: + - 'minor' + patch: + labels: + - 'patch' + default: patch +exclude-labels: + - 'skip-changelog' +template: | + ## What's changed + + $CHANGES +autolabeler: + - label: 'chore' + branch: + - '/chore\/.+/' + - label: 'bug' + branch: + - '/bug\/.+/' + - '/bugfix\/.+/' + - '/hotfix\/.+/' + - label: 'feature' + branch: + - '/feature\/.+/' diff --git a/.github/workflow/static.yml b/.github/workflow/static.yml deleted file mode 100644 index 0c2a88aa4..000000000 --- a/.github/workflow/static.yml +++ /dev/null @@ -1,69 +0,0 @@ -# Simple workflow for deploying static content to GitHub Pages -name: Deploy static content to Pages - -on: - # Runs on pushes targeting the default branch - push: - branches: ["main"] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - - inputs: - java_version: - description: Java version to use - type: string - required: false - default: 17 - releaseVersion: - description: "Default version to use when preparing a release." - type: string - required: true - default: "2.4.0-M1" - developmentVersion: - description: "Default version to use for new local working copy." - type: string - required: true - default: "2.4.0-SNAPSHOT" - dryRun: - description: "Perform a dry run" - required: true - default: 'false' - type: string - -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. -# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. -concurrency: - group: "pages" - cancel-in-progress: false - -jobs: - # Single deploy job since we're just deploying - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - name: Prepare and perform release - run: mvn release:prepare release:perform -ntp --batch-mode -DreleaseVersion=${{ inputs.releaseVersion }} -DdevelopmentVersion=${{ inputs.developmentVersion }} -DdryRun=${{ inputs.dryRun }} - - - name: Setup Pages - uses: actions/configure-pages@v5 - - - name: Upload artifact - uses: actions/upload-pages-artifact@v3 - with: - path: 'jqassistant/manual/target/generated-docs/index.html' - - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..22570cfb2 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,30 @@ +--- +name: CI + +on: + push: + branches: + - master + tags-ignore: + - "*" + pull_request: + branches: + - master + workflow_dispatch: {} + +concurrency: + group: build-java-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + uses: jqassistant-tooling/jqassistant-github-actions/.github/workflows/ci.yml@main + with: + publish_snapshots: true + java_test_versions: '[11,17,21]' + secrets: + ossrh_username: ${{ secrets.OSSRH_USERNAME }} + ossrh_password: ${{ secrets.OSSRH_PASSWORD }} + ossrh_signing_key: ${{ secrets.OSSRH_SIGNING_KEY }} + ossrh_signing_password: ${{ secrets.OSSRH_SIGNING_PASSWORD }} + sonar_token: ${{ secrets.SONAR_TOKEN }} diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml new file mode 100644 index 000000000..b998a3ebe --- /dev/null +++ b/.github/workflows/release-drafter.yml @@ -0,0 +1,44 @@ +--- +name: Release + +on: + workflow_dispatch: + inputs: + java_version: + description: Java version to use + type: string + required: false + default: 17 + releaseVersion: + description: "Default version to use when preparing a release." + required: true + default: "X.Y.Z" + developmentVersion: + description: "Default version to use for new local working copy." + required: true + default: "X.Y.Z-SNAPSHOT" + dryRun: + description: "Perform a dry run" + required: true + default: false + type: boolean + assets: + description: "Path expression for Assets to upload." + type: string + required: false + default: "target/checkout/cli/neo4jv?/target/*-distribution.zip" + +jobs: + build: + uses: jqassistant-tooling/jqassistant-github-actions/.github/workflows/release.yml@main + with: + releaseVersion: ${{ github.event.inputs.releaseVersion }} + developmentVersion: ${{ github.event.inputs.developmentVersion }} + dryRun: ${{ github.event.inputs.dryRun }} + assets : ${{ github.event.inputs.assets }} + secrets: + ossrh_username: ${{ secrets.OSSRH_USERNAME }} + ossrh_password: ${{ secrets.OSSRH_PASSWORD }} + ossrh_signing_key: ${{ secrets.OSSRH_SIGNING_KEY }} + ossrh_signing_password: ${{ secrets.OSSRH_SIGNING_PASSWORD }} + sonar_token: ${{ secrets.SONAR_TOKEN }}