add release job using AntOS build system

This commit is contained in:
DanyLE 2023-06-01 16:33:07 +02:00
parent 0227f02ad6
commit 4a0a611acc
140 changed files with 1254 additions and 3 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

26
build.json Normal file
View File

@ -0,0 +1,26 @@
{
"targets" : {
"Build all" :{
"jobs": [
{
"name": "batch",
"data": {
"target": "release"
}
}
]
},
"Release": {
"require": ["backend"],
"jobs": [
{
"name": "lua-exec",
"data": {
"path": "home://workspace/antosdk-apps/release.lua",
"params": {}
}
}
]
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -217,7 +217,11 @@ namespace OS {
this.logger.error(ret.error);
throw new Error(ret.error);
}
const dirs = ret.result.filter(e => e.type === "dir");
let dirs = ret.result.filter(e => e.type === "dir");
if(data.modules)
{
dirs = dirs.filter(e => data.modules.includes(e.filename));
}
for(let entry of dirs)
{
const build_file = `${entry.path}/build.json`.asFileHandle();

View File

@ -225,7 +225,7 @@
"description": "https://raw.githubusercontent.com/lxsang/antosdk-apps/2.0.x/libantosdk/README.md",
"category": "Development",
"author": "Xuan Sang LE",
"version": "0.1.1-b",
"version": "0.1.2-b",
"dependencies": [],
"download": "https://raw.githubusercontent.com/lxsang/antosdk-apps/2.0.x/libantosdk/build/release/libantosdk.zip"
},

95
release.lua Normal file
View File

@ -0,0 +1,95 @@
local args=...
local release_url = "https://ci.iohub.dev/public/antos-release/packages/2.0.x/"
local result = function(data)
return { error = false, result = data }
end
local error = function(msg)
return {error = msg, result = false}
end
local output = function(text)
echo( JSON.encode(result(text)))
end
function script_path()
local str = debug.getinfo(2, "S").source:sub(2)
return str:match("(.*/)")
end
local cwd = script_path()
local release_dir = cwd.."/release/"
-- prepare release directory
if ulib.exists(release_dir) then
--remove it
ulib.delete(release_dir)
end
-- create release dir
output("Creating delivery directory: "..release_dir)
if not ulib.mkdir(release_dir) then
return error("Unable to create release dir")
end
local r = ulib.read_dir(cwd, cwd)
if r.error then
return error(r.error)
end
local packages = {}
for i,v in ipairs(r) do
if v.type == "dir" then
local ar_file = v.path.."/build/release/"..v.filename..".zip"
local meta_file = v.path.."/package.json"
local readme_file = v.path.."/README.md"
if ulib.exists(ar_file) and ulib.exists(meta_file) then
-- copy zip file to release directory
output("Copying "..ar_file.." -> "..release_dir.."/"..v.filename..".zip")
if not ulib.send_file(ar_file, release_dir..v.filename..".zip") then
return error("Unable to copy file:"..v.filename..".zip")
end
if ulib.exists(readme_file) then
output("Copying "..readme_file.." -> "..release_dir.."/"..v.filename..".md")
if not ulib.send_file(readme_file, release_dir..v.filename..".md") then
return error("Unable to copy file:"..v.readme_file..".md")
end
end
-- read meta-data
local meta = JSON.decodeFile(meta_file)
if not meta then
return error("Unable to parse package meta-data: "..meta_file)
end
local pkg = {
pkgname = v.filename,
name = meta.name,
description = release_url..v.filename..".md",
category = meta.category or "Other",
author = meta.info.author or "Unknown",
version = meta.version,
dependencies = meta.dependencies or {},
download = release_url..v.filename..".zip"
}
table.insert(packages, pkg)
end
end
end
-- write meta-data
local index_file = release_dir.."/packages.json"
output("Generate meta-data file: "..index_file)
local file,err = io.open(index_file,'w')
if file then
file:write(JSON.encode(packages))
file:close()
else
return error("error open file ".. index_file..":"..err)
end
return result("Done!!!")

27
release/ACECore.md Normal file
View File

@ -0,0 +1,27 @@
# ACECore
This package is AntOS wrapper of the wellknown Ace editor.
Ace is a standalone code editor written in JavaScript. The goal is to create a browser based
editor that matches and extends the features, usability and performance of existing native
editors such as TextMate, Vim or Eclipse. It can be easily embedded in any web page or
JavaScript application. Ace is developed as the primary editor for
[Cloud9 IDE](https://c9.io/) and the successor of the Mozilla Skywriter (Bespin) Project.
## Features
* Syntax highlighting for over 120 languages (TextMate/Sublime/_.tmlanguage_ files can be imported)
* Over 20 themes (TextMate/Sublime/_.tmtheme_ files can be imported)
* Automatic indent and outdent
* An optional command line
* Handles huge documents (at last check, 4,000,000 lines is the upper limit)
* Fully customizable key bindings including vim and Emacs modes
* Search and replace with regular expressions
* Highlight matching parentheses
* Toggle between soft tabs and real tabs
* Displays hidden characters
* Drag and drop text using the mouse
* Line wrapping
* Code folding
* Multiple cursors and selections
* Live syntax checker (currently JavaScript/CoffeeScript/CSS/XQuery)
* Cut, copy, and paste functionality

BIN
release/ACECore.zip Normal file

Binary file not shown.

26
release/About.md Normal file
View File

@ -0,0 +1,26 @@
# About
This is an example project, generated by AntOS Development Kit
It is used to show the change logs of the current AntOS version
## Change logs
### v0.1.1-b
* Increase default window size
### v0.1.1-b
* add missing css file
### v0.1.0-b
* Beta state, read README file from the current OS
### v0.0.7-a
* Change app category to Utility
### v0.0.6-a
* Use README page available on github
### v0.0.5-a
* Fix cotent padding is not correct on some browsers
### v0.0.4-a
* Add color style to link
* Fix some minor bugs

BIN
release/About.zip Normal file

Binary file not shown.

11
release/AceDiff.md Normal file
View File

@ -0,0 +1,11 @@
# AceDiff
This is a wrapper for Ace Editor to provide a 2-panel diffing/merging tool that visualizes differences in two documents and allows users to copy changes from to the other.
It's built on top of google-diff-match-patch library. That lib handles the hard part: the computation of the document diffs. Ace-diff just visualizes that information as line-diffs in the editors.
Github page: [https://github.com/ace-diff/ace-diff](https://github.com/ace-diff/ace-diff).
The ACE diff depends on the ACECore package.
## Change logs
- v0.1.1-a: add dependencies

BIN
release/AceDiff.zip Normal file

Binary file not shown.

View File

@ -0,0 +1,13 @@
# Activity monitor
This simple application show the current running AntOS processes
## Change logs
### v0.0.8-b
* Increase default window size
### v0.0.6-a
* Fix process type identification bug
### v0.0.5-a
* Fix process type identification bug

BIN
release/ActivityMonitor.zip Normal file

Binary file not shown.

22
release/Antedit.md Normal file
View File

@ -0,0 +1,22 @@
# Antedit
Simple yet powerful text/code editor based on the Monaco editor,
the editor that powers VS Code.
The editor functionality can be extended by its extension mechanism.
Extension can be developed/released/isntalled by the editor itself.
### Change logs
- 0.2.3-b: Minor changes to adapt the core UI to the new AntOS 2.0.x
- 0.2.3-b: Allow reload current file via context menu in case of external changes
- 0.2.2-b: Support horizotal scrolling on horizotal tabbars
- 0.2.1-b: Add open file to right, editor actions are only attached to code editor
- 0.2.0-b: Support diff mode in editor + fix new Monaco version compatible bug
- 0.1.17-b: Fix extension keybinding bug with the new monaco editor
- 0.1.16-b: use the new version of monaco editor
- 0.1.14-b: improve output log display
- 0.1.13-b: Allow file upload in file view, add menu context in tabbar
- 0.1.12-b: fix recent files not adding correctly
- 0.1.11-b: fix file type parsing from path
- 0.1.10-b: Antedit now has it own extension manager
- 0.1.9-a: Allow output text selection
- 0.1.8-a: Allow to change language mode
- 0.1.7-a: Add keyboard shortcut support to extension actions

BIN
release/Antedit.zip Normal file

Binary file not shown.

11
release/Antunnel.md Normal file
View File

@ -0,0 +1,11 @@
# Antunnel
`Antunnel` is a client side API that allows AntOS applications to
talk to server side applications via the [`antd-tunnel-pligin`](https://github.com/lxsang/antd-tunnel-plugin) plugin
using a single websocket API.
## Changes log
- v0.2.0-b User multiple bytes interger network byte order in frame format
- v0.1.9-b Use the new client size minima frame format (reduces frame overhead)
- v0.1.4-a Reduce frame overhead
- v0.1.3-a Remove magic number in the frame to reduce frame overhead

BIN
release/Antunnel.zip Normal file

Binary file not shown.

View File

@ -0,0 +1,9 @@
# Antunnel Plugins
Aditional Plugins for Antunnel library.
This package provides also the Typescript declaration file for
application Development.
## Change logs
- v.0.1.2: minor changes on API
- v.0.1.1: Added group query support
- v.0.1.0: Antunnel API declaration and broadcast plugin

BIN
release/AntunnelPlugins.zip Normal file

Binary file not shown.

View File

@ -0,0 +1,15 @@
# AntunnelTestClient
This is an example project, generated by AntOS Development Kit
## Howto
Use the Antedit command palette to access to the SDK functionalities:
1. Create new project
2. Init the project from the current folder located in side bar
3. Build and run the project
4. Release the project in zip package
## Set up build target
Open the `build.json` file from the current project tree and add/remove
build target entries and jobs. Save the file

Binary file not shown.

22
release/Archive.md Normal file
View File

@ -0,0 +1,22 @@
# Archive
Small application for zip file manager
## Features
* Open, create zip file Archive
* Add/remove file/folder to archive
* Extract zip file content
## Changle log
### v0.0.4-a
* Fix file dialog bug when extract zip content
### v0.0.3-a
* Change category to utility
### v0.0.2-a
* Adapt to the new AntOS string API
### v0.0.1-a
* First release

BIN
release/Archive.zip Normal file

Binary file not shown.

25
release/Blogger.md Normal file
View File

@ -0,0 +1,25 @@
# Blogger
Blackend for my blog at https://blog.iohub.dev
## Change logs
### v0.2.x-a
* Patch 11: Add TFIDF analyse functionality
* Patch 10: Migrate code to typescript, use SQLiteDB lib for database access
* Patch 9: Update to use the new MDE library
* Patch 8: Support for antOS 2.0.x
* Patch 7: Fix sendmail API security bug
* Patch 6: Chage libraries load order
* Patch 5: Add user photo to portfolio
* Patch 4: Add package dependencies
* Patch 3: Correct JSON text decoding
* Patch 2: Bug fix rendering content
* Patch 0-1 Important change: Store raw post content to the database instead of base64 string as before
### v0.1.x-a
* Patch 3-4: Enhance youtube video embedding feature in markdown
* Patch 2: CV Category now can be created when database is not created yet
* Patch 1: Fix package archive broken
* Patch 0: Change default email of the sender

BIN
release/Blogger.zip Normal file

Binary file not shown.

30
release/Booklet.md Normal file
View File

@ -0,0 +1,30 @@
# Booklet
A back-end tool for my online document hub [https://doc.iohub.dev/antos/](https://doc.iohub.dev/)
## Change logs
### v0.2.5-a
* Use the new MDE library
### v0.2.3-a
* Chage app category name
### v0.2.1-a
* Chage libraries load order
### v0.2.1-a
* Add depends on the SimpleMDE package
### v0.2.0-a
* Book meta data is no longer depending on the absolute path
* Meta-data of Books created by Booklet v0.1.x needs to be modified (manually) to work properly on v0.2.x
### v0.1.0-a
* Add support to model/gltf-binary file
### v0.1.0-a: new feature
* Entries of the same parent now can go up and down
* Support drag and drop to move entries around
* Support assets such as image files can be uploaded and stored directly into the book structure
* Booklet can now render local image
### v0.0.3-a
* Clean up code
### v0.0.2-a
* First public release
*

BIN
release/Booklet.zip Normal file

Binary file not shown.

17
release/Clipper.md Normal file
View File

@ -0,0 +1,17 @@
# Clipper
VDE screen capture tool.
Clipper use `html2canvas` to capture AntOS desktop or a specific window.
It is able to crop the captured image before saving to a file
## Change logs
* v0.1.4-a minor changes to adapt to new AntOS v2.0.x
* v0.1.3-a change app category
* v0.1.2-a use ALT-S as global shortcut for screen capture
* v0.1.1-a use CTRL-S as global shortcut for screen capture
* v0.1.0-a initial version
## Credit
* [html2canvas](https://html2canvas.hertzen.com/)

BIN
release/Clipper.zip Normal file

Binary file not shown.

7
release/CodePad.md Normal file
View File

@ -0,0 +1,7 @@
# CodePad
A simple yet powerful code/text editor.
CodePad is a text editor based on the ACE editor.
## Change logs
- v0.1.6-a: adapt to new AntOS v2.0.x
- v0.1.5-a: CodePad moved out of AntOS based system as regular AntOS package

BIN
release/CodePad.zip Normal file

Binary file not shown.

15
release/DBDecoder.md Normal file
View File

@ -0,0 +1,15 @@
# DBDecoder
This is an example project, generated by AntOS Development Kit
## Howto
Use the CodePad command palette to access to the SDK functionalities:
1. Create new project
2. Init the project from the current folder located in side bar
3. Build and run the project
4. Release the project in zip package
## Set up build target
Open the `project.json` file from the current project tree and add/remove
build target entries. Save the file

BIN
release/DBDecoder.zip Normal file

Binary file not shown.

6
release/DiffEditor.md Normal file
View File

@ -0,0 +1,6 @@
# DiffEditor
View and edit files in diff mode
## Change logs
- 0.1.6-a: adapt to new AntOS v2.0.x
- Add dependencies

BIN
release/DiffEditor.zip Normal file

Binary file not shown.

12
release/Docify.md Normal file
View File

@ -0,0 +1,12 @@
# Docify
Simple PDF document manager
## Change logs
- v0.1.0-b: use libsqlite for database handling
- v0.0.9-b: Adapt to support AntOS 2.0.x
- v0.0.8-b: Allow upload files directly from the app
- v0.0.7-a: Change category and icon
- v0.0.6-a: Add print dialog (support server side printing)
- v0.0.5-a: Fix delete file bug
- v0.0.4-a: Display file size in entry meta-data
- v0.0.3-a: Fix document moved bug, sort entries by year, month, day

BIN
release/Docify.zip Normal file

Binary file not shown.

15
release/Dockman.md Normal file
View File

@ -0,0 +1,15 @@
# Dockman
This is an example project, generated by AntOS Development Kit
## Howto
Use the CodePad command palette to access to the SDK functionalities:
1. Create new project
2. Init the project from the current folder located in side bar
3. Build and run the project
4. Release the project in zip package
## Set up build target
Open the `project.json` file from the current project tree and add/remove
build target entries. Save the file

BIN
release/Dockman.zip Normal file

Binary file not shown.

3
release/GPClient.md Normal file
View File

@ -0,0 +1,3 @@
# GPClient
Simple Multi purpose client wrapper

BIN
release/GPClient.zip Normal file

Binary file not shown.

22
release/GitGraph.md Normal file
View File

@ -0,0 +1,22 @@
# LibGitGraph
Git grapth visualization API for AntOS application.
The visualization can be easily integrated to an AntOS application, example:
```typescript
const graph = new API.LibGitGraph({
target: this.find("git-graph");
});
graph.on_open_diff = (files) => {
console.log(files);
}
graph.base_dir = "home://workspace/repo-git".asFileHandle();
```
## Change logs:
- v0.1.5-b: Adapt to new AntOS UI API
- v0.1.4-b: Fetch changes on a commit based on current commit and its left most parent commit
- v0.1.3-b: Support open Git repo with open with dialog
- v0.1.2-b: fix init bug
- v0.1.1-b: add class to container element
- v0.1.0-b: Initial version

BIN
release/GitGraph.zip Normal file

Binary file not shown.

13
release/GraphEditor.md Normal file
View File

@ -0,0 +1,13 @@
# GraphEditor
Generate graph from text using mermaid
## Change logs
* v0.0.9-a: Change category
* v0.0.8-a: Fix ace path
* v0.0.7-a: Fix worker path
* v0.0.6-a: Fix unable to export image from tainted canvas
* v0.0.5-a: GraphEditor is now compatible with new AntOS API
Note: This application use the open source library [Mermaid js](https://mermaid-js.github.io/mermaid) for graph rendering

BIN
release/GraphEditor.zip Normal file

Binary file not shown.

22
release/ImageEditor.md Normal file
View File

@ -0,0 +1,22 @@
# Image Editor
Full featured image editor using HTML5 Canvas.
This application is a wrapper of the [TOAST UI Image editor](https://github.com/nhn/tui.image-editor).
**Features:**
* Load image to canvas
* Undo/Redo (With shortcut)
* Crop
* Flip
* Rotation
* Free drawing
* Line drawing
* Shape
* Icon
* Text
* Mask Filter
* Image Filter
## Changes log
* v0.1.0-a: First release

BIN
release/ImageEditor.zip Normal file

Binary file not shown.

13
release/Katex.md Normal file
View File

@ -0,0 +1,13 @@
KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web.
* Fast: KaTeX renders its math synchronously and doesn't need to reflow the page. See how it compares to a competitor in this speed test.
* Print quality: KaTeX's layout is based on Donald Knuth's TeX, the gold standard for math typesetting.
* Self contained: KaTeX has no dependencies and can easily be bundled with your website resources.
* Server side rendering: KaTeX produces the same output regardless of browser or environment, so you can pre-render expressions using Node.js and send them as plain HTML.
KaTeX is compatible with all major browsers, including Chrome, Safari, Firefox, Opera, Edge, and IE 11.
KaTeX supports much (but not all) of LaTeX and many LaTeX packages.
Github Project: [https://github.com/KaTeX/KaTeX](https://github.com/KaTeX/KaTeX)

BIN
release/Katex.zip Normal file

Binary file not shown.

24
release/LibreOffice.md Normal file
View File

@ -0,0 +1,24 @@
# Libre Office Onlie
This application is the front-end connector of the Libre Office Online suite.
It needs to connect to a working LibreOffice document server.
The application allows to open/edit commons document, presentation, and spreedsheet.
It support a wide range of documents.
![https://github.com/lxsang/antosdk-apps/blob/master/LibreOffice/libreoffice.png?raw=true](https://github.com/lxsang/antosdk-apps/blob/master/LibreOffice/libreoffice.png?raw=true)
## Change log
- v 0.1.4-a:
* Update backend script to latest API changes
* use luasocket + luasec to fetch LibreOffice service discovery
- v 0.1.3-a:
* Minor fix to support AntOS v2.0.x
- v 0.1.2-a:
* Fix server side API error with new backend API
- v 0.1.1-a:
* improve UI handling
* add Save as option
* add traditional AntOS application File menu
* fetch supported mimes from discovery URL
- v 0.1.0-a: Initial version

BIN
release/LibreOffice.zip Normal file

Binary file not shown.

12
release/LuaPlayground.md Normal file
View File

@ -0,0 +1,12 @@
#LuaPlayground
Application for serverside code testing and analytics tool.
It allows to execute lua code on the server from the browser
## Change logs
* 0.1.1-a: Minor changes to support mobile devices
* 0.1.0-a: Change package dependencies
* 0.0.7-a: Change icon and category
* 0.0.6-a: Fix ace path error
* 0.0.5-a: Fix worker path error

BIN
release/LuaPlayground.zip Normal file

Binary file not shown.

6
release/MonacoCore.md Normal file
View File

@ -0,0 +1,6 @@
# MonacoCore
The Monaco Editor is the code editor which powers VS Code.
This library is the AntOS package wrapper of the Monaco editor 0.33.0
For more information on the editor: [https://microsoft.github.io/monaco-editor/](https://microsoft.github.io/monaco-editor/)

BIN
release/MonacoCore.zip Normal file

Binary file not shown.

20
release/OnlyOffice.md Normal file
View File

@ -0,0 +1,20 @@
# OnlyOffice
This application is the front-end connector of the OnlyOffice suite.
It needs to connect to a working OnlyOffice document server.
The application allows to open/edit commons document, presentation, and spreedsheet.
Integrate OnlyOffice to an virtual window environment like AntOs allows a convenient
way to work with multiple documents at the same time.
![https://github.com/lxsang/antosdk-apps/blob/master/OnlyOffice/screenshot.png?raw=true](https://github.com/lxsang/antosdk-apps/blob/master/OnlyOffice/screenshot.png?raw=true)
## Change log
- v 0.1.8a: Use new backend API + luasec + luasocket to manipulate remote file
- v 0.1.7a: Allow setting blur overlay on window
- v 0.1.6a: Update backend api
- v 0.1.5a: Add document versionning support
- v 0.1.4a: If the iframe has the same origin with the parent, enable the focus event
- v 0.1.3a: Let backend generates document key, compatible with doc.iohub.dev/office
- v 0.1.2a: generate document key based on username, file path and modified time
- v 0.1.1a: generate document key based on username and file path

BIN
release/OnlyOffice.zip Normal file

Binary file not shown.

8
release/Preview.md Normal file
View File

@ -0,0 +1,8 @@
# Preview
Image and PDF file viewer for AntOS
## Change logs
* v0.1.3-a: Minor fix on window focus event when using ifrane
* v0.1.2-a: support AntOS v2.0.x
* v0.1.0-a: add depends on libpdfjs, user the default PDFJS viewer

BIN
release/Preview.zip Normal file

Binary file not shown.

13
release/RemoteCamera.md Normal file
View File

@ -0,0 +1,13 @@
# RemoteCamera
Connect to a V4L2 camera on server via Antunnel plugin.
![](https://raw.githubusercontent.com/lxsang/antosdk-apps/master/RemoteCamera/screenshot.jpg)
This application reauires the **tunel plugin** and the **ant-tunnel v4l2 publisher**
on the server-side
## Change log
* v0.1.5-a: support AntOS 2.0.x
* v0.1.4-a: change app category
* v0.1.2-a: user worker for jpeg decoding

BIN
release/RemoteCamera.zip Normal file

Binary file not shown.

21
release/RemoteDesktop.md Normal file
View File

@ -0,0 +1,21 @@
# WVNC remote desktop
![](https://raw.githubusercontent.com/lxsang/antosdk-apps/master/RemoteDesktop/screenshot.jpg)
A web based VNC client allowing to control remote VNC desktop from browser. The application is based on **wvnc**, a protocol and API that uses web socket to communicate with remote VNC server.
Further information on **wvnc**: [https://blog.lxsang.me/post/id/23](https://blog.lxsang.me/post/id/23)
## Change logs
* v0.1.16 - Allow to enable/disable mouse capture in remote desktop, remove some unused toolbar buttons
* v0.1.15 - Only send ACK command when finish rendering the received frame, this allows to vastly improve performance and bandwidth
* v0.1.14 - Add toolbar for canvas size control
* v0.1.13 - support AntOS v2.0.x
* v0.1.12 - improve UI handling
* v0.1.11 - Support 16 bits per pixel
* v0.1.10 - Allow to sync clipboard between local and remote machine, CTRL+SHIF+V to paste text from local to remote machine
* v0.1.9 - improve stability
* v0.1.7-8 - remove package dependencies, use web assembly for jpeg decoding, improve rendering performance and connection stability
* v0.1.6 - Change category
* v0.1.5 - add package dependencies and use the new **libwvnc**
* v0.1.0 - adapt to the new AntOS API

BIN
release/RemoteDesktop.zip Normal file

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More