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

Deprecate modelserver-jsonforms-property-view and migrate to GH workflows #53

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
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
57 changes: 57 additions & 0 deletions .github/workflows/build-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: CI

on:
pull_request:
paths:
- '.github/workflows/build-ci.yml'
- 'example/**'
- 'jsonforms-property-view/**'
- 'package.json'
- '!**/*.md'
push:
branches:
- main
paths:
- '.github/workflows/build-ci.yml'
- 'example/**'
- 'jsonforms-property-view/**'
- 'package.json'
- '!**/*.md'

permissions:
contents: read

jobs:
verify:
runs-on: ubuntu-latest
timeout-minutes: 30

steps:
- name: Checkout
uses: actions/checkout@v4.2.0

- name: Setup Node 20
uses: actions/setup-node@v4.0.4
with:
node-version: 20.x
registry-url: 'https://registry.npmjs.org'

- name: Install tools and libraries
run: sudo apt-get install -y build-essential libx11-dev libxkbfile-dev libsecret-1-dev

- name: Use Python 3.11
uses: actions/setup-python@v5.2.0
with:
python-version: '3.11'

- name: Install and Build
shell: bash
run: |
yarn global add node-gyp
yarn --skip-integrity-check --network-timeout 100000
env:
NODE_OPTIONS: --max_old_space_size=4096
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Lint with ESLint
run: yarn lint
61 changes: 61 additions & 0 deletions .github/workflows/publish-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: Publish JSONForms Property-View Packages

on:
workflow_run:
workflows: ['CI']
types: [completed]
branches: [main]

permissions:
contents: write
packages: write
id-token: write

jobs:
verify-and-publish:
runs-on: ubuntu-latest
timeout-minutes: 30
if: ${{ github.event.workflow_run.conclusion == 'success' }}

steps:
- name: Checkout Repository
uses: actions/checkout@v4.2.0
with:
fetch-depth: 0 # pulls all history and tags for Lerna to detect which packages changed

- name: Setup Node 20
uses: actions/setup-node@v4.0.4
with:
node-version: 20.x
registry-url: 'https://registry.npmjs.org'

- name: Install tools and libraries
run: sudo apt-get install -y build-essential libx11-dev libxkbfile-dev libsecret-1-dev

- name: Use Python 3.11
uses: actions/setup-python@v5.2.0
with:
python-version: '3.11'

- name: Install and Build
shell: bash
run: |
yarn global add node-gyp
yarn --skip-integrity-check --network-timeout 100000
env:
NODE_OPTIONS: --max_old_space_size=4096
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Lint with ESLint
run: yarn lint

