-
-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Partially working GraalVM native image Investigation to determine if GraalVM can be used to fix #33. So that Clojure/Java impl of data.xml is used instead of ClojureScript. Using Clojure 1.10.2-alpha1 and spec-tools 0.10.0 Using xfthhxk fix for luchiniatwork/cambada#9 Working for files that don't exist (Traktor to Rekordbox) Error for files that exist, from mp3-parser (Traktor to Rekordbox) Error for all files? (Rekordbox to Traktor) * ClojureScript tests passing again * Partially working GraalVM native image Investigation to determine if GraalVM can be used to fix #33. Now working for files that exist (Traktor to Rekordbox) Fixed error from mp3-parser * Partially working GraalVM native image Investigation to determine if GraalVM can be used to fix #33. Now working for all files (Rekordbox to Traktor) * Add clojure setup to build job steps * Add native-image-linux job Use Java 11 instead of Java 8 * Use sudo where needed * Graalvm Native Image for Windows (#35) * Add native-image-windows job Doesn't build the native image yet Need to determine installation directory first * Reorganised to create an uberjar in the first step The Clojure setup action doesn't work on Windows; This is an experiment to just use GraalVM Native image directly instead * Enable verbose output to determine paths * Debugging * Fixed name argument * Add --initialize-at-build-time option * No target directory * Add steps to native-image-windows job * Install Visual C Build Tools Workload For Visual Studio 2017 * Changes for Powershell * Use cmd instead of Powershell * Add package and publish steps * Debugging * Fixed GraalVM image name * Additional smoke tests * Don't use direct linking It causes java.lang.ClassNotFoundException: clojure.data.xml$parse * Add native-image-macos job (#37) * Add release job * Update clojurescript dep to 1.10.773 Avoid error running uberjar alias Execution error (ExceptionInfo) at clojure.tools.deps.alpha.extensions.maven/get-artifact (maven.clj:118). Could not find artifact org.clojure:tools.reader:jar:1.3.0 Separate job for running tests Add support for skipping builds * Add status badge for GitHub Actions * Reverted from fork back to juxt repo for tick dep Also removed js-joda ns, no longer required with latest tick version * Update mp3-parser dep to 0.2.0 * Add link to status badge * Remove Azure Pipelines definition * Added 0.5.0 notes
- Loading branch information
Showing
32 changed files
with
279 additions
and
176 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,181 @@ | ||
name: "Build" | ||
on: [push, workflow_dispatch] | ||
jobs: | ||
build: | ||
test: | ||
runs-on: ubuntu-latest | ||
if: github.event_name == 'push' && contains(toJson(github.event.commits), '[ci skip]') == false && contains(toJson(github.event.commits), '[skip ci]') == false | ||
steps: | ||
- name: "Checkout" | ||
uses: actions/checkout@v2 | ||
- name: "Setup Java" | ||
uses: actions/setup-java@v1 | ||
with: | ||
java-version: 8 | ||
java-version: 11 | ||
- name: "Setup Clojure" | ||
uses: DeLaGuardo/setup-clojure@master | ||
with: | ||
cli: "1.10.1.697" | ||
- name: "Clojure Tests" | ||
run: clojure -A:dev:test | ||
- name: "Install Node Dependencies" | ||
run: npm install | ||
- name: "ClojureScript Tests" | ||
run: clojure -A:dev:test-cljs | ||
uberjar: | ||
needs: [test] | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: "Checkout" | ||
uses: actions/checkout@v2 | ||
- name: "Setup Java" | ||
uses: actions/setup-java@v1 | ||
with: | ||
java-version: 11 | ||
- name: "Setup Clojure" | ||
uses: DeLaGuardo/setup-clojure@master | ||
with: | ||
cli: "1.10.1.697" | ||
- name: "Clojure Tests" | ||
run: clojure -A:dev:test | ||
- name: "Uberjar" | ||
run: clojure -A:uberjar | ||
- name: "Smoke Test" | ||
run: | | ||
java -jar target/dj-data-converter-SNAPSHOT-standalone.jar -h | ||
java -jar target/dj-data-converter-SNAPSHOT-standalone.jar test-resources/collection.nml | ||
java -jar target/dj-data-converter-SNAPSHOT-standalone.jar test-resources/rekordbox.xml | ||
- name: "Upload" | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: dj-data-converter-standalone | ||
path: target/dj-data-converter-SNAPSHOT-standalone.jar | ||
native-image-linux: | ||
needs: [uberjar] | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: "Checkout" | ||
uses: actions/checkout@v2 | ||
- name: "Setup GraalVM" | ||
uses: DeLaGuardo/setup-graalvm@3 | ||
with: | ||
graalvm-version: "20.2.0.java11" | ||
- name: "Install GraalVM Native Image Deps" | ||
run: | | ||
sudo apt -y update | ||
sudo apt -y install gcc libc6-dev zlib1g-dev libstdc++-8-dev | ||
- name: "Install GraalVM Native Image" | ||
run: gu install native-image | ||
- name: "Download" | ||
uses: actions/download-artifact@v2 | ||
with: | ||
name: dj-data-converter-standalone | ||
- name: "Native Image" | ||
run: native-image --verbose --no-server --no-fallback --allow-incomplete-classpath --report-unsupported-elements-at-runtime --initialize-at-build-time -J-Xmx8g -jar dj-data-converter-SNAPSHOT-standalone.jar -H:Name=dj-data-converter | ||
- name: "Smoke Test" | ||
run: | | ||
chmod +x dj-data-converter | ||
./dj-data-converter -h | ||
- name: "Package" | ||
run: tar -czvf dj-data-converter-linux.tar.gz dj-data-converter | ||
- name: "Publish" | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: dj-data-converter-linux | ||
path: dj-data-converter-linux.tar.gz | ||
native-image-windows: | ||
needs: [uberjar] | ||
runs-on: windows-latest | ||
steps: | ||
- name: "Setup GraalVM" | ||
uses: DeLaGuardo/setup-graalvm@3 | ||
with: | ||
graalvm-version: "20.2.0.java11" | ||
- name: "Install GraalVM Native Image" | ||
run: C:\hostedtoolcache\windows\GraalVM\20.2.0-java11\x64\bin\gu install native-image | ||
- name: "Install Visual C Build Tools Workload for Visual Studio 2017" | ||
run: choco install visualstudio2017-workload-vctools | ||
- name: "Download" | ||
uses: actions/download-artifact@v2 | ||
with: | ||
name: dj-data-converter-standalone | ||
- name: "Native Image" | ||
shell: cmd | ||
run: | | ||
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvars64.bat" | ||
C:\hostedtoolcache\windows\GraalVM\20.2.0-java11\x64\bin\native-image --verbose --no-server --no-fallback --allow-incomplete-classpath --report-unsupported-elements-at-runtime --initialize-at-build-time -J-Xmx8g -jar dj-data-converter-SNAPSHOT-standalone.jar -H:Name=dj-data-converter | ||
- name: "Smoke Test" | ||
shell: cmd | ||
run: dj-data-converter.exe -h | ||
- name: "Package" | ||
run: 7z a dj-data-converter-win.zip dj-data-converter.exe | ||
- name: "Publish" | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: dj-data-converter-win | ||
path: dj-data-converter-win.zip | ||
native-image-mac: | ||
needs: [uberjar] | ||
runs-on: macos-latest | ||
steps: | ||
- name: "Checkout" | ||
uses: actions/checkout@v2 | ||
- name: "Setup GraalVM" | ||
uses: DeLaGuardo/setup-graalvm@3 | ||
with: | ||
graalvm-version: "20.2.0.java11" | ||
- name: "Install GraalVM Native Image" | ||
run: gu install native-image | ||
- name: "Download" | ||
uses: actions/download-artifact@v2 | ||
with: | ||
name: dj-data-converter-standalone | ||
- name: "Native Image" | ||
run: native-image --verbose --no-server --no-fallback --allow-incomplete-classpath --report-unsupported-elements-at-runtime --initialize-at-build-time -J-Xmx8g -jar dj-data-converter-SNAPSHOT-standalone.jar -H:Name=dj-data-converter | ||
- name: "Smoke Test" | ||
run: | | ||
chmod +x dj-data-converter | ||
./dj-data-converter -h | ||
- name: "Package" | ||
run: tar -czvf dj-data-converter-macos.tar.gz dj-data-converter | ||
- name: "Publish" | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: dj-data-converter-macos | ||
path: dj-data-converter-macos.tar.gz | ||
release: | ||
needs: [native-image-linux, native-image-windows, native-image-mac] | ||
runs-on: ubuntu-latest | ||
if: success() && contains(github.ref, 'refs/tags/') | ||
steps: | ||
- name: "Download" | ||
uses: actions/download-artifact@v2 | ||
- name: "Release" | ||
uses: actions/create-release@v1 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
with: | ||
tag_name: ${{ github.ref }} | ||
release_name: ${{ github.ref }} | ||
draft: true | ||
prerelease: false | ||
- name: "Upload" | ||
uses: actions/upload-release-asset@v1 | ||
with: | ||
upload_url: ${{ steps.create_release.outputs.upload_url }} | ||
asset_path: dj-data-converter-linux/dj-data-converter-linux.tar.gz | ||
asset_name: dj-data-converter-linux.tar.gz | ||
asset_content_type: application/gzip | ||
- name: "Upload" | ||
uses: actions/upload-release-asset@v1 | ||
with: | ||
upload_url: ${{ steps.create_release.outputs.upload_url }} | ||
asset_path: dj-data-converter-win/dj-data-converter-win.zip | ||
asset_name: dj-data-converter-win.zip | ||
asset_content_type: application/zip | ||
- name: "Upload" | ||
uses: actions/upload-release-asset@v1 | ||
with: | ||
upload_url: ${{ steps.create_release.outputs.upload_url }} | ||
asset_path: dj-data-converter-macos/dj-data-converter-macos.tar.gz | ||
asset_name: dj-data-converter-macos.tar.gz | ||
asset_content_type: application/gzip |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,5 @@ | ||
{:output-to "out/cli.js" | ||
{:output-dir "out" | ||
:output-to "out/cli.js" | ||
:target :nodejs | ||
:optimizations :simple | ||
:source-map "out/cli.js.map"} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.