Skip to content

Commit

Permalink
Revert "Revert "Revert "Merge branch 'workflow_amis_form' into 2.4"""
Browse files Browse the repository at this point in the history
This reverts commit 2991881.
  • Loading branch information
Byran committed Apr 6, 2023
1 parent 2991881 commit 6af4954
Show file tree
Hide file tree
Showing 89 changed files with 2,911 additions and 2,294 deletions.
51 changes: 51 additions & 0 deletions .github/ISSUE_TEMPLATE/--bug-report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: 🐞 Bug report 错误报告
description: Create a bug report to help us improve Steedos. 填写bug报告,帮助我们改进华炎魔方。
title: "[Bug]: "
labels: [bug, needs triaging]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
感谢您填写此bug报告!
# - type: checkboxes
# attributes:
# label: Is there an existing issue for this? 是否已有相关Issue?
# options:
# - label: I have searched the existing issues. 我已经搜索过相关Issue。
# required: true
- type: textarea
attributes:
label: Description
description: |
A concise description of what you're experiencing and what you expect.
请详细描述你遇到的问题和预期的效果。
placeholder: |
When I do <X>, <Y> happens and I see the error message attached below:
```...```
What I expect is <Z>
validations:
required: true
- type: textarea
attributes:
label: Steps To Reproduce 重现步骤
description: |
Add steps to reproduce this behaviour, include console / network logs & videos.
请描述重现此问题的具体步骤,包括服务端和和浏览器日志,最好能提供截图或视频。
placeholder: |
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
validations:
required: true
- type: input
id: version
attributes:
label: Version 版本
description: |
The version of your Steedos Platform Instance.
您当前使用的华炎魔方版本号。
placeholder: "Cloud / Self Hosted - 2.4.3"
validations:
required: true
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/--feature-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: 🛠️ Feature request 功能需求
description: Suggest an idea to improve Steedos. 提出您的改进建议,帮助我们改进华炎魔方。
title: "[Feature]: "
labels: [new feature]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to request a feature for Steedos! 感谢您填写华炎魔方功能需求表单!
# - type: checkboxes
# attributes:
# label: Is there an existing issue for this? 你是否已经搜索过类似的需求?
# description: Please search to see if an issue related to this feature request already exists. 请搜索是否已经有用户提出过类似的需求。
# options:
# - label: I have searched the existing issues. 我已经搜索过了。
# required: true
- type: textarea
attributes:
label: Summary 摘要
description: One paragraph description of the feature. 请简单描述您的需求。
validations:
required: true
- type: textarea
attributes:
label: Why should this be worked on? 此需求的应用场景?
description: A concise description of the problems or use cases for this feature request. 请详细描述您遇到的问题已经如果通过新功能解决这个问题。
validations:
required: true
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/--task.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: 📝 Task 任务
description: Create a task for the team to work on 创建开发任务
title: "[Task]: "
labels: [Task]
body:
# - type: checkboxes
# attributes:
# label: Is there an existing issue for this? 你是否已经搜索过类似的任务?
# description: Please search to see if an issue related to this feature request already exists. 请搜索是否已经有用户提出过类似的任务。
# options:
# - label: I have searched the existing issues. 我已经搜索过了。
# required: true
- type: textarea
attributes:
label: SubTasks 子任务
placeholder: |
- Sub Task 1
- Sub Task 2
validations:
required: false
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: 🤔 Questions and Help 问题咨询和讨论
url: https://github.com/orgs/steedos/discussions
about: Reach out to us github discussions page. 请访问 Github Discussions 页面
- name: 📞 Contact us 联系我们
url: https://console.steedos.cn/api/files/images/YRgRK94fwndMxMcjM
about: 使用微信扫码加入开发者服务群,或是咨询商务问题。
91 changes: 61 additions & 30 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,25 +36,31 @@ jobs:
echo "ref_branch: ${{ steps.branch-name.outputs.ref_branch }}"
- name: Check valid branch
if: ${{ !startsWith(steps.branch-name.outputs.tag, '2.1') && !startsWith(steps.branch-name.outputs.tag, '2.2') && !startsWith(steps.branch-name.outputs.tag, '2.3') && !startsWith(steps.branch-name.outputs.tag, '2.4') }}
if: ${{ !startsWith(steps.branch-name.outputs.tag, '2.') }}
run: exit 1

- name: Merge 2.4 -> master
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.4') }}
uses: devmasx/merge-branch@master
with:
type: now
from_branch: 2.4
target_branch: master
github_token: ${{ github.token }}

# checkout branch 2.6
- name: Checkout branch 2.6
uses: actions/checkout@v2
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.6') }}
with:
ref: '2.6'

# checkout branch master(2.4)
- name: Checkout branch master(2.4)
# checkout branch 2.5
- name: Checkout branch 2.5
uses: actions/checkout@v2
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.5') }}
with:
ref: '2.5'

# checkout branch 2.4
- name: Checkout branch 2.4
uses: actions/checkout@v2
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.4') }}
with:
ref: 'master'
ref: '2.4'

