Skip to content

chore(deps): bump actions/upload-artifact from 3.1.2 to 4.2.0 #680

chore(deps): bump actions/upload-artifact from 3.1.2 to 4.2.0

chore(deps): bump actions/upload-artifact from 3.1.2 to 4.2.0 #680

Workflow file for this run

name: CI
on:
workflow_dispatch: {}
push:
branches:
- main
- gh-readonly-queue/main/*
pull_request:
types: [opened, reopened, synchronize]
branches:
- "*"
env:
GRADLE_CACHE_USERNAME: apikey
GRADLE_CACHE_PASSWORD: ${{ secrets.BUILDLESS_APIKEY }}
GRADLE_CACHE_REMOTE: "true"
GRADLE_CACHE_LOCAL: true
GRADLE_CACHE_PUSH: true
GRADLE_OPTS: "-Xmx6g -XX:MaxMetaspaceSize=1024m -XX:+UseParallelGC"
jobs:
preflight-checks:
runs-on: ubuntu-latest
if: github.event_name == 'pull_request'
steps:
- name: "Checkout Repository"
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3
- name: "Check: Dependency Review"
uses: actions/dependency-review-action@c090f4e553673e6e505ea70d6a95362ee12adb94 # v3
- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@55e685c48d84285a5b0418cd094606e199cca3b6 # tag=v1
gradle:
strategy:
fail-fast: false
matrix:
os: [ubuntu]
include:
- os: macos
runs-on: ${{ matrix.os }}-latest
env:
GRADLE_PUBLISH_KEY: ${{ secrets.GRADLE_PUBLISH_KEY }}
GRADLE_PUBLISH_SECRET: ${{ secrets.GRADLE_PUBLISH_SECRET }}
if: ${{ !contains(github.event.head_commit.message, 'ci skip') }}
steps:
## Setup: Repo
- name: Checkout Repo
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3
## Setup: Node
- name: "Setup: Node"
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3
with:
node-version: 18
## Setup: Yarn
- name: "Setup: Yarn"
run: npm install -g yarn@1.22.19 && yarn
## Setup: GraalVM
- name: "Setup: GraalVM"
uses: graalvm/setup-graalvm@b8dc5fccfbc65b21dd26e8341e7b21c86547f61b # v1
with:
java-version: ${{ vars.JVM_VERSION }}
github-token: ${{ secrets.GITHUB_TOKEN }}
## Setup: Gradle Caches
- name: Prime Gradle Caches
uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
## Setup: Signing Keys
- name: "Setup: Signing Keys"
if: ${{ matrix.os == 'ubuntu' }}
run: |
cat <(echo -e "${{ secrets.SIGNING_KEY }}") | base64 -d | gpg --batch --import
gpg --list-secret-keys --keyid-format LONG
gpg --export-secret-keys > /home/runner/.gnupg/secring.gpg
## Setup: Checkout Code
- name: Cache SonarCloud packages
uses: actions/cache@627f0f41f6904a5b1efbaed9f96d9eb58e92e920 # v3
if: ${{ matrix.os == 'ubuntu' }}
with:
path: ~/.sonar/cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar
## Job: Run build
- name: Run Gradle build
uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
GRADLE_CACHE_PUSH: "true"
with:
arguments: |
build
-x check
-Pelide.ci=true
--scan
--continue
--dependency-verification=lenient
## Job: Reports
- name: Pre-merge checks
uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
if: ${{ matrix.os == 'ubuntu' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
with:
arguments: |
check
test
preMerge
:plugin-build:plugin:test
:plugin-build:plugin:check
-Pelide.ci=true
--scan
--continue
--dependency-verification=lenient
## Job: Sonar Scan
- name: Sonar
uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
if: ${{ matrix.os == 'ubuntu' }}
continue-on-error: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
with:
arguments: |
:plugin-build:plugin:sonar
-Pelide.ci=true
--continue
--dependency-verification=lenient
## Job: Run plugin
- name: Run the plugin
uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
if: success()
with:
arguments: |
example:mixed:build
example:fullstack:server:build
example:static:server:build
-PbuildExamples=true
-Pelide.ci=true
--scan
--continue
--dependency-verification=lenient
## CI: Build
- name: "Failure reports"
if: failure()
uses: actions/upload-artifact@694cdabd8bdb0f10b2cea11669e1bf5453eed0a6 # v3
with:
name: failure-reports
path: |
build/reports/**/*.*
## Job: Verify plugin output (JS)
- name: Verify plugin output (JS)
if: success()
run: |
file ./example/fullstack/node/build/distributions/*.*js
grep -Fq "esbuild" ./example/fullstack/node/build/esbuild/esbuild.*.*js
## Job: Verify plugin output (JVM)
- name: Verify plugin output (JVM)
if: success()
run: |
file ./example/fullstack/server/build/resources/main/embedded/embedded.assets*
file ./example/fullstack/server/build/resources/main/embedded/*.*js
file ./example/fullstack/server/build/resources/main/assets/*.txt
file ./example/fullstack/server/build/resources/main/assets/*.css
file ./example/fullstack/server/build/resources/main/assets/*.*js
## Job: Report Code Coverage
- name: "Report: Codecov"
uses: codecov/codecov-action@d9f34f8cd5cb3b3eb79b3e4b5dae3a16df499a70 # v3
continue-on-error: true
if: ${{ matrix.os == 'ubuntu' }}
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./plugin-build/plugin/build/reports/kover/xml/report.xml
fail_ci_if_error: false
verbose: true