Skip to content

ci: Updating actions to their step-security maintained version. (#997) #429

ci: Updating actions to their step-security maintained version. (#997)

ci: Updating actions to their step-security maintained version. (#997) #429

##
# Copyright (C) 2022-2023 Hedera Hashgraph, LLC
#
# 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.
##
name: "Build Application"
on:
workflow_dispatch:
inputs:
enable-unit-tests:
description: "Unit Testing Enabled"
type: boolean
required: false
default: true
enable-sonar-analysis:
description: "Sonar Analysis Enabled"
type: boolean
required: false
default: false
enable-spotless-check:
description: "Spotless Check Enabled"
type: boolean
required: false
default: false
enable-snyk-scan:
description: "Snyk Scan Enabled"
type: boolean
required: false
default: false
java-version:
description: "Java JDK Version:"
type: string
required: false
default: "21.0.1"
java-distribution:
description: "Java JDK Distribution:"
type: string
required: false
default: "temurin"
gradle-version:
description: "Gradle Version:"
type: string
required: false
default: "wrapper"
push:
branches:
- main
- 'release/*'
defaults:
run:
shell: bash
jobs:
code:
name: Code
uses: ./.github/workflows/zxc-compile-code.yaml
with:
java-version: ${{ github.event.inputs.java-version || '21.0.1' }}
java-distribution: ${{ github.event.inputs.java-distribution || 'temurin' }}
gradle-version: ${{ github.event.inputs.gradle-version || 'wrapper' }}
enable-unit-tests: ${{ github.event_name == 'push' || github.event.inputs.enable-unit-tests == 'true' }}
enable-spotless-check: ${{ github.event_name == 'push' || github.event.inputs.enable-spotless-check == 'true' }}
secrets:
gradle-cache-username: ${{ secrets.GRADLE_CACHE_USERNAME }}
gradle-cache-password: ${{ secrets.GRADLE_CACHE_PASSWORD }}
analyze:
name: Analyze
uses: ./.github/workflows/zxc-code-analysis.yaml
needs:
- code
if: ${{ github.event_name == 'push' || github.event.inputs.enable-unit-tests == 'true' }}
with:
custom-job-label: Source Code
java-version: ${{ github.event.inputs.java-version || '21.0.1' }}
java-distribution: ${{ github.event.inputs.java-distribution || 'temurin' }}
gradle-version: ${{ github.event.inputs.gradle-version || 'wrapper' }}
enable-snyk-scan: ${{ github.event_name == 'push' || github.event.inputs.enable-snyk-scan == 'true' }}
enable-sonar-analysis: ${{ github.event_name == 'push' || github.event.inputs.enable-sonar-analysis == 'true' }}
enable-codecov-analysis: ${{ github.event_name == 'push' || github.event.inputs.enable-unit-tests == 'true' }}
secrets:
gradle-cache-username: ${{ secrets.GRADLE_CACHE_USERNAME }}
gradle-cache-password: ${{ secrets.GRADLE_CACHE_PASSWORD }}
sonar-token: ${{ secrets.SONAR_TOKEN }}
snyk-token: ${{ secrets.SNYK_TOKEN }}
codecov-token: ${{ secrets.CODECOV_TOKEN }}