Skip to content

Commit

Permalink
Merge pull request #2 from maxkratz/feature/adapt-ci-to-neo
Browse files Browse the repository at this point in the history
Include changes to support eMoflon::Neo
  • Loading branch information
maxkratz committed Nov 9, 2022
2 parents c822eb6 + 65ecde2 commit ea57bac
Show file tree
Hide file tree
Showing 6 changed files with 26 additions and 317 deletions.
280 changes: 1 addition & 279 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -126,39 +126,6 @@ jobs:
name: eclipse-emoflon-linux-user
path: eclipse-emoflon-linux-user.zip

# Build Eclipse eMoflon Linux dev
build-linux-dev:
needs: [create-splash-image, collect-github-api-artifacts]
runs-on: [ubuntu-20.04]
steps:
- name: Start message
run: echo "Started CI build (Eclipse eMoflon Linux dev)."
- name: Check out repository code
uses: actions/checkout@v2
- name: Download splash image
uses: actions/download-artifact@v2
with:
name: splash.bmp
- name: Download emoflon-headless updatesite
uses: actions/download-artifact@v2
with:
name: emoflon-headless-updatesite.zip
- name: Move emoflon-headless updatesite
run: |
mkdir -p ./tmp/emoflon-headless
mv emoflon-headless-updatesite.zip ./tmp/emoflon-headless/updatesite.zip
- name: Download Eclipse import plugin JAR
uses: actions/download-artifact@v2
with:
name: com.seeq.eclipse.importprojects.jar
- name: Run build script
run: chmod +x build.sh && ./build.sh -m dev -o linux
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: eclipse-emoflon-linux-dev
path: eclipse-emoflon-linux-dev.zip

# Build Eclipse eMoflon Linux user CI
build-linux-user-ci:
needs: [collect-github-api-artifacts]
Expand Down Expand Up @@ -190,70 +157,6 @@ jobs:
name: eclipse-emoflon-linux-user-ci
path: eclipse-emoflon-linux-user-ci.zip

# Build Eclipse eMoflon Linux dev CI
build-linux-dev-ci:
needs: [collect-github-api-artifacts]
runs-on: [ubuntu-20.04]
steps:
- name: Start message
run: echo "Started CI build (Eclipse eMoflon Linux dev CI)."
- name: Check out repository code
uses: actions/checkout@v2
- name: Download emoflon-headless updatesite
uses: actions/download-artifact@v2
with:
name: emoflon-headless-updatesite.zip
- name: Move emoflon-headless updatesite
run: |
mkdir -p ./tmp/emoflon-headless
mv emoflon-headless-updatesite.zip ./tmp/emoflon-headless/updatesite.zip
- name: Download Eclipse import plugin JAR
uses: actions/download-artifact@v2
with:
name: com.seeq.eclipse.importprojects.jar
- name: Run build script
run: chmod +x build.sh && ./build.sh -m dev -o linux --skip-theme
- name: Rename ZIP archive
run: mv eclipse-emoflon-linux-dev.zip eclipse-emoflon-linux-dev-ci.zip
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: eclipse-emoflon-linux-dev-ci
path: eclipse-emoflon-linux-dev-ci.zip

# Build Eclipse eMoflon Linux dev HiPE
build-linux-dev-hipe:
needs: [create-splash-image, collect-github-api-artifacts]
runs-on: [ubuntu-20.04]
steps:
- name: Start message
run: echo "Started CI build (Eclipse eMoflon Linux dev HiPE)."
- name: Check out repository code
uses: actions/checkout@v2
- name: Download splash image
uses: actions/download-artifact@v2
with:
name: splash.bmp
- name: Download emoflon-headless updatesite
uses: actions/download-artifact@v2
with:
name: emoflon-headless-updatesite.zip
- name: Move emoflon-headless updatesite
run: |
mkdir -p ./tmp/emoflon-headless
mv emoflon-headless-updatesite.zip ./tmp/emoflon-headless/updatesite.zip
- name: Download Eclipse import plugin JAR
uses: actions/download-artifact@v2
with:
name: com.seeq.eclipse.importprojects.jar
- name: Run build script
run: chmod +x build.sh && ./build.sh -m hipedev -o linux
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: eclipse-emoflon-linux-dev-hipe
path: eclipse-emoflon-linux-dev-hipe.zip

