Coder Social home page Coder Social logo

anubislms / ide Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 2.0 231 KB

Anubis IDE build configurations

Home Page: https://about.anubis-lms.io

License: MIT License

Dockerfile 25.53% Shell 24.91% Python 47.84% Makefile 1.71%
cloud cloud-environment cloud-ide docker ide k8s kubernetes learning-management-system nyu theia vscode

ide's People

Contributors

nickelpro avatar pig208 avatar synoet avatar wabscale avatar zphw avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

nickelpro chliu81

ide's Issues

CD/CI to IDEs

It would be nice to automatically build and deploy images on a push event. We'll need to make it so that when the base ide is modified, the base ide and all the other ides are built.

How to update PATH in Anubis IDE?

I try to use the "protco" command to compile the .proto file, so I could run the code with grpc.
I think I need to update the PATH so that the protoc compiler can find the plugins.
However trying a while, I still getting "protoc-gen-go: program not found or is not executable".
How could I properly update the PATH in the IDE?

EXP research code-server

So seems like code-server as an alternative would require a lot more server resources per student. I ran both our theia-base and the codercom/code-server image, opened the bashrc file and measured the memory usage, and it looks like theia is significantly more memory and network efficent:

1662332553

Anubis IDE not loading

My IDE crashed while I was working on it, I then saw the message on the Dashboard about upgrades. Even after waiting for sometime, my IDE is not able to load. Tried on Firefox, Firefox Private and Chrome.
Here are the console logs from Firefox:

This page uses the non standard property “zoom”. Consider using calc() in the relevant property values, or using “transform” along with “transform-origin: 0 0”. ide
Content Security Policy: The page’s settings blocked the loading of a resource at inline (“script-src”). moz-extension:42:9
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-solid-900.eot?#iefix (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-solid-900.woff2 (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-solid-900.woff (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-solid-900.ttf (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-solid-900.svg#fontawesome (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-regular-400.eot?#iefix (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-regular-400.woff2 (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-regular-400.woff (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-regular-400.ttf (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-regular-400.svg#fontawesome (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-brands-400.eot?#iefix (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-brands-400.woff2 (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-brands-400.woff (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-brands-400.ttf (“font-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://use.fontawesome.com/releases/v5.13.0/webfonts/fa-brands-400.svg#fontawesome (“font-src”).
Firefox can’t establish a connection to the server at wss://anubis-lms.io/ide/stable-129500ee4c8ab7263461ffe327268ba56b9f210d?reconnectionToken=61ee1183-b7f3-45b3-b525-0cda9def0c3e&reconnection=false&skipWebSocketFrames=false. browserSocketFactory.ts:79:17
  ERR [remote-connection][Management   ][61ee1…][initial][anubis-lms.io:443] socketFactory.connect() failed or timed out. Error: log.ts:313:11
  ERR CodeExpectedError: WebSocket close with status code 1006
    c errors.ts:245
    _ remoteAuthorityResolver.ts:86
    w browserSocketFactory.ts:165
log.ts:313:11
  ERR [remote-connection][attempt 1] An error occurred in initial connection! Will retry... Error: log.ts:313:11
  ERR CodeExpectedError: WebSocket close with status code 1006
    c errors.ts:245
    _ remoteAuthorityResolver.ts:86
    w browserSocketFactory.ts:165
log.ts:313:11
Firefox can’t establish a connection to the server at wss://anubis-lms.io/ide/stable-129500ee4c8ab7263461ffe327268ba56b9f210d?reconnectionToken=af19c755-6118-424a-8e1a-4cab885a78b3&reconnection=false&skipWebSocketFrames=false. browserSocketFactory.ts:79:17
  ERR [remote-connection][Management   ][af19c…][initial][anubis-lms.io:443] socketFactory.connect() failed or timed out. Error: log.ts:313:11
  ERR CodeExpectedError: WebSocket close with status code 1006
    c errors.ts:245
    _ remoteAuthorityResolver.ts:86
    w browserSocketFactory.ts:165
log.ts:313:11
  ERR [remote-connection][attempt 2] An error occurred in initial connection! Will retry... Error: log.ts:313:11
  ERR CodeExpectedError: WebSocket close with status code 1006
    c errors.ts:245
    _ remoteAuthorityResolver.ts:86
    w browserSocketFactory.ts:165
log.ts:313:11
Firefox can’t establish a connection to the server at wss://anubis-lms.io/ide/stable-129500ee4c8ab7263461ffe327268ba56b9f210d?reconnectionToken=c43e2dfc-243e-42af-8753-015778dd049a&reconnection=false&skipWebSocketFrames=false. browserSocketFactory.ts:79:17
  ERR [remote-connection][Management   ][c43e2…][initial][anubis-lms.io:443] socketFactory.connect() failed or timed out. Error: log.ts:313:11
  ERR CodeExpectedError: WebSocket close with status code 1006
    c errors.ts:245
    _ remoteAuthorityResolver.ts:86
    w browserSocketFactory.ts:165
    l dom.ts:46
    o dom.ts:67
    w browserSocketFactory.ts:151
    create browserSocketFactory.ts:203
    connect browserSocketFactory.ts:278
    c remoteAgentConnection.ts:195
    r remoteAgentConnection.ts:236
    n remoteAgentConnection.ts:323
    u remoteAgentConnection.ts:345
    C remoteAgentConnection.ts:421
    E remoteAgentConnection.ts:447
log.ts:313:11
  ERR [remote-connection][attempt 3] An error occurred in initial connection! Will retry... Error: log.ts:313:11
  ERR CodeExpectedError: WebSocket close with status code 1006
    c errors.ts:245
    _ remoteAuthorityResolver.ts:86
    w browserSocketFactory.ts:165
    l dom.ts:46
    o dom.ts:67
    w browserSocketFactory.ts:151
    create browserSocketFactory.ts:203
    connect browserSocketFactory.ts:278
    c remoteAgentConnection.ts:195
    r remoteAgentConnection.ts:236
    n remoteAgentConnection.ts:323
    u remoteAgentConnection.ts:345
    C remoteAgentConnection.ts:421
    E remoteAgentConnection.ts:447
log.ts:313:11

After a minute, loads the page to this error :
image

ADD python intelisense to ide

https://open-vsx.org/extension/ms-python/python

Adding the extension

This needs to be added to the base (theia-base) ide

You can see how plugins are added to the ide in the latest.package.json. You'll just need to figure out where the vsx file is on open-vsx.org, add it to the package.json, build and run the ide, and make sure it works.

Building and Running

You can build the ide by copying the latest.package.json to package.json, then:

yarn --pure-lockfile
yarn theia build
yarn theia download:plugins

Then to run:

node src-gen/backend/main.js . --hostname=0.0.0.0 --port=8000

Make sure not to commit a package.json. Leave it as latest.package.json in your commits.

I would recommend that you do this locally and without a Cloud IDE. Node doesnt seem to work well in the IDEs.

CHG insert commit hashes into builds

Since the images are always built through the makefile, we can do it with the GIT_TAG environment variable. We can pass it to the build containers through a build arg.

We can maybe save the commit as a file to /etc/anubis/COMMIT or something. Maybe add it as an environment variable ANUBIS_IDE_COMMIT or something.

FIX missing icons

Probably add this to index.html:

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/[email protected]/css/fontawesome.min.css" integrity="sha384-jLKHWM3JRmfMU0A5x5AkjWkw/EYfGUAGagvnfryNV3F9VqM98XiIH7VBGVoxVSc7" crossorigin="anonymous">

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.