# checkout branch 2.3
- name: Checkout branch 2.3
uses: actions/checkout@v2
Expand Down Expand Up @@ -82,10 +88,6 @@ jobs:
node-version: ${{ matrix.node-version }}
cache: "yarn"

# - name: Lerna version
# run: |
# lerna version ${{ steps.branch-name.outputs.tag }} --no-git-tag-version --force-publish --exact --yes

- run: yarn --frozen-lockfile

- name: Bootstrap platform
Expand Down Expand Up @@ -139,42 +141,71 @@ jobs:
env:
CI: false
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}

- name: Lerna publish beta
if: ${{ steps.version.outputs.is_stable != 'true' }}


- name: Lerna publish 2.4
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.4') && steps.version.outputs.is_stable == 'true' }}
run: |
git config user.name github-actions
git config user.email github-actions@github.com
npm config set //registry.npmjs.org/:_authToken=$NODE_AUTH_TOKEN
lerna publish ${{ steps.branch-name.outputs.tag }} --no-git-tag-version --no-git-reset --force-publish --exact --yes --dist-tag beta
lerna publish ${{ steps.branch-name.outputs.tag }} --no-git-tag-version --no-git-reset --force-publish --exact --yes
git add .
git commit -m "action: release ${{ steps.branch-name.outputs.tag }}"
git push
env:
CI: false
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}

- name: Lerna publish 2.4
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.4') && steps.version.outputs.is_stable == 'true' }}
- name: Lerna publish 2.5
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.5') && steps.version.outputs.is_stable == 'true' }}
run: |
git config user.name github-actions
git config user.email github-actions@github.com
npm config set //registry.npmjs.org/:_authToken=$NODE_AUTH_TOKEN
lerna publish ${{ steps.branch-name.outputs.tag }} --no-git-tag-version --no-git-reset --force-publish --exact --yes
lerna publish ${{ steps.branch-name.outputs.tag }} --no-git-tag-version --no-git-reset --force-publish --exact --yes --dist-tag next
git add .
git commit -m "action: release ${{ steps.branch-name.outputs.tag }}"
git push
env:
CI: false
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}

- name: Merge master -> 2.4

- name: Lerna publish 2.6
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.6') && steps.version.outputs.is_stable == 'true' }}
run: |
git config user.name github-actions
git config user.email github-actions@github.com
npm config set //registry.npmjs.org/:_authToken=$NODE_AUTH_TOKEN
lerna publish ${{ steps.branch-name.outputs.tag }} --no-git-tag-version --no-git-reset --force-publish --exact --yes --dist-tag next
git add .
git commit -m "action: release ${{ steps.branch-name.outputs.tag }}"
git push
env:
CI: false
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}

- name: Lerna publish beta
if: ${{ steps.version.outputs.is_stable != 'true' }}
run: |
git config user.name github-actions
git config user.email github-actions@github.com
npm config set //registry.npmjs.org/:_authToken=$NODE_AUTH_TOKEN
lerna publish ${{ steps.branch-name.outputs.tag }} --no-git-tag-version --no-git-reset --force-publish --exact --yes --dist-tag beta
git add .
git commit -m "action: release ${{ steps.branch-name.outputs.tag }}"
git push
env:
CI: false
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}

- name: Merge 2.4 -> master
if: ${{ startsWith(steps.branch-name.outputs.tag, '2.4') }} # && steps.version.outputs.is_stable == 'true'}}
uses: devmasx/merge-branch@master
with:
type: now
from_branch: master
target_branch: 2.4
from_branch: 2.4
target_branch: master
github_token: ${{ github.token }}

- name: Sleep 120s, wait for npm cache
Expand All @@ -183,7 +214,7 @@ jobs:
time: 120s

- name: Create Docker Release
# if: steps.version.outputs.is_stable == 'true'
if: steps.version.outputs.is_stable == 'true'
id: create_release
uses: actions/create-release@v1
env:
Expand Down
81 changes: 61 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,42 +23,83 @@
🤖 🎨 🚀
</h3>

## Salesforce 开源替代方案
## 可视化设计微页面

