Git Product home page Git Product logo

handshake's Introduction

Hi ๐Ÿ‘‹

handshake's People

Contributors

dependabot[bot] avatar github-actions[bot] avatar rahularanger avatar turbobot-temp avatar

Stargazers

 avatar

Watchers

 avatar

handshake's Issues

build pipeline for dashboard-build

It should

  • Take a pull from any branch
  • Can be manually triggered
  • Can be triggered from other workflows
  • Has a switch if required to release
  • Runs component Tests
  • Generates build
  • If Required, releases under the pre-release
  • If Required, commits the changes for the build url

[scheduler] stop close connection job if already done

test-wdio-mocha:sanity: Traceback (most recent call last):
test-wdio-mocha:sanity:   File "apscheduler/executors/base_py3.py", line 30, in run_coroutine_job
test-wdio-mocha:sanity:   File "handshake/services/SchedularService/handlePending.py", line 29, in lookup_for_tasks
test-wdio-mocha:sanity:     await TaskBase.filter(
test-wdio-mocha:sanity:   File "tortoise/queryset.py", line 1008, in _execute
test-wdio-mocha:sanity:     instance_list = await self._db.executor_class(
test-wdio-mocha:sanity:                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
test-wdio-mocha:sanity:   File "tortoise/backends/base/executor.py", line 131, in execute_select
test-wdio-mocha:sanity:     _, raw_results = await self.db.execute_query(query.get_sql())
test-wdio-mocha:sanity:                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
test-wdio-mocha:sanity:   File "tortoise/backends/sqlite/client.py", line 34, in translate_exceptions_
test-wdio-mocha:sanity:     return await func(self, query, *args)
test-wdio-mocha:sanity:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
test-wdio-mocha:sanity:   File "tortoise/backends/sqlite/client.py", line 142, in execute_query
test-wdio-mocha:sanity:     return (connection.total_changes - start) or len(rows), rows
test-wdio-mocha:sanity:             ^^^^^^^^^^^^^^^^^^^^^^^^
test-wdio-mocha:sanity:   File "aiosqlite/core.py", line 286, in total_changes
test-wdio-mocha:sanity: sqlite3.ProgrammingError: Cannot operate on a closed database.

stop close connection job if already done

Migrate build process for handshake package #handshake

we used to use pyinstaller for distributing handshake server and scheduler. it worked fine in linux and win32 and win64. though we know we might face an issue with os reach. we found out it didn't work in macos14.

in order to avoid issues related to the os. we are planning to make the installation more generic, so os hardly comes into picture.

also resolves #24

Root Access is required for accessing the handshake dist

observed in linux and in macOS

installation of graspit-commons involves the installation of relevant exe files based on the system's OS which then ends with allocating chmodSync(775).

if the user tries to access graspit executable through npx graspit they will end up with the below message:

[[5](https://github.com/RahulARanger/graspit/actions/runs/7037440384/job/19152213004#step:7:6)601] Cannot open PyInstaller archive from executable (/Users/runner/work/graspit/graspit/graspit-reporters/packages/graspit-commons/bin/graspit) or external archive (/Users/runner/work/graspit/graspit/graspit-reporters/packages/graspit-commons/bin/graspit.pkg)
[5632] Cannot open PyInstaller archive from executable (/Users/runner/work/graspit/graspit/graspit-reporters/packages/graspit-commons/bin/graspit) or external archive (/Users/runner/work/graspit/graspit/graspit-reporters/packages/graspit-commons/bin/graspit.pkg)

Related action: https://github.com/RahulARanger/graspit/actions/runs/7037440384/job/19152213004

The solution suggested: sudo npx graspit [args]

image

Note: if chmodSync(777) it requires a user to perform sudo npm install which is not recommended to share.

Expectation:

execute any commands without sudo.

Work on building dashboard bundle

Decide where we would bundle the dashboard. and make the necessary changes

Options:

  1. Bundle along with Python Build
  2. Bundle along with common-handshakes

If bundled with Python Build:

  1. ADVANTAGE: less dependency on common-handshakes
  2. DISADVANTAGE: more dependency on python-build
  3. ADVANTAGE: native support for the export command

if bundled with the reporter side:

  1. ADVANTAGE: easier to distribute compared to python-build (more pipelines would need to be triggered even for a simple change in dashboard)
  2. DISADVANTAGE: we would not be able to run the export command natively from the python-build side. we would need the path of the dashboard build else it not supported.

Revamp common-handshakes & wdio-handshake-reporter

Integrate the Common-Handshakes with the Handshake (Python Build)
Revamp the APIs used by custom reporter (wdio-handshake-reporter) from common-handshakes
Support the changes from the security bug fixes

local-setup for codeql

Document the required steps for the CodeQL setup locally in our report.

Resolve the bugs highlighted by CodeQL

Build the build pipeline to achieve #1 and test #2

building end-to-end automation for building and deploying handshake server and handshake packages.

Pipelines should trigger only when required and if triggered, required tests must be executed and if it passes, it should publish the package to the relevant place.

Host the storybook through deployment process

Host the storybook static used in our dashboard

why do we need this?

  • It would give a preview of our dashboard (even at the component level)
  • End users can play with different parameters to see how it would behave

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.