move dependencies in the right place #77
Workflow file for this run
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
name: CI | |
on: | |
push: | |
tags: ['*'] | |
pull_request: | |
permissions: | |
contents: write | |
jobs: | |
create-release: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Create Github Release | |
id: create_release | |
uses: actions/create-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tag_name: ${{ github.ref }} | |
release_name: ${{ github.ref }} | |
draft: false | |
prerelease: false | |
- name: Set env | |
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Checkout Course Management Tools Repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Set up JDK 11 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 11 | |
distribution: temurin | |
cache: 'sbt' | |
- name: Setup Coursier | |
run: | | |
curl -fLo coursier https://git.io/coursier-cli && | |
chmod +x coursier && | |
./coursier | |
- name: Publish Local | |
run: sbt publishLocal | |
- name: Package Binaries | |
run: | | |
mkdir -p course-management-tools/bin | |
./coursier bootstrap com.lunatech:cmta_3:${{ env.RELEASE_VERSION }} -o course-management-tools/bin/cmta --standalone --bat | |
./coursier bootstrap com.lunatech:cmtc_3:${{ env.RELEASE_VERSION }} -o course-management-tools/bin/cmtc --standalone --bat | |
zip -r course-management-tools.zip course-management-tools | |
# - run: sbt ci-release | |
# env: | |
# PGP_PASSPHRASE: ${{ secrets.PGP_PASSPHRASE }} | |
# PGP_SECRET: ${{ secrets.PGP_SECRET }} | |
# SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} | |
# SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }} | |
- name: Upload assets to Github release | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./course-management-tools.zip | |
asset_name: course-management-tools.zip | |
asset_content_type: application/zip | |
outputs: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
release: | |
needs: create-release | |
runs-on: [ "${{ matrix.os }}", "${{ needs.create-release.outputs.upload_url }}" ] | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ 'ubuntu-latest', 'macos-latest' ] | |
include: | |
- os: macOS-latest | |
uploaded_filename_cmta: cmta-x86_64-apple-darwin | |
local_path_cmta: cmta/target/native-image/cmta | |
uploaded_filename_cmtc: cmtc-x86_64-apple-darwin | |
local_path_cmtc: cmtc/target/native-image/cmtc | |
- os: ubuntu-latest | |
uploaded_filename_cmta: cmta-x86_64-pc-linux | |
local_path_cmta: cmta/target/native-image/cmta | |
uploaded_filename_cmtc: cmtc-x86_64-pc-linux | |
local_path_cmtc: cmtc/target/native-image/cmtc | |
# - os: windows-latest | |
# uploaded_filename_cmta: cmta-x86_64-pc-win32.exe | |
# local_path_cmta: cmta\target\native-image\cmta | |
# uploaded_filename_cmtc: cmtc-x86_64-pc-win32.exe | |
# local_path_cmtc: cmtc\target\native-image\cmtc | |
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/') | |
env: | |
# define Java options for both official sbt and sbt-extras | |
JAVA_OPTS: -Xms2048M -Xmx2048M -Xss6M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8 | |
JVM_OPTS: -Xms2048M -Xmx2048M -Xss6M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8 | |
steps: | |
- name: Setup Windows C++ toolchain | |
uses: ilammy/msvc-dev-cmd@v1 | |
if: ${{ matrix.os == 'windows-latest' }} | |
- name: cmta native image generation | |
shell: bash | |
run: | | |
echo $(pwd) | |
sbt cmta/nativeImage | |
(cd cmta/target/native-image ; zip -r cmta.zip cmta) | |
- name: cmtc native image generation | |
shell: bash | |
run: | | |
echo $(pwd) | |
sbt cmtc/nativeImage | |
(cd cmtc/target/native-image ; zip -r cmtc.zip cmtc) | |
- uses: actions/upload-artifact@v2 | |
with: | |
path: ${{ matrix.local_path_cmta }} | |
name: ${{ matrix.uploaded_filename_cmta }} | |
- uses: actions/upload-artifact@v2 | |
with: | |
path: ${{ matrix.local_path_cmtc }} | |
name: ${{ matrix.uploaded_filename_cmtc }} | |
- name: Upload release cmta native | |
uses: actions/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ needs.create-release.outputs.upload_url }} | |
asset_path: ${{ matrix.local_path_cmta }} | |
asset_name: ${{ matrix.uploaded_filename_cmta }} | |
asset_content_type: application/zip | |
- name: Upload release cmtc native | |
uses: actions/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ needs.create-release.outputs.upload_url }} | |
asset_path: ${{ matrix.local_path_cmtc }} | |
asset_name: ${{ matrix.uploaded_filename_cmtc }} | |
asset_content_type: application/zip |