# Publish the ModelHub packages. Ignore lifecycle scripts and add verbose logging
# Scripts are ignored because we build and lint before this step
- name: Publish packages
run: |
git config user.email 'eclipse-emfcloud-bot@eclipse.org'
git config user.name 'eclipse-emfcloud-bot'
yarn lerna publish -y --ignore-scripts --loglevel=verbose
env:
NPM_CONFIG_PROVENANCE: 'true'
NODE_AUTH_TOKEN: ${{ secrets.NPMJS_TOKEN }}
3 changes: 2 additions & 1 deletion .prettierrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,9 @@ module.exports = {
arrowParens: 'avoid',
overrides: [
{
files: '*.json',
files: ['*.json', '*.yaml', '*.yml'],
options: {
printWidth: 100,
tabWidth: 2
}
},
Expand Down
114 changes: 0 additions & 114 deletions Jenkinsfile

This file was deleted.

18 changes: 10 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# Eclipse EMF Cloud JSONForms property-view for Eclipse Theia applications
# Eclipse EMF Cloud JSONForms property-view for Eclipse Theia applications [![build-CI](https://img.shields.io/github/actions/workflow/status/eclipse-emfcloud/jsonforms-property-view/build-ci.yml?label=Build%20CI)](https://github.com/eclipse-emfcloud/jsonforms-property-view/actions/workflows/build-ci.yml)

[![Aim - Framework](https://img.shields.io/badge/Aim-Framework-brightgreen)](https://github.com/eclipsesource/.github/blob/main/repository-classification.md)
[![Project - Maintenance](https://img.shields.io/badge/Project-Maintenance-872ea4)](https://github.com/eclipsesource/.github/blob/main/repository-classification.md)
![build-status](https://img.shields.io/jenkins/build?jobUrl=https://ci.eclipse.org/emfcloud/job/eclipse-emfcloud/job/jsonforms-property-view/job/master/)
[![License: EPL v2.0](https://img.shields.io/badge/License-EPL%20v2.0-yellow.svg)](https://www.eclipse.org/legal/epl-2.0/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

Expand All @@ -14,10 +13,9 @@ For more information, please visit the [EMF Cloud Website](https://www.eclipse.o

If you are interested in adopting this framework for your product or enhancing its feature spectrum, please get in contact with us using the [discussions forum](https://github.com/eclipse-emfcloud/emfcloud/discussions) and have a look at our [support options](https://www.eclipse.org/emfcloud/contact/)!

## Available via NPM ![build-status-server](https://img.shields.io/jenkins/build?jobUrl=https://ci.eclipse.org/emfcloud/job/deploy-jsonforms-property-view-npm/&label=publish)
## Available via NPM [![publish-CI](https://img.shields.io/github/actions/workflow/status/eclipse-emfcloud/jsonforms-property-view/publish-ci.yml?label=Publish%20CI)](https://github.com/eclipse-emfcloud/jsonforms-property-view/actions/workflows/publish-ci.yml)

- <https://www.npmjs.com/package/@eclipse-emfcloud/jsonforms-property-view>
- <https://www.npmjs.com/package/@eclipse-emfcloud/modelserver-jsonforms-property-view>
- [`@eclipse-emfcloud/jsonforms-property-view`](https://www.npmjs.com/package/@eclipse-emfcloud/jsonforms-property-view)

## Project structure

Expand All @@ -26,13 +24,17 @@ If you are interested in adopting this framework for your product or enhancing i
This package provides a framework to integrate a form-based property-view using JSONForms in an Eclipse Theia application.
For more details on the Eclipse Theia property-view please visit the `@theia/property-view` [documentation](https://github.com/eclipse-theia/theia/tree/master/packages/property-view).

### [`example/person-detail-property-view`](./example/person-detail-property-view)

This basic development example uses the jsonforms-property-view in a minimal Eclipse Theia browser application.

### [`@eclipse-emfcloud/modelserver-jsonforms-property-view`](./modelserver-jsonforms-property-view/README.md)

This package provides a [Model Server](https://github.com/eclipse-emfcloud/emfcloud-modelserver) aware version of the jsonforms-property-view.
#### :warning: **This package is no longer actively maintained and is kept here as a demo.**

### [`example/person-detail-property-view`](./example/person-detail-property-view)
It is not part of the default workspace anymore and not built automatically anymore.

This basic development example uses the jsonforms-property-view in a minimal Eclipse Theia browser application.
This package provides a [Model Server](https://github.com/eclipse-emfcloud/emfcloud-modelserver) aware version of the jsonforms-property-view.

## Preview

Expand Down
2 changes: 1 addition & 1 deletion example/browser-app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"@theia/property-view": "1.52.0",
"@theia/terminal": "1.52.0",
"@theia/workspace": "1.52.0",
"@eclipse-emfcloud/person-detail-property-view": "0.7.0"
"@eclipse-emfcloud/person-detail-property-view": "*"
},
"devDependencies": {
"@theia/cli": "1.52.0"
Expand Down
2 changes: 1 addition & 1 deletion example/person-detail-property-view/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"src"
],
"dependencies": {
"@eclipse-emfcloud/jsonforms-property-view": "0.7.0",
"@eclipse-emfcloud/jsonforms-property-view": "*",
"@jsonforms/core": "^3.4.0",
"@jsonforms/react": "^3.4.0",
"@jsonforms/vanilla-renderers": "^3.4.0"
Expand Down
2 changes: 1 addition & 1 deletion jsonforms-property-view/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@eclipse-emfcloud/jsonforms-property-view",
"version": "0.7.0",
"version": "0.8.0",
"description": "Theia extension for a generic JSONForms property view",
"license": "(EPL-2.0 OR MIT)",
"publishConfig": {
Expand Down
16 changes: 12 additions & 4 deletions lerna.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,22 @@
{
"version": "0.7.0",
"version": "independent",
"npmClient": "yarn",
"command": {
"run": {
"stream": true
},
"version": {
"message": "chore: publish jsonforms-property-view package",
"conventionalCommits": true,
"changelog": false,
"exact": true,
"includeMergedTags": true,
"private": false
},
"publish": {
"forcePublish": true,
"skipGit": true,
"npmClient": "npm",
"registry": "https://registry.npmjs.org/"
}
}
},
"ignoreChanges": ["**/*.md", "**/*.spec.ts", "**/*.spec.tsx"]
}
2 changes: 2 additions & 0 deletions modelserver-jsonforms-property-view/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# ModelServer aware JSONForms property-view for Eclipse Theia applications

## :warning: **This package is no longer actively maintained and is kept here as a demo.**

This package provides a [Model Server](https://github.com/eclipse-emfcloud/emfcloud-modelserver) aware version of the `@eclipse-emfcloud/jsonforms-property-view`.

For more information, please visit the [EMF Cloud Website](https://www.eclipse.org/emfcloud/).
Expand Down
5 changes: 1 addition & 4 deletions modelserver-jsonforms-property-view/package.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
{
"name": "@eclipse-emfcloud/modelserver-jsonforms-property-view",
"version": "0.7.0",
"description": "Theia extension for a modelserver aware JSONForms property view",
"description": "DEPRECATED: Theia extension for a modelserver aware JSONForms property view",
"license": "(EPL-2.0 OR MIT)",
"publishConfig": {
"access": "public"
},
"keywords": [
"theia-extension",
"property-view",
Expand Down
9 changes: 2 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,9 @@
"prepare": "lerna run prepare",
"watch": "lerna run --parallel watch",
"build": "lerna run build",
"lint": "lerna run lint --",
"lint": "lerna run lint -- --max-warnings 0",
"lint:fix": "yarn lint -fix",
"lint:ci": "yarn lint -o eslint.xml -f checkstyle",
"start": "yarn --cwd example/browser-app start",
"publish:prepare": "lerna version --no-private --ignore-scripts --yes --no-push",
"publish:latest": "lerna publish from-git --no-git-reset --no-git-tag-version --no-verify-access --ignore-scripts --no-push",
"publish:next": "SHA=$(git rev-parse --short HEAD) && lerna publish preminor --exact --canary --preid next.${SHA} --dist-tag next --no-git-reset --no-git-tag-version --no-push --ignore-scripts --yes --no-verify-access"
"start": "yarn --cwd example/browser-app start"
},
"devDependencies": {
"@typescript-eslint/eslint-plugin": "^5.4.0",
Expand All @@ -36,7 +32,6 @@
},
"workspaces": [
"jsonforms-property-view",
"modelserver-jsonforms-property-view",
"example/browser-app",
"example/person-detail-property-view"
]
Expand Down
Loading