# Build Eclipse eMoflon macOS user
build-macos-user:
needs: [create-splash-image, collect-github-api-artifacts]
Expand Down Expand Up @@ -293,84 +196,6 @@ jobs:
name: eclipse-emoflon-macos-user
path: eclipse-emoflon-macos-user.zip

# Build Eclipse eMoflon macOS dev
build-macos-dev:
needs: [create-splash-image, collect-github-api-artifacts]
runs-on: [macos-latest]
steps:
- name: Start message
run: echo "Started CI build (Eclipse eMoflon macOS dev)."
- name: Install dependencies
run: |
brew update
brew install p7zip coreutils grep wget curl
- name: Check out repository code
uses: actions/checkout@v2
- name: Download splash image
uses: actions/download-artifact@v2
with:
name: splash.bmp
- name: Download emoflon-headless updatesite
uses: actions/download-artifact@v2
with:
name: emoflon-headless-updatesite.zip
- name: Move emoflon-headless updatesite
run: |
mkdir -p ./tmp/emoflon-headless
mv emoflon-headless-updatesite.zip ./tmp/emoflon-headless/updatesite.zip
- name: Download Eclipse import plugin JAR
uses: actions/download-artifact@v2
with:
name: com.seeq.eclipse.importprojects.jar
- name: Run build script
run: chmod +x build.sh && ./build.sh -m dev -o macos
- name: Fix permissions
run: sudo xattr -cr ./eclipse/Eclipse.app
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: eclipse-emoflon-macos-dev
path: eclipse-emoflon-macos-dev.zip

# Build Eclipse eMoflon macOS dev HiPE
build-macos-dev-hipe:
needs: [create-splash-image, collect-github-api-artifacts]
runs-on: [macos-latest]
steps:
- name: Start message
run: echo "Started CI build (Eclipse eMoflon macOS dev HiPE)."
- name: Install dependencies
run: |
brew update
brew install p7zip coreutils grep wget curl
- name: Check out repository code
uses: actions/checkout@v2
- name: Download splash image
uses: actions/download-artifact@v2
with:
name: splash.bmp
- name: Download emoflon-headless updatesite
uses: actions/download-artifact@v2
with:
name: emoflon-headless-updatesite.zip
- name: Move emoflon-headless updatesite
run: |
mkdir -p ./tmp/emoflon-headless
mv emoflon-headless-updatesite.zip ./tmp/emoflon-headless/updatesite.zip
- name: Download Eclipse import plugin JAR
uses: actions/download-artifact@v2
with:
name: com.seeq.eclipse.importprojects.jar
- name: Run build script
run: chmod +x build.sh && ./build.sh -m hipedev -o macos
- name: Fix permissions
run: sudo xattr -cr ./eclipse/Eclipse.app
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: eclipse-emoflon-macos-dev-hipe
path: eclipse-emoflon-macos-dev-hipe.zip

# Build Eclipse eMoflon Windows user
build-windows-user:
needs: [create-splash-image, collect-github-api-artifacts]
Expand Down Expand Up @@ -415,97 +240,9 @@ jobs:
name: eclipse-emoflon-windows-user
path: eclipse-emoflon-windows-user.zip

# Build Eclipse eMoflon Windows dev
build-windows-dev:
needs: [create-splash-image, collect-github-api-artifacts]
runs-on: [windows-2022]
steps:
- name: Start message
run: echo "Started CI build (Eclipse eMoflon Windows dev)."
- name: Install dependencies
run: |
choco install wget curl unzip zip --no-progress
- name: Install correct Java version
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '16'
- name: Fix Git line endings
run: git config --global core.autocrlf input
- name: Check out repository code
uses: actions/checkout@v2
- name: Download splash image
uses: actions/download-artifact@v2
with:
name: splash.bmp
- name: Download emoflon-headless updatesite
uses: actions/download-artifact@v2
with:
name: emoflon-headless-updatesite.zip
- name: Move emoflon-headless updatesite
run: |
mkdir -p ./tmp/emoflon-headless
mv emoflon-headless-updatesite.zip ./tmp/emoflon-headless/updatesite.zip
- name: Download Eclipse import plugin JAR
uses: actions/download-artifact@v2
with:
name: com.seeq.eclipse.importprojects.jar
- name: Run build script
run: |
bash ./build.sh -m dev -o windows
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: eclipse-emoflon-windows-dev
path: eclipse-emoflon-windows-dev.zip

