Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
BppleMan committed Dec 27, 2023
2 parents 71039e6 + 93fc042 commit 3dcdff0
Show file tree
Hide file tree
Showing 129 changed files with 4,387 additions and 3,606 deletions.
70 changes: 70 additions & 0 deletions .github/workflows/gradle-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle

name: Kommand Test

on:
push:
tags:
- "*"
workflow_dispatch:

permissions:
contents: read

jobs:
publish:
runs-on: [self-hosted, macOS, ARM64, aarch64-apple-darwin]
steps:
- uses: actions/checkout@v4

- name: Set up Cargo
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: 1.69.0
target: ${{ matrix.target }}

- name: Set up JDK 17
uses: actions/setup-java@v4.0.0
with:
java-version: '17'
distribution: 'zulu'
architecture: ${{ matrix.arch }}
cache: 'gradle'

- if: ${{ matrix.gcc }}
name: Set up GCC
uses: Dup4/actions-setup-gcc@v1

- name: Set up just
uses: extractions/setup-just@v1

- name: Set up Gradle
uses: gradle/gradle-build-action@v2
with:
gradle-version: '8.2'

- name: Test Gradle availability
run: gradle build --dry-run

- if: ${{ !matrix.gcc }}
name: Build kommand-core
run: just ${{ matrix.target }}
working-directory: ./kommand-core

- if: ${{ matrix.gcc }}
name: Build kommand-core with GCC
run: just workflow ${{ matrix.target }}
working-directory: ./kommand-core

- if: ${{ !matrix.cross }}
name: Test with Gradle
run: gradle ${{ matrix.task }} jvmTest

- if: ${{ matrix.cross }}
name: Test with Docker
run: just ${{ matrix.task }}
98 changes: 98 additions & 0 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle

name: Kommand Test

on:
push:
branches: [ "main", "dev" ]
pull_request:
branches: [ "main" ]
workflow_dispatch:

permissions:
contents: read

jobs:
test:
strategy:
fail-fast: false
matrix:
os:
- macos-12
- [self-hosted, macOS, ARM64, aarch64-apple-darwin]
- ubuntu-22.04
- [self-hosted, macOS, ARM64, aarch64-unknown-linux-gnu]
- windows-latest
include:
- os: macos-12
target: x86_64-apple-darwin
task: macosX64Test
- os: [self-hosted, macOS, ARM64, aarch64-apple-darwin]
target: aarch64-apple-darwin
task: macosArm64Test
- os: ubuntu-22.04
target: x86_64-unknown-linux-gnu
task: linuxX64Test
gcc: true
- os: [self-hosted, macOS, ARM64, aarch64-unknown-linux-gnu]
target: aarch64-unknown-linux-gnu
task: linuxArm64Test
cross: true
- os: windows-latest
target: x86_64-pc-windows-gnu
task: mingwX64Test
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4

- name: Set up Cargo
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: 1.69.0
target: ${{ matrix.target }}

- name: Set up JDK 17
uses: actions/setup-java@v4.0.0
with:
java-version: '17'
distribution: 'zulu'
architecture: ${{ matrix.arch }}
cache: 'gradle'

- if: ${{ matrix.gcc }}
name: Set up GCC
uses: Dup4/actions-setup-gcc@v1

- name: Set up just
uses: extractions/setup-just@v1

- name: Set up Gradle
uses: gradle/gradle-build-action@v2
with:
gradle-version: '8.2'

- name: Test Gradle availability
run: gradle build --dry-run

- if: ${{ !matrix.gcc }}
name: Build kommand-core
run: just ${{ matrix.target }}
working-directory: ./kommand-core

- if: ${{ matrix.gcc }}
name: Build kommand-core with GCC
run: just workflow ${{ matrix.target }}
working-directory: ./kommand-core

- if: ${{ !matrix.cross }}
name: Test with Gradle
run: gradle ${{ matrix.task }} jvmTest

- if: ${{ matrix.cross }}
name: Test with Docker
run: just ${{ matrix.task }}
116 changes: 2 additions & 114 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,120 +1,6 @@
# Created by https://www.toptal.com/developers/gitignore/api/macos,intellij+iml,vim,visualstudiocode,gradle,kotlin
# Edit at https://www.toptal.com/developers/gitignore?templates=macos,intellij+iml,vim,visualstudiocode,gradle,kotlin

### Intellij+iml ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf

# AWS User-specific
.idea/**/aws.xml

# Generated files
.idea/**/contentModel.xml

# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml

# Gradle
.idea/**/gradle.xml
.idea/**/libraries
.idea/artifacts

# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn. Uncomment if using
# auto-import.
# .idea/artifacts
# .idea/compiler.xml
# .idea/jarRepositories.xml
# .idea/modules.xml
# .idea/*.iml
# .idea/modules
# *.iml
# *.ipr

# CMake
cmake-build-*/

# Mongo Explorer plugin
.idea/**/mongoSettings.xml

# File-based project format
*.iws

# IntelliJ
out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Cursive Clojure plugin
.idea/replstate.xml

# SonarLint plugin
.idea/sonarlint/

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

# Editor-based Rest Client
.idea/httpRequests

# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser

### Intellij+iml Patch ###
# Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-249601023

*.iml
modules.xml
.idea/misc.xml
*.ipr

### Kotlin ###
# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
replay_pid*

### macOS ###
# General
.DS_Store
Expand Down Expand Up @@ -216,3 +102,5 @@ gradle-app.setting
*.hprof

# End of https://www.toptal.com/developers/gitignore/api/macos,intellij+iml,vim,visualstudiocode,gradle,kotlin

build-cache
10 changes: 10 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/artifacts/kommand_jvm_1_2_0.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

21 changes: 21 additions & 0 deletions .idea/gradle.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 0 additions & 10 deletions .idea/inspectionProfiles/Project_Default.xml

This file was deleted.

25 changes: 0 additions & 25 deletions .idea/jsonSchemas.xml

This file was deleted.

8 changes: 8 additions & 0 deletions .idea/kommand.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 3dcdff0

Please sign in to comment.