Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple CI updates #894

Merged
merged 1 commit into from
Nov 29, 2023
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
123 changes: 90 additions & 33 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,82 +42,139 @@ jobs:

code-format:
name: TypeScript/Scala/Svelte Formatting
runs-on: ubuntu-20.04
strategy:
matrix:
java_distribution: [ temurin ]
java_version: [ 8 ]
os: [ ubuntu-20.04 ]
node: [ '16' ]
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
env:
SBT: sbt -J-Xms1024m -J-Xmx5120m -J-XX:ReservedCodeCacheSize=512m -J-XX:MaxMetaspaceSize=1024m ++2.12.15
steps:
- uses: actions/[email protected]
- name: Setup Node 16
uses: actions/[email protected]
with:
node-version: '16'
- name: Setup Java 8
############################################################
# Setup
############################################################

- name: Check out Repository
uses: actions/[email protected]

- name: Setup Java
uses: actions/[email protected]
with:
distribution: temurin
java-version: 8
- run: $SBT scalafmtCheck
- run: $SBT scalafmtSbtCheck
- run: yarn install
- run: yarn lint
distribution: ${{ matrix.java_distribution }}
java-version: ${{ matrix.java_version }}

- name: Install Node.js
uses: actions/[email protected]
with:
node-version: ${{ matrix.node }}

############################################################
# Lint/format checks
############################################################

- name: Scala format check
run: $SBT scalafmtCheck

- name: Scala sbt format check
run: $SBT scalafmtSbtCheck

- name: Install node dependencies
run: yarn install

- name: TypeScript lint
run: yarn lint

rat-check:
name: Rat Check
runs-on: ubuntu-20.04
strategy:
matrix:
java_distribution: [ temurin ]
java_version: [ 8 ]
os: [ ubuntu-20.04 ]
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
env:
SBT: sbt -J-Xms1024m -J-Xmx5120m -J-XX:ReservedCodeCacheSize=512m -J-XX:MaxMetaspaceSize=1024m ++2.12.15
steps:
- name: Setup Java 8
uses: actions/[email protected]
with:
distribution: temurin
java-version: 8
############################################################
# Setup
############################################################

- name: Check out Repository
uses: actions/[email protected]
with:
fetch-depth: 0

- name: Setup Java
uses: actions/[email protected]
with:
distribution: ${{ matrix.java_distribution }}
java-version: ${{ matrix.java_version }}

############################################################
# Rat check
############################################################

- name: Run Rat Check
run: $SBT ratCheck || (cat target/rat.txt; exit 1)

build-test-package:
name: 'Build, Test, and Package (OS: ${{ matrix.os }}, Node: ${{ matrix.node }})'
name: 'Build, Test, and Package (OS: ${{ matrix.os }}, Node: ${{ matrix.node }}, Java: ${{ matrix.java_version }})'
strategy:
matrix:
os: [macos-11, ubuntu-20.04, windows-2019]
java_distribution: [ temurin ]
java_version: [ 8, 11, 17 ]
os: [ macos-11, ubuntu-20.04, windows-2019 ]
node: [ '16', '18' ]
fail-fast: false # don't immediately fail all other jobs if a single job fails
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
env:
SBT: sbt -J-Xms1024m -J-Xmx5120m -J-XX:ReservedCodeCacheSize=512m -J-XX:MaxMetaspaceSize=1024m ++2.12.15
steps:
- name: Setup Java 8
############################################################
# Setup
############################################################

- name: Check out Repository
uses: actions/[email protected]

- name: Setup Java
uses: actions/[email protected]
with:
distribution: temurin
java-version: 8
- uses: actions/[email protected]
distribution: ${{ matrix.java_distribution }}
java-version: ${{ matrix.java_version }}

- name: Install Node.js
uses: actions/[email protected]
with:
node-version: ${{ matrix.node}}
- run: $SBT compile # used to initialize sbt, if not done sbt universal:packageBin ran by yarn package times out -- windows only
if: runner.os == 'Windows'
- run: yarn install
- run: xvfb-run -a yarn test
node-version: ${{ matrix.node }}

############################################################
# Build & Package
############################################################

- name: Install node dependencies
run: yarn install

- name: Runs tests - Linux
run: xvfb-run -a yarn test
if: runner.os == 'Linux'
- run: yarn test

- name: Runs tests - Windows/Mac
run: yarn test
if: runner.os != 'Linux'

- name: Check for Errors in macOS
run: tail -n 1000 '/Users/runner/Library/Application Support/omega_edit/'* && exit 1
if: failure() && runner.os == 'macOS'

- name: Package
run: yarn package
46 changes: 34 additions & 12 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,36 +23,58 @@ on:

jobs:
build-test-package:
name: 'Build, Test, and Package (OS: ${{ matrix.os }}, Node: ${{ matrix.node }}, VS Code: ${{ matrix.vscode }} )'
name: 'Build, Test, and Package (OS: ${{ matrix.os }}, Node: ${{ matrix.node }}, Java: ${{ matrix_java_version }}, VS Code: ${{ matrix.vscode }} )'
strategy:
matrix:
os: [ macos-11, ubuntu-20.04, windows-2019, macos-latest, ubuntu-latest, windows-latest ]
node: [ '16', '18' ]
vscode: [ 'stable', 'insiders' ]
java_distribution: [ temurin ]
java_version: [ 8, 11, 17 ]
fail-fast: false # don't immediately fail all other jobs if a single job fails
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
env:
DAFFODIL_TEST_VSCODE_VERSION: ${{ matrix.vscode }}
SBT: sbt -J-Xms1024m -J-Xmx5120m -J-XX:ReservedCodeCacheSize=512m -J-XX:MaxMetaspaceSize=1024m ++2.12.15
steps:
- name: Setup Java 8
############################################################
# Setup
############################################################

- name: Check out Repository
uses: actions/[email protected]

- name: Setup Java
uses: actions/[email protected]
with:
distribution: temurin
java-version: 8
- uses: actions/[email protected]
distribution: ${{ matrix.java_distribution }}
java-version: ${{ matrix.java_version }}

- name: Install Node.js
uses: actions/[email protected]
with:
node-version: ${{ matrix.node }}
- run: $SBT compile # used to initialize sbt, if not done sbt universal:packageBin ran by yarn package times out -- windows only
if: runner.os == 'Windows'
- run: yarn install
- run: yarn package
- run: xvfb-run -a yarn test

############################################################
# Build & Package
############################################################

- name: Install node dependencies
run: yarn install

- name: Runs tests - Linux
run: xvfb-run -a yarn test
if: runner.os == 'Linux'
- run: yarn test

- name: Runs tests - Windows/Mac
run: yarn test
if: runner.os != 'Linux'

- name: Check for Errors in macOS
run: tail -n 1000 '/Users/runner/Library/Application Support/omega_edit/'* && exit 1
if: failure() && runner.os == 'macOS'

- name: Package
run: yarn package