# Build Eclipse eMoflon Windows dev HiPE
build-windows-dev-hipe:
needs: [create-splash-image, collect-github-api-artifacts]
runs-on: [windows-2022]
steps:
- name: Start message
run: echo "Started CI build (Eclipse eMoflon Windows dev HiPE)."
- name: Install dependencies
run: |
choco install wget curl unzip zip --no-progress
- name: Install correct Java version
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '16'
- name: Fix Git line endings
run: git config --global core.autocrlf input
- name: Check out repository code
uses: actions/checkout@v2
- name: Download splash image
uses: actions/download-artifact@v2
with:
name: splash.bmp
- name: Download emoflon-headless updatesite
uses: actions/download-artifact@v2
with:
name: emoflon-headless-updatesite.zip
- name: Move emoflon-headless updatesite
run: |
mkdir -p ./tmp/emoflon-headless
mv emoflon-headless-updatesite.zip ./tmp/emoflon-headless/updatesite.zip
- name: Download Eclipse import plugin JAR
uses: actions/download-artifact@v2
with:
name: com.seeq.eclipse.importprojects.jar
- name: Run build script
run: |
bash ./build.sh -m hipedev -o windows
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: eclipse-emoflon-windows-dev-hipe
path: eclipse-emoflon-windows-dev-hipe.zip

# Create a release if running on tag
create-release:
needs: [build-linux-user, build-linux-dev, build-linux-user-ci, build-linux-dev-ci, build-linux-dev-hipe, build-macos-user, build-macos-dev, build-macos-dev-hipe, build-windows-user, build-windows-dev, build-windows-dev-hipe]
needs: [build-linux-user, build-linux-user-ci, build-macos-user, build-windows-user]
runs-on: [ubuntu-20.04]
# Only run on pushed tags (and explicitely ignore scheduled runs)
if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') && github.event_name != 'schedule'
Expand All @@ -517,33 +254,18 @@ jobs:
with:
files: |
eclipse-emoflon-linux-user/eclipse-emoflon-linux-user.zip
eclipse-emoflon-linux-dev/eclipse-emoflon-linux-dev.zip
- name: Release eclipse-emoflon-macos
uses: softprops/action-gh-release@v1
with:
files: |
eclipse-emoflon-macos-user/eclipse-emoflon-macos-user.zip
eclipse-emoflon-macos-dev/eclipse-emoflon-macos-dev.zip
- name: Release eclipse-emoflon-linux-ci
uses: softprops/action-gh-release@v1
with:
files: |
eclipse-emoflon-linux-user-ci/eclipse-emoflon-linux-user-ci.zip
eclipse-emoflon-linux-dev-ci/eclipse-emoflon-linux-dev-ci.zip
- name: Release eclipse-emoflon-windows
uses: softprops/action-gh-release@v1
with:
files: |
eclipse-emoflon-windows-user/eclipse-emoflon-windows-user.zip
eclipse-emoflon-windows-dev/eclipse-emoflon-windows-dev.zip
- name: Release eclipse-emoflon-dev-hipe-1
uses: softprops/action-gh-release@v1
with:
files: |
eclipse-emoflon-linux-dev-hipe/eclipse-emoflon-linux-dev-hipe.zip
eclipse-emoflon-windows-dev-hipe/eclipse-emoflon-windows-dev-hipe.zip
- name: Release eclipse-emoflon-dev-hipe-2
uses: softprops/action-gh-release@v1
with:
files: |
eclipse-emoflon-macos-dev-hipe/eclipse-emoflon-macos-dev-hipe.zip
31 changes: 11 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,16 @@
# eMoflon::IBeX Eclipse Build
# eMoflon::Neo Eclipse Build

