Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 10 additions & 3 deletions .github/project.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/cuioss/cuioss-organization/main/.github/actions/read-project-config/schema.json
name: cui-jsf-test-basic
pages-reference: cui-jsf-test-basic
sonar-project-key: cuioss_cui-jsf-test-basic

release:
current-version: 4.1.1
next-version: 4.0-SNAPSHOT
next-version: 4.0-SNAPSHOT
create-github-release: true

sonar:
project-key: cuioss_cui-jsf-test-basic

pages:
reference: cui-jsf-test-basic
16 changes: 16 additions & 0 deletions .github/workflows/dependency-review.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Example: Copy this to your repo as .github/workflows/dependency-review.yml
name: Dependency Review

on:
pull_request:
branches: [main]

permissions:
contents: read

jobs:
dependency-review:
uses: cuioss/cuioss-organization/.github/workflows/reusable-dependency-review.yml@d38bc3643f0d0faa34ece1c2d854cf97f9a0abd4 # v0.2.8
permissions:
contents: read
pull-requests: write
86 changes: 0 additions & 86 deletions .github/workflows/maven-release.yml

This file was deleted.

122 changes: 19 additions & 103 deletions .github/workflows/maven.yml
Original file line number Diff line number Diff line change
@@ -1,110 +1,26 @@
name: Master Build
# Example: Copy this to your repo as .github/workflows/maven.yml
# Configuration is read from .github/project.yml - no inputs needed!
name: Maven Build

on:
push:
branches: [ "main", "feature/*" ]
branches: [main, "feature/*", "fix/*", "chore/*", "release/*", "dependabot/**"]
pull_request:
branches: [ "main" ]
branches: [main]
workflow_dispatch:

permissions:
contents: read

jobs:
build:

runs-on: ubuntu-latest
strategy:
matrix:
version: [ 21,24 ]

steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
with:
egress-policy: audit

- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up JDK ${{ matrix.version }}
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
with:
java-version: ${{ matrix.version }}
distribution: 'temurin'
cache: maven
- name: Build with Maven, Java ${{ matrix.version }}
run: ./mvnw --no-transfer-progress verify -Dmaven.compiler.release=${{ matrix.version }}

sonar-build:
needs: build
runs-on: ubuntu-latest

steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
with:
egress-policy: audit

- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0

- name: Set up JDK 17 for Sonar-build
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
with:
java-version: '21'
distribution: 'temurin'
cache: maven

- name: Cache SonarCloud packages
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
with:
path: ~/.sonar/cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar

- uses: radcortez/project-metadata-action@203f7ffba8db2669b2c9b4d4c2e90b186c588fa5 # 1.1
name: Retrieve project metadata from '.github/project.yml'
id: metadata
with:
github-token: ${{secrets.GITHUB_TOKEN}}
metadata-file-path: '.github/project.yml'
local-file: true

- name: Build and analyze
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: ./mvnw -B verify -Psonar -Dsonar.projectKey=${{steps.metadata.outputs.sonar-project-key}} sonar:sonar

deploy-snapshot:
needs: sonar-build
if: github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
with:
egress-policy: audit

- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up JDK 17 for snapshot release
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
with:
java-version: '21'
distribution: 'temurin'
server-id: central
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: MAVEN_GPG_PASSPHRASE
cache: maven

- name: Extract project version
id: project
run: echo ::set-output name=version::$(./mvnw help:evaluate -Dexpression=project.version -q -DforceStdout)

- name: Deploy Snapshot with Maven, version ${{ steps.project.outputs.version }}
if: ${{endsWith(steps.project.outputs.version, '-SNAPSHOT')}}
run: |
./mvnw -B -Prelease-snapshot javadoc:aggregate
./mvnw -B -Prelease-snapshot deploy -Dmaven.test.skip=true
env:
MAVEN_USERNAME: ${{ secrets.OSS_SONATYPE_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.OSS_SONATYPE_PASSWORD }}
MAVEN_GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
# Run on push events, OR on pull_request only if from a fork
# This prevents duplicate runs: push handles internal branches, PR handles forks
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
uses: cuioss/cuioss-organization/.github/workflows/reusable-maven-build.yml@d38bc3643f0d0faa34ece1c2d854cf97f9a0abd4 # v0.2.8
secrets:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
OSS_SONATYPE_USERNAME: ${{ secrets.OSS_SONATYPE_USERNAME }}
OSS_SONATYPE_PASSWORD: ${{ secrets.OSS_SONATYPE_PASSWORD }}
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
27 changes: 27 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Example: Copy this to your repo as .github/workflows/release.yml
# Configuration is read from .github/project.yml - no inputs needed!
name: Release

on:
pull_request:
types: [closed]
paths:
- '.github/project.yml'
workflow_dispatch:

permissions:
contents: read

jobs:
release:
permissions:
contents: write
if: github.event.pull_request.merged == true || github.event_name == 'workflow_dispatch'
uses: cuioss/cuioss-organization/.github/workflows/reusable-maven-release.yml@d38bc3643f0d0faa34ece1c2d854cf97f9a0abd4 # v0.2.8
secrets:
RELEASE_APP_ID: ${{ secrets.RELEASE_APP_ID }}
RELEASE_APP_PRIVATE_KEY: ${{ secrets.RELEASE_APP_PRIVATE_KEY }}
OSS_SONATYPE_USERNAME: ${{ secrets.OSS_SONATYPE_USERNAME }}
OSS_SONATYPE_PASSWORD: ${{ secrets.OSS_SONATYPE_PASSWORD }}
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
24 changes: 24 additions & 0 deletions .github/workflows/scorecards.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Example: Copy this to your repo as .github/workflows/scorecards.yml
name: Scorecard supply-chain security

on:
branch_protection_rule:
schedule:
- cron: '20 7 * * 2'
push:
branches: [main]

permissions:
contents: read

jobs:
analysis:
uses: cuioss/cuioss-organization/.github/workflows/reusable-scorecards.yml@d38bc3643f0d0faa34ece1c2d854cf97f9a0abd4 # v0.2.8
permissions:
security-events: write
id-token: write
contents: read
actions: read
issues: read
pull-requests: read
checks: read
76 changes: 0 additions & 76 deletions CODE_OF_CONDUCT.md

This file was deleted.

Loading
Loading