- [Saleforce Lightning](https://developer.salesforce.com/docs/component-library/documentation/en/lwc): 实现[华炎魔方微页面](https://www.steedos.cn/docs/amis/start),基于[百度Amis](https://aisuda.bce.baidu.com/amis/zh-CN/components),扩展开发面向业务模型的动态组件,并提供可视化设计工具。
- [Salesforce Object](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_concepts.htm): 实现[可视化建模](https://www.steedos.cn/docs/admin/object),并开发配套的权限引擎、规则引擎、流程引擎、报表引擎,以及以上相关的可视化设计工具。
- [Salesforce Metadata](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_intro.htm)[元数据](https://www.steedos.cn/docs/protocol/metadata-object)是华炎魔方技术架构的核心。华炎魔方使用元数据定义对象,字段,配置,代码,逻辑和页面布局,并基于这些元数据自动生成系统的数据结构以及Steedos应用程序的用户界面和自动化逻辑。
- [Salesforce DX](https://developer.salesforce.com/developer-centers/developer-experience), 实现 [Steedos VSCode 插件](https://www.steedos.cn/docs/developer/sync-metadata),可视化工具设计的元数据可以和代码双向同步。
- [Salesforce Functions](https://developer.salesforce.com/docs/platform/functions/guide/dev-guide-intro.html):支持 [服务端开发](https://www.steedos.cn/docs/developer/getting-started),通过编写触发器、自定义API,实现任何需要的业务逻辑。
- [Salesforce Package](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_unlocked_pkg_whats_a_package.htm): 元数据以及自定义的代码组合成为 [Steedos 软件包](https://www.steedos.cn/docs/developer/package)。支持软件包的版本管理、发布、安装、个性化定制、版本升级、多包开发,并与现有 DevOps 方案融合。
基于[百度Amis](https://aisuda.bce.baidu.com/amis/zh-CN/components),扩展开发面向业务模型的动态组件,并提供可视化设计工具,实现[华炎魔方微页面](https://www.steedos.cn/docs/amis/start)。参考:[Saleforce Lightning](https://developer.salesforce.com/docs/component-library/documentation/en/lwc)

![微页面](https://console.steedos.cn/api/files/images/642166bd671028003e75f910)

## 快速向导
## 可视化创建业务对象

运行华炎魔方需要安装nodejs,mongodb,redis,建议使用 docker 启动远程开发环境
实现[可视化建模](https://www.steedos.cn/docs/admin/object),并开发配套的权限引擎、规则引擎、流程引擎、报表引擎,以及以上相关的可视化设计工具。参考:[Salesforce Object](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_concepts.htm)

### 启动远程开发环境
![对象管理](https://console.steedos.cn/api/files/images/64216644671028003e75f90e)

```shell
docker-compose up
```
## VS Code 插件

实现 [Steedos VSCode 插件](https://www.steedos.cn/docs/developer/sync-metadata),可视化工具设计的元数据可以和代码双向同步。参考:[Salesforce DX](https://developer.salesforce.com/developer-centers/developer-experience)

![Steedos VSCode 插件](https://console.steedos.cn/api/files/images/6421667e671028003e75f90f)

## 软件包管理

元数据以及自定义的代码组合成为 [Steedos 软件包](https://www.steedos.cn/docs/developer/package)。支持软件包的版本管理、发布、安装、个性化定制、版本升级、多包开发,并与现有 DevOps 方案融合。参考:[Salesforce Package](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_unlocked_pkg_whats_a_package.htm)

![Steedos Packages Overview](./docs/diagrams/Steedos%20Metadata.drawio.svg)

# 快速向导

本项目仓库为平台源码,我们会定期发布版本,在项目中直接引用即可。

## 运行模版项目

使用华炎魔方开发企业应用,建议Fork华炎魔方模版项目。

[华炎魔方模版项目(Github)](https://github.com/steedos/steedos-project-template)
[华炎魔方模版项目(Gitlab)](https://gitlab.steedos.cn/steedos/steedos-project-template)

### 访问远程开发环境
打开浏览器,访问 http://127.0.0.1:5555/?folder=/home/workspace/steedos-platform ,进入VS Code远程开发环境。
## 调试平台源码

### 启动模版项目
调试平台源码需要安装nodejs,mongodb,redis,建议使用 docker 启动远程开发环境。

在 VS Code 中进入控制台,输入启动命令。
### 使用 docker 启动数据库

华炎魔方运行依赖 mongodb 和 redis,需先在本地安装运行相关服务。

```bash
docker-compose -f docker-compose-db.yml up
```

### 使用本地 nodejs 调试平台源码

运行华炎魔方需要在本地安装 nodejs 14 和 python 等编译环境,如果本地有环境,可以本地启动华炎魔方。

```bash
yarn
yarn build
yarn start
```

## 系统架构
## 使用 VSCode Server 远程调试平台源码

![Steedos Packages Overview](./docs/diagrams/Steedos%20Metadata.drawio.svg)
可以在服务器上部署远程开发环境,实现远程开发。

```bash
docker-compose -f docker-compose-vscode.yml up
```

打开浏览器,访问 http://127.0.0.1:5555/?folder=/home/workspace/steedos-project-template ,进入VS Code远程开发环境。

此时可以在浏览器中操作 VS Code,运行华炎魔方。

## 访问华炎魔方

打开浏览器,访问 http://127.0.0.1:5000,进入华炎魔方。

进入设置应用,可以:
- 创建自定义对象
- 创建应用
- 创建微页面

## 平台功能

Expand All @@ -81,7 +122,7 @@ yarn start
- [开发文档](https://www.steedos.cn/docs/developer/)
- [客户案例](https://www.steedos.cn/customer-success-stories/)
- [解决方案](https://www.steedos.cn/collections/steedos-packages)
- [试用解决方案(SaaS版))](https://demo.steedos.cn/)
- [试用解决方案(SaaS版)](https://demo.steedos.cn/)

## 为华炎魔方做贡献

Expand Down

0 comments on commit 6af4954

Please sign in to comment.