[![Build Eclipse eMoflon::IBeX](https://github.com/eMoflon/emoflon-ibex-eclipse-build/actions/workflows/ci.yml/badge.svg?branch=main&event=push)](https://github.com/eMoflon/emoflon-ibex-eclipse-build/actions/workflows/ci.yml)
[![Build Eclipse eMoflon](https://github.com/maxkratz/emoflon-neo-eclipse-build/actions/workflows/ci.yml/badge.svg?branch=main&event=push)](https://github.com/maxkratz/emoflon-neo-eclipse-build/actions/workflows/ci.yml)

This repository is used to automatically build an Eclipse [eMoflon::IBeX](https://github.com/eMoflon/emoflon-ibex) environment.
This repository is used to automatically build an Eclipse [eMoflon::Neo](https://github.com/eMoflon/emoflon-neo) environment.

| Name | OS | eMoflon installed | Dark theme installed | Splash image | Pattern matcher | Additional packages |
|--------------------------|---------|--------------------|----------------------|--------------------|-----------------|---------------------|
| Eclipse eMoflon user | Linux | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | HiPE | :heavy_check_mark: |
| Eclipse eMoflon dev | Linux | | :heavy_check_mark: | :heavy_check_mark: | HiPE, *) | :heavy_check_mark: |
| Eclipse eMoflon user CI | Linux | :heavy_check_mark: | | | HiPE | |
| Eclipse eMoflon dev CI | Linux | | | | HiPE, *) | |
| Eclipse eMoflon dev HiPE | Linux | | :heavy_check_mark: | :heavy_check_mark: | *) | :heavy_check_mark: |
| Eclipse eMoflon user | Windows | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | HiPE | :heavy_check_mark: |
| Eclipse eMoflon dev | Windows | | :heavy_check_mark: | :heavy_check_mark: | HiPE, *) | :heavy_check_mark: |
| Eclipse eMoflon dev HiPE | Windows | | :heavy_check_mark: | :heavy_check_mark: | *) | :heavy_check_mark: |
| Eclipse eMoflon user | macOS | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | HiPE | :heavy_check_mark: |
| Eclipse eMoflon dev | macOS | | :heavy_check_mark: | :heavy_check_mark: | HiPE, *) | :heavy_check_mark: |
| Eclipse eMoflon dev HiPE | macOS | | :heavy_check_mark: | :heavy_check_mark: | *) | :heavy_check_mark: |
| Name | OS | eMoflon installed | Dark theme installed | Splash image | Additional packages |
|--------------------------|---------|--------------------|----------------------|--------------------|---------------------|
| Eclipse eMoflon user | Linux | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| Eclipse eMoflon user CI | Linux | :heavy_check_mark: | | | |
| Eclipse eMoflon user | Windows | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| Eclipse eMoflon user | macOS | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |

*) Democles will be installed manually via the [emoflon-dev-workspace](https://github.com/eMoflon/emoflon-ibex#how-to-develop).
Furthermore, all pattern matcher integrations for eMoflon::IBeX (HiPE and Democles) will be installed manually via the [emoflon-ibex-dev-workspace](https://github.com/eMoflon/emoflon-ibex#how-to-develop).

**Additional packages** are installed for every non-CI build.
Currently, the list of additional packages includes:
Expand All @@ -34,11 +25,11 @@ Feel free to request others, e.g., via Github issues.
## Usage/Installation

Quick installation using curl and bash:
`$ FOLDER="$HOME/eclipse-apps/emt"; mkdir -p $FOLDER && cd $FOLDER && curl https://raw.githubusercontent.com/eMoflon/emoflon-ibex-eclipse-build/main/emoflon-update.sh | bash -s -- $FOLDER`
`$ FOLDER="$HOME/eclipse-apps/emt"; mkdir -p $FOLDER && cd $FOLDER && curl https://raw.githubusercontent.com/maxkratz/emoflon-neo-eclipse-build/main/emoflon-update.sh | bash -s -- $FOLDER`

### Normal installation

**The latest release can be found [here](https://github.com/eMoflon/emoflon-ibex-eclipse-build/releases/latest).**
**The latest release can be found [here](https://github.com/maxkratz/emoflon-neo-eclipse-build/releases/latest).**
Download an archive for the version you are looking for from the release page and extract it.

### Updating
Expand Down
Loading

0 comments on commit ea57bac

Please sign in to comment.